ImLiveRoomReservationController.java 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package com.ym.mec.student.controller;
  2. import com.ym.mec.biz.dal.entity.ImLiveRoomReservation;
  3. import com.ym.mec.biz.dal.vo.ImLiveBroadcastRoomVo;
  4. import com.ym.mec.biz.service.ImLiveRoomReservationService;
  5. import com.ym.mec.common.controller.BaseController;
  6. import com.ym.mec.common.entity.HttpResponseResult;
  7. import com.ym.mec.common.page.PageInfo;
  8. import com.ym.mec.common.page.WrapperUtil;
  9. import io.swagger.annotations.ApiImplicitParam;
  10. import io.swagger.annotations.ApiImplicitParams;
  11. import io.swagger.annotations.ApiOperation;
  12. import org.springframework.web.bind.annotation.PostMapping;
  13. import org.springframework.web.bind.annotation.RequestBody;
  14. import org.springframework.web.bind.annotation.RequestMapping;
  15. import org.springframework.web.bind.annotation.RestController;
  16. import javax.annotation.Resource;
  17. import java.util.Map;
  18. /**
  19. * 直播预约记录(ImLiveRoomReservation)表控制层
  20. *
  21. * @author hgw
  22. * @since 2022-05-24 14:54:04
  23. */
  24. @RestController
  25. @RequestMapping("/imLiveRoomReservation")
  26. public class ImLiveRoomReservationController extends BaseController {
  27. /**
  28. * 服务对象
  29. */
  30. @Resource
  31. private ImLiveRoomReservationService imLiveRoomReservationService;
  32. @ApiImplicitParams({
  33. @ApiImplicitParam(name = "userId", dataType = "Integer", value = "用户id"),
  34. @ApiImplicitParam(name = "roomUid", dataType = "String", value = "房间uid"),
  35. @ApiImplicitParam(name = "ops", dataType = "Integer", value = "1 预约 2取消预约")
  36. })
  37. @ApiOperation("预约/取消预约")
  38. @PostMapping("/opsReserve")
  39. public HttpResponseResult<Object> opsReserve(@RequestBody Map<String, Object> param) {
  40. Integer ops = WrapperUtil.toInt(param, "ops", "请传入操作类型");
  41. ImLiveRoomReservation entity = new ImLiveRoomReservation();
  42. entity.setRoomUid(WrapperUtil.toStr(param, "roomUid", "请传入房间uid"));
  43. entity.setUserId(WrapperUtil.toInt(param, "userId", "用户id不能为空"));
  44. //1 预约 2取消预约
  45. if (ops == 1) {
  46. imLiveRoomReservationService.add(entity);
  47. } else if (ops == 2) {
  48. imLiveRoomReservationService.cancel(entity);
  49. } else {
  50. return failed("请传入正确的操作类型");
  51. }
  52. return succeed();
  53. }
  54. @ApiImplicitParams({
  55. @ApiImplicitParam(name = "liveState", dataType = "Integer", value = "直播状态 0未开始 1开始 2结束"),
  56. @ApiImplicitParam(name = "page", dataType = "Integer", value = "页数"),
  57. @ApiImplicitParam(name = "rows", dataType = "Integer", value = "每页数量"),
  58. })
  59. @ApiOperation("学生端-分页查询直播间")
  60. @PostMapping("/queryPageStudent")
  61. public HttpResponseResult<PageInfo<ImLiveBroadcastRoomVo>> queryPageStudent(@RequestBody Map<String, Object> param) {
  62. param.put("groupType","NORMAL");
  63. return succeed(imLiveRoomReservationService.queryPageStudent(param));
  64. }
  65. }