BzController.java 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. package com.zhiqiyun.open.mvc.controller;
  2. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  3. import com.baomidou.mybatisplus.core.metadata.OrderItem;
  4. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  5. import com.zhiqiyun.open.annotation.Permission;
  6. import com.zhiqiyun.open.core.models.bz.BzMedia;
  7. import com.zhiqiyun.open.core.models.place.PlaceCategory;
  8. import com.zhiqiyun.open.core.models.user.OauthInfo;
  9. import com.zhiqiyun.open.core.service.BzService;
  10. import com.zhiqiyun.open.core.service.OauthService;
  11. import com.zhiqiyun.open.core.service.PlaceCategoryService;
  12. import com.zhiqiyun.open.core.video.VideoDockingService;
  13. import com.zhiqiyun.open.mvc.Result;
  14. import com.zhiqiyun.open.mvc.params.bz.QueryBzMediaParam;
  15. import com.zhiqiyun.open.mvc.params.bz.SaveBzMediaParam;
  16. import com.zhiqiyun.open.utils.ServletContext;
  17. import lombok.extern.slf4j.Slf4j;
  18. import org.apache.commons.lang3.StringUtils;
  19. import org.springframework.beans.BeanUtils;
  20. import org.springframework.beans.factory.annotation.Autowired;
  21. import org.springframework.web.bind.annotation.*;
  22. import javax.validation.Valid;
  23. import java.io.IOException;
  24. import java.util.List;
  25. @Slf4j
  26. @RestController
  27. @RequestMapping("/bz")
  28. public class BzController {
  29. @Autowired
  30. private BzService bzService;
  31. @Autowired
  32. private OauthService oauthService;
  33. @Autowired
  34. private PlaceCategoryService categoryService;
  35. @Autowired
  36. private VideoDockingService videoDockingService;
  37. @GetMapping("/testLoadVideo")
  38. public Result testLoadVideo() throws IOException {
  39. try {
  40. videoDockingService.loadDeviceList();
  41. } catch (Exception e) {
  42. log.error("BzController error:" + e.getMessage(), e);
  43. }
  44. return Result.instance(Result.Code.SUCCESS);
  45. }
  46. @Permission(value = "bz.media", tags = "查询多媒体资源")
  47. @PostMapping("/findMediaPage")
  48. public Result findMediaPage(@RequestBody QueryBzMediaParam params) {
  49. QueryWrapper<BzMedia> queryWrapper = new QueryWrapper<>();
  50. if (params.getCategoryId() != null) {
  51. queryWrapper.eq("category_id", params.getCategoryId());
  52. }
  53. if (StringUtils.isNotBlank(params.getName())) {
  54. queryWrapper.like("name", params.getName());
  55. }
  56. Page<BzMedia> page = params.getPage();
  57. page.addOrder(OrderItem.desc("created_time"));
  58. Page<BzMedia> resultData = this.bzService.findMediaPage(page, queryWrapper);
  59. for (BzMedia media : page.getRecords()) {
  60. PlaceCategory category = this.categoryService.getById(media.getCategoryId());
  61. if (category != null) {
  62. media.setCategory(category);
  63. }
  64. }
  65. return Result.instance(Result.Code.SUCCESS).setData(resultData);
  66. }
  67. @Permission(value = "bz.media", tags = "添加多媒体资源")
  68. @PostMapping("/saveMedia")
  69. public Result saveMedia(@Valid @RequestBody SaveBzMediaParam param) throws Exception {
  70. OauthInfo oauthInfo = this.oauthService.getAuth(ServletContext.getAccessToken());
  71. BzMedia entity = new BzMedia();
  72. BeanUtils.copyProperties(param, entity);
  73. entity.setCreatedBy(oauthInfo.getId());
  74. entity.setUpdatedBy(oauthInfo.getId());
  75. this.bzService.insertOrUpdateMedia(entity);
  76. return Result.instance(Result.Code.MESSAGE_SUCCESS);
  77. }
  78. @Permission(value = "bz.media", tags = "修改多媒体资源")
  79. @PostMapping("/updateMediaId")
  80. public Result updateMediaId(Long id, @Valid @RequestBody SaveBzMediaParam param) throws Exception {
  81. OauthInfo oauthInfo = this.oauthService.getAuth(ServletContext.getAccessToken());
  82. BzMedia entity = new BzMedia();
  83. BeanUtils.copyProperties(param, entity);
  84. entity.setUpdatedBy(oauthInfo.getId());
  85. entity.setId(id);
  86. this.bzService.insertOrUpdateMedia(entity);
  87. return Result.instance(Result.Code.MESSAGE_SUCCESS);
  88. }
  89. @Permission(value = "bz.media", tags = "删除多媒体资源")
  90. @PostMapping("/deleteMediaByIds")
  91. public Result deleteMediaByIds(@RequestBody List<Long> ids) {
  92. this.bzService.deleteMediaByIds(ids);
  93. return Result.instance(Result.Code.MESSAGE_SUCCESS);
  94. }
  95. }