fix bug 41816 工作组项目--会议维护--工作组项目负责人应该可以看到全部的会议
This commit is contained in:
@@ -8,6 +8,8 @@ import org.apache.ibatis.annotations.Param;
|
||||
import com.jero.meeting.entity.PayMeeting;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 会议管理
|
||||
* @Author: jero-boot
|
||||
@@ -21,4 +23,6 @@ public interface PayMeetingMapper extends BaseMapper<PayMeeting> {
|
||||
@Param("now") String now);
|
||||
|
||||
IPage<PayMeeting> internelPage(Page<PayMeeting> page, @Param(Constants.WRAPPER) QueryWrapper<PayMeeting> queryWrapper);
|
||||
|
||||
IPage<PayMeeting> workGroupPage(Page<PayMeeting> page, @Param(Constants.WRAPPER) QueryWrapper<PayMeeting> queryWrapper);
|
||||
}
|
||||
|
||||
+2
@@ -22,4 +22,6 @@ public interface PayMeetingSituationMapper extends BaseMapper<PayMeetingSituatio
|
||||
|
||||
IPage<PayMeetingSituation> pageListContract(Page<PayMeetingSituation> page,
|
||||
@Param(Constants.WRAPPER) QueryWrapper<PayMeetingSituation> queryWrapper);
|
||||
IPage<PayMeetingSituation> pageListContractWorkGroup(Page<PayMeetingSituation> page,
|
||||
@Param(Constants.WRAPPER) QueryWrapper<PayMeetingSituation> queryWrapper);
|
||||
}
|
||||
|
||||
+8
@@ -92,4 +92,12 @@
|
||||
left join pay_meeting_situation pms on pm.id = pms.meeting_id
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
|
||||
<select id="workGroupPage" resultMap="PayMeetingResultMap">
|
||||
select distinct pm.*
|
||||
from pay_meeting pm
|
||||
left join pay_meeting_situation pms on pm.id = pms.meeting_id
|
||||
left join pay_working_group pwg on pwg.id = pm.working_group_id
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
</mapper>
|
||||
+11
-2
@@ -155,8 +155,17 @@
|
||||
<select id="pageListContract" resultMap="PayMeetingSituationResultMap">
|
||||
select distinct pms.*
|
||||
from pay_meeting_situation pms
|
||||
left join pay_meeting pm on pms.meeting_id = pm.id
|
||||
left JOIN pay_payment_record ppr ON ppr.project_id = pms.id
|
||||
left join pay_meeting pm on pms.meeting_id = pm.id
|
||||
left JOIN pay_payment_record ppr ON ppr.project_id = pms.id
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
|
||||
<select id="pageListContractWorkGroup" resultMap="PayMeetingSituationResultMap">
|
||||
select distinct pms.*
|
||||
from pay_meeting_situation pms
|
||||
left join pay_meeting pm on pms.meeting_id = pm.id
|
||||
left JOIN pay_payment_record ppr ON ppr.project_id = pms.id
|
||||
left join pay_working_group pwg on pwg.id = pm.working_group_id
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
</mapper>
|
||||
+15
-4
@@ -577,16 +577,27 @@ public class PayMeetingServiceImpl extends ServiceImpl<PayMeetingMapper, PayMeet
|
||||
}
|
||||
if (StringUtils.isNotBlank(permission)) {
|
||||
if (!Objects.equals(permission,"standardMeeting:search") && !rolePermissionService.getRolePermission(permission)) {
|
||||
if (!meetingType.equals(MeetingCommon.INTERNATIONAL_MEETING_INT)) {
|
||||
queryWrapper.eq("director_id", sysUser.getId());
|
||||
pageList = page(page, queryWrapper);
|
||||
}else {
|
||||
if (meetingType.equals(MeetingCommon.WORKING_GROUP_MEETING_INT)) {
|
||||
queryWrapper.and(
|
||||
a -> a.eq("pwg.principal_id_a", sysUser.getId())
|
||||
.or()
|
||||
.eq("pwg.principal_id_b", sysUser.getId())
|
||||
.or()
|
||||
.eq("dock_id", sysUser.getId())
|
||||
.or()
|
||||
.eq("pm.director_id", sysUser.getId())
|
||||
);
|
||||
pageList = baseMapper.workGroupPage(page,queryWrapper);
|
||||
}else if (meetingType.equals(MeetingCommon.INTERNATIONAL_MEETING_INT)){
|
||||
queryWrapper.and(
|
||||
a -> a.eq("director_id", sysUser.getId())
|
||||
.or()
|
||||
.eq("dock_id", sysUser.getId())
|
||||
);
|
||||
pageList = baseMapper.internelPage(page,queryWrapper);
|
||||
}else {
|
||||
queryWrapper.eq("director_id", sysUser.getId());
|
||||
pageList = page(page, queryWrapper);
|
||||
}
|
||||
}else {
|
||||
pageList = page(page, queryWrapper);
|
||||
|
||||
+19
-4
@@ -726,18 +726,33 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
|
||||
@Override
|
||||
public IPage<PayMeetingSituation> pageListContract(Page<PayMeetingSituation> page, QueryWrapper<PayMeetingSituation> queryWrapper,Integer meetingType) {
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
String userId = loginUser.getId();
|
||||
queryWrapper.eq("pm.meeting_type",meetingType);
|
||||
if (!rolePermissionService.getRolePermission("committeeMeetingSituation:search")) {
|
||||
if (meetingType.equals(MeetingCommon.WORKING_GROUP_MEETING_INT)){
|
||||
queryWrapper.and(
|
||||
a -> a.eq("pms.dock_id", userId)
|
||||
.or()
|
||||
.eq("pm.director_id", userId)
|
||||
.or()
|
||||
.eq("pwg.principal_id_a", userId)
|
||||
.or()
|
||||
.eq("pwg.principal_id_b", userId)
|
||||
);
|
||||
return baseMapper.pageListContractWorkGroup(page,queryWrapper);
|
||||
}
|
||||
if (meetingType.equals(MeetingCommon.INTERNATIONAL_MEETING_INT)){
|
||||
queryWrapper.and(
|
||||
a -> a.eq("pms.dock_id",loginUser.getId())
|
||||
a -> a.eq("pms.dock_id", userId)
|
||||
.or()
|
||||
.eq("pm.director_id",loginUser.getId())
|
||||
.eq("pm.director_id", userId)
|
||||
);
|
||||
return baseMapper.pageListContract(page,queryWrapper);
|
||||
}else {
|
||||
queryWrapper.eq("pm.director_id", loginUser.getId());
|
||||
queryWrapper.eq("pm.director_id", userId);
|
||||
return baseMapper.pageListContract(page,queryWrapper);
|
||||
}
|
||||
}
|
||||
queryWrapper.eq("pm.meeting_type",meetingType);
|
||||
return baseMapper.pageListContract(page,queryWrapper);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user