生成合同

This commit is contained in:
1073413548 2024-08-27 10:49:23 +08:00
parent f42d14706b
commit 90c7c0a5b4
5 changed files with 37 additions and 11 deletions

View File

@ -88,7 +88,7 @@ public class PsContractOperateController extends BaseController {
} }
/** /**
* 回传合同 * 确认单
*/ */
@SaCheckPermission("business:contractOperate:confirm") @SaCheckPermission("business:contractOperate:confirm")
@PostMapping(value = "/confirm", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) @PostMapping(value = "/confirm", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)

View File

@ -13,8 +13,12 @@ public class MediaCompanySaveBo {
/** /**
* 主任务表id * 主任务表id
*/ */
@NotNull
private Long id; private Long id;
/**
* 合同编号
*/
private String contractCode;
/** /**
* 公司信息 * 公司信息
*/ */

View File

@ -51,8 +51,10 @@ public abstract class ApproverAbstractServiceImpl implements ApproverService {
* @param updateData * @param updateData
*/ */
public void apply(String bussinessId,String contractCode, String desc, String updateData){ public void apply(String bussinessId,String contractCode, String desc, String updateData){
//退款审批时用 合同编号进行查询校验
List<PsApproverRecord> list = approverRecordMapper.selectList(Wrappers.<PsApproverRecord>lambdaQuery().eq(PsApproverRecord::getDelFlag, "0") List<PsApproverRecord> list = approverRecordMapper.selectList(Wrappers.<PsApproverRecord>lambdaQuery().eq(PsApproverRecord::getDelFlag, "0")
.eq(PsApproverRecord::getBusinessId, bussinessId).eq(PsApproverRecord::getBusinessType,approverType()) .eq(PsApproverRecord::getBusinessId, StringUtils.equals(approverType(),ApproverTypeEnum.RETURN.getCode())?contractCode:bussinessId)
.eq(PsApproverRecord::getBusinessType,approverType())
.eq(PsApproverRecord::getApproverStatus, ApproverStatusEnum.INIT.getCode())); .eq(PsApproverRecord::getApproverStatus, ApproverStatusEnum.INIT.getCode()));
if(CollectionUtils.isNotEmpty(list)){ if(CollectionUtils.isNotEmpty(list)){
throw new ServiceException("已存在同类型审批,请勿重复提交"); throw new ServiceException("已存在同类型审批,请勿重复提交");

View File

@ -92,6 +92,9 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
public Long createContract(PsContractInfoBo bo,Integer type) { public Long createContract(PsContractInfoBo bo,Integer type) {
//1校验 //1校验
PsContractInfo add = validEntity(bo,UserConstants.YES); PsContractInfo add = validEntity(bo,UserConstants.YES);
if(bo.getCompanyInfoBo().getCustomId() == null){
bo.getCompanyInfoBo().setCustomId(bo.getCustomId());
}
//2.插入公司信息 //2.插入公司信息
companyInfoService.saveBo(bo.getCompanyInfoBo()); companyInfoService.saveBo(bo.getCompanyInfoBo());
//3.如果已存在合同则进行修改否则新增 //3.如果已存在合同则进行修改否则新增
@ -256,6 +259,9 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
PsContractInfoVo src = queryContractByCode(bo.getContractCode()); PsContractInfoVo src = queryContractByCode(bo.getContractCode());
//2校验状态 //2校验状态
beforeUpdateValid(bo, src); beforeUpdateValid(bo, src);
if(bo.getCompanyInfoBo().getCustomId() == null){
bo.getCompanyInfoBo().setCustomId(bo.getCustomId());
}
//3.插入公司信息 //3.插入公司信息
companyInfoService.saveBo(bo.getCompanyInfoBo()); companyInfoService.saveBo(bo.getCompanyInfoBo());
//4.装填合同信息 //4.装填合同信息

View File

@ -195,12 +195,26 @@ public class PsTaskServiceImpl implements IPsTaskService {
@Transactional @Transactional
public void saveInfo(MediaCompanySaveBo save){ public void saveInfo(MediaCompanySaveBo save){
//1.1信息校验 //1.1信息校验
PsTaskMain taskMain = baseMapper.selectById(save.getId()); Long customerId ;
if(!TaskStatusEnum.canUpload(taskMain.getTaskStatus())){ Long companyId ;
log.error("任务已完成,无法修改"); if(save.getId() != null){
throw new ServiceException("任务已完成,无法修改"); PsTaskMain taskMain = baseMapper.selectById(save.getId());
if(!TaskStatusEnum.canUpload(taskMain.getTaskStatus())){
log.error("任务已完成,无法修改");
throw new ServiceException("任务已完成,无法修改");
}
customerId=taskMain.getCustomId();
companyId=taskMain.getCompanyId();
}else if(StringUtils.isNotBlank(save.getContractCode())){
PsContractInfo con = contractInfoMapper.selectOne(Wrappers.<PsContractInfo>lambdaQuery().eq(PsContractInfo::getContractCode, save.getContractCode()));
customerId=con.getCustomId();
companyId=con.getCompanyId();
}else{
log.error("必传参数为空");
throw new ServiceException("必传参数为空");
} }
save.getPsCompanyInfo().setId(taskMain.getCompanyId());
save.getPsCompanyInfo().setId(companyId);
if(!CollectionUtils.isEmpty(save.getMediaBoList())){ if(!CollectionUtils.isEmpty(save.getMediaBoList())){
boolean repetition = save.getMediaBoList().stream().map(PsTaskMediaBo::getMediaType) boolean repetition = save.getMediaBoList().stream().map(PsTaskMediaBo::getMediaType)
.collect(Collectors.groupingBy(Function.identity(), Collectors.counting())) .collect(Collectors.groupingBy(Function.identity(), Collectors.counting()))
@ -217,12 +231,12 @@ public class PsTaskServiceImpl implements IPsTaskService {
return; return;
} }
//2.1查询原始的合同资料信息 //2.1查询原始的合同资料信息
List<PsTaskMediaVo> mediaList = mediaService.queryMediaList(taskMain.getCustomId(),taskMain.getCompanyId()); List<PsTaskMediaVo> mediaList = mediaService.queryMediaList(customerId,companyId);
//此次需要保存的资料id后续删除使用 //此次需要保存的资料id后续删除使用
List<String> ossIdList = new ArrayList<>(); List<String> ossIdList = new ArrayList<>();
save.getMediaBoList().forEach(item->{ save.getMediaBoList().forEach(item->{
item.setCustomId(taskMain.getCustomId()); item.setCustomId(customerId);
item.setCompanyId(taskMain.getCompanyId()); item.setCompanyId(companyId);
if(StringUtils.isNotBlank(item.getMediaOssId()) && !StringUtils.equals("-1",item.getMediaOssId())){ if(StringUtils.isNotBlank(item.getMediaOssId()) && !StringUtils.equals("-1",item.getMediaOssId())){
ossIdList.addAll(List.of(item.getMediaOssId().split(","))); ossIdList.addAll(List.of(item.getMediaOssId().split(",")));
} }