From 452ad387971b130e62d834aac2c2b96b399b37c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Wed, 15 Sep 2021 18:01:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=81=E4=B8=9A=E7=AE=A1=E7=90=86=E5=8F=98?= =?UTF-8?q?=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/PayCompanyManagementCommon.java | 16 ++- .../common/PayContactsManagementCommon.java | 16 --- .../PayCompanyManagementController.java | 129 ++++++++++++++---- .../PayContactsManagementController.java | 14 -- .../company/entity/PayCompanyManagement.java | 28 ++-- .../company/entity/PayContactsManagement.java | 10 -- .../xml/PayContactsManagementMapper.xml | 8 -- .../impl/PayIncomeContractServiceImpl.java | 83 ++++++----- 8 files changed, 167 insertions(+), 137 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/company/common/PayCompanyManagementCommon.java b/jero-boot-incoming-payment/src/main/java/com/jero/company/common/PayCompanyManagementCommon.java index 7b07b564..41c527ec 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/company/common/PayCompanyManagementCommon.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/company/common/PayCompanyManagementCommon.java @@ -2,19 +2,23 @@ package com.jero.company.common; public class PayCompanyManagementCommon { /** - * (1:管理端,2:报名) + * 数据来源(1:财务人员,2:其他人) */ public final static Integer DATA_SOURCE1 = 1; /** - * (1:管理端,2:报名) + * 数据来源(1:财务人员,2:其他人) */ public final static Integer DATA_SOURCE2 = 2; /** - * 报名新增(1:是,0:否) + * 审核状态(1:通过,2:待审核)财务人员添加企业不需要审核默认是通过状态 */ - public final static Integer SIGNING_UP1 = 1; + public final static Integer STATUS1 = 1; /** - * 报名新增(1:是,0:否) + * 审核状态(1:通过,2:待审核)财务人员添加企业不需要审核默认是通过状态 */ - public final static Integer SIGNING_UP0 = 0; + public final static Integer STATUS2 = 1; + /** + * 财务角色 + */ + public final static String ROLE_CODE = ""; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/company/common/PayContactsManagementCommon.java b/jero-boot-incoming-payment/src/main/java/com/jero/company/common/PayContactsManagementCommon.java index d76b5145..695089c5 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/company/common/PayContactsManagementCommon.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/company/common/PayContactsManagementCommon.java @@ -1,22 +1,6 @@ package com.jero.company.common; public class PayContactsManagementCommon { - /** - * (1:管理端,2:报名) - */ - public final static Integer DATA_SOURCE1 = 1; - /** - * (1:管理端,2:报名) - */ - public final static Integer DATA_SOURCE2 = 2; - /** - * 报名新增(1:是,0:否) - */ - public final static Integer SIGNING_UP1 = 1; - /** - * 报名新增(1:是,0:否) - */ - public final static Integer SIGNING_UP0 = 0; /** * 性别(1:男,2:女) */ diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayCompanyManagementController.java b/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayCompanyManagementController.java index 50959864..48b173a0 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayCompanyManagementController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayCompanyManagementController.java @@ -8,6 +8,7 @@ import javax.servlet.http.HttpServletResponse; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; @@ -18,6 +19,7 @@ import com.jero.common.util.PasswordUtil; import com.jero.common.util.ValidUtil; import com.jero.common.util.oConvertUtils; import com.jero.company.common.PayCompanyManagementCommon; +import com.jero.company.common.PayContactsManagementCommon; import com.jero.company.entity.PayCompanyManagement; import com.jero.company.service.IPayCompanyManagementService; import org.apache.commons.collections.CollectionUtils; @@ -105,28 +107,41 @@ public class PayCompanyManagementController extends JeroController queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(PayCompanyManagement::getCompanyName,payCompanyManagement.getCompanyName()); - payCompanyManagementNew = payCompanyManagementService.getOne(queryWrapper); + PayCompanyManagement payCompanyManagementNew = payCompanyManagementService.getOne(queryWrapper); + // 存在数据 + if(!Objects.isNull(payCompanyManagementNew)){ + return Result.error("该企业名称已存在!"); + } }catch (Exception e){ log.info("企业管理-添加异常",e); return Result.error("该企业名称已存在!"); } - // 存在数据 - if(!Objects.isNull(payCompanyManagementNew)){ - // 如果是管理新增 && 已存在数据来源是报名,更新数据,变更来源为管理端 - if(Objects.equals(payCompanyManagement.getDataSource(),PayCompanyManagementCommon.DATA_SOURCE1) - && Objects.equals(payCompanyManagementNew.getDataSource(),PayCompanyManagementCommon.DATA_SOURCE2)){ - payCompanyManagement.setId(payCompanyManagementNew.getId()); - payCompanyManagement.setDataSource(PayCompanyManagementCommon.DATA_SOURCE1); - payCompanyManagement.setSigningUp(payCompanyManagementNew.getSigningUp()); - payCompanyManagementService.updateById(payCompanyManagement); - return Result.OK("添加成功!"); + try { + // 新增企业前在次校验信用代码是否存在 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(PayCompanyManagement::getDutyCode,payCompanyManagement.getDutyCode()); + PayCompanyManagement payCompanyManagementNew = payCompanyManagementService.getOne(queryWrapper); + // 存在数据 + if(!Objects.isNull(payCompanyManagementNew)){ + return Result.error("该信用代码已存在!"); } - return Result.error("该企业名称已存在!"); + }catch (Exception e){ + log.info("企业管理-添加异常",e); + return Result.error("该信用代码已存在!"); } if(!StringUtils.isBlank(payCompanyManagement.getCompanyPhone())){ try { @@ -152,6 +167,16 @@ public class PayCompanyManagementController extends JeroController queryWrapper = new LambdaQueryWrapper<>(); @@ -175,7 +200,27 @@ public class PayCompanyManagementController extends JeroController audit(@RequestParam(name="id") String id) { + if(StringUtils.isBlank(id)){ + return Result.error("id不能为空!"); + } + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + LambdaUpdateWrapper updatePayCompanyManagement = new LambdaUpdateWrapper<>(); + updatePayCompanyManagement.eq(PayCompanyManagement::getId,id); + updatePayCompanyManagement.set(PayCompanyManagement::getStatus,PayCompanyManagementCommon.STATUS1); + updatePayCompanyManagement.set(PayCompanyManagement::getUpdateBy,sysUser.getUsername()); + updatePayCompanyManagement.set(PayCompanyManagement::getUpdateTime,new Date()); + payCompanyManagementService.update(updatePayCompanyManagement); + return Result.OK("审核成功!"); + } /** * 通过id删除 * @@ -214,6 +259,36 @@ public class PayCompanyManagementController extends JeroController queryByDutyCode(@RequestParam(name="dutyCode") String dutyCode) { + if(StringUtils.isBlank(dutyCode)){ + return Result.error("信用代码不能为空!"); + }else{ + if(dutyCode.length() > 50){ + return Result.error("信用代码长度应小于50字符!"); + } + } + try { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(PayCompanyManagement::getDutyCode,dutyCode); + PayCompanyManagement payCompanyManagement = payCompanyManagementService.getOne(queryWrapper); + if(Objects.isNull(payCompanyManagement)) { + return Result.OK("没有该信用代码!"); + } + }catch (Exception e){ + log.info("企业管理-通过信用代码查询",e); + return Result.error("该信用代码已存在!"); + } + return Result.error("该信用代码已存在!"); + } + /** * 通过企业名称查询 * @@ -233,7 +308,6 @@ public class PayCompanyManagementController extends JeroController queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(PayCompanyManagement::getCompanyName,companyName); - queryWrapper.eq(PayCompanyManagement::getDataSource,PayCompanyManagementCommon.DATA_SOURCE1); PayCompanyManagement payCompanyManagement = payCompanyManagementService.getOne(queryWrapper); if(Objects.isNull(payCompanyManagement)) { return Result.OK("没有该企业名称!"); @@ -272,7 +346,6 @@ public class PayCompanyManagementController extends JeroController queryWrapper = QueryGenerator.initQueryWrapper(payCompanyManagement, request.getParameterMap()); - LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // Step.2 获取导出数据 List pageList = payCompanyManagementService.list(queryWrapper); @@ -326,6 +399,14 @@ public class PayCompanyManagementController extends JeroController importExcel(HttpServletRequest request) { + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + // 查看角色是否为财务人员 + int dataSource = PayCompanyManagementCommon.DATA_SOURCE2; + int status = PayCompanyManagementCommon.STATUS2; + if(Objects.equals(sysUser.getRoleCode(),PayCompanyManagementCommon.ROLE_CODE)){ + dataSource = PayCompanyManagementCommon.DATA_SOURCE1; + status = PayCompanyManagementCommon.STATUS1; + } MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; Map fileMap = multipartRequest.getFileMap(); for (Map.Entry entity : fileMap.entrySet()) { @@ -347,6 +428,8 @@ public class PayCompanyManagementController extends JeroController listAll = payCompanyManagementService.listPayCompanyManagement(companyList); List listCompany = new ArrayList<>(); StringBuilder msg = new StringBuilder(); + int finalDataSource = dataSource; + int finalStatus = status; list.forEach(p->{ int count = list.indexOf(p); // 校验excel表中是否存在重复企业名称 @@ -354,8 +437,8 @@ public class PayCompanyManagementController extends JeroController"); } listCompany.add(p.getCompanyName()); - p.setDataSource(PayCompanyManagementCommon.DATA_SOURCE1); - p.setSigningUp(PayCompanyManagementCommon.SIGNING_UP0); + p.setDataSource(finalDataSource); + p.setStatus(finalStatus); // 校验字段值 StringBuilder s = ValidUtil.validateExcel(p,(count+3)); if(!StringUtils.isBlank(s)){ @@ -365,16 +448,6 @@ public class PayCompanyManagementController extends JeroController listCompanyEquals = listAll.stream().filter(p1->Objects.equals(p1.getCompanyName(),p.getCompanyName())).collect(Collectors.toList()); if(!CollectionUtils.isEmpty(listCompanyEquals)){ - // 已存在数据来源是报名,变更来源为管理端,替换掉数据 - if(Objects.equals(listCompanyEquals.get(0).getDataSource(),PayCompanyManagementCommon.DATA_SOURCE2)){ - String str = JSON.toJSONString(p); - PayCompanyManagement payCompanyManagement = JSON.parseObject(str,PayCompanyManagement.class); - payCompanyManagement.setId(listCompanyEquals.get(0).getId()); - payCompanyManagement.setSigningUp(listCompanyEquals.get(0).getSigningUp()); - listSigning.add(payCompanyManagement); - listRemove.add(p); - return; - } msg.append("第").append(count + 3).append("行:企业名称已经存在,请修改。
"); } } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java b/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java index 96430c05..66bb8c71 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java @@ -286,7 +286,6 @@ public class PayContactsManagementController extends JeroController queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(PayContactsManagement::getPhone,phoneNew); - queryWrapper.eq(PayContactsManagement::getDataSource,PayContactsManagementCommon.DATA_SOURCE1); PayContactsManagement payContactsManagement = payContactsManagementService.getOne(queryWrapper); if(Objects.isNull(payContactsManagement)) { return Result.OK("没有该手机号!"); @@ -319,7 +318,6 @@ public class PayContactsManagementController extends JeroController queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(PayContactsManagement::getName,name); queryWrapper.eq(PayContactsManagement::getCompanyId,companyId); - queryWrapper.eq(PayContactsManagement::getDataSource,PayContactsManagementCommon.DATA_SOURCE1); PayContactsManagement payContactsManagement = payContactsManagementService.getOne(queryWrapper); if(Objects.isNull(payContactsManagement)) { return Result.OK("没有该联系人姓名!"); @@ -474,8 +472,6 @@ public class PayContactsManagementController extends JeroController"); } listContacts.add(p); - p.setDataSource(PayContactsManagementCommon.DATA_SOURCE1); - p.setSigningUp(PayContactsManagementCommon.SIGNING_UP0); // 校验字段值 StringBuilder s = ValidUtil.validateExcel(p,(count+3)); if(!StringUtils.isBlank(s)){ @@ -495,16 +491,6 @@ public class PayContactsManagementController extends JeroController listCompanyEquals = listContactsAll.stream().filter(p1->Objects.equals(p1.getPhone(),p.getPhone())).collect(Collectors.toList()); if(!CollectionUtils.isEmpty(listCompanyEquals)){ - // 已存在数据来源是报名,变更来源为管理端,替换掉数据 - if(Objects.equals(listCompanyEquals.get(0).getDataSource(),PayContactsManagementCommon.DATA_SOURCE2)){ - String str = JSON.toJSONString(p); - PayContactsManagement payContactsManagement = JSON.parseObject(str,PayContactsManagement.class); - payContactsManagement.setId(listCompanyEquals.get(0).getId()); - payContactsManagement.setSigningUp(listCompanyEquals.get(0).getSigningUp()); - listSigning.add(payContactsManagement); - listRemove.add(p); - return; - } msg.append("第").append(count + 3).append("行:手机号已经存在,请修改。
"); } List listContactsEquals = listContactsAll.stream().filter(p1->Objects.equals(p1.getCompanyId(),p.getCompanyId()) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/company/entity/PayCompanyManagement.java b/jero-boot-incoming-payment/src/main/java/com/jero/company/entity/PayCompanyManagement.java index 5e9f6032..dd8c38ab 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/company/entity/PayCompanyManagement.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/company/entity/PayCompanyManagement.java @@ -5,6 +5,7 @@ import java.util.Date; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.jero.common.aspect.annotation.Dict; import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; import org.springframework.format.annotation.DateTimeFormat; @@ -79,23 +80,24 @@ public class PayCompanyManagement implements Serializable { @Size(max = 50, message = "银行账号长度不能大于50个字符") @Pattern(regexp = "^[0-9]*$",message = "银行账号格式错误") private String bankAccount; - /**税号*/ - @Excel(name = "税号", width = 15) - @ApiModelProperty(value = "税号") - @NotEmpty(message = "税号不能为空!") - @Size(max = 50, message = "税号长度不能大于50个字符") - @Pattern(regexp = "^[A-Z0-9]{15}$|^[A-Z0-9]{17}$|^[A-Z0-9]{18}$|^[A-Z0-9]{20}$",message = "税号格式错误") + /**信用代码*/ + @Excel(name = "信用代码", width = 15) + @ApiModelProperty(value = "信用代码") + @NotEmpty(message = "信用代码不能为空!") + @Size(max = 50, message = "信用代码长度不能大于50个字符") + @Pattern(regexp = "^[A-Z0-9]{15}$|^[A-Z0-9]{17}$|^[A-Z0-9]{18}$|^[A-Z0-9]{20}$",message = "信用代码格式错误") private String dutyCode; - /**数据来源(1:管理端,2:报名)*/ - @ApiModelProperty(value = "数据来源(1:管理端,2:报名)") + /**审核状态(1:通过,2:待审核)财务人员添加企业不需要审核默认是通过状态*/ + @ApiModelProperty(value = "审核状态(1:通过,2:待审核)财务人员添加企业不需要审核默认是通过状态") + @Max(2) + @Min(1) + @Dict(dicCode = "company_aduit_status") + private Integer status; + /**数据来源(1:财务人员,2:其他人)*/ + @ApiModelProperty(value = "数据来源(1:财务人员,2:其他人)") @Max(2) @Min(1) private Integer dataSource; - /**报名新增(1:是,0:否)*/ - @ApiModelProperty(value = "报名新增(1:是,0:否)") - @Max(1) - @Min(0) - private Integer signingUp; /**备注*/ @Excel(name = "备注", width = 15) @ApiModelProperty(value = "备注") diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/company/entity/PayContactsManagement.java b/jero-boot-incoming-payment/src/main/java/com/jero/company/entity/PayContactsManagement.java index 6dd75082..4974d2cd 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/company/entity/PayContactsManagement.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/company/entity/PayContactsManagement.java @@ -85,16 +85,6 @@ public class PayContactsManagement implements Serializable { @Pattern(regexp = "^[0-9]\\d{5}$",message = "邮编格式错误") @NotEmpty(message = "邮政编码不能为空!") private String postalCode; - /**数据来源(1:管理端,2:报名)*/ - @ApiModelProperty(value = "数据来源(1:管理端,2:报名)") - @Max(2) - @Min(1) - private Integer dataSource; - /**报名新增(1:是,0:否)*/ - @ApiModelProperty(value = "报名新增(1:是,0:否)") - @Max(1) - @Min(0) - private Integer signingUp; /**备注*/ @Excel(name = "备注", width = 15) @ApiModelProperty(value = "备注") diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/company/mapper/xml/PayContactsManagementMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/company/mapper/xml/PayContactsManagementMapper.xml index b52a2d76..e1253cd6 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/company/mapper/xml/PayContactsManagementMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/company/mapper/xml/PayContactsManagementMapper.xml @@ -14,8 +14,6 @@ pcm.email, pcm.contact_address AS contactAddress, pcm.postal_code AS postalCode, - pcm.data_source AS dataSource, - pcm.signing_up AS signingUp, pcm.remarks, pcm.create_by AS createBy, pcm.create_time AS createTime, @@ -24,12 +22,6 @@ FROM pay_contacts_management pcm LEFT JOIN pay_company_management pcm1 ON pcm.company_id = pcm1.id - - AND pcm.data_source = #{payContactsManagement.dataSource} - - - AND pcm.signing_up = #{payContactsManagement.signingUp} - AND pcm.name LIKE concat('%',concat(#{payContactsManagement.name},'%')) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java index b232ec44..9604b542 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java @@ -27,7 +27,6 @@ import com.jero.pack.entity.PayPackCompany; import com.jero.pack.entity.PayPackCompanyProject; import com.jero.pack.service.IPayPackCompanyProjectService; import com.jero.pack.service.IPayPackCompanyService; -import com.jero.project.common.PayProjectCommon; import com.jero.project.entity.PayCommonProject; import com.jero.project.entity.PayWorkingGroup; import com.jero.project.entity.PayWorkingGroupSubItem; @@ -143,25 +142,10 @@ public class PayIncomeContractServiceImpl extends ServiceImpl finalListPayIncomeContractInstallment = listPayIncomeContractInstallment; - listPayIncomeContractInstallment.forEach(p->{ - p.setContractId(payIncomeContract.getId()); - StringBuilder sb = ValidUtil.validateAll(p); - if(!StringUtils.isBlank(sb)){ - msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("阶段:").append(sb); - } - if(!Objects.isNull(p.getAccountsReceivableAmount()) && !Objects.isNull(p.getPaidAmount()) - && p.getAccountsReceivableAmount().compareTo(p.getPaidAmount()) == -1){ - msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("期应收金额大于已收金额!"); - } - }); - payIncomeContractInstallmentService.saveBatch(listPayIncomeContractInstallment); - } - if(!StringUtils.isBlank(msgPayIncomeContractInstallment)){ - throw new JeroBootException(msgPayIncomeContractInstallment.toString()); - } + + // 校验金额 + checkPayIncomeContractInstallment(listPayIncomeContractInstallment,payIncomeContract); + // 选择了打包,创建打包企业 if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){ LambdaQueryWrapper queryPayPackCompany = new LambdaQueryWrapper<>(); @@ -187,6 +171,28 @@ public class PayIncomeContractServiceImpl extends ServiceImpl listPayIncomeContractInstallment,PayIncomeContract payIncomeContract){ + if(!CollectionUtils.isEmpty(listPayIncomeContractInstallment)){ + StringBuilder msgPayIncomeContractInstallment = new StringBuilder(); + List finalListPayIncomeContractInstallment = listPayIncomeContractInstallment; + listPayIncomeContractInstallment.forEach(p->{ + p.setContractId(payIncomeContract.getId()); + StringBuilder sb = ValidUtil.validateAll(p); + if(!StringUtils.isBlank(sb)){ + msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("阶段:").append(sb); + } + if(!Objects.isNull(p.getAccountsReceivableAmount()) && !Objects.isNull(p.getPaidAmount()) + && p.getAccountsReceivableAmount().compareTo(p.getPaidAmount()) == -1){ + msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("期应收金额大于已收金额!"); + } + }); + if(!StringUtils.isBlank(msgPayIncomeContractInstallment)){ + throw new JeroBootException(msgPayIncomeContractInstallment.toString()); + } + payIncomeContractInstallmentService.saveBatch(listPayIncomeContractInstallment); + } + } + @Override @Transactional public void editPayIncomeContractInput(PayIncomeContractInput input) { @@ -212,6 +218,15 @@ public class PayIncomeContractServiceImpl extends ServiceImpl queryPayIncomeContractInstallment = new LambdaQueryWrapper<>(); queryPayIncomeContractInstallment.eq(PayIncomeContractInstallment::getContractId,payIncomeContract.getId()); @@ -251,25 +265,8 @@ public class PayIncomeContractServiceImpl extends ServiceImpl list = listPayIncomeContractInstallmentOld.stream().map(PayIncomeContractInstallment::getId).collect(Collectors.toList()); payIncomeContractInstallmentService.removeByIds(list); } - // 新增 - if(!CollectionUtils.isEmpty(listPayIncomeContractInstallment)){ - List finalListPayIncomeContractInstallment = listPayIncomeContractInstallment; - listPayIncomeContractInstallment.forEach(p->{ - p.setContractId(payIncomeContract.getId()); - StringBuilder sb = ValidUtil.validateAll(p); - if(!StringUtils.isBlank(sb)){ - msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("阶段:").append(sb); - } - if(!Objects.isNull(p.getAccountsReceivableAmount()) && !Objects.isNull(p.getPaidAmount()) - && p.getAccountsReceivableAmount().compareTo(p.getPaidAmount()) == -1){ - msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("期应收金额大于已收金额!"); - } - }); - payIncomeContractInstallmentService.saveBatch(listPayIncomeContractInstallment); - } - if(!StringUtils.isBlank(msgPayIncomeContractInstallment)){ - throw new JeroBootException(msgPayIncomeContractInstallment.toString()); - } + // 校验金额 + checkPayIncomeContractInstallment(listPayIncomeContractInstallment,payIncomeContract); setPayIncomeContract(payIncomeContract); payIncomeContractService.updateById(payIncomeContract); } @@ -383,8 +380,10 @@ public class PayIncomeContractServiceImpl extends ServiceImpl