skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/controller/PatrolTaskController.java
@@ -229,7 +229,7 @@ List<Object> data = res.getData().getData(); data.forEach(obj -> { BladeFlow bladeFlow = JSON.parseObject(JSON.toJSONString(obj), BladeFlow.class); PatrolTask byId = patrolTaskService.customizeGetById(bladeFlow.getBusinessId()); PatrolTaskVO byId = patrolTaskService.customizeGetById(bladeFlow.getBusinessId()); if (byId != null) { byId.setFlow(bladeFlow); patrolTaskList.add(byId); @@ -267,7 +267,7 @@ List<Object> data = res.getData().getData(); data.forEach(obj -> { BladeFlowVO<PatrolTask> bladeFlow = JSON.parseObject(JSON.toJSONString(obj), BladeFlowVO.class); PatrolTask byId = patrolTaskService.customizeGetById(bladeFlow.getBusinessId()); PatrolTaskVO byId = patrolTaskService.customizeGetById(bladeFlow.getBusinessId()); bladeFlow.setDetail(byId); bladeFlowVOList.add(bladeFlow); @@ -286,17 +286,27 @@ } /** * 巡查任务报表 * 巡查任务报表 分页 */ @PostMapping("getTaskReport") @PostMapping("getTaskReportPage") @ApiOperation(value = "巡查任务报表") public R getTaskReport( PatrolTaskReport patrolTaskReport , Query query) { IPage<PatrolTaskReport> pageList = patrolTaskService.getTaskReport(Condition.getPage(query),patrolTaskReport); public R getTaskReportPage( PatrolTaskReport patrolTaskReport , Query query) { IPage<PatrolTaskReport> pageList = patrolTaskService.getTaskReportPage(Condition.getPage(query),patrolTaskReport); return R.data(pageList); } /** * 巡查任务报表 * 巡查任务报表 分页 */ @PostMapping("getTaskReportList") @ApiOperation(value = "巡查任务报表") public R getTaskReportList( PatrolTaskReport patrolTaskReport ) { List<PatrolTaskReport> list = patrolTaskService.getTaskReportList(patrolTaskReport); return R.data(list); } /** * 巡查任务报表 分页 */ @PostMapping("getTaskReportDetail") @ApiOperation(value = "巡查任务报表") skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/mapper/PatrolTaskMapper.java
@@ -55,21 +55,21 @@ */ PatrolTask getPatrolTaskById(@Param("id")String id); PatrolTask customizeGetById(@Param("id") String id); PatrolTaskVO customizeGetById(@Param("id") String id); /** * 巡查报表,市拿区 * @param patrolTaskReport * @return */ List<PatrolTaskReport> getTaskReportRegion(IPage<PatrolTaskReport> page,@Param("patrolTaskReport") PatrolTaskReport patrolTaskReport); List<PatrolTaskReport> getTaskReportRegionPage(IPage<PatrolTaskReport> page,@Param("patrolTaskReport") PatrolTaskReport patrolTaskReport); /** * 巡查报表,区拿水库 * @param patrolTaskReport * @return */ List<PatrolTaskReport> getTaskReportReservoir(IPage<PatrolTaskReport> page,@Param("patrolTaskReport") PatrolTaskReport patrolTaskReport); List<PatrolTaskReport> getTaskReportReservoirPage(IPage<PatrolTaskReport> page,@Param("patrolTaskReport") PatrolTaskReport patrolTaskReport); /** * 巡查报表,省拿市 @@ -77,7 +77,7 @@ * @param patrolTaskReport * @return */ List<PatrolTaskReport> getTaskReportProvince(IPage<PatrolTaskReport> page,@Param("patrolTaskReport") PatrolTaskReport patrolTaskReport); List<PatrolTaskReport> getTaskReportProvincePage(IPage<PatrolTaskReport> page,@Param("patrolTaskReport") PatrolTaskReport patrolTaskReport); /** * 巡查报表详情 获取行政区下的水库 @@ -86,4 +86,25 @@ * @return */ List<PatrolTaskReport> getTaskReportDetailRegion(IPage<PatrolTaskReport> page,@Param("patrolTaskReport")PatrolTaskReport patrolTaskReport); /** * 巡查报表,市拿区 * @param patrolTaskReport * @return */ List<PatrolTaskReport> getTaskReportRegionList(@Param("patrolTaskReport") PatrolTaskReport patrolTaskReport); /** * 巡查报表,区拿水库 * @param patrolTaskReport * @return */ List<PatrolTaskReport> getTaskReportReservoirList(@Param("patrolTaskReport") PatrolTaskReport patrolTaskReport); /** * 巡查报表,省拿市 * @param patrolTaskReport * @return */ List<PatrolTaskReport> getTaskReportProvinceList(@Param("patrolTaskReport") PatrolTaskReport patrolTaskReport); } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/mapper/PatrolTaskMapper.xml
@@ -174,8 +174,10 @@ FROM sm_patrol_task spt where spt.id = #{id} </select> <select id="customizeGetById" resultType="cn.gistack.sm.patrol.entity.PatrolTask"> SELECT T.ID,T.TITLE,T.TO_USER_ID,A.PROBLEM_COUNT,T.PROJECT_ID,T.CONTENT,T.STATE FROM SM_PATROL_TASK T <select id="customizeGetById" resultType="cn.gistack.sm.patrol.vo.PatrolTaskVO"> SELECT T.ID,T.TITLE,T.TO_USER_ID,U.REAL_NAME toUserIdName,A.PROBLEM_COUNT,T.PROJECT_ID,T.CONTENT,T.STATE,T.PATROL_ROUTE FROM SM_PATROL_TASK T LEFT JOIN BLADE_USER U ON U.ID = T.TO_USER_ID LEFT JOIN ( SELECT COUNT(*) PROBLEM_COUNT,R.TASK_ID FROM SM_PATROL_REPORT R WHERE R.TASK_ID = #{id} AND R.STATUS = 2 GROUP BY R.TASK_ID )A ON A.TASK_ID = T.ID @@ -183,7 +185,7 @@ AND T.IS_DELETED = 0 </select> <!--市查区--> <select id="getTaskReportRegion" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport"> <select id="getTaskReportRegionPage" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport"> SELECT aab."ad_name" AS adName, aab."guid" AS adCode, @@ -208,7 +210,7 @@ GROUP BY (aab."ad_name",aab."guid") </select> <!--区查水库--> <select id="getTaskReportReservoir" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport"> <select id="getTaskReportReservoirPage" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport"> SELECT arb."guid" AS reservoirId, arb."name" AS reservoirName, @@ -236,7 +238,7 @@ GROUP BY (arb."guid",arb."name",aab."guid",aab."ad_name") </select> <!--省查市--> <select id="getTaskReportProvince" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport"> <select id="getTaskReportProvincePage" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport"> SELECT a."p_ad_code" adCode, a."p_ad_name" adName, @@ -265,6 +267,93 @@ ) A GROUP BY (a."p_ad_code",a."p_ad_name") order by a."p_ad_code" </select> <!--市查区--> <select id="getTaskReportRegionList" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport"> SELECT aab."ad_name" AS adName, aab."guid" AS adCode, #{patrolTaskReport.startTime} AS startTime, #{patrolTaskReport.endTime} AS endTime, COUNT(*) AS need, SUM(CASE WHEN t.state = 3 THEN 1 ELSE 0 END) AS finish, SUM(CASE WHEN t.state = 1 or state = 2 THEN 1 ELSE 0 END) AS todo FROM SM_PATROL_TASK t LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = t.project_id LEFT JOIN SJZT_MD."att_ad_base" aab on aab."guid" = CONCAT(arb."ad_guid",'000000') WHERE t.IS_DELETED = 0 <if test="patrolTaskReport.padCode !=null and patrolTaskReport.padCode !=''"> AND aab."p_ad_code" = #{patrolTaskReport.padCode} </if> <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''"> AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime} </if> <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''"> AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime} </if> GROUP BY (aab."ad_name",aab."guid") </select> <!--区查水库--> <select id="getTaskReportReservoirList" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport"> SELECT arb."guid" AS reservoirId, arb."name" AS reservoirName, aab."guid" AS adCode, aab."ad_name" AS adName, #{patrolTaskReport.startTime} AS startTime, #{patrolTaskReport.endTime} AS endTime, COUNT(*) AS need, SUM(CASE WHEN t.state = 3 THEN 1 ELSE 0 END) AS finish, SUM(CASE WHEN t.state = 1 or state = 2 THEN 1 ELSE 0 END) AS todo FROM SK002.SM_PATROL_TASK t LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = t.project_id LEFT JOIN SJZT_MD."att_ad_base" aab on aab."guid" = CONCAT(arb."ad_guid",'000000') WHERE t.IS_DELETED = 0 <if test="patrolTaskReport.adCode != null and patrolTaskReport.adCode !=''"> AND aab."ad_code" = #{patrolTaskReport.adCode} </if> <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''"> AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime} </if> <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''"> AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime} </if> GROUP BY (arb."guid",arb."name",aab."guid",aab."ad_name") </select> <!--省查市--> <select id="getTaskReportProvinceList" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport"> SELECT a."p_ad_code" adCode, a."p_ad_name" adName, sum(a.need) AS need, sum(a.finish) AS finish, sum(a.todo) AS todo, #{patrolTaskReport.startTime} AS startTime, #{patrolTaskReport.endTime} AS endTime FROM ( SELECT aab."p_ad_code",aab."p_ad_name", COUNT(*) AS need, SUM(CASE WHEN t.state = 3 THEN 1 ELSE 0 END) AS finish, SUM(CASE WHEN t.state = 1 or state = 2 THEN 1 ELSE 0 END) AS todo FROM SK002.SM_PATROL_TASK t LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = t.project_id LEFT JOIN SJZT_MD."att_ad_base" aab on aab."guid" = CONCAT(arb."ad_guid",'000000') where t.is_deleted = 0 AND aab."p_ad_code" != '420000000000' <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''"> AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime} </if> <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''"> AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime} </if> GROUP BY (aab."p_ad_code",aab."p_ad_name") ) A GROUP BY (a."p_ad_code",a."p_ad_name") order by a."p_ad_code" </select> <!--获取市下的所有水库巡查--> <select id="getTaskReportDetailRegion" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport"> SELECT skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/service/IPatrolTaskService.java
@@ -62,7 +62,7 @@ boolean chargeCompletePerson(BladeFlowTask bladeFlowTask); PatrolTask customizeGetById(String businessId); PatrolTaskVO customizeGetById(String businessId); List<PatrolTask> getAll(PatrolTaskVO patrolTaskVO); @@ -71,7 +71,9 @@ * @param patrolTaskReport * @return */ IPage<PatrolTaskReport> getTaskReport(IPage<PatrolTaskReport> page,PatrolTaskReport patrolTaskReport); IPage<PatrolTaskReport> getTaskReportPage(IPage<PatrolTaskReport> page,PatrolTaskReport patrolTaskReport); IPage<PatrolTaskReport> getTaskReportDetail(IPage<PatrolTaskReport> page, PatrolTaskReport patrolTaskReport); List<PatrolTaskReport> getTaskReportList(PatrolTaskReport patrolTaskReport); } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/service/impl/PatrolTaskServiceImpl.java
@@ -199,7 +199,7 @@ } @Override public PatrolTask customizeGetById(String businessId) { public PatrolTaskVO customizeGetById(String businessId) { return baseMapper.customizeGetById(businessId); } @@ -209,19 +209,35 @@ } @Override public IPage<PatrolTaskReport> getTaskReport(IPage<PatrolTaskReport> page,PatrolTaskReport patrolTaskReport) { public IPage<PatrolTaskReport> getTaskReportPage(IPage<PatrolTaskReport> page,PatrolTaskReport patrolTaskReport) { List<PatrolTaskReport> list = new ArrayList(); if (Func.equals(patrolTaskReport.getRegionFlag(),"0")){ //省 返回市 list = baseMapper.getTaskReportProvince(page,patrolTaskReport); list = baseMapper.getTaskReportProvincePage(page,patrolTaskReport); }else if (Func.equals(patrolTaskReport.getRegionFlag(),"1")){ //市 返回区 list = baseMapper.getTaskReportRegion(page,patrolTaskReport); list = baseMapper.getTaskReportRegionPage(page,patrolTaskReport); }else if (Func.equals(patrolTaskReport.getRegionFlag(),"2")){ //区 返回水库 list = baseMapper.getTaskReportReservoir(page,patrolTaskReport); list = baseMapper.getTaskReportReservoirPage(page,patrolTaskReport); } return page.setRecords(list); } @Override public List<PatrolTaskReport> getTaskReportList(PatrolTaskReport patrolTaskReport) { List<PatrolTaskReport> list = new ArrayList(); if (Func.equals(patrolTaskReport.getRegionFlag(),"0")){ //省 返回市 list = baseMapper.getTaskReportProvinceList(patrolTaskReport); }else if (Func.equals(patrolTaskReport.getRegionFlag(),"1")){ //市 返回区 list = baseMapper.getTaskReportRegionList(patrolTaskReport); }else if (Func.equals(patrolTaskReport.getRegionFlag(),"2")){ //区 返回水库 list = baseMapper.getTaskReportReservoirList(patrolTaskReport); } return list; } @Override @@ -245,6 +261,8 @@ return page.setRecords(list); } public void saveReport(PatrolTask patrolTask){ //拿到当前任务下的异常巡查记录 PatrolRecord patrolRecord = new PatrolRecord(); skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/vo/PatrolTaskVO.java
@@ -53,4 +53,6 @@ private String finish; private List<PatrolRecord> patrolRecordList; private String toUserIdName; }