diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java index a9de5997..03c3441f 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java @@ -261,6 +261,16 @@ public class PayIncomeContractController extends JeroController editContractNum(@RequestBody PayIncomeContract contract) { + payIncomeContractService.editContractNum(contract); + return Result.OK("编辑成功!"); + } + + /** * 关联项目列表 * diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPayIncomeContractService.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPayIncomeContractService.java index b25d4e3c..9180e1dd 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPayIncomeContractService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPayIncomeContractService.java @@ -69,6 +69,13 @@ public interface IPayIncomeContractService extends IService { * @Exception */ void editPayIncomeContractInput(PayIncomeContractInput input); + + /** + * 编辑合同编号 + * @param contract + */ + void editContractNum(PayIncomeContract contract); + /** * @Description 收入合同-关联 * @Author lqt 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 e566f456..d578fded 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 @@ -366,6 +366,53 @@ public class PayIncomeContractServiceImpl extends ServiceImpl query = new LambdaQueryWrapper<>(); + query.eq(PayIncomeContract::getContractNum, newContractNum); + query.ne(PayIncomeContract::getId,id); + int count = payIncomeContractService.count(query); + if (count > 0){ + throw new JeroBootException("合同编号已存在!"); + } + //更新合同编号 + LambdaUpdateWrapper update = new LambdaUpdateWrapper<>(); + update.set(PayIncomeContract::getContractNum, newContractNum); + update.eq(PayIncomeContract::getId,id); + payIncomeContractService.update(update); + //关联项目更新合同编号 + // 普通项目 + LambdaUpdateWrapper updatePayCommonProject = new LambdaUpdateWrapper<>(); + updatePayCommonProject.set(PayCommonProject::getContractNum,newContractNum); + updatePayCommonProject.eq(PayCommonProject::getContractNum,oldContractNum); + payCommonProjectService.update(updatePayCommonProject); + // 工作组项目 + LambdaUpdateWrapper updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>(); + updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getContractNum,newContractNum); + updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getContractNum,oldContractNum); + payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem); + //会员项目 + LambdaUpdateWrapper updatePayMemberProjectSubitem = new LambdaUpdateWrapper<>(); + updatePayMemberProjectSubitem.set(PayMemberProjectSubitem::getContractNo,newContractNum); + updatePayMemberProjectSubitem.eq(PayMemberProjectSubitem::getContractNo,oldContractNum); + memberProjectSubitemService.update(updatePayMemberProjectSubitem); + } + @Override @Transactional public void associated(List listPayIncomeContractAssociated) {