package com.sooka.sponest.data.digitalwater.controller; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.controller.BaseController; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.TableDataInfo; import com.ruoyi.common.log.annotation.Log; import com.ruoyi.common.log.enums.BusinessType; import com.ruoyi.common.security.annotation.RequiresPermissions; import com.sooka.sponest.data.digitalwater.domain.CenterdataTHydraulicPatrolTask; import com.sooka.sponest.data.digitalwater.domain.SysUserBody; import com.sooka.sponest.data.digitalwater.service.ICenterdataTHydraulicPatrolTaskService; import com.sooka.sponest.data.utils.DataConstants; import com.sooka.sponest.data.utils.ExcelUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.List; /** * 水利巡查任务Controller * * @author ruoyi * @date 2023-03-02 */ @Api(tags = "水利巡查任务控制器") @RestController @RequestMapping("/task") public class CenterdataTHydraulicPatrolTaskController extends BaseController { @Autowired private ICenterdataTHydraulicPatrolTaskService centerdataTHydraulicPatrolTaskService; /** * 查询水利巡查任务列表 */ @ApiOperation(value = "查询水利巡查任务资源", notes = "查询水利巡查任务资源") @RequiresPermissions("water:task:list") @GetMapping("/list") public TableDataInfo list(CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) { startPage(); List list = centerdataTHydraulicPatrolTaskService.selectCenterdataTHydraulicPatrolTaskList(centerdataTHydraulicPatrolTask); return getDataTable(list); } /** * 查询水利巡查任务列表接口 */ @ApiOperation(value = "查询水利巡查任务名称", notes = "查询水利巡查任务名称") @PostMapping("/taskList") public TableDataInfo taskList(@RequestBody CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) { startPage(); List list; try { list = centerdataTHydraulicPatrolTaskService.selectCenterdataTHydraulicPatrolTaskList(centerdataTHydraulicPatrolTask); return getDataTable(list); } catch (Exception e) { logger.error(e.getMessage()); } return getDataTable(new ArrayList<>()); } /** * 导出水利巡查任务列表 */ @ApiOperation(value = "导出水利巡查任务资源", notes = "导出水利巡查任务资源") @RequiresPermissions("water:task:export") @Log(title = "水利巡查任务", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) { List list = centerdataTHydraulicPatrolTaskService.selectCenterdataTHydraulicPatrolTaskList(centerdataTHydraulicPatrolTask); ExcelUtil util = new ExcelUtil<>(CenterdataTHydraulicPatrolTask.class); switch (centerdataTHydraulicPatrolTask.getType()) { case "1": util.exportExcel(response, list, "林业巡查任务数据"); break; case "2": util.exportExcel(response, list, "水利巡查任务数据"); break; case "3": util.exportExcel(response, list, "交通巡查任务数据"); break; case "4": util.exportExcel(response, list, "环保巡查任务数据"); break; case "5": util.exportExcel(response, list, "消防巡查任务数据"); break; case "6": util.exportExcel(response, list, "资源巡查任务数据"); break; default: break; } } /** * 获取水利巡查任务详细信息 */ @ApiOperation(value = "获取水利巡查任务详细信息", notes = "获取水利巡查任务详细信息") @RequiresPermissions("water:task:query") @GetMapping(value = "/{id}") @ApiImplicitParams(value = { @ApiImplicitParam(name = "id", value = "主键id", dataType = "String", required = true) }) public AjaxResult getInfo(@PathVariable("id") String id) { return AjaxResult.success(centerdataTHydraulicPatrolTaskService.selectCenterdataTHydraulicPatrolTaskById(id)); } /** * 新增水利巡查任务 */ @ApiOperation(value = "新增水利巡查任务资源", notes = "新增水利巡查任务资源") @RequiresPermissions("water:task:add") @Log(title = "水利巡查任务", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@Validated @RequestBody CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) { String tableName = "centerdata_t_hydraulic_patrol_task"; String[] keys = {"plan_id", "task_name", "type", "dept_id"}; String[] values = {centerdataTHydraulicPatrolTask.getPlanId(), centerdataTHydraulicPatrolTask.getTaskName(), centerdataTHydraulicPatrolTask.getType(), String.valueOf(centerdataTHydraulicPatrolTask.getDeptId())}; if (!centerdataTHydraulicPatrolTaskService.uniqueCheck(tableName, keys, values)) { return AjaxResult.error(DataConstants.ERROR_MSG); } return toAjax(centerdataTHydraulicPatrolTaskService.insertCenterdataTHydraulicPatrolTask(centerdataTHydraulicPatrolTask)); } /** * 修改水利巡查任务 */ @ApiOperation(value = "修改水利巡查任务资源", notes = "修改水利巡查任务资源") @RequiresPermissions("water:task:edit") @Log(title = "水利巡查任务", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@Validated @RequestBody CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) { String tableName = "centerdata_t_hydraulic_patrol_task"; String[] keys = {"plan_id", "task_name", "type", "id", "dept_id"}; String[] values = {centerdataTHydraulicPatrolTask.getPlanId(), centerdataTHydraulicPatrolTask.getTaskName(), centerdataTHydraulicPatrolTask.getType(), centerdataTHydraulicPatrolTask.getId(), String.valueOf(centerdataTHydraulicPatrolTask.getDeptId())}; if (!centerdataTHydraulicPatrolTaskService.uniqueCheck(tableName, keys, values)) { return AjaxResult.error(DataConstants.ERROR_MSG); } return toAjax(centerdataTHydraulicPatrolTaskService.updateCenterdataTHydraulicPatrolTask(centerdataTHydraulicPatrolTask)); } /** * 删除水利巡查任务 */ @ApiOperation(value = "删除水利巡查任务资源", notes = "删除水利巡查任务资源") @RequiresPermissions("water:task:remove") @Log(title = "水利巡查任务", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") @ApiImplicitParams(value = { @ApiImplicitParam(name = "ids", value = "主键id", dataType = "String[]", required = true) }) public AjaxResult remove(@PathVariable String[] ids) { return toAjax(centerdataTHydraulicPatrolTaskService.deleteCenterdataTHydraulicPatrolTaskByIds(ids)); } /** * 通过部门获取用户列表 * * @param sysUserBody * @return */ @ApiOperation(value = "通过部门获取用户列表", notes = "通过部门获取用户列表") @GetMapping("/getSysUserList") public AjaxResult getSysUserList(SysUserBody sysUserBody) { return AjaxResult.success(centerdataTHydraulicPatrolTaskService.getSysUserList(sysUserBody)); } /** * 获取人员的巡查计划 以及当前人员巡查计划完成度 */ @ApiOperation(value = "数据中心查询维护计划列表", notes = "数据中心查询维护计划列表") @PostMapping("/getPlanList") public R> getPlanList(@RequestBody CenterdataTHydraulicPatrolTask task) { return R.ok(centerdataTHydraulicPatrolTaskService.getPlanList(task)); } @ApiOperation(value = "获取任务列表", notes = "获取任务列表") @GetMapping("/getAllTaskList") public List getAllTaskList(CenterdataTHydraulicPatrolTask centerdataTHydraulicPatrolTask) { return centerdataTHydraulicPatrolTaskService.getAllCenterdataTHydraulicPatrolTaskList(centerdataTHydraulicPatrolTask); } }