CenterdataTHydraulicPatrolTaskController.java 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. package com.sooka.sponest.data.digitalwater.controller;
  2. import com.ruoyi.common.core.domain.R;
  3. import com.ruoyi.common.core.web.controller.BaseController;
  4. import com.ruoyi.common.core.web.domain.AjaxResult;
  5. import com.ruoyi.common.core.web.page.TableDataInfo;
  6. import com.ruoyi.common.log.annotation.Log;
  7. import com.ruoyi.common.log.enums.BusinessType;
  8. import com.ruoyi.common.security.annotation.RequiresPermissions;
  9. import com.sooka.sponest.data.digitalwater.domain.CenterdataTHydraulicPatrolTask;
  10. import com.sooka.sponest.data.digitalwater.domain.SysUserBody;
  11. import com.sooka.sponest.data.digitalwater.service.ICenterdataTHydraulicPatrolTaskService;
  12. import com.sooka.sponest.data.utils.DataConstants;
  13. import com.sooka.sponest.data.utils.ExcelUtil;
  14. import io.swagger.annotations.Api;
  15. import io.swagger.annotations.ApiImplicitParam;
  16. import io.swagger.annotations.ApiImplicitParams;
  17. import io.swagger.annotations.ApiOperation;
  18. import org.springframework.beans.factory.annotation.Autowired;
  19. import org.springframework.validation.annotation.Validated;
  20. import org.springframework.web.bind.annotation.*;
  21. import javax.servlet.http.HttpServletResponse;
  22. import java.util.ArrayList;
  23. import java.util.List;
  24. /**
  25. * 水利巡查任务Controller
  26. *
  27. * @author ruoyi
  28. * @date 2023-03-02
  29. */
  30. @Api(tags = "水利巡查任务控制器")
  31. @RestController
  32. @RequestMapping("/task")
  33. public class CenterdataTHydraulicPatrolTaskController extends BaseController {
  34. @Autowired
  35. private ICenterdataTHydraulicPatrolTaskService centerdataTHydraulicPatrolTaskService;
  36. /**
  37. * 查询水利巡查任务列表
  38. */
  39. @ApiOperation(value = "查询水利巡查任务资源", notes = "查询水利巡查任务资源")
  40. @RequiresPermissions("water:task:list")
  41. @GetMapping("/list")
  42. public TableDataInfo list(CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) {
  43. startPage();
  44. List<CenterdataTHydraulicPatrolTask> list = centerdataTHydraulicPatrolTaskService.selectCenterdataTHydraulicPatrolTaskList(centerdataTHydraulicPatrolTask);
  45. return getDataTable(list);
  46. }
  47. /**
  48. * 查询水利巡查任务列表接口
  49. */
  50. @ApiOperation(value = "查询水利巡查任务名称", notes = "查询水利巡查任务名称")
  51. @PostMapping("/taskList")
  52. public TableDataInfo taskList(@RequestBody CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) {
  53. startPage();
  54. List<CenterdataTHydraulicPatrolTask> list;
  55. try {
  56. list = centerdataTHydraulicPatrolTaskService.selectCenterdataTHydraulicPatrolTaskList(centerdataTHydraulicPatrolTask);
  57. return getDataTable(list);
  58. } catch (Exception e) {
  59. logger.error(e.getMessage());
  60. }
  61. return getDataTable(new ArrayList<>());
  62. }
  63. /**
  64. * 导出水利巡查任务列表
  65. */
  66. @ApiOperation(value = "导出水利巡查任务资源", notes = "导出水利巡查任务资源")
  67. @RequiresPermissions("water:task:export")
  68. @Log(title = "水利巡查任务", businessType = BusinessType.EXPORT)
  69. @PostMapping("/export")
  70. public void export(HttpServletResponse response, CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) {
  71. List<CenterdataTHydraulicPatrolTask> list = centerdataTHydraulicPatrolTaskService.selectCenterdataTHydraulicPatrolTaskList(centerdataTHydraulicPatrolTask);
  72. ExcelUtil<CenterdataTHydraulicPatrolTask> util = new ExcelUtil<>(CenterdataTHydraulicPatrolTask.class);
  73. switch (centerdataTHydraulicPatrolTask.getType()) {
  74. case "1":
  75. util.exportExcel(response, list, "林业巡查任务数据");
  76. break;
  77. case "2":
  78. util.exportExcel(response, list, "水利巡查任务数据");
  79. break;
  80. case "3":
  81. util.exportExcel(response, list, "交通巡查任务数据");
  82. break;
  83. case "4":
  84. util.exportExcel(response, list, "环保巡查任务数据");
  85. break;
  86. case "5":
  87. util.exportExcel(response, list, "消防巡查任务数据");
  88. break;
  89. case "6":
  90. util.exportExcel(response, list, "资源巡查任务数据");
  91. break;
  92. default:
  93. break;
  94. }
  95. }
  96. /**
  97. * 获取水利巡查任务详细信息
  98. */
  99. @ApiOperation(value = "获取水利巡查任务详细信息", notes = "获取水利巡查任务详细信息")
  100. @RequiresPermissions("water:task:query")
  101. @GetMapping(value = "/{id}")
  102. @ApiImplicitParams(value = {
  103. @ApiImplicitParam(name = "id", value = "主键id", dataType = "String", required = true)
  104. })
  105. public AjaxResult getInfo(@PathVariable("id") String id) {
  106. return AjaxResult.success(centerdataTHydraulicPatrolTaskService.selectCenterdataTHydraulicPatrolTaskById(id));
  107. }
  108. /**
  109. * 新增水利巡查任务
  110. */
  111. @ApiOperation(value = "新增水利巡查任务资源", notes = "新增水利巡查任务资源")
  112. @RequiresPermissions("water:task:add")
  113. @Log(title = "水利巡查任务", businessType = BusinessType.INSERT)
  114. @PostMapping
  115. public AjaxResult add(@Validated @RequestBody CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) {
  116. String tableName = "centerdata_t_hydraulic_patrol_task";
  117. String[] keys = {"plan_id", "task_name", "type", "dept_id"};
  118. String[] values = {centerdataTHydraulicPatrolTask.getPlanId(), centerdataTHydraulicPatrolTask.getTaskName(), centerdataTHydraulicPatrolTask.getType(), String.valueOf(centerdataTHydraulicPatrolTask.getDeptId())};
  119. if (!centerdataTHydraulicPatrolTaskService.uniqueCheck(tableName, keys, values)) {
  120. return AjaxResult.error(DataConstants.ERROR_MSG);
  121. }
  122. return toAjax(centerdataTHydraulicPatrolTaskService.insertCenterdataTHydraulicPatrolTask(centerdataTHydraulicPatrolTask));
  123. }
  124. /**
  125. * 修改水利巡查任务
  126. */
  127. @ApiOperation(value = "修改水利巡查任务资源", notes = "修改水利巡查任务资源")
  128. @RequiresPermissions("water:task:edit")
  129. @Log(title = "水利巡查任务", businessType = BusinessType.UPDATE)
  130. @PutMapping
  131. public AjaxResult edit(@Validated @RequestBody CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) {
  132. String tableName = "centerdata_t_hydraulic_patrol_task";
  133. String[] keys = {"plan_id", "task_name", "type", "id", "dept_id"};
  134. String[] values = {centerdataTHydraulicPatrolTask.getPlanId(), centerdataTHydraulicPatrolTask.getTaskName(), centerdataTHydraulicPatrolTask.getType(), centerdataTHydraulicPatrolTask.getId(), String.valueOf(centerdataTHydraulicPatrolTask.getDeptId())};
  135. if (!centerdataTHydraulicPatrolTaskService.uniqueCheck(tableName, keys, values)) {
  136. return AjaxResult.error(DataConstants.ERROR_MSG);
  137. }
  138. return toAjax(centerdataTHydraulicPatrolTaskService.updateCenterdataTHydraulicPatrolTask(centerdataTHydraulicPatrolTask));
  139. }
  140. /**
  141. * 删除水利巡查任务
  142. */
  143. @ApiOperation(value = "删除水利巡查任务资源", notes = "删除水利巡查任务资源")
  144. @RequiresPermissions("water:task:remove")
  145. @Log(title = "水利巡查任务", businessType = BusinessType.DELETE)
  146. @DeleteMapping("/{ids}")
  147. @ApiImplicitParams(value = {
  148. @ApiImplicitParam(name = "ids", value = "主键id", dataType = "String[]", required = true)
  149. })
  150. public AjaxResult remove(@PathVariable String[] ids) {
  151. return toAjax(centerdataTHydraulicPatrolTaskService.deleteCenterdataTHydraulicPatrolTaskByIds(ids));
  152. }
  153. /**
  154. * 通过部门获取用户列表
  155. *
  156. * @param sysUserBody
  157. * @return
  158. */
  159. @ApiOperation(value = "通过部门获取用户列表", notes = "通过部门获取用户列表")
  160. @GetMapping("/getSysUserList")
  161. public AjaxResult getSysUserList(SysUserBody sysUserBody) {
  162. return AjaxResult.success(centerdataTHydraulicPatrolTaskService.getSysUserList(sysUserBody));
  163. }
  164. /**
  165. * 获取人员的巡查计划 以及当前人员巡查计划完成度
  166. */
  167. @ApiOperation(value = "数据中心查询维护计划列表", notes = "数据中心查询维护计划列表")
  168. @PostMapping("/getPlanList")
  169. public R<List<CenterdataTHydraulicPatrolTask>> getPlanList(@RequestBody CenterdataTHydraulicPatrolTask task) {
  170. return R.ok(centerdataTHydraulicPatrolTaskService.getPlanList(task));
  171. }
  172. @ApiOperation(value = "获取任务列表", notes = "获取任务列表")
  173. @GetMapping("/getAllTaskList")
  174. public List<CenterdataTHydraulicPatrolTask> getAllTaskList(CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) {
  175. return centerdataTHydraulicPatrolTaskService.getAllCenterdataTHydraulicPatrolTaskList(centerdataTHydraulicPatrolTask);
  176. }
  177. }