k94314517
2024-06-28 17fe60cacd5c6f944cb0a5f3da3ae0a90832e3b4
server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
@@ -125,7 +125,6 @@
    @Transactional(rollbackFor = {BusinessException.class, Exception.class})
    public Integer create(Bookings bookings) {
        LoginUserInfo user = bookings.getLoginUserInfo();
        user.setId(bookings.getCreator());
        isCreateParamValid(bookings, user);
        bookings.setCreateDate(new Date());
        bookings.setCreator(user.getId());
@@ -200,8 +199,15 @@
        List<Bookings> bookList = bookingsJoinMapper.selectJoinList(Bookings.class, bookquery);
        for (int i = 0; i < bookings.getBookingTimeList().size(); i++) {
            BookingTime s = bookings.getBookingTimeList().get(i);
            RoomTime roomTime = roomTimeJoinMapper.selectById(s.getTimeId());
            if(Objects.isNull(roomTime)){
                throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"存在未查询到的配置日期,请刷新重试");
            }
            String endRoomTime = gsDate + " " + roomTime.getEndTime()+":00";
            if(DateUtil.StringToDate(endRoomTime, "yyyy-MM-dd HH:mm:ss").getTime()<=System.currentTimeMillis()){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),endRoomTime + "已超过当前时间,无法进行预约");
            }
            if (!Objects.isNull(bookList) && bookList.size() > MeetConstants.ZERO) {
                List<Bookings> detailDataDtoStream =
                        bookList.stream().filter(a -> MeetConstants.equalsInteger(s.getTimeId(), a.getRoomTimeId())
                        ).collect(Collectors.toList());
@@ -215,7 +221,6 @@
                                        .filter(a -> MeetConstants.equalsInteger(a.getRoomTimeId(), s.getTimeId()))
                                        .collect(Collectors.toList());
                        if (chriList.size() > 0) {
                            RoomTime roomTime = roomTimeJoinMapper.selectById(s.getTimeId());
                            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "该会议:" + roomTime.getStartTime() + "-" + roomTime.getEndTime() + "时间段内已被使用");
                        }
                    } else {
@@ -225,7 +230,6 @@
                                        .filter(a -> MeetConstants.equalsInteger(a.getRoomTimeId(), s.getTimeId()))
                                        .collect(Collectors.toList());
                        if (chriList.size() > 0) {
                            RoomTime roomTime = roomTimeJoinMapper.selectById(s.getTimeId());
                            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "该会议:" + roomTime.getStartTime() + "-" + roomTime.getEndTime() + "时间段内已被使用");
                        }
                    }
@@ -747,7 +751,7 @@
                .apply(" id in ( select u.OBJ_ID from meeting_user_rel u where u.USER_ID = '" + userId + "' and u.ISDELETED = 0 and OBJ_TYPE = 1  ) ")
                .eq("ISDELETED",MeetConstants.ZERO)
//                .eq("STATUS",MeetConstants.ZERO)
                .apply(" ROOM_ID in ( select r.id from rooms r where r.ISDELETED = 0 and r.STATUS = 0  )")
                .apply(" ROOM_ID in ( select r.id from meeting_rooms r where r.ISDELETED = 0 and r.STATUS = 0  )")
                .like(StringUtils.isNotBlank(dateMsg), "START_TIME", dateMsg));
    }
@@ -1133,7 +1137,7 @@
    public IPage<UserResponse> getUserPage(PageWrap<UserPageRequest> pageWrap) {
        IPage<UserResponse> page = systemUserMapper.getUserPage(pageWrap.toPage(),new QueryWrapper<UserResponse>()
                .and(StringUtils.isNotBlank(pageWrap.getModel().getKeyword()), i -> i.like("c.realName", pageWrap.getModel().getKeyword())
                        .or().like("e.name", pageWrap.getModel().getKeyword())
                        .or().like("d.COMPANY_NAME_PATH", pageWrap.getModel().getKeyword())
                )
                .eq("c.DELETED",0)
                .eq("c.status",0)
@@ -1145,7 +1149,7 @@
        page.getRecords().forEach(j->{
            j.setPrefixUrl(path);
            if(bookingsMapper.selectCount(new QueryWrapper<Bookings>()
                    .exists(" select 1 from meeting_user_rel u where u.OBJ_ID = bookings.id and  u.USER_ID = '"+j.getId()+"' and u.OBJ_TYPE = 1    ")
                    .exists(" select 1 from meeting_user_rel u where u.OBJ_ID = meeting_book.id and  u.USER_ID = '"+j.getId()+"' and u.OBJ_TYPE = 1    ")
                    .and(i -> i.between("START_TIME", pageWrap.getModel().getStartTime()+":00",pageWrap.getModel().getEndTime()+":00")
                            .or().between("END_TIME", pageWrap.getModel().getStartTime()+":00",pageWrap.getModel().getEndTime()+":00")
                    )