Browse Source

费用添加合同

contract
Yen 2 years ago
parent
commit
5a1f5afd32
  1. 5
      src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java
  2. 57
      src/main/java/com/qs/serve/modules/tbs/controller/TbsCostContractController.java
  3. 7
      src/main/java/com/qs/serve/modules/tbs/entity/TbsCostApply.java
  4. 12
      src/main/java/com/qs/serve/modules/tbs/entity/TbsCostContract.java
  5. 5
      src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsCostApplyBo.java
  6. 10
      src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsCostContractBo.java
  7. 2
      src/main/java/com/qs/serve/modules/tbs/service/TbsCostContractService.java
  8. 21
      src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostContractServiceImpl.java

5
src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java

@ -18,6 +18,7 @@ import com.qs.serve.modules.seeyon.entity.CtpAffair;
import com.qs.serve.modules.seeyon.entity.CtpAffairCommit; import com.qs.serve.modules.seeyon.entity.CtpAffairCommit;
import com.qs.serve.modules.seeyon.entity.CtpAffairQo; import com.qs.serve.modules.seeyon.entity.CtpAffairQo;
import com.qs.serve.modules.seeyon.service.SeeYonService; import com.qs.serve.modules.seeyon.service.SeeYonService;
import com.qs.serve.modules.sys.entity.SysAttach;
import com.qs.serve.modules.sys.entity.SysUser; import com.qs.serve.modules.sys.entity.SysUser;
import com.qs.serve.modules.sys.service.SysConfigService; import com.qs.serve.modules.sys.service.SysConfigService;
import com.qs.serve.modules.sys.service.SysUserSalesService; import com.qs.serve.modules.sys.service.SysUserSalesService;
@ -60,6 +61,7 @@ import java.util.stream.Collectors;
@RequestMapping("tbs/costApply") @RequestMapping("tbs/costApply")
public class TbsCostApplyController { public class TbsCostApplyController {
private TbsCostContractService costContractService;
private TbsCostApplyService tbsCostApplyService; private TbsCostApplyService tbsCostApplyService;
private TbsActivityService tbsActivityService; private TbsActivityService tbsActivityService;
private TbsActivityTemplateService tbsActivityTemplateService; private TbsActivityTemplateService tbsActivityTemplateService;
@ -178,6 +180,8 @@ public class TbsCostApplyController {
@PreAuthorize("hasRole('tbs:costApply:query')") @PreAuthorize("hasRole('tbs:costApply:query')")
public R<TbsCostApply> getById(@PathVariable("id") String id){ public R<TbsCostApply> getById(@PathVariable("id") String id){
TbsCostApply tbsCostApply = tbsCostApplyService.getById(id); TbsCostApply tbsCostApply = tbsCostApplyService.getById(id);
TbsCostContract contract = costContractService.getByCostApplyId(tbsCostApply.getId());
tbsCostApply.setContractInfo(contract);
return R.ok(tbsCostApply); return R.ok(tbsCostApply);
} }
@ -207,6 +211,7 @@ public class TbsCostApplyController {
entity.setId(param.getId()); entity.setId(param.getId());
entity.setRemark(param.getRemark()); entity.setRemark(param.getRemark());
entity.setChargeTheme(param.getChargeTheme()); entity.setChargeTheme(param.getChargeTheme());
entity.setContractFlag(param.getContractFlag());
tbsCostApplyService.updateById(entity); tbsCostApplyService.updateById(entity);
return R.ok(); return R.ok();
} }

57
src/main/java/com/qs/serve/modules/tbs/controller/TbsCostContractController.java

@ -44,7 +44,7 @@ public class TbsCostContractController {
* @param param * @param param
* @return * @return
*/ */
@GetMapping("/list") //@GetMapping("/list")
@PreAuthorize("hasRole('tbs:costApply:query')") @PreAuthorize("hasRole('tbs:costApply:query')")
public R<List<TbsCostContract>> getList(TbsCostContract param){ public R<List<TbsCostContract>> getList(TbsCostContract param){
LambdaQueryWrapper<TbsCostContract> lqw = new LambdaQueryWrapper<>(param); LambdaQueryWrapper<TbsCostContract> lqw = new LambdaQueryWrapper<>(param);
@ -65,7 +65,7 @@ public class TbsCostContractController {
* @param param * @param param
* @return * @return
*/ */
@GetMapping("/page") //@GetMapping("/page")
@PreAuthorize("hasRole('tbs:costApply:query')") @PreAuthorize("hasRole('tbs:costApply:query')")
public R<PageVo<TbsCostContract>> getPage(TbsCostContract param){ public R<PageVo<TbsCostContract>> getPage(TbsCostContract param){
LambdaQueryWrapper<TbsCostContract> lqw = new LambdaQueryWrapper<>(param); LambdaQueryWrapper<TbsCostContract> lqw = new LambdaQueryWrapper<>(param);
@ -86,12 +86,12 @@ public class TbsCostContractController {
* @param id * @param id
* @return * @return
*/ */
@GetMapping("/getById/{id}") @GetMapping("/getByCostApplyId/{id}")
@SysLog(module = SystemModule.Budget, title = "费用合同", biz = BizType.QUERY) @SysLog(module = SystemModule.Budget, title = "费用合同", biz = BizType.QUERY)
@PreAuthorize("hasRole('tbs:costApply:query')") @PreAuthorize("hasRole('tbs:costApply:query')")
public R<TbsCostContract> getById(@PathVariable("id") String id){ public R<TbsCostContract> getById(@PathVariable("id") Long id){
TbsCostContract contract = tbsCostContractService.getById(id); TbsCostContract contract = tbsCostContractService.getByCostApplyId(id);
if(CollectionUtil.isNotEmpty(contract.getAttachIds())){ if(contract!=null&&CollectionUtil.isNotEmpty(contract.getAttachIds())){
List<String> attachIds = Arrays.asList(contract.getAttachIds()); List<String> attachIds = Arrays.asList(contract.getAttachIds());
List<SysAttach> attachList = attachService.listByIds(attachIds); List<SysAttach> attachList = attachService.listByIds(attachIds);
contract.setAttachInfoList(attachList); contract.setAttachInfoList(attachList);
@ -100,18 +100,28 @@ public class TbsCostContractController {
} }
/** /**
* 更新 * 更新
* @param param * @param param
* @return * @return
*/ */
@PostMapping("/updateById") //@PostMapping("/updateByCostApplyId")
@SysLog(module = SystemModule.Budget, title = "费用合同", biz = BizType.UPDATE) @SysLog(module = SystemModule.Budget, title = "费用合同", biz = BizType.UPDATE)
@PreAuthorize("hasRole('tbs:costApply:update')") @PreAuthorize("hasRole('tbs:costApply:update')")
public R<?> updateById(@RequestBody @Valid TbsCostContractBo param){ public R<?> updateById(@RequestBody @Valid TbsCostContractBo param){
TbsCostContract entity = CopierUtil.copy(param,new TbsCostContract()); LambdaQueryWrapper<TbsCostContract> lqw = new LambdaQueryWrapper<>();
boolean result = tbsCostContractService.updateById(entity); lqw.eq(TbsCostContract::getCostApplyId,param.getCostApplyId());
TbsCostContract contract = tbsCostContractService.getOne(lqw,false);
if(contract==null){
return R.error2();
}
contract.setContractName(param.getContractName());
contract.setContractAmount(param.getContractAmount());
contract.setContractCondition(param.getContractCondition());
contract.setAttachIds(param.getAttachIds());
contract.setSignTime(param.getSignTime());
contract.setExpireTime(param.getExpireTime());
boolean result = tbsCostContractService.updateById(contract);
return R.isTrue(result); return R.isTrue(result);
} }
@ -124,22 +134,35 @@ public class TbsCostContractController {
@SysLog(module = SystemModule.Budget, title = "费用合同", biz = BizType.INSERT) @SysLog(module = SystemModule.Budget, title = "费用合同", biz = BizType.INSERT)
@PreAuthorize("hasRole('tbs:costApply:insert')") @PreAuthorize("hasRole('tbs:costApply:insert')")
public R<?> save(@RequestBody @Valid TbsCostContractBo param){ public R<?> save(@RequestBody @Valid TbsCostContractBo param){
TbsCostContract entity = CopierUtil.copy(param,new TbsCostContract()); LambdaQueryWrapper<TbsCostContract> lqw = new LambdaQueryWrapper<>();
boolean result = tbsCostContractService.save(entity); lqw.eq(TbsCostContract::getCostApplyId,param.getCostApplyId());
TbsCostContract contract = tbsCostContractService.getOne(lqw,false);
if(contract==null){
contract = CopierUtil.copy(param,new TbsCostContract());
}else {
contract.setContractName(param.getContractName());
contract.setContractAmount(param.getContractAmount());
contract.setContractCondition(param.getContractCondition());
contract.setAttachIds(param.getAttachIds());
contract.setSignTime(param.getSignTime());
contract.setExpireTime(param.getExpireTime());
}
boolean result = tbsCostContractService.saveOrUpdate(contract);
return R.isTrue(result); return R.isTrue(result);
} }
/** /**
* 删除 * 删除
* @param ids * @param id
* @return * @return
*/ */
@DeleteMapping("/deleteById/{ids}") @DeleteMapping("/deleteByCostApplyId/{id}")
@SysLog(module = SystemModule.Budget, title = "费用合同", biz = BizType.DELETE) @SysLog(module = SystemModule.Budget, title = "费用合同", biz = BizType.DELETE)
@PreAuthorize("hasRole('tbs:costApply:delete')") @PreAuthorize("hasRole('tbs:costApply:delete')")
public R<?> deleteById(@PathVariable("ids") String ids){ public R<?> deleteById(@PathVariable("id") String id){
List<Long> idsLong = StringUtils.splitIdLong(ids); LambdaQueryWrapper<TbsCostContract> lqw = new LambdaQueryWrapper<>();
boolean result = tbsCostContractService.removeByIds(idsLong); lqw.eq(TbsCostContract::getCostApplyId,id);
boolean result = tbsCostContractService.remove(lqw);
return R.isTrue(result); return R.isTrue(result);
} }

7
src/main/java/com/qs/serve/modules/tbs/entity/TbsCostApply.java

@ -81,6 +81,11 @@ public class TbsCostApply implements Serializable {
private String syFlowId; private String syFlowId;
/**
* 合同类型:0->1->有合同
*/
private Integer contractFlag;
/** 创建时间 */ /** 创建时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ -126,5 +131,7 @@ public class TbsCostApply implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private String affairId; private String affairId;
@TableField(exist = false)
private Object contractInfo;
} }

12
src/main/java/com/qs/serve/modules/tbs/entity/TbsCostContract.java

@ -54,14 +54,14 @@ public class TbsCostContract implements Serializable {
private String[] attachIds; private String[] attachIds;
/** 签约时间 */ /** 签约时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
private LocalDateTime signTime; private LocalDate signTime;
/** 到期时间 */ /** 到期时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
private LocalDateTime expireTime; private LocalDate expireTime;
/** 备注 */ /** 备注 */
@Length(max = 255,message = "备注长度不能超过255字") @Length(max = 255,message = "备注长度不能超过255字")

5
src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsCostApplyBo.java

@ -41,5 +41,10 @@ public class TbsCostApplyBo implements Serializable {
@Length(max = 255,message = "备注长度不能超过255字") @Length(max = 255,message = "备注长度不能超过255字")
private String remark; private String remark;
/**
* 合同类型:0->1->有合同
*/
private Integer contractFlag;
} }

10
src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsCostContractBo.java

@ -25,8 +25,6 @@ public class TbsCostContractBo implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/** id */
private Long id;
/** 费用申请id */ /** 费用申请id */
@NotNull(message = "费用申请id不能为空") @NotNull(message = "费用申请id不能为空")
@ -46,12 +44,12 @@ public class TbsCostContractBo implements Serializable {
private String[] attachIds; private String[] attachIds;
/** 签约时间 */ /** 签约时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd")
private LocalDateTime signTime; private LocalDate signTime;
/** 到期时间 */ /** 到期时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd")
private LocalDateTime expireTime; private LocalDate expireTime;
} }

2
src/main/java/com/qs/serve/modules/tbs/service/TbsCostContractService.java

@ -10,5 +10,7 @@ import com.qs.serve.modules.tbs.entity.TbsCostContract;
*/ */
public interface TbsCostContractService extends IService<TbsCostContract> { public interface TbsCostContractService extends IService<TbsCostContract> {
TbsCostContract getByCostApplyId(Long id);
} }

21
src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostContractServiceImpl.java

@ -1,6 +1,10 @@
package com.qs.serve.modules.tbs.service.impl; package com.qs.serve.modules.tbs.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.qs.serve.common.util.CollectionUtil;
import com.qs.serve.modules.sys.entity.SysAttach;
import com.qs.serve.modules.sys.service.SysAttachService;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -8,6 +12,9 @@ import com.qs.serve.modules.tbs.entity.TbsCostContract;
import com.qs.serve.modules.tbs.service.TbsCostContractService; import com.qs.serve.modules.tbs.service.TbsCostContractService;
import com.qs.serve.modules.tbs.mapper.TbsCostContractMapper; import com.qs.serve.modules.tbs.mapper.TbsCostContractMapper;
import java.util.Arrays;
import java.util.List;
/** /**
* 费用合同 服务实现类 * 费用合同 服务实现类
* @author YenHex * @author YenHex
@ -18,5 +25,19 @@ import com.qs.serve.modules.tbs.mapper.TbsCostContractMapper;
@AllArgsConstructor @AllArgsConstructor
public class TbsCostContractServiceImpl extends ServiceImpl<TbsCostContractMapper,TbsCostContract> implements TbsCostContractService { public class TbsCostContractServiceImpl extends ServiceImpl<TbsCostContractMapper,TbsCostContract> implements TbsCostContractService {
private SysAttachService attachService;
@Override
public TbsCostContract getByCostApplyId(Long id) {
LambdaQueryWrapper<TbsCostContract> lqw = new LambdaQueryWrapper<>();
lqw.eq(TbsCostContract::getCostApplyId,id);
TbsCostContract contract = this.getOne(lqw,false);
if(contract!=null&&CollectionUtil.isNotEmpty(contract.getAttachIds())){
List<String> attachIds = Arrays.asList(contract.getAttachIds());
List<SysAttach> attachList = attachService.listByIds(attachIds);
contract.setAttachInfoList(attachList);
}
return contract;
}
} }

Loading…
Cancel
Save