|
|
@@ -43,6 +43,7 @@ import com.xjrsoft.module.workflow.mapper.WorkflowFormRelationMapper;
|
|
|
import com.xjrsoft.module.workflow.mapper.WorkflowRecordMapper;
|
|
|
import com.xjrsoft.module.workflow.service.IWorkflowExtraService;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
+import org.apache.commons.collections.CollectionUtils;
|
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.camunda.bpm.engine.history.HistoricProcessInstance;
|
|
|
@@ -110,6 +111,8 @@ public class WfMeetingApplyServiceImpl extends MPJBaseServiceImpl<WfMeetingApply
|
|
|
.selectAs(MeetingRoom::getCapacity, MeetingRoomListVo::getCapacity)
|
|
|
.selectAs(BaseOfficeBuild::getName, MeetingRoomListVo::getOfficeBuildIdCn)
|
|
|
.leftJoin(BaseOfficeBuild.class, BaseOfficeBuild::getId, MeetingRoom::getOfficeBuildId)
|
|
|
+ .like(StringUtils.isNotEmpty(dto.getName()), MeetingRoom::getName, dto.getName())
|
|
|
+ .like(StringUtils.isNotEmpty(dto.getOfficeBuildIdCn()), BaseOfficeBuild::getName, dto.getOfficeBuildIdCn())
|
|
|
.eq(MeetingRoom::getStatus, 1)
|
|
|
;
|
|
|
List<MeetingRoomListVo> result = meetingRoomMapper.selectJoinList(MeetingRoomListVo.class, meetingRoomMPJLambdaWrapper);
|
|
|
@@ -137,7 +140,7 @@ public class WfMeetingApplyServiceImpl extends MPJBaseServiceImpl<WfMeetingApply
|
|
|
meetingRoomListVo = new MeetingRoomListVo();
|
|
|
for (WfMeetingApply wfMeetingApply : value) {
|
|
|
// 会议时间是否重叠
|
|
|
- if (!(startTime.isBefore(wfMeetingApply.getMeetingApplyS()) || endTime.isAfter(wfMeetingApply.getMeetingApplyE()))) {
|
|
|
+ if (startTime.isBefore(wfMeetingApply.getMeetingApplyE()) && wfMeetingApply.getMeetingApplyS().isBefore(endTime)) {
|
|
|
isReservation = true;
|
|
|
}
|
|
|
reservationDetail.append(wfMeetingApply.getMeetingApplyS()).append("-").append(wfMeetingApply.getMeetingApplyE()).append("\r\n");
|
|
|
@@ -308,8 +311,7 @@ public class WfMeetingApplyServiceImpl extends MPJBaseServiceImpl<WfMeetingApply
|
|
|
}
|
|
|
LocalTime startTime = startTimeMap.get(id);
|
|
|
LocalTime endTime = endTimeMap.get(id);
|
|
|
- if((oneStartTime.isAfter(startTime) && oneStartTime.isBefore(endTime))
|
|
|
- || (oneEndTime.isAfter(startTime) && oneEndTime.isBefore(endTime))){
|
|
|
+ if (oneStartTime.isBefore(endTime) && oneEndTime.isAfter(startTime)) {
|
|
|
adjustType = 0;
|
|
|
}
|
|
|
}
|
|
|
@@ -439,6 +441,8 @@ public class WfMeetingApplyServiceImpl extends MPJBaseServiceImpl<WfMeetingApply
|
|
|
|
|
|
@Override
|
|
|
public MeetingMobileInfoVo mobileInfo(Long id) {
|
|
|
+ Long loginId = StpUtil.getLoginIdAsLong();
|
|
|
+
|
|
|
MPJLambdaWrapper<WfMeetingApply> wfMeetingApplyPageVoMPJLambdaWrapper = new MPJLambdaWrapper<>();
|
|
|
wfMeetingApplyPageVoMPJLambdaWrapper
|
|
|
.disableSubLogicDel()
|
|
|
@@ -469,6 +473,18 @@ public class WfMeetingApplyServiceImpl extends MPJBaseServiceImpl<WfMeetingApply
|
|
|
MeetingMobileInfoVo info = this.selectJoinOne(MeetingMobileInfoVo.class, wfMeetingApplyPageVoMPJLambdaWrapper);
|
|
|
|
|
|
if (ObjectUtils.isNotEmpty(info)) {
|
|
|
+ // 判断当前用户是否是当前会议的参与人
|
|
|
+ LambdaQueryWrapper<MeetingConferee> isMeetingConferee = new LambdaQueryWrapper<>();
|
|
|
+ isMeetingConferee
|
|
|
+ .eq(MeetingConferee::getWfMeetingApplyId, id)
|
|
|
+ .eq(MeetingConferee::getUserId, loginId)
|
|
|
+ ;
|
|
|
+ List<MeetingConferee> meetingConfereeList = meetingConfereeMapper.selectList(isMeetingConferee);
|
|
|
+ // 既不是发起人也不是参与人
|
|
|
+ if(CollectionUtils.isEmpty(meetingConfereeList) && !info.getSponsorId().equals(loginId)){
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
List<File> fileList = fileMapper.selectList(Wrappers.<File>query().lambda().eq(File::getFolderId, info.getPreMeetingInfoFileId()));
|
|
|
info.setFileInfos(fileList);
|
|
|
|