|
@@ -27,11 +27,9 @@ import com.usky.meeting.domain.*;
|
|
|
import com.usky.meeting.mapper.MeetingFloorMapper;
|
|
|
import com.usky.meeting.mapper.MeetingInfoMapper;
|
|
|
import com.usky.meeting.mapper.MeetingRoomMapper;
|
|
|
-import com.usky.meeting.repository.DmUserRepository;
|
|
|
-import com.usky.meeting.repository.MeetingAttendeeRepository;
|
|
|
-import com.usky.meeting.repository.MeetingInfoRepository;
|
|
|
-import com.usky.meeting.repository.UserRepository;
|
|
|
+import com.usky.meeting.repository.*;
|
|
|
import com.usky.meeting.service.MeetingAttendeeService;
|
|
|
+import com.usky.meeting.service.MeetingFileService;
|
|
|
import com.usky.meeting.service.MeetingInfoService;
|
|
|
import com.usky.common.mybatis.core.AbstractCrudService;
|
|
|
import com.usky.meeting.service.SysUserService;
|
|
@@ -80,6 +78,8 @@ public class MeetingInfoServiceImpl extends AbstractCrudService<MeetingInfoMappe
|
|
|
@Autowired
|
|
|
private MeetingAttendeeRepository meetingAttendeeRepository;
|
|
|
@Autowired
|
|
|
+ private MeetingRoomRepository meetingRoomRepository;
|
|
|
+ @Autowired
|
|
|
private SysUserService sysUserService;
|
|
|
@Autowired
|
|
|
private UserRepository userRepository;
|
|
@@ -89,6 +89,8 @@ public class MeetingInfoServiceImpl extends AbstractCrudService<MeetingInfoMappe
|
|
|
private MeetingRoomMapper meetingRoomMapper;
|
|
|
@Autowired
|
|
|
private MeetingFloorMapper meetingFloorMapper;
|
|
|
+ @Autowired
|
|
|
+ private MeetingFileService meetingFileService;
|
|
|
|
|
|
@Override
|
|
|
public Map<String, Object> meetingSummary(Integer tenantId) {
|
|
@@ -275,6 +277,19 @@ public class MeetingInfoServiceImpl extends AbstractCrudService<MeetingInfoMappe
|
|
|
resources.setMeetingStatus(0);
|
|
|
MeetingInfo meeting = this.toEntity(resources);
|
|
|
this.save(meeting);
|
|
|
+
|
|
|
+ //循环保存会议id和会议文件记录到会议文件表中
|
|
|
+ Long meetingId = meeting.getMeetingId();
|
|
|
+ if(!ObjectUtils.isEmpty(resources.getMeetingFileList())){
|
|
|
+ for (MeetingFile meetingFile : resources.getMeetingFileList()) {
|
|
|
+ meetingFile.setMeetingId(meetingId);
|
|
|
+ meetingFile.setUploadUser(SecurityUtils.getUsername());
|
|
|
+ meetingFile.setUploadTime(LocalDateTime.now());
|
|
|
+ meetingFile.setTenantId(SecurityUtils.getTenantId());
|
|
|
+ meetingFileService.save(meetingFile);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
if (!ObjectUtils.isEmpty(resources.getUsers())) {
|
|
|
for(SysUser dmUser : resources.getUsers()){
|
|
|
MeetingAttendee meetingAttendee = new MeetingAttendee();
|
|
@@ -486,6 +501,36 @@ public class MeetingInfoServiceImpl extends AbstractCrudService<MeetingInfoMappe
|
|
|
//UPDATE meeting_info SET meeting_status = 2 WHERE is_cancel = 0 AND meeting_status != 2 AND end_date < SYSDATE;
|
|
|
@Override
|
|
|
public void updateMeetingInfoStatus(){
|
|
|
+ //根据使用中的会议id去更新对应会议室的状态
|
|
|
+ //更新会议室使用状态为 1-使用中
|
|
|
+ LambdaQueryWrapper<MeetingInfo> queryWrapper = Wrappers.lambdaQuery();
|
|
|
+ queryWrapper.eq(MeetingInfo::getIsCancel,0)
|
|
|
+ .ne(MeetingInfo::getMeetingStatus,2)
|
|
|
+ .le(MeetingInfo::getStartDate,LocalDateTime.now())
|
|
|
+ .ge(MeetingInfo::getEndDate,LocalDateTime.now());
|
|
|
+ List<MeetingInfo> list = this.list(queryWrapper);
|
|
|
+ Set<Long> roomIdList = new HashSet<>();
|
|
|
+ if(list.size() > 0){
|
|
|
+ for (int i = 0; i < list.size(); i++) {
|
|
|
+ roomIdList.add(list.get(i).getRoomId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ meetingRoomRepository.updateMeetingRoomStatusOnUse(roomIdList);
|
|
|
+ //更新将会议室使用状态恢复为 0-未使用
|
|
|
+ LambdaQueryWrapper<MeetingInfo> queryWrapper1 = Wrappers.lambdaQuery();
|
|
|
+ queryWrapper1.eq(MeetingInfo::getIsCancel,0)
|
|
|
+ .ne(MeetingInfo::getMeetingStatus,2)
|
|
|
+ .lt(MeetingInfo::getEndDate,LocalDateTime.now());
|
|
|
+ List<MeetingInfo> list1 = this.list(queryWrapper1);
|
|
|
+ Set<Long> roomIdList1 = new HashSet<>();
|
|
|
+ if(list1.size() > 0){
|
|
|
+ for (int i = 0; i < list1.size(); i++) {
|
|
|
+ roomIdList1.add(list1.get(i).getRoomId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ meetingRoomRepository.updateMeetingRoomStatusFreeUse(roomIdList1);
|
|
|
+
|
|
|
+
|
|
|
UpdateWrapper<MeetingInfo> updateWrapper = Wrappers.update();
|
|
|
updateWrapper.set("meeting_status",1)
|
|
|
.eq("is_cancel",0)
|