From 48b7d38c9f0cc6882ce2306bedc51e1fc457528e Mon Sep 17 00:00:00 2001 From: lijiarao Date: Wed, 5 Jan 2022 14:29:14 +0800 Subject: [PATCH] =?UTF-8?q?add=20=E4=BC=9A=E8=AE=AE=E8=81=94=E7=B3=BB?= =?UTF-8?q?=E4=BA=BA=E6=96=B0=E5=A2=9E=EF=BC=8C=E5=88=A0=E9=99=A4=EF=BC=8C?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=8C=E5=AE=A1=E6=A0=B8=E7=9A=84=E5=8F=82?= =?UTF-8?q?=E4=BC=9A=E4=BA=BA=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/PayMeetingSituationServiceImpl.java | 63 +++++++++++++------ 1 file changed, 44 insertions(+), 19 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java index d5f92f66..4fcc9a98 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java @@ -45,8 +45,10 @@ import com.jero.mail.service.IPayMailBillService; import com.jero.meeting.common.MeetingCommon; import com.jero.meeting.common.MeetingSubitemCommon; import com.jero.meeting.entity.PayMeeting; +import com.jero.meeting.entity.PayMeetingContacts; import com.jero.meeting.entity.PayMeetingSituation; import com.jero.meeting.mapper.PayMeetingSituationMapper; +import com.jero.meeting.service.IPayMeetingContactsService; import com.jero.meeting.service.IPayMeetingService; import com.jero.meeting.service.IPayMeetingSituationService; import com.jero.meeting.valid.group.*; @@ -134,6 +136,8 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl queryWrapper1 = new LambdaQueryWrapper<>(); + queryWrapper1.eq(PayMeetingContacts::getMeetingId, meetingId1); + queryWrapper1.eq(PayMeetingContacts::getMeetingContactsId,loginUser.getId()); + boolean b = meetingContactsService.count(queryWrapper1) > 0; + if (!b && !Objects.equals(payMeeting1.getDirectorId(),loginUser.getId())) { + throw new JeroBootException("只有会议负责人,会议联系人可以新增参会人"); } } @@ -509,15 +517,19 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl queryWrapper1 = new LambdaQueryWrapper<>(); + queryWrapper1.eq(PayMeetingContacts::getMeetingId, payMeeting.getId()); + queryWrapper1.eq(PayMeetingContacts::getMeetingContactsId,sysUserId); + boolean b = meetingContactsService.count(queryWrapper1) > 0; if (meetingType.equals(MeetingCommon.INTERNATIONAL_MEETING)) { - //只有会议负责人,对接人可以审批 - if (!directorId.equals(sysUserId) && !sysUserId.equals(payMeetingSituation.getCompanyContactId())) { - throw new JeroBootException("只有会议负责人,对接人可以审批"); + //只有会议负责人,会议联系人,对接人可以审批 + if (!b && !directorId.equals(sysUserId) && !sysUserId.equals(payMeetingSituation.getCompanyContactId())) { + throw new JeroBootException("只有会议负责人,会议联系人,对接人可以审批"); } } else { - //只有会议负责人可以审批 - if (!directorId.equals(sysUserId)) { - throw new JeroBootException("只有会议负责人可以审批"); + //只有会议负责人,会议联系人可以审批 + if (!b && !directorId.equals(sysUserId)) { + throw new JeroBootException("只有会议负责人,会议联系人可以审批"); } } } @@ -889,15 +901,20 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl queryWrapper1 = new LambdaQueryWrapper<>(); + queryWrapper1.eq(PayMeetingContacts::getMeetingId, meetingId); + queryWrapper1.eq(PayMeetingContacts::getMeetingContactsId,sysUserId); + boolean b = meetingContactsService.count(queryWrapper1) > 0; if (meetingType.equals(MeetingCommon.INTERNATIONAL_MEETING)) { - //只有会议负责人,对接人,参会人可以修改 - if (!directorId.equals(sysUserId) && !sysUserId.equals(payMeetingSituation.getCompanyContactId()) && !sysUserId.equals(dockId)) { - throw new JeroBootException("只有会议负责人,对接人,参会人可以修改"); + //只有会议负责人,会议联系人,对接人,参会人可以修改 + if (!b && !directorId.equals(sysUserId) && !sysUserId.equals(payMeetingSituation.getCompanyContactId()) && !sysUserId.equals(dockId)) { + throw new JeroBootException("只有会议负责人,会议联系人,对接人,参会人可以修改"); } } else { - //只有会议负责人,参会人可以修改 + //只有会议负责人,会议联系人,参会人可以修改 if (!directorId.equals(sysUserId) && !sysUserId.equals(payMeetingSituation.getCompanyContactId())) { - throw new JeroBootException("只有会议负责人,参会人可以修改"); + throw new JeroBootException("只有会议负责人,会议联系人,参会人可以修改"); } } @@ -1289,9 +1306,13 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl queryWrapper1 = new LambdaQueryWrapper<>(); + queryWrapper1.eq(PayMeetingContacts::getMeetingId, meetingId); + queryWrapper1.eq(PayMeetingContacts::getMeetingContactsId,sysUserId); + boolean b = meetingContactsService.count(queryWrapper1) > 0; + if (!b && !payMeeting.getDirectorId().equals(sysUserId)) { + throw new JeroBootException("只有会议负责人,会议联系人可以删除"); } Integer inAccount = payMeetingSituation.getInAccount(); if (!inAccount.equals(PayProjectCommon.IN_ACCOUNT0)) { @@ -1363,9 +1384,13 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl queryWrapper1 = new LambdaQueryWrapper<>(); + queryWrapper1.eq(PayMeetingContacts::getMeetingId, meetingId); + queryWrapper1.eq(PayMeetingContacts::getMeetingContactsId,sysUserId); + boolean b = meetingContactsService.count(queryWrapper1) > 0; + if (!b && !payMeeting.getDirectorId().equals(sysUserId)) { + throw new JeroBootException("只有会议负责人,会议联系人可以设置对接人"); } //只有国际研讨会议可以设置对接人 if (!meetingType.equals(Integer.parseInt(MeetingCommon.INTERNATIONAL_MEETING))) {