添加接口:1、根据任务id和组id查询记录;2、根据任务id获取巡查项。添加巡查组VO,添加字段是否已填写,问题数量;记录表添加解决方案字段
13 files modified
7 files added
| | |
| | | */ |
| | | package cn.gistack.flow; |
| | | |
| | | import org.mybatis.spring.annotation.MapperScan; |
| | | import org.springblade.core.cloud.client.BladeCloudApplication; |
| | | import org.springblade.core.launch.BladeApplication; |
| | | import org.springblade.core.launch.constant.AppConstant; |
| | | import org.springframework.cloud.openfeign.EnableFeignClients; |
| | | |
| | | /** |
| | | * Flowable启动器 |
| | |
| | | */ |
| | | //@SeataCloudApplication |
| | | @BladeCloudApplication |
| | | @EnableFeignClients({"cn.gistack"}) |
| | | @MapperScan({"org.springblade.**.mapper.**","cn.gistack.**.mapper.**"}) |
| | | public class FlowApplication { |
| | | |
| | | public static void main(String[] args) { |
| | |
| | | public R getPatrolGroupByItemId(String itemIds) { |
| | | return R.data(patrolGroupService.getPatrolGroupByItemId(itemIds)); |
| | | } |
| | | |
| | | /** |
| | | * 根据任务id获取巡查项,可判断是否已选 |
| | | */ |
| | | @GetMapping(value = "/getAllPatrolGroupByTaskId") |
| | | public R getAllPatrolGroupByTaskId(String taskId) { |
| | | return R.data(patrolGroupService.getAllPatrolGroupByTaskId(taskId)); |
| | | } |
| | | } |
| | |
| | | return R.data(list); |
| | | } |
| | | |
| | | /** |
| | | * 通过任务id和组id获取记录表中的数据,用于数据回显 |
| | | * |
| | | * @return |
| | | */ |
| | | @GetMapping(value = "/getByTaskIdAndGroupId") |
| | | public R getByTaskIdAndGroupId(String groupId,String taskId){ |
| | | List<PatrolRecord> list = patrolRecordService.getByTaskIdAndGroupId(groupId,taskId); |
| | | return R.data(list); |
| | | } |
| | | |
| | | } |
| New file |
| | |
| | | package cn.gistack.sm.patrol.controller; |
| | | |
| | | import cn.gistack.sm.patrol.entity.PatrolConfig; |
| | | import cn.gistack.sm.patrol.entity.PatrolReport; |
| | | import cn.gistack.sm.patrol.service.IPatrolReportService; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.AllArgsConstructor; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springblade.core.boot.ctrl.BladeController; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.mp.support.Query; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.Arrays; |
| | | |
| | | /** |
| | | * @Description: 巡查设置 |
| | | */ |
| | | @Slf4j |
| | | @Api(tags="巡查设置") |
| | | @RestController |
| | | @RequestMapping("/patrol/patrolReport") |
| | | @AllArgsConstructor |
| | | public class PatrolReportController extends BladeController { |
| | | |
| | | private IPatrolReportService patrolReportService; |
| | | |
| | | /** |
| | | * 分页列表查询 |
| | | */ |
| | | @ApiOperation(value="巡查设置-分页列表查询", notes="巡查设置-分页列表查询") |
| | | @GetMapping(value = "/list") |
| | | public R<IPage<PatrolConfig>> queryPageList(PatrolConfig patrolConfig,Query query) { |
| | | IPage<PatrolConfig> pageList = patrolReportService.selectPatrolReport(Condition.getPage(query),patrolConfig); |
| | | return R.data(pageList); |
| | | } |
| | | |
| | | /** |
| | | * 添加 |
| | | */ |
| | | @ApiOperation(value="巡查设置-添加", notes="巡查设置-添加") |
| | | @PostMapping(value = "/add") |
| | | public R add(@RequestBody PatrolReport patrolReport) { |
| | | return R.data(patrolReportService.save(patrolReport)); |
| | | } |
| | | |
| | | /** |
| | | * 编辑 |
| | | */ |
| | | @ApiOperation(value="巡查设置-编辑", notes="巡查设置-编辑") |
| | | @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) |
| | | public R edit(@RequestBody PatrolReport patrolReport) { |
| | | return R.data(patrolReportService.updateById(patrolReport)); |
| | | } |
| | | |
| | | /** |
| | | * 通过id删除 |
| | | * |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @ApiOperation(value="巡查设置-通过id删除", notes="巡查设置-通过id删除") |
| | | @DeleteMapping(value = "/delete") |
| | | public R delete(@RequestParam(name="id",required=true) String id) { |
| | | patrolReportService.removeById(id); |
| | | return R.data(patrolReportService.removeById(id)); |
| | | } |
| | | |
| | | /** |
| | | * 批量删除 |
| | | * |
| | | * @param ids |
| | | * @return |
| | | */ |
| | | @ApiOperation(value="巡查设置-批量删除", notes="巡查设置-批量删除") |
| | | @DeleteMapping(value = "/deleteBatch") |
| | | public R deleteBatch(@RequestParam(name="ids",required=true) String ids) { |
| | | return R.data(this.patrolReportService.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) { |
| | | PatrolReport byId = patrolReportService.getById(id); |
| | | return R.data(byId); |
| | | } |
| | | |
| | | } |
| | |
| | | @ApiModelProperty(value = "巡检人员巡逻轨迹") |
| | | private String patrolRoute; |
| | | |
| | | /** |
| | | * 解决方案(1、自己解决,2上报) |
| | | */ |
| | | private String solution; |
| | | |
| | | } |
| New file |
| | |
| | | package cn.gistack.sm.patrol.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | import org.springblade.core.mp.base.BaseEntity; |
| | | |
| | | /** |
| | | * @Description: 巡查类型 |
| | | */ |
| | | @Data |
| | | @TableName("sm_patrol_report") |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @ApiModel(value = "sm_patrol_report", description = "巡查记录") |
| | | public class PatrolReport extends BaseEntity { |
| | | |
| | | /** |
| | | * 水库id |
| | | */ |
| | | @ApiModelProperty("水库id") |
| | | private String reservoirId; |
| | | |
| | | /** |
| | | * 报告数量 |
| | | */ |
| | | @ApiModelProperty("报告数量") |
| | | private Integer groupNum; |
| | | |
| | | /** |
| | | * 异常数量 |
| | | */ |
| | | @ApiModelProperty("异常数量") |
| | | private Integer errorNum; |
| | | } |
| | |
| | | |
| | | import cn.gistack.common.node.TreeNode; |
| | | import cn.gistack.sm.patrol.entity.PatrolGroup; |
| | | import cn.gistack.sm.patrol.vo.PatrolGroupVO; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import org.apache.ibatis.annotations.MapKey; |
| | | import org.apache.ibatis.annotations.Param; |
| | |
| | | List<TreeNode> getPatrolGroupItemTree(); |
| | | |
| | | List<PatrolGroup> getPatrolGroupByItemId(@Param("itemIds") String itemIds); |
| | | |
| | | List<PatrolGroupVO> getAllPatrolGroupByTaskId(@Param("taskId") String taskId); |
| | | } |
| | |
| | | ) a ,SM_PATROL_GROUP b |
| | | WHERE b.is_deleted = 0 AND a.group_id = b.id |
| | | </select> |
| | | <select id="getAllPatrolGroupByTaskId" resultType="cn.gistack.sm.patrol.vo.PatrolGroupVO"> |
| | | SELECT G.*,IF(C.GROUP_ID,1,2) isSelect,IFNULL(C.problemCount,0) problemCount FROM SM_PATROL_GROUP G |
| | | LEFT JOIN ( |
| | | <!--获取巡查记录表中的已选项,并获取问题数量--> |
| | | SELECT DISTINCT I.GROUP_ID,D.problemCount FROM SM_PATROL_RECORD R |
| | | INNER JOIN SM_PATROL_GROUP_ITEM I ON R.ITEM_ID = I.ID |
| | | LEFT JOIN ( |
| | | SELECT I.GROUP_ID,COUNT(*) problemCount FROM SM_PATROL_RECORD R |
| | | INNER JOIN SM_PATROL_GROUP_ITEM I ON R.ITEM_ID = I.ID |
| | | WHERE R.IS_DELETED = 0 AND R.TASK_ID = #{taskId} |
| | | AND R.STATUS = 2 |
| | | GROUP BY I.GROUP_ID |
| | | )D ON D.GROUP_ID = I.GROUP_ID |
| | | WHERE R.IS_DELETED = 0 AND R.TASK_ID = #{taskId} |
| | | )C ON C.GROUP_ID = G.ID |
| | | WHERE IS_DELETED = 0 |
| | | ORDER BY G.CREATE_TIME |
| | | </select> |
| | | </mapper> |
| | |
| | | List<PatrolRecordVO> getByTaskIdAndItemId(@Param("taskId") String taskId, @Param("itemIds") String itemIds); |
| | | |
| | | PatrolRecordVO getPatrolRecordVO(@Param("itemId") Long itemId, @Param("taskId") String taskId); |
| | | |
| | | List<PatrolRecord> getByTaskIdAndGroupId(@Param("groupId") String groupId, @Param("taskId") String taskId); |
| | | } |
| | |
| | | |
| | | <select id="selectPatrolRecord" resultMap="selectPatrolRecordList"> |
| | | SELECT |
| | | record.id,record.patrol_type,record.device_ids,record.images,record.videos,record.content,record.status,record.item_id,record.task_id,record.patrol_route,record.update_time, |
| | | record.id,record.patrol_type,record.device_ids,record.images,record.videos,record.content,record.status,record.item_id,record.task_id,record.patrol_route,record.update_time,record.solution |
| | | task.route_coordinates taskRoute,item.items_name itemsName,item.description |
| | | FROM SM_PATROL_RECORD record |
| | | LEFT JOIN sm_patrol_type type ON type.id = record.patrol_type |
| | |
| | | </select> |
| | | <select id="getDetail" resultMap="selectPatrolRecordList"> |
| | | SELECT |
| | | record.id,record.patrol_type,record.images,record.videos,record.content,record.status,record.item_id,record.content,record.task_id,record.patrol_route,record.create_user, |
| | | record.id,record.patrol_type,record.images,record.videos,record.content,record.status,record.item_id,record.content,record.task_id,record.patrol_route,record.create_user,record.solution, |
| | | item.description, |
| | | u.phone |
| | | FROM SM_PATROL_RECORD record |
| | |
| | | </select> |
| | | |
| | | <select id="getByTaskIdAndItemId" resultMap="selectPatrolRecordList"> |
| | | SELECT r.id,r.patrol_type,r.device_ids,r.images,r.videos,r.content,r.status,r.item_id,r.task_id,r.update_time, |
| | | SELECT r.id,r.patrol_type,r.device_ids,r.images,r.videos,r.content,r.status,r.item_id,r.task_id,r.update_time,r.solution, |
| | | c.name groupName,c.id groupId,c.items_name itemsName,c.description, |
| | | u.real_name |
| | | FROM SM_PATROL_RECORD r |
| | |
| | | where r.task_id = #{taskId} |
| | | </select> |
| | | <select id="getPatrolRecordVO" resultMap="selectPatrolRecordList"> |
| | | SELECT r.id,r.patrol_type,r.device_ids,r.images,r.videos,r.content,r.status,r.item_id,r.task_id,r.create_user,r.create_dept, |
| | | SELECT r.id,r.patrol_type,r.device_ids,r.images,r.videos,r.content,r.status,r.item_id,r.task_id,r.create_user,r.create_dept,r.solution, |
| | | i.items_name itemsName,i.description |
| | | FROM sm_patrol_record r |
| | | LEFT JOIN sm_patrol_group_item i ON i.id = r.item_id |
| | |
| | | AND r.item_id = #{itemId} |
| | | AND r.task_id = #{taskId} |
| | | </select> |
| | | <select id="getByTaskIdAndGroupId" resultMap="selectPatrolRecordList"> |
| | | SELECT r.id,r.patrol_type,r.device_ids,r.images,r.videos,r.content,r.status,r.item_id,r.task_id,r.create_user,r.create_dept,r.solution, |
| | | C.items_name itemsName,C.description FROM SM_PATROL_RECORD r |
| | | RIGHT JOIN ( |
| | | SELECT B.ID,B.GROUP_ID,B.ITEMS_NAME,B.DESCRIPTION |
| | | FROM SM_PATROL_GROUP A |
| | | INNER JOIN SM_PATROL_GROUP_ITEM B ON A.ID = B.GROUP_ID |
| | | WHERE B.GROUP_ID = #{groupId} |
| | | ORDER BY B.GROUP_ID |
| | | )C ON C.ID = r.ITEM_ID |
| | | WHERE TASK_ID = #{taskId} |
| | | </select> |
| | | </mapper> |
| New file |
| | |
| | | package cn.gistack.sm.patrol.mapper; |
| | | |
| | | import cn.gistack.sm.patrol.entity.PatrolReport; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | public interface PatrolReportMapper extends BaseMapper<PatrolReport> { |
| | | } |
| New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
| | | <mapper namespace="cn.gistack.sm.patrol.mapper.PatrolReportMapper"> |
| | | |
| | | |
| | | </mapper> |
| | |
| | | package cn.gistack.sm.patrol.service; |
| | | |
| | | import cn.gistack.sm.patrol.entity.PatrolGroup; |
| | | import cn.gistack.sm.patrol.vo.PatrolGroupVO; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import org.springblade.core.mp.base.BaseService; |
| | | |
| | |
| | | * @return |
| | | */ |
| | | List<PatrolGroup> getPatrolGroupByItemId(String itemIds); |
| | | |
| | | List<PatrolGroupVO> getAllPatrolGroupByTaskId(String taskId); |
| | | } |
| | |
| | | * @return |
| | | */ |
| | | List getItemByItemIds(String itemIds, String groupId, String taskId); |
| | | |
| | | List<PatrolRecord> getByTaskIdAndGroupId(String groupId, String taskId); |
| | | } |
| New file |
| | |
| | | package cn.gistack.sm.patrol.service; |
| | | |
| | | import cn.gistack.sm.patrol.entity.PatrolConfig; |
| | | import cn.gistack.sm.patrol.entity.PatrolReport; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import org.springblade.core.mp.base.BaseService; |
| | | |
| | | public interface IPatrolReportService extends BaseService<PatrolReport> { |
| | | IPage<PatrolConfig> selectPatrolReport(IPage<PatrolReport> page, PatrolConfig patrolConfig); |
| | | } |
| | |
| | | import cn.gistack.sm.patrol.entity.PatrolGroup; |
| | | import cn.gistack.sm.patrol.mapper.PatrolGroupMapper; |
| | | import cn.gistack.sm.patrol.service.IPatrolGroupService; |
| | | import cn.gistack.sm.patrol.vo.PatrolGroupVO; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import org.springblade.core.mp.base.BaseServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | public List<PatrolGroup> getPatrolGroupByItemId(String itemIds) { |
| | | return baseMapper.getPatrolGroupByItemId(itemIds); |
| | | } |
| | | |
| | | @Override |
| | | public List<PatrolGroupVO> getAllPatrolGroupByTaskId(String taskId) { |
| | | return baseMapper.getAllPatrolGroupByTaskId(taskId); |
| | | } |
| | | } |
| | |
| | | return itemList; |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public List<PatrolRecord> getByTaskIdAndGroupId(String groupId, String taskId) { |
| | | return baseMapper.getByTaskIdAndGroupId(groupId,taskId); |
| | | } |
| | | } |
| New file |
| | |
| | | package cn.gistack.sm.patrol.service.impl; |
| | | |
| | | import cn.gistack.sm.patrol.entity.PatrolConfig; |
| | | import cn.gistack.sm.patrol.entity.PatrolReport; |
| | | import cn.gistack.sm.patrol.mapper.PatrolReportMapper; |
| | | import cn.gistack.sm.patrol.service.IPatrolReportService; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import org.springblade.core.mp.base.BaseServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | @Service |
| | | public class PatrolReportServiceImpl extends BaseServiceImpl<PatrolReportMapper, PatrolReport> implements IPatrolReportService { |
| | | @Override |
| | | public IPage<PatrolConfig> selectPatrolReport(IPage<PatrolReport> page, PatrolConfig patrolConfig) { |
| | | return null; |
| | | } |
| | | } |
| New file |
| | |
| | | package cn.gistack.sm.patrol.vo; |
| | | |
| | | import cn.gistack.sm.patrol.entity.PatrolGroup; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * 巡查组vo |
| | | */ |
| | | @Data |
| | | public class PatrolGroupVO extends PatrolGroup { |
| | | |
| | | /** |
| | | * 是否在记录表中 |
| | | */ |
| | | private String isSelect; |
| | | |
| | | /** |
| | | * 问题数量 |
| | | */ |
| | | private Integer problemCount; |
| | | |
| | | } |