From 21d2f9c83dd6126cf4e2f8a8f99975195a0c39d4 Mon Sep 17 00:00:00 2001 From: sunzheng Date: Thu, 11 Jan 2024 10:15:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=B5=B7=E8=8D=89=E7=BB=84?= =?UTF-8?q?=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/xml/PayDraftingGroupMapper.xml | 9 ++- .../impl/PayDraftingGroupServiceImpl.java | 79 ++++++++++++------- 2 files changed, 57 insertions(+), 31 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/drafting/mapper/xml/PayDraftingGroupMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/drafting/mapper/xml/PayDraftingGroupMapper.xml index fd3940c6..16d4d12c 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/drafting/mapper/xml/PayDraftingGroupMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/drafting/mapper/xml/PayDraftingGroupMapper.xml @@ -25,12 +25,18 @@ left join sys_user su on pdg.principal_id_a = su.id left join sys_user su1 on pdg.principal_id_b = su1.id left join pay_working_group pwg on pwg.id = pdg.working_group_id + + or (payDraftingGroup.companyName != null and payDraftingGroup.companyName != '')"> left join pay_drafting_group_subitem pdgs on pdg.id = pdgs.drafting_group_id left JOIN pay_drafting_group_subitem_contacts pdgsc on pdgsc.drafting_group_sub_id = pdgs.id + + + AND pdgs.check_result != 3 + AND drafting_group_project LIKE concat('%',concat(#{payDraftingGroup.draftingGroupProject},'%')) @@ -55,4 +61,5 @@ ORDER BY pdg.create_time DESC + diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/drafting/service/impl/PayDraftingGroupServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/drafting/service/impl/PayDraftingGroupServiceImpl.java index efe83b30..2c35b4aa 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/drafting/service/impl/PayDraftingGroupServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/drafting/service/impl/PayDraftingGroupServiceImpl.java @@ -16,6 +16,7 @@ import com.jero.common.service.RolePermissionService; import com.jero.common.system.vo.LoginUser; import com.jero.company.entity.PayContactsManagement; import com.jero.company.service.IPayContactsManagementService; +import com.jero.drafting.common.DraftingConstant; import com.jero.drafting.entity.PayDraftingGroup; import com.jero.drafting.entity.PayDraftingGroupResearchProject; import com.jero.drafting.entity.PayDraftingGroupSubItem; @@ -125,12 +126,13 @@ public class PayDraftingGroupServiceImpl extends ServiceImpl listPayDraftingGroupSubItem = payDraftingGroupSubItemService.list(query); if (!CollectionUtils.isEmpty(listPayDraftingGroupSubItem)) { - throw new JeroBootException(payDraftingGroupOld.getDraftingGroupProject() + "起草组下存在企业,不可进行删除!"); + for (PayDraftingGroupSubItem payDraftingGroupSubItem : listPayDraftingGroupSubItem) { + if (!Objects.equals(payDraftingGroupSubItem.getCheckResult(), DraftingConstant.CHECK_REJECTION)) { + throw new JeroBootException(payDraftingGroupOld.getDraftingGroupProject() + "起草组下存在企业,不可进行删除!"); + } + } } LambdaQueryWrapper meetingQuery = new LambdaQueryWrapper<>(); @@ -182,6 +188,11 @@ public class PayDraftingGroupServiceImpl extends ServiceImpl updatePayDraftingGroupSubItem = new LambdaUpdateWrapper<>(); updatePayDraftingGroupSubItem.eq(PayDraftingGroupSubItem::getDraftingGroupId, id); payDraftingGroupSubItemService.remove(updatePayDraftingGroupSubItem); + + LambdaUpdateWrapper updatePayDraftingGroupContacts = new LambdaUpdateWrapper<>(); + updatePayDraftingGroupContacts.eq(PayDraftingGroupSubItemContacts::getDraftingGroupId,id); + payDraftingGroupSubItemContactsMapper.delete(updatePayDraftingGroupContacts); + } /** @@ -206,7 +217,12 @@ public class PayDraftingGroupServiceImpl extends ServiceImpl listPayDraftingGroupSubItem = payDraftingGroupSubItemService.list(query); if (!CollectionUtils.isEmpty(listPayDraftingGroupSubItem)) { - sb1.append(payDraftingGroupOld.getDraftingGroupProject() + "起草组下存在企业,不可进行删除!
"); + for (PayDraftingGroupSubItem payDraftingGroupSubItem : listPayDraftingGroupSubItem) { + if (!Objects.equals(payDraftingGroupSubItem.getCheckResult(), DraftingConstant.CHECK_REJECTION)) { + sb1.append(payDraftingGroupOld.getDraftingGroupProject() + "起草组下存在企业,不可进行删除!
"); + break; + } + } } LambdaQueryWrapper meetingQuery = new LambdaQueryWrapper<>(); meetingQuery.eq(PayMeeting::getDraftingGroupId,p); @@ -226,6 +242,9 @@ public class PayDraftingGroupServiceImpl extends ServiceImpl updatePayDraftingGroupSubItem = new LambdaUpdateWrapper<>(); updatePayDraftingGroupSubItem.in(PayDraftingGroupSubItem::getDraftingGroupId, ids); payDraftingGroupSubItemService.remove(updatePayDraftingGroupSubItem); + LambdaUpdateWrapper updatePayDraftingGroupContacts = new LambdaUpdateWrapper<>(); + updatePayDraftingGroupContacts.in(PayDraftingGroupSubItemContacts::getDraftingGroupId,ids); + payDraftingGroupSubItemContactsMapper.delete(updatePayDraftingGroupContacts); } /** @@ -348,29 +367,29 @@ public class PayDraftingGroupServiceImpl extends ServiceImpl{ -// JSONObject json = new JSONObject(); -// json.put("type", ProjectCommon.PROJECT_TYPE7); -// json.put("DraftingGroupId",p.getDraftingGroupId()); -// json.put("projectId",p.getId()); -// json.put("path","/workTeam/WorkTeamDetail"); -// //新建项目 给企业联系人发消息 -// List itemContactsList = p.getPayDraftingGroupSubItemContactsList(); -// for (PayDraftingGroupSubItemContacts subItemContacts : itemContactsList) { -// PayContactsManagement payContactsManagement = payContactsManagementService.getById(subItemContacts.getContactsId()); -// if (!Objects.isNull(payContactsManagement)) { -// PaySendContactsMessageDTO paySendContactsMessageDTO = new PaySendContactsMessageDTO(); -// paySendContactsMessageDTO.setProjectName(payDraftingGroupOld.getDraftingGroupProject()); -// paySendContactsMessageDTO.setProjectId(p.getId()); -// paySendContactsMessageDTO.setEmail(payContactsManagement.getEmail()); -// paySendContactsMessageDTO.setUserId(payDraftingGroupOld.getPrincipalIdA()); -// paySendContactsMessageDTO.setPhone(payContactsManagement.getPhone()); -// paySendContactsMessageDTO.setFlag(ProjectCommon.FLAG0); -// paySendContactsMessageDTO.setJson(json); -// contractCreateProjectSendMessageService.createProjectSendMessageToContactsService(paySendContactsMessageDTO); -// } -// } -// }); + listPayDraftGroupSubItem.forEach(p->{ + JSONObject json = new JSONObject(); + json.put("type", ProjectCommon.PROJECT_TYPE7); + json.put("DraftingGroupId",p.getDraftingGroupId()); + json.put("projectId",p.getId()); + json.put("path","/workTeam/WorkTeamDetail"); + //新建项目 给企业联系人发消息 + List itemContactsList = p.getPayDraftingGroupSubItemContactsList(); + for (PayDraftingGroupSubItemContacts subItemContacts : itemContactsList) { + PayContactsManagement payContactsManagement = payContactsManagementService.getById(subItemContacts.getContactsId()); + if (!Objects.isNull(payContactsManagement)) { + PaySendContactsMessageDTO paySendContactsMessageDTO = new PaySendContactsMessageDTO(); + paySendContactsMessageDTO.setProjectName(payDraftingGroupOld.getDraftingGroupProject()); + paySendContactsMessageDTO.setProjectId(p.getId()); + paySendContactsMessageDTO.setEmail(payContactsManagement.getEmail()); + paySendContactsMessageDTO.setUserId(payDraftingGroupOld.getPrincipalIdA()); + paySendContactsMessageDTO.setPhone(payContactsManagement.getPhone()); + paySendContactsMessageDTO.setFlag(ProjectCommon.FLAG0); + paySendContactsMessageDTO.setJson(json); + contractCreateProjectSendMessageService.createProjectSendMessageToContactsService(paySendContactsMessageDTO); + } + } + }); } } }