package com.doumee.service.business;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.doumee.core.model.LoginUserInfo;
|
import com.doumee.core.model.PageData;
|
import com.doumee.core.model.PageWrap;
|
import com.doumee.dao.admin.request.BusinessOverDTO;
|
import com.doumee.dao.admin.response.DevWgResponseParam;
|
import com.doumee.dao.business.model.Bookings;
|
import com.doumee.dao.business.vo.RoomStatisticsVo;
|
import com.doumee.dao.system.dto.UserStatisticsDTO;
|
import com.doumee.dao.system.vo.UserResponse;
|
import com.doumee.dao.system.vo.UserStatisticsVo;
|
import com.doumee.dao.web.request.BookingsRequest;
|
import com.doumee.dao.web.request.MeetingPageRequest;
|
import com.doumee.dao.web.request.UserPageRequest;
|
import com.doumee.dao.web.response.DateTimeResourceDate;
|
import com.doumee.dao.web.response.MeetingDetailResponse;
|
import com.doumee.dao.web.response.MeetingListResponse;
|
import com.doumee.dao.web.response.RoomDetailResponse;
|
import org.apache.ibatis.annotations.Param;
|
|
import java.time.LocalDateTime;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* 会议室预定信息表Service定义
|
* @author 江蹄蹄
|
* @date 2023/05/04 18:18
|
*/
|
public interface BookingsService {
|
|
/**
|
* 创建
|
*
|
* @param bookings 实体对象
|
* @return Integer
|
*/
|
Integer create(Bookings bookings);
|
|
/**
|
* 主键删除
|
*
|
* @param id 主键
|
*/
|
void deleteById(Integer id,LoginUserInfo user);
|
|
/**
|
* 删除
|
*
|
* @param bookings 实体对象
|
*/
|
void delete(Bookings bookings,LoginUserInfo user);
|
|
/**
|
* 批量主键删除
|
*
|
* @param ids 主键集
|
*/
|
void deleteByIdInBatch(List<Integer> ids, LoginUserInfo user);
|
|
/**
|
* 主键更新
|
*
|
* @param bookings 实体对象
|
*/
|
void updateById(Bookings bookings);
|
|
void cancelById(Bookings bookings);
|
|
/**
|
* 批量主键更新
|
*
|
* @param bookingss 实体集
|
*/
|
void updateByIdInBatch(List<Bookings> bookingss);
|
|
/**
|
* 主键查询
|
*
|
* @param id 主键
|
* @return Bookings
|
*/
|
Bookings findById(Integer id);
|
|
/**
|
* 条件查询单条记录
|
*
|
* @param bookings 实体对象
|
* @return Bookings
|
*/
|
Bookings findOne(Bookings bookings);
|
|
/**
|
* 条件查询
|
*
|
* @param bookings 实体对象
|
* @return List<Bookings>
|
*/
|
List<Bookings> findList(Bookings bookings);
|
Bookings findJoinOne( Bookings queryParam);
|
/**
|
* 分页查询
|
*
|
* @param pageWrap 分页对象
|
* @return PageData<Bookings>
|
*/
|
PageData<Bookings> findPage(PageWrap<Bookings> pageWrap);
|
|
/**
|
* 条件统计
|
*
|
* @param bookings 实体对象
|
* @return long
|
*/
|
long count(Bookings bookings);
|
void openRoomDoor(DevWgResponseParam json) throws Exception;
|
|
|
|
/****************************************移动端接口开始********************************************************************/
|
|
/**
|
* 我的会议日期信息
|
* @param userId
|
* @param dateMsg
|
* @return
|
*/
|
List<Bookings> getMyBookings(Integer userId,String dateMsg);
|
|
|
/**
|
* 我的预约/我的会议
|
* @param pageWrap
|
* @return
|
*/
|
IPage<MeetingListResponse> getMyMeetingPage(PageWrap<MeetingPageRequest> pageWrap);
|
|
|
/**
|
* 会议详情
|
* @param id
|
* @return
|
*/
|
MeetingDetailResponse getMeetingDetail(Integer id);
|
|
/**
|
* 根据日期和会议室主键查询占用信息
|
* @param bean
|
* @return
|
*/
|
MeetingDetailResponse getMeetingDetailByDate(Bookings bean);
|
/**
|
* 获取会议二维码
|
* @param id
|
* @param userId
|
* @return
|
*/
|
String getQrCode(Integer id,Integer userId);
|
|
/**
|
* 会议室预约记录新增/修改
|
* @param bookingsRequest
|
*/
|
Integer reservationMeeting(BookingsRequest bookingsRequest);
|
|
/**
|
* 会议预约记录取消
|
*/
|
void reservationCancel(BusinessOverDTO businessOverDTO);
|
|
|
/**
|
* 参与的预约会议
|
* @param userId
|
* @param startTime
|
* @param endTime
|
* @return
|
*/
|
List<Bookings> getMyJoinBookingMeet(Integer userId, Integer roomId,LocalDateTime startTime, LocalDateTime endTime);
|
|
|
/**
|
* 获取用户当当月预约会议情况
|
* @param userId
|
* @return
|
*/
|
List<DateTimeResourceDate> findMothBookingMeet(Integer userId,Integer roomId,String dateMonth);
|
|
|
/**
|
* 会议室使用时长统计
|
* @param yearNum
|
* @return
|
*/
|
List<RoomStatisticsVo> getRoomStatistics(Integer yearNum);
|
|
|
/**
|
* 人员参加会议时常
|
* @param pageWrap
|
* @return
|
*/
|
PageData<UserStatisticsVo> getUserStatistics(PageWrap<UserStatisticsDTO> pageWrap);
|
|
void sendBookingsNotice();
|
|
IPage<UserResponse> getUserPage(PageWrap<UserPageRequest> pageWrap);
|
|
void reservationOver(BusinessOverDTO businessOverDTO);
|
|
void start(BusinessOverDTO businessOverDTO);
|
|
void startEarly(BusinessOverDTO businessOverDTO);
|
|
RoomDetailResponse getRoomDetail(Integer roomId);
|
}
|