| | |
| | | package com.doumee.cloud.web; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.doumee.config.Jwt.JwtTokenUtil; |
| | | import com.doumee.api.BaseController; |
| | | import com.doumee.config.annotation.LoginNoRequired; |
| | | import com.doumee.core.annotation.trace.Trace; |
| | | import com.doumee.core.model.ApiResponse; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.service.business.third.model.ApiResponse; |
| | | import com.doumee.service.business.third.model.LoginUserInfo; |
| | | import com.doumee.service.business.third.model.PageWrap; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.DateUtil; |
| | | import com.doumee.core.utils.QrCodeUtils; |
| | | import com.doumee.dao.admin.request.BusinessOverDTO; |
| | | import com.doumee.dao.business.model.Bookings; |
| | | import com.doumee.dao.system.vo.UserResponse; |
| | | 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.MeetingDetailResponse; |
| | | import com.doumee.dao.web.response.MeetingListResponse; |
| | | import com.doumee.dao.web.response.MonthDataResponse; |
| | | import com.doumee.dao.web.response.RoomDetailResponse; |
| | | import com.doumee.service.business.BookingsService; |
| | | import com.doumee.service.system.SystemUserService; |
| | | import io.swagger.annotations.Api; |
| | |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | |
| | | @Api(tags = "2、预定会议业务") |
| | | @Trace(exclude = true) |
| | | @RestController |
| | | @RequestMapping("/web/meeting") |
| | | @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/meeting") |
| | | @Slf4j |
| | | public class MeetingApi extends ApiController{ |
| | | public class MeetingApi extends BaseController { |
| | | |
| | | @Autowired |
| | | private BookingsService bookingsService; |
| | |
| | | private SystemUserService systemUserService; |
| | | |
| | | |
| | | |
| | | @ApiOperation(value = "当月会议表", notes = "当月会议表") |
| | | @GetMapping("/monthMeeting") |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), |
| | | @ApiImplicitParam(paramType = "query", dataType = "String", name = "yearMonth", value = "年月 yyyy-MM", required = true) |
| | | @ApiImplicitParam(paramType = "query", dataType = "String", name = "yearMonth", value = "年月 yyyy-MM", required = true), |
| | | @ApiImplicitParam(paramType = "query", dataType = "String", name = "queryType", value = "查询类别:1=我参与的;2=我预约的;3管理员查看全部 ", required = true) |
| | | }) |
| | | public ApiResponse<List<MonthDataResponse>> monthDay(@RequestParam String yearMonth) { |
| | | public ApiResponse<List<MonthDataResponse>> monthDay(@RequestParam String yearMonth |
| | | ,@RequestParam(required = false) Integer queryType |
| | | ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | LoginUserInfo user = getLoginUser(token); |
| | | List<String> dataList = DateUtil.getDayByMonth(yearMonth); |
| | | List<MonthDataResponse> monthDataResponseList = new ArrayList<>(); |
| | | List<Bookings> bookings = bookingsService.getMyBookings(getMemberId(),yearMonth); |
| | | List<Bookings> bookings = bookingsService.getMyBookings(user.getId(),yearMonth,queryType); |
| | | for (String str:dataList) { |
| | | MonthDataResponse monthDataResponse = new MonthDataResponse(); |
| | | monthDataResponse.setWeekMsg(DateUtil.getWeek(DateUtil.StringToDate(str,"yyyy-MM-dd")).getChineseName()); |
| | |
| | | |
| | | @ApiOperation("我的会议列表") |
| | | @PostMapping("/myMeetingPage") |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), |
| | | }) |
| | | public ApiResponse<IPage<MeetingListResponse>> myMeetingPage(@RequestBody PageWrap<MeetingPageRequest> pageWrap) { |
| | | pageWrap.getModel().setUserId(getMemberId()); |
| | | public ApiResponse<IPage<MeetingListResponse>> myMeetingPage(@RequestBody PageWrap<MeetingPageRequest> pageWrap |
| | | ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | LoginUserInfo user = getLoginUser(token); |
| | | pageWrap.getModel().setUserId(user.getId()); |
| | | IPage<MeetingListResponse> page = bookingsService.getMyMeetingPage(pageWrap); |
| | | return ApiResponse.success("查询成功",page); |
| | | } |
| | |
| | | @ApiOperation("会议详情") |
| | | @GetMapping("/meetingDetail") |
| | | @ApiImplicitParams({ |
| | | // @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), |
| | | @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "会议主键", required = true), |
| | | }) |
| | | public ApiResponse<MeetingDetailResponse> meetingDetail(@RequestParam Integer id) { |
| | | return ApiResponse.success("查询成功", bookingsService.getMeetingDetail(id)); |
| | | public ApiResponse<MeetingDetailResponse> meetingDetail(@RequestParam Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | return ApiResponse.success("查询成功", bookingsService.getMeetingDetail(id,getLoginUser(token).getId())); |
| | | } |
| | | |
| | | |
| | | @ApiOperation("获取会议开门二维码") |
| | | /* @ApiOperation("获取会议开门二维码") |
| | | @GetMapping("/getQrCode") |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), |
| | |
| | | response.setContentType("image/jpeg"); |
| | | String content =bookingsService.getQrCode(id,memberId); |
| | | QrCodeUtils.encode(content,null, response.getOutputStream(), true); |
| | | } |
| | | }*/ |
| | | |
| | | /* |
| | | @LoginRequired |
| | | |
| | | @ApiOperation("参会人员分页") |
| | | @PostMapping("/userPage") |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), |
| | | }) |
| | | public ApiResponse<IPage<UserResponse>> userPage(@RequestBody PageWrap<UserPageRequest> pageWrap) { |
| | | IPage<UserResponse> page = systemUserService.getUserPage(pageWrap); |
| | | IPage<UserResponse> page = bookingsService.getUserPage(pageWrap); |
| | | return ApiResponse.success("查询成功", page); |
| | | } |
| | | */ |
| | | |
| | | |
| | | @ApiOperation("会议预约") |
| | | @PostMapping("/reservationMeeting") |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), |
| | | }) |
| | | public ApiResponse<Integer> reservationMeeting(@RequestBody BookingsRequest bookingsRequest) { |
| | | bookingsRequest.setCreator(getMemberId()); |
| | | bookingsRequest.setEditor(getMemberId()); |
| | | public ApiResponse<Integer> reservationMeeting(@RequestBody BookingsRequest bookingsRequest ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | LoginUserInfo user = getLoginUser(token); |
| | | bookingsRequest.setCreator(user.getId()); |
| | | bookingsRequest.setEditor(user.getId()); |
| | | bookingsRequest.setLoginUserInfo(user); |
| | | return ApiResponse.success("操作成功",bookingsService.reservationMeeting(bookingsRequest)); |
| | | } |
| | | |
| | | @ApiOperation("取消会议预约") |
| | | @GetMapping("/reservationCancel") |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), |
| | | @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "会议主键", required = true), |
| | | }) |
| | | public ApiResponse reservationCancel(@RequestParam Integer id) { |
| | | bookingsService.reservationCancel(id,getMemberId()); |
| | | @PostMapping("/reservationCancel") |
| | | public ApiResponse reservationCancel(@RequestBody BusinessOverDTO businessOverDTO,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | LoginUserInfo user = getLoginUser(token); |
| | | businessOverDTO.setUserId(user.getId()); |
| | | bookingsService.reservationCancel(businessOverDTO); |
| | | return ApiResponse.success("操作成功"); |
| | | } |
| | | |
| | | |
| | | @ApiOperation("提前结束会议") |
| | | @PostMapping("/reservationOver") |
| | | public ApiResponse reservationOver(@RequestBody BusinessOverDTO businessOverDTO,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | LoginUserInfo user = getLoginUser(token); |
| | | businessOverDTO.setUserId(user.getId()); |
| | | bookingsService.reservationOver(businessOverDTO); |
| | | return ApiResponse.success("操作成功"); |
| | | } |
| | | |
| | | @ApiOperation("提前开始会议") |
| | | @PostMapping("/startEarly") |
| | | public ApiResponse startEarly(@RequestBody BusinessOverDTO businessOverDTO,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | LoginUserInfo user = getLoginUser(token); |
| | | businessOverDTO.setUserId(user.getId()); |
| | | businessOverDTO.setStartType(Constants.ZERO); |
| | | bookingsService.startEarly(businessOverDTO); |
| | | return ApiResponse.success("操作成功"); |
| | | } |
| | | |
| | | @ApiOperation("开始会议") |
| | | @PostMapping("/start") |
| | | public ApiResponse start(@RequestBody BusinessOverDTO businessOverDTO,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | LoginUserInfo user = getLoginUser(token); |
| | | businessOverDTO.setUserId(user.getId()); |
| | | businessOverDTO.setStartType(Constants.ONE); |
| | | bookingsService.start(businessOverDTO); |
| | | return ApiResponse.success("操作成功"); |
| | | } |
| | | |
| | | @LoginNoRequired |
| | | @ApiOperation("会议屏信息") |
| | | @GetMapping("/meetScreenData") |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "roomId", value = "会议室主键", required = true), |
| | | }) |
| | | public ApiResponse<RoomDetailResponse> meetScreenData(@RequestParam Integer roomId) { |
| | | return ApiResponse.success("查询成功",bookingsService.getRoomDetail(roomId)); |
| | | } |
| | | |
| | | } |