guoshilong
2024-03-23 f04487fef5ac47380dfa9670156743c9d273966b
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/controller/PatrolRecordController.java
@@ -1,16 +1,15 @@
package cn.gistack.sm.patrol.controller;
import cn.gistack.sm.patrol.entity.PatrolGroupItem;
import cn.gistack.sm.patrol.entity.PatrolRecord;
import cn.gistack.sm.patrol.entity.PatrolReport;
import cn.gistack.sm.patrol.entity.PatrolType;
import cn.gistack.flow.core.entity.BladeFlow;
import cn.gistack.flow.core.feign.IFlowClient;
import cn.gistack.flow.core.vo.BladeFlowVO;
import cn.gistack.sm.patrol.entity.*;
import cn.gistack.sm.patrol.service.IPatrolGroupItemService;
import cn.gistack.sm.patrol.service.IPatrolRecordService;
import cn.gistack.sm.patrol.vo.PatrolGroupItemVO;
import cn.gistack.sm.patrol.vo.PatrolRecordVO;
import cn.gistack.sm.patrol.vo.RecordBatchVO;
import cn.gistack.sm.patrol.vo.RecordVO;
import cn.gistack.sm.patrol.vo.*;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
@@ -21,114 +20,118 @@
import org.springblade.core.tool.api.R;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* @Description: 巡查记录
*/
 * @Description: 巡查记录
 */
@Slf4j
@Api(tags="巡查记录")
@Api(tags = "巡查记录")
@RestController
@RequestMapping("/patrol/patrolRecord")
@AllArgsConstructor
public class PatrolRecordController extends BladeController {
   private IPatrolRecordService patrolRecordService;
   private IPatrolRecordService patrolRecordService;
   private IFlowClient flowClient;
   /**
    * 分页列表查询
    */
   @ApiOperation(value="巡查记录-分页列表查询", notes="巡查记录-分页列表查询")
   @GetMapping(value = "/list")
   public R queryPageList(PatrolRecordVO patrolRecord, Query query) {
       IPage<PatrolRecord> pageList = patrolRecordService.selectPatrolRecord(Condition.getPage(query),patrolRecord);
       return R.data(pageList);
   }
   /**
    * 分页列表查询
    */
   @ApiOperation(value = "巡查记录-分页列表查询", notes = "巡查记录-分页列表查询")
   @GetMapping(value = "/list")
   public R queryPageList(PatrolRecordVO patrolRecord, Query query) {
      IPage<PatrolRecord> pageList = patrolRecordService.selectPatrolRecord(Condition.getPage(query), patrolRecord);
      return R.data(pageList);
   }
    /**
     * 获取所有巡查记录
     */
    @ApiOperation(value="获取所有巡查类型", notes="获取所有巡查类型")
    @GetMapping(value = "/all")
   public R getAll(PatrolRecord patrolRecord){
       List<PatrolRecord> list = patrolRecordService.list(Condition.getQueryWrapper(patrolRecord));
       return R.data(list);
   }
   /**
    * 获取所有巡查记录
    */
   @ApiOperation(value = "获取所有巡查类型", notes = "获取所有巡查类型")
   @GetMapping(value = "/all")
   public R getAll(PatrolRecord patrolRecord) {
      List<PatrolRecord> list = patrolRecordService.list(Condition.getQueryWrapper(patrolRecord));
      return R.data(list);
   }
   /**
    * 添加
    */
   @ApiOperation(value="巡查记录-添加", notes="巡查记录-添加")
   @PostMapping(value = "/add")
   public R add(@RequestBody PatrolRecord patrolRecord) {
       return R.data(patrolRecordService.save(patrolRecord));
   }
   /**
    * 添加
    */
   @ApiOperation(value = "巡查记录-添加", notes = "巡查记录-添加")
   @PostMapping(value = "/add")
   public R add(@RequestBody PatrolRecord patrolRecord) {
      return R.data(patrolRecordService.save(patrolRecord));
   }
   /**
    * 编辑
    */
   @ApiOperation(value="巡查记录-编辑", notes="巡查记录-编辑")
   @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
   public R edit(@RequestBody PatrolRecord patrolRecord) {
       return R.data(patrolRecordService.updateById(patrolRecord));
   }
   /**
    * 编辑
    */
   @ApiOperation(value = "巡查记录-编辑", notes = "巡查记录-编辑")
   @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
   public R edit(@RequestBody PatrolRecord patrolRecord) {
      return R.data(patrolRecordService.updateById(patrolRecord));
   }
   /**
    * 通过id删除
    *
    * @param id
    * @return
    */
   @ApiOperation(value="巡查记录-通过id删除", notes="巡查记录-通过id删除")
   @PostMapping(value = "/delete")
   public R delete(@RequestParam(name="id",required=true) String id) {
       return R.data(patrolRecordService.removeById(id));
   }
   /**
    * 通过id删除
    *
    * @param id
    * @return
    */
   @ApiOperation(value = "巡查记录-通过id删除", notes = "巡查记录-通过id删除")
   @PostMapping(value = "/delete")
   public R delete(@RequestParam(name = "id", required = true) String id) {
      return R.data(patrolRecordService.removeById(id));
   }
   /**
    * 批量删除
    *
    * @param ids
    * @return
    */
   @ApiOperation(value="巡查记录-批量删除", notes="巡查记录-批量删除")
   @PostMapping(value = "/deleteBatch")
   public R deleteBatch(@RequestParam(name="ids",required=true) String ids) {
       return R.data(patrolRecordService.removeByIds(Arrays.asList(ids.split(","))));
   }
   /**
    * 批量删除
    *
    * @param ids
    * @return
    */
   @ApiOperation(value = "巡查记录-批量删除", notes = "巡查记录-批量删除")
   @PostMapping(value = "/deleteBatch")
   public R deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
      return R.data(patrolRecordService.removeByIds(Arrays.asList(ids.split(","))));
   }
   /**
    * 通过id查询
    *
    * @param id
    * @return
    */
   @ApiOperation(value="巡查记录-通过id查询", notes="巡查记录-通过id查询")
   @GetMapping(value = "/queryById")
   public R queryById(@RequestParam(name="id",required=true) String id) {
      PatrolRecordVO patrolRecordVO = patrolRecordService.getDetail(id);
      return R.data(patrolRecordVO);
   }
   /**
    * 通过id查询
    *
    * @param id
    * @return
    */
   @ApiOperation(value = "巡查记录-通过id查询", notes = "巡查记录-通过id查询")
   @GetMapping(value = "/queryById")
   public R queryById(@RequestParam(name = "id", required = true) String id) {
      PatrolRecordVO patrolRecordVO = patrolRecordService.getDetail(id);
      return R.data(patrolRecordVO);
   }
   /**
    * 通过taskId,itemsIds查询(用来判断是否完成任务)
    *
    * @return
    */
   @ApiOperation(value="巡查记录-通过taskId,itemsIds查询", notes="巡查记录-通过taskId,itemsIds查询")
   @ApiOperation(value = "巡查记录-通过taskId,itemsIds查询", notes = "巡查记录-通过taskId,itemsIds查询")
   @GetMapping(value = "/getPatrolRecordByTaskId")
   public R getPatrolRecordByTaskId(String taskId,String itemIds) {
      List<PatrolGroupItemVO> list = patrolRecordService.getPatrolRecordByTaskId(taskId,itemIds);
   public R getPatrolRecordByTaskId(String taskId, String itemIds) {
      List<PatrolGroupItemVO> list = patrolRecordService.getPatrolRecordByTaskId(taskId, itemIds);
      return R.data(list);
   }
   /**
    * 通过taskId,itemsIds查询(用来查询巡查记录)
    *
    * @return
    */
   @ApiOperation(value="巡查记录-通过itemId查询", notes="巡查记录-通过itemId查询")
   @ApiOperation(value = "巡查记录-通过itemId查询", notes = "巡查记录-通过itemId查询")
   @GetMapping(value = "/getByTaskIdAndItemId")
   public R getByTaskIdAndItemId(String taskId,String itemIds){
      List<PatrolRecordVO> list = patrolRecordService.getByTaskIdAndItemId(taskId,itemIds);
   public R getByTaskIdAndItemId(String taskId, String itemIds) {
      List<PatrolRecordVO> list = patrolRecordService.getByTaskIdAndItemId(taskId, itemIds);
      return R.data(list);
   }
@@ -137,10 +140,10 @@
    *
    * @return
    */
   @ApiOperation(value="巡查指标项目-通过itemIds查询", notes="巡查指标项目-通过itemIds查询")
   @ApiOperation(value = "巡查指标项目-通过itemIds查询", notes = "巡查指标项目-通过itemIds查询")
   @GetMapping(value = "/getItemByItemIds")
   public R getItemByItemIds(String itemIds,String groupId,String taskId){
      List list = patrolRecordService.getItemByItemIds(itemIds,groupId,taskId);
   public R getItemByItemIds(String itemIds, String groupId, String taskId) {
      List list = patrolRecordService.getItemByItemIds(itemIds, groupId, taskId);
      return R.data(list);
   }
@@ -150,7 +153,7 @@
    * @return
    */
   @GetMapping(value = "/getByTaskIdAndGroupId")
   public R getByTaskIdAndGroupId(PatrolRecordVO patrolRecordVO){
   public R getByTaskIdAndGroupId(PatrolRecordVO patrolRecordVO) {
      List<PatrolRecord> list = patrolRecordService.getByTaskIdAndGroupId(patrolRecordVO);
      return R.data(list);
   }
@@ -158,38 +161,122 @@
   /**
    * 记录更新并且新增数据(适用于app处理)
    */
   @ApiOperation(value="巡查记录-记录更新并且新增数据", notes="巡查记录-记录更新并且新增数据")
   @RequestMapping(value = "/updateThenSaveBatch", method = {RequestMethod.PUT,RequestMethod.POST})
   public R updateThenSaveBatch(@RequestBody RecordBatchVO recordBatchVO){
   @ApiOperation(value = "巡查记录-记录更新并且新增数据", notes = "巡查记录-记录更新并且新增数据")
   @RequestMapping(value = "/updateThenSaveBatch", method = {RequestMethod.PUT, RequestMethod.POST})
   public R updateThenSaveBatch(@RequestBody RecordBatchVO recordBatchVO) {
      return R.data(patrolRecordService.updateThenSaveBatch(recordBatchVO));
   }
   /**
    * 获取历史记录
    */
   @ApiOperation(value="巡查记录-获取历史记录", notes="巡查记录-获取历史记录")
   @RequestMapping(value = "/getHistoryRecord", method = {RequestMethod.PUT,RequestMethod.POST})
   public R getHistoryRecord(PatrolRecordVO patrolRecordVO){
   @ApiOperation(value = "巡查记录-获取历史记录", notes = "巡查记录-获取历史记录")
   @RequestMapping(value = "/getHistoryRecord", method = {RequestMethod.PUT, RequestMethod.POST})
   public R getHistoryRecord(PatrolRecordVO patrolRecordVO) {
      return R.data(patrolRecordService.getHistoryRecord(patrolRecordVO));
   }
   @GetMapping("getRecordDetail")
   public R getRecordVO(RecordVO recordVO){
   public R getRecordVO(RecordVO recordVO) {
      RecordVO detail = patrolRecordService.getRecordVO(recordVO);
      return R.data(detail);
   }
   /**
    * 获取处理情况
    *
    * @param patrolRecord
    * @return
    */
   @GetMapping("getHandleRecord")
   public R getHandleRecord(PatrolRecord patrolRecord){
   public R getHandleRecord(PatrolRecord patrolRecord) {
      PatrolRecordVO res = patrolRecordService.getHandleRecord(patrolRecord);
      return R.data(res);
   }
   /**
    * 获取待办列表
    *
    * @return
    */
   @GetMapping("getToDoList")
   public R getToDoList(String currentUserId) {
      BladeFlow bladeFlow = new BladeFlow();
      //获取我的待办列表
      List<BladeFlow> toDoList = flowClient.getMyToDoList(bladeFlow,currentUserId);
      List<PatrolRecordVO> result = new ArrayList<>();
      toDoList.forEach(flow -> {
         PatrolRecordVO byId = patrolRecordService.customizeGetById(flow.getBusinessId());
         if (byId != null) {
            byId.setFlow(flow);
            result.add(byId);
         }
      });
      return R.data(result);
   }
   /**
    * 获取已办列表
    *
    * @return
    */
   @GetMapping("getDoneList")
   public R getDoneList(String currentUserId) {
      BladeFlow bladeFlow = new BladeFlow();
      //获取我的已办列表
      List<BladeFlow> doneList = flowClient.getMyDoneList(bladeFlow,currentUserId);
      List<PatrolRecordVO> result = new ArrayList<>();
      doneList.forEach(flow -> {
         PatrolRecordVO byId = patrolRecordService.customizeGetById(flow.getBusinessId());
         if (byId != null) {
            byId.setFlow(flow);
            result.add(byId);
         }
      });
      return R.data(result);
   }
   /**
    * 获取已办分页
    *
    * @return
    */
   @GetMapping("getDonePage")
   public R getDonePage(String currentUserId,Query query) {
      BladeFlow bladeFlow = new BladeFlow();
      Integer current = query.getCurrent();
      Integer size = query.getSize();
      //获取我的已办列表
      List<BladeFlow> doneList = flowClient.getMyDonePage(bladeFlow,currentUserId,current,size);
      List<PatrolRecordVO> result = new ArrayList<>();
      doneList.forEach(flow -> {
         PatrolRecordVO byId = patrolRecordService.customizeGetById(flow.getBusinessId());
         if (byId != null) {
            byId.setFlow(flow);
            result.add(byId);
         }
      });
      IPage<PatrolRecordVO> page = Condition.getPage(query);
      page.setRecords(result);
      page.setSize(size);
      page.setCurrent(current);
      return R.data(page);
   }
}