fix bug 41839 标协会员项目-会议维护--会议负责人应该只能看自己的
This commit is contained in:
+30
-2
@@ -1,5 +1,6 @@
|
||||
package com.jero.meeting.service.impl;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
@@ -46,6 +47,8 @@ import com.jero.meeting.vo.PayMeetingVO;
|
||||
import com.jero.meeting.vo.PublishReminderVO;
|
||||
import com.jero.meeting.vo.UploadFileVO;
|
||||
import com.jero.meeting.vo.excel.*;
|
||||
import com.jero.member.entity.TbMemberProject;
|
||||
import com.jero.member.service.ITbMemberProjectService;
|
||||
import com.jero.modules.oss.entity.OSSFile;
|
||||
import com.jero.modules.oss.service.IOSSFileService;
|
||||
import com.jero.project.entity.PayWorkingGroup;
|
||||
@@ -113,6 +116,8 @@ public class PayMeetingServiceImpl extends ServiceImpl<PayMeetingMapper, PayMeet
|
||||
private Environment env;
|
||||
@Resource
|
||||
private RolePermissionService rolePermissionService;
|
||||
@Resource
|
||||
private ITbMemberProjectService tbMemberProjectService;
|
||||
|
||||
/**
|
||||
* 新增会议
|
||||
@@ -200,6 +205,8 @@ public class PayMeetingServiceImpl extends ServiceImpl<PayMeetingMapper, PayMeet
|
||||
|
||||
@Override
|
||||
public void addStandards(PayMeeting payMeeting) {
|
||||
TbMemberProject memberProject = getTbMemberProject();
|
||||
payMeeting.setStandardsId(memberProject.getId());
|
||||
saveOrUpdate(payMeeting);
|
||||
List<PayMeetingHotelContacts> hotelContactsList = payMeeting.getHotelContactsList();
|
||||
//如果酒店联系人列表不为空,就新增
|
||||
@@ -316,6 +323,8 @@ public class PayMeetingServiceImpl extends ServiceImpl<PayMeetingMapper, PayMeet
|
||||
for (PayMeetingHotelContacts hotelContacts : hotelContactsList) {
|
||||
ValidUtil.validate(hotelContacts, StandardMeeting.class);
|
||||
}
|
||||
TbMemberProject memberProject = getTbMemberProject();
|
||||
payMeeting.setSituationId(memberProject.getId());
|
||||
break;
|
||||
case MeetingCommon.INTERNATIONAL_MEETING:
|
||||
ValidUtil.validate(payMeetingVO, InternationalMeeting.class);
|
||||
@@ -359,6 +368,25 @@ public class PayMeetingServiceImpl extends ServiceImpl<PayMeetingMapper, PayMeet
|
||||
return payMeeting;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private TbMemberProject getTbMemberProject() {
|
||||
LambdaQueryWrapper<TbMemberProject> wrapper1 = new LambdaQueryWrapper<>();
|
||||
int year = DateUtil.year(new Date());
|
||||
String projectName = year + "年标协会员";
|
||||
wrapper1.eq(TbMemberProject::getProjectName, projectName);
|
||||
|
||||
TbMemberProject memberProject = tbMemberProjectService.getOne(wrapper1);
|
||||
if (memberProject == null) {
|
||||
memberProject = new TbMemberProject();
|
||||
memberProject.setProjectName(projectName);
|
||||
memberProject.setYear(String.valueOf(year));
|
||||
memberProject.setDirectorId("e9ca23d68d884d4ebb19d07889727dae");
|
||||
memberProject.setDirectorName("BXGLZ");
|
||||
tbMemberProjectService.save(memberProject);
|
||||
}
|
||||
return memberProject;
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*/
|
||||
@@ -566,7 +594,7 @@ public class PayMeetingServiceImpl extends ServiceImpl<PayMeetingMapper, PayMeet
|
||||
if (meetingType.equals(MeetingCommon.WORKING_GROUP_MEETING_INT)){
|
||||
permission = "workGroupMeeting:search";
|
||||
}else if (meetingType.equals(MeetingCommon.STANDARD_MEETING_INT)){
|
||||
permission = "standardMeeting:search";
|
||||
permission = "standardsMeeting:search";
|
||||
}else if (meetingType.equals(MeetingCommon.INTERNATIONAL_MEETING_INT)){
|
||||
permission = "internalMeeting:search";
|
||||
}else if (meetingType.equals(MeetingCommon.OTHER_MEETING_INT)){
|
||||
@@ -576,7 +604,7 @@ public class PayMeetingServiceImpl extends ServiceImpl<PayMeetingMapper, PayMeet
|
||||
}
|
||||
}
|
||||
if (StringUtils.isNotBlank(permission)) {
|
||||
if (!Objects.equals(permission,"standardMeeting:search") && !rolePermissionService.getRolePermission(permission)) {
|
||||
if (!rolePermissionService.getRolePermission(permission)) {
|
||||
if (meetingType.equals(MeetingCommon.WORKING_GROUP_MEETING_INT)) {
|
||||
queryWrapper.and(
|
||||
a -> a.eq("pwg.principal_id_a", sysUser.getId())
|
||||
|
||||
Reference in New Issue
Block a user