VisualMapController.java 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. package jnpf.visualdata.controller;
  2. import cn.dev33.satoken.annotation.SaCheckPermission;
  3. import io.swagger.v3.oas.annotations.Operation;
  4. import io.swagger.v3.oas.annotations.Parameter;
  5. import io.swagger.v3.oas.annotations.Parameters;
  6. import io.swagger.v3.oas.annotations.tags.Tag;
  7. import jnpf.base.ActionResult;
  8. import jnpf.base.controller.SuperController;
  9. import jnpf.constant.MsgCode;
  10. import jnpf.util.JsonUtil;
  11. import jnpf.visualdata.entity.VisualMapEntity;
  12. import jnpf.visualdata.model.visual.VisualPaginationModel;
  13. import jnpf.visualdata.model.visualmap.*;
  14. import jnpf.visualdata.service.VisualMapService;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.util.Assert;
  17. import org.springframework.web.bind.annotation.*;
  18. import java.util.HashMap;
  19. import java.util.List;
  20. import java.util.Map;
  21. /**
  22. * 大屏地图
  23. *
  24. * @author JNPF开发平台组
  25. * @version V3.1.0
  26. * @copyright 引迈信息技术有限公司
  27. * @date 2021年6月15日
  28. */
  29. @RestController
  30. @Tag(name = "大屏地图", description = "map")
  31. @RequestMapping("/api/blade-visual/map")
  32. public class VisualMapController extends SuperController<VisualMapService, VisualMapEntity> {
  33. @Autowired
  34. private VisualMapService mapService;
  35. /**
  36. * 分页
  37. *
  38. * @param pagination 分页模型
  39. * @return
  40. */
  41. @Operation(summary = "分页")
  42. @GetMapping("/lazy-list")
  43. public ActionResult<List<VisualMapListVO>> list(VisualPaginationModel pagination) {
  44. List<VisualMapEntity> data = mapService.getListWithColnums(pagination, VisualMapEntity::getId, VisualMapEntity::getName
  45. , VisualMapEntity::getCode, VisualMapEntity::getParentCode, VisualMapEntity::getParentId
  46. , VisualMapEntity::getAncestors, VisualMapEntity::getMapLevel);
  47. List<VisualMapListVO> list = JsonUtil.getJsonToList(data, VisualMapListVO.class);
  48. VisualMapEntity parent = getBaseService().getInfo(pagination.getParentId());
  49. list.forEach(m -> {
  50. m.setHasChildren(getBaseService().hasChild(m.getId()));
  51. if(parent != null){
  52. m.setParentName(parent.getName());
  53. }
  54. });
  55. return ActionResult.success(MsgCode.SU005.get(), list);
  56. }
  57. /**
  58. * 详情
  59. *
  60. * @param id 主键
  61. * @return
  62. */
  63. @Operation(summary = "详情")
  64. @GetMapping("/detail")
  65. public ActionResult<VisualMapInfoVO> info(@RequestParam("id") String id) {
  66. VisualMapEntity entity = mapService.getInfo(id);
  67. VisualMapInfoVO vo = JsonUtil.getJsonToBean(entity, VisualMapInfoVO.class);
  68. return ActionResult.success(vo);
  69. }
  70. /**
  71. * 新增
  72. *
  73. * @param mapCrForm 地图模型
  74. * @return
  75. */
  76. @Operation(summary = "新增")
  77. @PostMapping("/save")
  78. @Parameters({
  79. @Parameter(name = "mapCrForm", description = "地图模型", required = true),
  80. })
  81. @SaCheckPermission("onlineDev.dataScreen")
  82. public ActionResult create(@RequestBody VisualMapCrForm mapCrForm) {
  83. VisualMapEntity entity = JsonUtil.getJsonToBean(mapCrForm, VisualMapEntity.class);
  84. mapService.create(entity);
  85. return ActionResult.success(MsgCode.SU001.get());
  86. }
  87. /**
  88. * 修改
  89. *
  90. * @param mapUpForm 地图模型
  91. * @return
  92. */
  93. @Operation(summary = "修改")
  94. @PostMapping("/update")
  95. @Parameters({
  96. @Parameter(name = "mapUpForm", description = "地图模型", required = true),
  97. })
  98. @SaCheckPermission("onlineDev.dataScreen")
  99. public ActionResult update(@RequestBody VisualMapUpForm mapUpForm) {
  100. VisualMapEntity entity = JsonUtil.getJsonToBean(mapUpForm, VisualMapEntity.class);
  101. boolean flag = mapService.update(mapUpForm.getId(), entity);
  102. if (!flag) {
  103. return ActionResult.fail(MsgCode.FA001.get());
  104. }
  105. return ActionResult.success(MsgCode.SU004.get());
  106. }
  107. /**
  108. * 删除
  109. *
  110. * @param ids 主键
  111. * @return
  112. */
  113. @Operation(summary = "删除")
  114. @PostMapping("/remove")
  115. @Parameters({
  116. @Parameter(name = "ids", description = "主键", required = true),
  117. })
  118. @SaCheckPermission("onlineDev.dataScreen")
  119. public ActionResult delete(@RequestParam("ids") String ids) {
  120. VisualMapEntity entity = mapService.getInfo(ids);
  121. if (entity != null) {
  122. mapService.delete(entity);
  123. return ActionResult.success(MsgCode.SU003.get());
  124. }
  125. return ActionResult.fail(MsgCode.FA003.get());
  126. }
  127. /**
  128. * 数据详情
  129. *
  130. * @param id 主键
  131. * @return
  132. */
  133. @Operation(summary = "数据详情")
  134. @GetMapping("/data")
  135. @Parameters({
  136. @Parameter(name = "id", description = "主键", required = true),
  137. })
  138. public String dataInfo(@RequestParam("id") String id) {
  139. VisualMapEntity entity = mapService.getInfo(id);
  140. Assert.notNull(entity, MsgCode.FA001::get);
  141. return entity.getData();
  142. }
  143. }