Browse Source

feat:水闸/堤防-添加统计分析模块接口

master_tdsql
huangrenya 1 year ago
parent
commit
c56813448b
  1. 8
      shuili-system/src/main/java/com/kms/yxgh/df/controller/DfDangerousProjectController.java
  2. 9
      shuili-system/src/main/java/com/kms/yxgh/df/controller/DfDangerousTaskController.java
  3. 29
      shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousProjectDto.java
  4. 13
      shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousTaskItemRelDto.java
  5. 3
      shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousTaskSearchDto.java
  6. 41
      shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousTotalDto.java
  7. 2
      shuili-system/src/main/java/com/kms/yxgh/df/mapper/DfDangerousGroupingMapper.java
  8. 7
      shuili-system/src/main/java/com/kms/yxgh/df/mapper/DfDangerousGroupingRelMapper.java
  9. 28
      shuili-system/src/main/java/com/kms/yxgh/df/mapper/DfDangerousTaskItemRelMapper.java
  10. 78
      shuili-system/src/main/java/com/kms/yxgh/df/mapper/DfDangerousTaskMapper.java
  11. 2
      shuili-system/src/main/java/com/kms/yxgh/df/service/DfDangerousGroupingService.java
  12. 12
      shuili-system/src/main/java/com/kms/yxgh/df/service/DfDangerousProjectService.java
  13. 22
      shuili-system/src/main/java/com/kms/yxgh/df/service/DfDangerousTaskService.java
  14. 8
      shuili-system/src/main/java/com/kms/yxgh/sz/controller/SzDangerousProjectController.java
  15. 9
      shuili-system/src/main/java/com/kms/yxgh/sz/controller/SzDangerousTaskController.java
  16. 29
      shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousProjectDto.java
  17. 3
      shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousTaskSearchDto.java
  18. 41
      shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousTotalDto.java
  19. 3
      shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousGroupingMapper.java
  20. 8
      shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousGroupingRelMapper.java
  21. 24
      shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousTaskItemRelMapper.java
  22. 68
      shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousTaskMapper.java
  23. 2
      shuili-system/src/main/java/com/kms/yxgh/sz/service/SzDangerousGroupingService.java
  24. 12
      shuili-system/src/main/java/com/kms/yxgh/sz/service/SzDangerousProjectService.java
  25. 22
      shuili-system/src/main/java/com/kms/yxgh/sz/service/SzDangerousTaskService.java

8
shuili-system/src/main/java/com/kms/yxgh/df/controller/DfDangerousProjectController.java

@ -101,13 +101,13 @@ public class DfDangerousProjectController {
/**
* 查询堤防病险工程核查项目内容列表
* @param projectId
* @param dto
* @return
*/
@ApiOperation("堤防病险工程核查项目内容列表")
@GetMapping("/itemList")
public Response<List<DfDangerousProjectItemDto>> getItemList(@RequestParam(value = "projectId", required = false) String projectId) {
return Response.ok(dfDangerousProjectService.getItemList(projectId));
@PostMapping("/itemList")
public Response<List<DfDangerousProjectItemDto>> getItemList(@RequestBody DfDangerousProjectItemDto dto) {
return Response.ok(dfDangerousProjectService.getItemList(dto));
}
/**

9
shuili-system/src/main/java/com/kms/yxgh/df/controller/DfDangerousTaskController.java

@ -113,4 +113,13 @@ public class DfDangerousTaskController {
return Response.ok(dangerousTaskService.getDetailByTaskId(id));
}
/**
* 统计分析
*/
@PostMapping("/total")
@ApiOperation("统计分析")
public Response<DfDangerousTotalDto> countTotal(@RequestBody DfDangerousTaskSearchDto dto) {
return Response.ok(dangerousTaskService.countTotal(dto));
}
}

29
shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousProjectDto.java

@ -1,9 +1,12 @@
package com.kms.yxgh.df.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* 堤防病险工程核查项目dto对象
* @author hry
@ -25,4 +28,30 @@ public class DfDangerousProjectDto{
@ApiModelProperty("名称")
private String name;
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("创建时间")
private Date createTime;
/**
* 最近修改时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("最近修改时间")
private Date updateTime;
/**
* 创建人
*/
@ApiModelProperty("创建人")
private String createUid;
/**
* 最近修改人
*/
@ApiModelProperty("最近修改人")
private String updateUid;
}

13
shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousTaskItemRelDto.java

@ -50,4 +50,17 @@ public class DfDangerousTaskItemRelDto {
*/
@ApiModelProperty("项目名称")
private String projectName;
/**
* 问题描述
*/
@ApiModelProperty(value = "问题描述")
private String problemDescribe;
/**
* 现场记录情况
*/
@ApiModelProperty(value = "现场记录情况")
private String siteSituationRecords;
}

3
shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousTaskSearchDto.java

@ -73,4 +73,7 @@ public class DfDangerousTaskSearchDto {
*/
@ApiModelProperty(value = "状态")
private String state;
@ApiModelProperty(value = "是否排序")
private String isOrder;
}

41
shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousTotalDto.java

@ -0,0 +1,41 @@
package com.kms.yxgh.df.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author hry
* @date 2024/3/4 17:35
*/
@Data
@ApiModel("病险工程统计分析")
public class DfDangerousTotalDto {
@ApiModelProperty("病险工程数")
private int totalCheckTask;
@ApiModelProperty("已建核查任务数")
private int alreadyCheckTask;
@ApiModelProperty("未建核查任务数")
private int unCheckTask;
@ApiModelProperty("任务总数")
private int totalTask;
@ApiModelProperty("未完成核查任务数")
private int unTask;
@ApiModelProperty("完成核查任务数")
private int finishTask;
@ApiModelProperty("核查项总数")
private int itemTotal;
@ApiModelProperty("核查正常项数")
private int normalTotal;
@ApiModelProperty("核查问题项数")
private int problemTotal;
}

2
shuili-system/src/main/java/com/kms/yxgh/df/mapper/DfDangerousGroupingMapper.java

@ -21,6 +21,6 @@ public interface DfDangerousGroupingMapper extends BaseMapper<DfDangerousGroupin
"(select GROUP_CONCAT(DISTINCT c.GROUP_NAME ) from bs_sgc_sz_bxgcfzcy c where c.GROUP_ID = a.id ) as groupNames " +
" FROM bs_sgc_df_bxgcfz a " +
" LEFT JOIN sys_dept b ON a.dept_id = b.id " +
"")
" order by a.create_time desc")
IPage<DfDangerousGroupingDto> selectByPage(Page<DfDangerousGroupingDto> page, @Param("dto") DfDangerousGroupingDto dto);
}

7
shuili-system/src/main/java/com/kms/yxgh/df/mapper/DfDangerousGroupingRelMapper.java

@ -17,13 +17,6 @@ import java.util.List;
@Repository
public interface DfDangerousGroupingRelMapper extends BaseMapper<DfDangerousGroupingRel> {
/**
* 根据groupId删除
* @param groupId
* @return
*/
int deleteByGroupId(String groupId);
/**
* 根据groupId查询
* @param groupId

28
shuili-system/src/main/java/com/kms/yxgh/df/mapper/DfDangerousTaskItemRelMapper.java

@ -3,6 +3,8 @@ package com.kms.yxgh.df.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.kms.yxgh.df.domain.DfDangerousTaskItemRel;
import com.kms.yxgh.df.dto.DfDangerousTaskItemRelDto;
import com.kms.yxgh.df.dto.DfDangerousTaskSearchDto;
import com.kms.yxgh.df.dto.DfDangerousTotalDto;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@ -37,4 +39,30 @@ public interface DfDangerousTaskItemRelMapper extends BaseMapper<DfDangerousTask
"</script>")
List<DfDangerousTaskItemRelDto> selectByListParam(@Param("dto") DfDangerousTaskItemRelDto dto);
@Select("<script>" +
"SELECT count(*) itemTotal, sum(IF(gl.level ='0', 1, 0)) normalTotal, sum(IF(gl.level ='1', 1, 0)) problemTotal "+
"FROM bs_sgc_df_bxgcnrgl gl " +
"LEFT JOIN bs_sgc_df_bxgcrw rw on gl.TASK_ID = rw.id " +
"LEFT JOIN bs_sgc_df_gcda xx ON xx.dike_code = rw.dike_code " +
"<if test='dto.adcdStart != null and dto.adcdStart != \"\"'>" +
"LEFT JOIN sys_xzqh xzqh on xzqh.xzqhdm=#{dto.adcdStart} " +
"</if>" +
"WHERE xx.expr_date is null " +
"<if test='dto.dikeType != null and dto.dikeType != \"\"'>" +
"AND FIND_IN_SET(#{dto.dikeType} , REPLACE(REPLACE(REPLACE(xx.DIKE_TYPE, '[', ''), ']', ''), '\"', '')) " +
"</if>" +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND rw.id = #{dto.id} " +
"</if>" +
"<if test='dto.riverLocation != null and dto.riverLocation != \"\"'>" +
"AND xx.river_location = #{dto.riverLocation} " +
"</if>" +
"<if test='dto.adcdStart != null and dto.adcdStart != \"\"'>" +
"AND (xx.ADCD_START = #{dto.adcdStart} OR xx.ADCD_START in (SELECT xzqhdm from sys_xzqh where parentid =#{dto.adcdStart}) " +
" or xx.ADCD_START in (select xzqhdm from sys_xzqh where parentid in(SELECT xzqhdm from sys_xzqh where parentid = #{dto.adcdStart}))) " +
"</if>" +
"</script>")
DfDangerousTotalDto selectProblemCountByTask(@Param("dto") DfDangerousTaskSearchDto dto);
}

78
shuili-system/src/main/java/com/kms/yxgh/df/mapper/DfDangerousTaskMapper.java

@ -7,10 +7,10 @@ import com.kms.yxgh.df.domain.DfDangerousTask;
import com.kms.yxgh.df.dto.DfAqjdProjecDto;
import com.kms.yxgh.df.dto.DfDangerousTaskDto;
import com.kms.yxgh.df.dto.DfDangerousTaskSearchDto;
import com.kms.yxgh.df.dto.DfDangerousTotalDto;
import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;
import java.io.Serializable;
import java.util.Date;
/**
@ -24,7 +24,7 @@ public interface DfDangerousTaskMapper extends BaseMapper<DfDangerousTask> {
@Select("<script>" +
"SELECT rw.id, rw.NAME, rw.GROUP_ID as groupId, rw.DIKE_CODE as dikeCode, rw.START_TIME as startTime, rw.DONE_TIME as doneTime, rw.CONTENT as content, rw.state, rw.CREATE_TIME as createTime, rw.UPDATE_TIME as updateTime, " +
"df.dike_name as dikeName, df.river_location as riverLocation, gl.engineering_management_unit as engineeringManagementUnit, df.adcd_start as adcdStart, df.adcd_end as adcdEnd , fz.name as groupName, rw.remark,rw.FINISH_TIME as finishTime " +
"df.dike_name as dikeName, df.river_location as riverLocation, gl.engineering_management_unit as engineeringManagementUnit, df.adcd_start as adcdStart, df.adcd_end as adcdEnd , fz.name as groupName, if(rw.remark is null, '0', rw.remark) remark,rw.FINISH_TIME as finishTime " +
"FROM bs_sgc_df_bxgcrw rw " +
"LEFT JOIN bs_sgc_df_gcda df ON df.dike_code = rw.dike_code " +
"LEFT JOIN bs_sgc_df_gcgl gl ON gl.dike_code = rw.dike_code " +
@ -55,7 +55,12 @@ public interface DfDangerousTaskMapper extends BaseMapper<DfDangerousTask> {
"<if test='dto.state != null and dto.state != \"\"'>" +
"AND rw.state = #{dto.state} " +
"</if>" +
"ORDER BY rw.create_time asc" +
"<if test='dto.isOrder != null and dto.isOrder != \"\"'>" +
"ORDER BY CASE WHEN CAST(rw.remark AS UNSIGNED) = 100 THEN 1 ELSE 0 END, CAST(rw.remark AS UNSIGNED) DESC, rw.FINISH_TIME ASC " +
"</if>" +
"<if test='dto.isOrder == null or dto.isOrder == \"\"'>" +
"ORDER BY rw.create_time desc" +
"</if>" +
"</script>")
IPage<DfDangerousTaskDto> selectByPage(Page<DfDangerousTaskDto> page, @Param("dto") DfDangerousTaskSearchDto dto);
@ -107,4 +112,71 @@ public interface DfDangerousTaskMapper extends BaseMapper<DfDangerousTask> {
IPage<DfAqjdProjecDto> selectByAqjdPage(Page<DfAqjdProjecDto> page, @Param("dto") DfAqjdProjecDto dfProject);
@Select("<script>" +
"SELECT (SELECT COUNT(DISTINCT jr.dike_code) FROM bs_sgc_df_bxgcrw jr LEFT JOIN bs_sgc_df_gcda jx ON jr.dike_code = jx.dike_code " +
"<if test='dto.adcdStart != null and dto.adcdStart != \"\"'>" +
"LEFT JOIN sys_xzqh xzqh on xzqh.xzqhdm=#{dto.adcdStart} " +
"</if>" +
"where jx.EXPR_DATE IS NULL " +
"<if test='dto.adcdStart != null and dto.adcdStart != \"\"'>" +
"AND (jx.ADCD_START = #{dto.adcdStart} OR jx.ADCD_START in (SELECT xzqhdm from sys_xzqh where parentid =#{dto.adcdStart}) " +
" or jx.ADCD_START in (select xzqhdm from sys_xzqh where parentid in(SELECT xzqhdm from sys_xzqh where parentid = #{dto.adcdStart}))) " +
"</if>" +
"<if test='dto.dikeType != null and dto.dikeType != \"\"'>" +
"AND FIND_IN_SET(#{dto.dikeType} , REPLACE(REPLACE(REPLACE(jx.DIKE_TYPE, '[', ''), ']', ''), '\"', '')) " +
"</if>" +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND jr.id = #{dto.id} " +
"</if>" +
"<if test='dto.riverLocation != null and dto.riverLocation != \"\"'>" +
"AND jx.river_location = #{dto.riverLocation} " +
"</if>" +
") as alreadyCheckTask, " +
"(SELECT COUNT(*) FROM bs_sgc_df_gcda jx " +
"LEFT JOIN bs_sgc_df_bxgcrw rw ON rw.dike_code = jx.dike_code "+
"<if test='dto.adcdStart != null and dto.adcdStart != \"\"'>" +
"LEFT JOIN sys_xzqh xzqh on xzqh.xzqhdm=#{dto.adcdStart} " +
"</if>" +
" WHERE jx.dike_code NOT IN (SELECT dike_code FROM bs_sgc_df_bxgcrw) and jx.EXPR_DATE IS NULL " +
"<if test='dto.adcdStart != null and dto.adcdStart != \"\"'>" +
"AND (jx.ADCD_START = #{dto.adcdStart} OR jx.ADCD_START in (SELECT xzqhdm from sys_xzqh where parentid =#{dto.adcdStart}) " +
" or jx.ADCD_START in (select xzqhdm from sys_xzqh where parentid in(SELECT xzqhdm from sys_xzqh where parentid = #{dto.adcdStart}))) " +
"</if>" +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND rw.id = #{dto.id} " +
"</if>" +
"<if test='dto.riverLocation != null and dto.riverLocation != \"\"'>" +
"AND jx.river_location = #{dto.riverLocation} " +
"</if>" +
"<if test='dto.dikeType != null and dto.dikeType != \"\"'>" +
"AND FIND_IN_SET(#{dto.dikeType} , REPLACE(REPLACE(REPLACE(jx.DIKE_TYPE, '[', ''), ']', ''), '\"', '')) " +
"</if>" +
") as unCheckTask from dual" +
"</script>")
DfDangerousTotalDto selectCountByTask(@Param("dto") DfDangerousTaskSearchDto dto);
@Select("<script>" +
"SELECT count(*) totalTask, sum(IF(rw.STATE ='0', 1, 0))+sum(if(rw.state is null,1,0)) unTask, sum(IF(rw.STATE ='1', 1, 0)) finishTask "+
"FROM bs_sgc_df_bxgcrw rw " +
"LEFT JOIN bs_sgc_df_gcda xx ON xx.dike_code = rw.dike_code " +
"<if test='dto.adcdStart != null and dto.adcdStart != \"\"'>" +
"LEFT JOIN sys_xzqh xzqh on xzqh.xzqhdm=#{dto.adcdStart} " +
"</if>" +
"WHERE xx.expr_date is null " +
"<if test='dto.dikeType != null and dto.dikeType != \"\"'>" +
"AND FIND_IN_SET(#{dto.dikeType} , REPLACE(REPLACE(REPLACE(xx.DIKE_TYPE, '[', ''), ']', ''), '\"', '')) " +
"</if>" +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND rw.id = #{dto.id} " +
"</if>" +
"<if test='dto.riverLocation != null and dto.riverLocation != \"\"'>" +
"AND xx.river_location = #{dto.riverLocation} " +
"</if>" +
"<if test='dto.adcdStart != null and dto.adcdStart != \"\"'>" +
"AND (xx.ADCD_START = #{dto.adcdStart} OR xx.ADCD_START in (SELECT xzqhdm from sys_xzqh where parentid =#{dto.adcdStart}) " +
" or xx.ADCD_START in (select xzqhdm from sys_xzqh where parentid in(SELECT xzqhdm from sys_xzqh where parentid = #{dto.adcdStart}))) " +
"</if>" +
"</script>")
DfDangerousTotalDto selectCountByTaskTotal(@Param("dto") DfDangerousTaskSearchDto dto);
}

2
shuili-system/src/main/java/com/kms/yxgh/df/service/DfDangerousGroupingService.java

@ -63,7 +63,7 @@ public class DfDangerousGroupingService extends BaseService<DfDangerousGrouping
this.updateById(dfDangerousGrouping);
// 批量删除小组成员列表 重新添加
relMapper.deleteByGroupId(dfDangerousGrouping.getId());
relMapper.delete(Wrappers.<DfDangerousGroupingRel>lambdaQuery().eq(DfDangerousGroupingRel::getGroupId, dfDangerousGrouping.getId()));
handleGroupingRel(groupingDto, dfDangerousGrouping);
return BeanCopyUtils.copy(dfDangerousGrouping, DfDangerousGroupingDto.class);
}

12
shuili-system/src/main/java/com/kms/yxgh/df/service/DfDangerousProjectService.java

@ -10,11 +10,11 @@ import com.kms.yxgh.df.mapper.DfDangerousProjectMapper;
import com.kms.yxgh.util.BeanCopyUtils;
import com.shuili.common.core.service.BaseService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.stream.Collectors;
/**
* 堤防病险工程核查项目实现类
@ -51,7 +51,7 @@ public class DfDangerousProjectService extends BaseService<DfDangerousProjectMap
}
public List<DfDangerousProjectDto> getList(DfDangerousProjectDto dto) {
List<DfDangerousProject> list = this.list();
List<DfDangerousProject> list = this.list().stream().sorted((o1, o2) -> o2.getCreateTime().compareTo(o1.getCreateTime())).collect(Collectors.toList());
return BeanCopyUtils.copyList(list, DfDangerousProjectDto.class);
}
@ -78,12 +78,8 @@ public class DfDangerousProjectService extends BaseService<DfDangerousProjectMap
return true;
}
public List<DfDangerousProjectItemDto> getItemList(String projectId) {
DfDangerousProjectItemDto enable = new DfDangerousProjectItemDto();
if(StringUtils.isNotBlank(projectId)){
enable.setProjectId(projectId);
}
return projectItemMapper.selectItemList(enable);
public List<DfDangerousProjectItemDto> getItemList(DfDangerousProjectItemDto dto) {
return projectItemMapper.selectItemList(dto);
}
public DfDangerousProjectItemDto getItemDetailById(String id) {

22
shuili-system/src/main/java/com/kms/yxgh/df/service/DfDangerousTaskService.java

@ -119,4 +119,26 @@ public class DfDangerousTaskService extends BaseService<DfDangerousTaskMapper, D
return dto;
}
public DfDangerousTotalDto countTotal(DfDangerousTaskSearchDto dto) {
DfDangerousTotalDto totalDto = this.getBaseMapper().selectCountByTask(dto);
if (totalDto != null) {
totalDto.setTotalCheckTask(totalDto.getAlreadyCheckTask() + totalDto.getUnCheckTask());
} else {
totalDto = new DfDangerousTotalDto();
}
DfDangerousTotalDto taskDto = this.getBaseMapper().selectCountByTaskTotal(dto);
if (totalDto != null) {
totalDto.setTotalTask(taskDto.getTotalTask());
totalDto.setUnTask(taskDto.getUnTask());
totalDto.setFinishTask(taskDto.getFinishTask());
}
DfDangerousTotalDto itemDto = taskItemRelMapper.selectProblemCountByTask(dto);
if (itemDto != null) {
totalDto.setItemTotal(itemDto.getItemTotal());
totalDto.setNormalTotal(itemDto.getNormalTotal());
totalDto.setProblemTotal(itemDto.getProblemTotal());
}
return totalDto;
}
}

8
shuili-system/src/main/java/com/kms/yxgh/sz/controller/SzDangerousProjectController.java

@ -100,13 +100,13 @@ public class SzDangerousProjectController {
/**
* 查询水闸病险工程核查项目内容列表
* @param projectId
* @param dto
* @return
*/
@ApiOperation("水闸病险工程核查项目内容列表")
@GetMapping("/itemList")
public Response<List<SzDangerousProjectItemDto>> getItemList(@RequestParam(value = "projectId", required = false) String projectId) {
return Response.ok(dangerousProjectService.getItemList(projectId));
@PostMapping("/itemList")
public Response<List<SzDangerousProjectItemDto>> getItemList(@RequestBody SzDangerousProjectItemDto dto) {
return Response.ok(dangerousProjectService.getItemList(dto));
}
/**

9
shuili-system/src/main/java/com/kms/yxgh/sz/controller/SzDangerousTaskController.java

@ -115,4 +115,13 @@ public class SzDangerousTaskController {
return Response.ok(dangerousTaskService.getDetailByTaskId(id));
}
/**
* 统计分析
*/
@PostMapping("/total")
@ApiOperation("统计分析")
public Response<SzDangerousTotalDto> countTotal(@RequestBody SzDangerousTaskSearchDto dto) {
return Response.ok(dangerousTaskService.countTotal(dto));
}
}

29
shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousProjectDto.java

@ -1,9 +1,12 @@
package com.kms.yxgh.sz.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* 水闸病险工程核查项目dto对象
* @author hry
@ -25,4 +28,30 @@ public class SzDangerousProjectDto {
@ApiModelProperty("名称")
private String name;
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("创建时间")
private Date createTime;
/**
* 最近修改时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("最近修改时间")
private Date updateTime;
/**
* 创建人
*/
@ApiModelProperty("创建人")
private String createUid;
/**
* 最近修改人
*/
@ApiModelProperty("最近修改人")
private String updateUid;
}

3
shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousTaskSearchDto.java

@ -64,4 +64,7 @@ public class SzDangerousTaskSearchDto {
*/
@ApiModelProperty(value = "状态")
private String state;
@ApiModelProperty(value = "是否排序")
private String isOrder;
}

41
shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousTotalDto.java

@ -0,0 +1,41 @@
package com.kms.yxgh.sz.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author hry
* @date 2024/3/4 17:35
*/
@Data
@ApiModel("病险工程统计分析")
public class SzDangerousTotalDto {
@ApiModelProperty("病险工程数")
private int totalCheckTask;
@ApiModelProperty("已建核查任务数")
private int alreadyCheckTask;
@ApiModelProperty("未建核查任务数")
private int unCheckTask;
@ApiModelProperty("任务总数")
private int totalTask;
@ApiModelProperty("未完成核查任务数")
private int unTask;
@ApiModelProperty("完成核查任务数")
private int finishTask;
@ApiModelProperty("核查项总数")
private int itemTotal;
@ApiModelProperty("核查正常项数")
private int normalTotal;
@ApiModelProperty("核查问题项数")
private int problemTotal;
}

3
shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousGroupingMapper.java

@ -20,6 +20,7 @@ public interface SzDangerousGroupingMapper extends BaseMapper<SzDangerousGroupin
@Select("SELECT b.dept_name as deptName,a.id, a.name, a.dept_id as deptId, a.create_time as createTime, a.update_time as updateTime," +
"(select GROUP_CONCAT(DISTINCT c.GROUP_NAME ) from bs_sgc_sz_bxgcfzcy c where c.GROUP_ID = a.id ) as groupNames " +
" FROM bs_sgc_sz_bxgcfz a " +
" LEFT JOIN sys_dept b ON a.dept_id = b.id " )
" LEFT JOIN sys_dept b ON a.dept_id = b.id "+
" order by a.create_time desc")
IPage<SzDangerousGroupingDto> searchPage(Page<SzDangerousGroupingDto> page, @Param("dto") SzDangerousGroupingDto dto);
}

8
shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousGroupingRelMapper.java

@ -16,14 +16,6 @@ import java.util.List;
*/
@Repository
public interface SzDangerousGroupingRelMapper extends BaseMapper<SzDangerousGroupingRel> {
/**
* 根据groupId删除
* @param groupId
* @return
*/
int deleteByGroupId(String groupId);
/**
* 根据groupId查询
* @param groupId

24
shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousTaskItemRelMapper.java

@ -3,6 +3,8 @@ package com.kms.yxgh.sz.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.kms.yxgh.sz.domain.SzDangerousTaskItemRel;
import com.kms.yxgh.sz.dto.SzDangerousTaskItemRelDto;
import com.kms.yxgh.sz.dto.SzDangerousTaskSearchDto;
import com.kms.yxgh.sz.dto.SzDangerousTotalDto;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@ -37,4 +39,26 @@ public interface SzDangerousTaskItemRelMapper extends BaseMapper<SzDangerousTask
"</script>")
List<SzDangerousTaskItemRelDto> selectByListParam(@Param("dto") SzDangerousTaskItemRelDto dto);
@Select("<script>" +
"SELECT count(*) itemTotal, sum(IF(gl.level ='0', 1, 0)) normalTotal, sum(IF(gl.level ='1', 1, 0)) problemTotal "+
"FROM bs_sgc_sz_bxgcnrgl gl " +
"LEFT JOIN bs_sgc_sz_bxgcrw rw on gl.TASK_ID = rw.id " +
"LEFT JOIN bs_sgc_sz_jbxx xx ON xx.waga_code = rw.waga_code " +
"<if test='dto.adcd != null and dto.adcd != \"\"'>" +
"LEFT JOIN sys_xzqh xzqh on xzqh.xzqhdm=#{dto.adcd} " +
"</if>" +
"WHERE xx.expr_date is null " +
"<if test='dto.wagaType != null and dto.wagaType != \"\"'>" +
"AND FIND_IN_SET(#{dto.wagaType} , REPLACE(REPLACE(REPLACE(xx.WAGA_TYPE, '[', ''), ']', ''), '\"', '')) " +
"</if>" +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND rw.id = #{dto.id} " +
"</if>" +
"<if test='dto.adcd != null and dto.adcd != \"\"'>" +
"AND (xx.adcd = #{dto.adcd} OR xx.adcd in (SELECT xzqhdm from sys_xzqh where parentid =#{dto.adcd}) " +
" or xx.adcd in (select xzqhdm from sys_xzqh where parentid in(SELECT xzqhdm from sys_xzqh where parentid = #{dto.adcd}))) " +
"</if>" +
"</script>")
SzDangerousTotalDto selectProblemCountByTask(@Param("dto") SzDangerousTaskSearchDto dto);
}

68
shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousTaskMapper.java

@ -7,6 +7,7 @@ import com.kms.yxgh.sz.domain.SzDangerousTask;
import com.kms.yxgh.sz.dto.SzAqjdProjecDto;
import com.kms.yxgh.sz.dto.SzDangerousTaskDto;
import com.kms.yxgh.sz.dto.SzDangerousTaskSearchDto;
import com.kms.yxgh.sz.dto.SzDangerousTotalDto;
import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;
@ -23,7 +24,7 @@ public interface SzDangerousTaskMapper extends BaseMapper<SzDangerousTask> {
@Select("<script>" +
"SELECT rw.id, rw.NAME, rw.GROUP_ID as groupId, rw.WAGA_CODE as wagaCode, rw.START_TIME as startTime, rw.DONE_TIME as doneTime, rw.CONTENT as content, rw.state, rw.CREATE_TIME as createTime, rw.UPDATE_TIME as updateTime, " +
"df.waga_name as wagaName, gl.engineering_management_unit as engineeringManagementUnit, df.adcd as adcd, df.ENG_SCAL as engScal , df.waga_type as wagaType, fz.name as groupName, rw.remark ,rw.FINISH_TIME as finishTime " +
"df.waga_name as wagaName, gl.engineering_management_unit as engineeringManagementUnit, df.adcd as adcd, df.ENG_SCAL as engScal , df.waga_type as wagaType, fz.name as groupName, if(rw.remark is null, '0', rw.remark) remark ,rw.FINISH_TIME as finishTime " +
"FROM bs_sgc_sz_bxgcrw rw " +
"LEFT JOIN bs_sgc_sz_jbxx df ON df.waga_code = rw.waga_code " +
"LEFT JOIN bs_sgc_sz_gcgl gl ON rw.waga_code = gl.waga_code " +
@ -54,7 +55,12 @@ public interface SzDangerousTaskMapper extends BaseMapper<SzDangerousTask> {
"<if test='dto.state != null and dto.state != \"\"'>" +
"AND rw.state = #{dto.state} " +
"</if>" +
"ORDER BY rw.create_time asc" +
"<if test='dto.isOrder != null and dto.isOrder != \"\"'>" +
"ORDER BY CASE WHEN CAST(rw.remark AS UNSIGNED) = 100 THEN 1 ELSE 0 END, CAST(rw.remark AS UNSIGNED) DESC, rw.FINISH_TIME ASC " +
"</if>" +
"<if test='dto.isOrder == null or dto.isOrder == \"\"'>" +
"ORDER BY rw.create_time desc" +
"</if>" +
"</script>")
IPage<SzDangerousTaskDto> selectByPage(Page<SzDangerousTaskDto> page, @Param("dto") SzDangerousTaskSearchDto dto);
@ -108,4 +114,62 @@ public interface SzDangerousTaskMapper extends BaseMapper<SzDangerousTask> {
@Result(property = "lastTime", column = "waga_code", javaType = Date.class, one = @One(select = "com.kms.yxgh.sz.mapper.SzRecordMapper.getLastInsertTimeByWagaCodeAndPlanId"))
})
IPage<SzAqjdProjecDto> selectByAqjdPage(Page<SzAqjdProjecDto> page, @Param("dto") SzAqjdProjecDto dto);
@Select("<script>" +
"SELECT (SELECT COUNT(DISTINCT jr.waga_code) FROM bs_sgc_sz_bxgcrw jr LEFT JOIN bs_sgc_sz_jbxx jx ON jr.WAGA_CODE = jx.WAGA_CODE " +
"<if test='dto.adcd != null and dto.adcd != \"\"'>" +
"LEFT JOIN sys_xzqh xzqh on xzqh.xzqhdm=#{dto.adcd} " +
"</if>" +
"where jx.EXPR_DATE IS NULL " +
"<if test='dto.adcd != null and dto.adcd != \"\"'>" +
"AND (jx.adcd = #{dto.adcd} OR jx.adcd in (SELECT xzqhdm from sys_xzqh where parentid =#{dto.adcd}) " +
" or jx.adcd in (select xzqhdm from sys_xzqh where parentid in(SELECT xzqhdm from sys_xzqh where parentid = #{dto.adcd}))) " +
"</if>" +
"<if test='dto.wagaType != null and dto.wagaType != \"\"'>" +
"AND FIND_IN_SET(#{dto.wagaType} , REPLACE(REPLACE(REPLACE(jx.WAGA_TYPE, '[', ''), ']', ''), '\"', '')) " +
"</if>" +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND jr.id = #{dto.id} " +
"</if>" +
") as alreadyCheckTask, " +
"(SELECT COUNT(*) FROM bs_sgc_sz_jbxx jx " +
"LEFT JOIN bs_sgc_sz_bxgcrw rw ON rw.WAGA_CODE = jx.WAGA_CODE "+
"<if test='dto.adcd != null and dto.adcd != \"\"'>" +
"LEFT JOIN sys_xzqh xzqh on xzqh.xzqhdm=#{dto.adcd} " +
"</if>" +
" WHERE jx.waga_code NOT IN (SELECT waga_code FROM bs_sgc_sz_bxgcrw) and jx.EXPR_DATE IS NULL " +
"<if test='dto.adcd != null and dto.adcd != \"\"'>" +
"AND (jx.adcd = #{dto.adcd} OR jx.adcd in (SELECT xzqhdm from sys_xzqh where parentid =#{dto.adcd}) " +
" or jx.adcd in (select xzqhdm from sys_xzqh where parentid in(SELECT xzqhdm from sys_xzqh where parentid = #{dto.adcd}))) " +
"</if>" +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND rw.id = #{dto.id} " +
"</if>" +
"<if test='dto.wagaType != null and dto.wagaType != \"\"'>" +
"AND FIND_IN_SET(#{dto.wagaType} , REPLACE(REPLACE(REPLACE(jx.WAGA_TYPE, '[', ''), ']', ''), '\"', '')) " +
"</if>" +
") as unCheckTask from dual" +
"</script>")
SzDangerousTotalDto selectCountByTask(@Param("dto") SzDangerousTaskSearchDto dto);
@Select("<script>" +
"SELECT count(*) totalTask, sum(IF(rw.STATE ='0', 1, 0))+sum(if(rw.state is null,1,0)) unTask, sum(IF(rw.STATE ='1', 1, 0)) finishTask "+
"FROM bs_sgc_sz_bxgcrw rw " +
"LEFT JOIN bs_sgc_sz_jbxx xx ON xx.waga_code = rw.waga_code " +
"<if test='dto.adcd != null and dto.adcd != \"\"'>" +
"LEFT JOIN sys_xzqh xzqh on xzqh.xzqhdm=#{dto.adcd} " +
"</if>" +
"WHERE xx.expr_date is null " +
"<if test='dto.wagaType != null and dto.wagaType != \"\"'>" +
"AND FIND_IN_SET(#{dto.wagaType} , REPLACE(REPLACE(REPLACE(xx.WAGA_TYPE, '[', ''), ']', ''), '\"', '')) " +
"</if>" +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND rw.id = #{dto.id} " +
"</if>" +
"<if test='dto.adcd != null and dto.adcd != \"\"'>" +
"AND (xx.adcd = #{dto.adcd} OR xx.adcd in (SELECT xzqhdm from sys_xzqh where parentid =#{dto.adcd}) " +
" or xx.adcd in (select xzqhdm from sys_xzqh where parentid in(SELECT xzqhdm from sys_xzqh where parentid = #{dto.adcd}))) " +
"</if>" +
"</script>")
SzDangerousTotalDto selectCountByTaskTotal(@Param("dto") SzDangerousTaskSearchDto dto);
}

2
shuili-system/src/main/java/com/kms/yxgh/sz/service/SzDangerousGroupingService.java

@ -63,7 +63,7 @@ public class SzDangerousGroupingService extends BaseService<SzDangerousGroupingM
this.updateById(dangerousGrouping);
// 批量删除小组成员列表 重新添加
relMapper.deleteByGroupId(dangerousGrouping.getId());
relMapper.delete(Wrappers.<SzDangerousGroupingRel>lambdaQuery().eq(SzDangerousGroupingRel::getGroupId, dangerousGrouping.getId()));
handleGroupingRel(groupingDto, dangerousGrouping);
return BeanCopyUtils.copy(dangerousGrouping, SzDangerousGroupingDto.class);
}

12
shuili-system/src/main/java/com/kms/yxgh/sz/service/SzDangerousProjectService.java

@ -10,11 +10,11 @@ import com.kms.yxgh.sz.mapper.SzDangerousProjectMapper;
import com.kms.yxgh.util.BeanCopyUtils;
import com.shuili.common.core.service.BaseService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.stream.Collectors;
/**
* 水闸病险工程核查项目实现类
@ -51,7 +51,7 @@ public class SzDangerousProjectService extends BaseService<SzDangerousProjectMap
}
public List<SzDangerousProjectDto> getList(SzDangerousProjectDto dto) {
List<SzDangerousProject> list = this.list();
List<SzDangerousProject> list = this.list().stream().sorted((o1, o2) -> o2.getCreateTime().compareTo(o1.getCreateTime())).collect(Collectors.toList());
return BeanCopyUtils.copyList(list, SzDangerousProjectDto.class);
}
@ -78,12 +78,8 @@ public class SzDangerousProjectService extends BaseService<SzDangerousProjectMap
return true;
}
public List<SzDangerousProjectItemDto> getItemList(String projectId) {
SzDangerousProjectItemDto enable = new SzDangerousProjectItemDto();
if(StringUtils.isNotBlank(projectId)){
enable.setProjectId(projectId);
}
return projectItemMapper.selectItemList(enable);
public List<SzDangerousProjectItemDto> getItemList(SzDangerousProjectItemDto dto) {
return projectItemMapper.selectItemList(dto);
}
public SzDangerousProjectItemDto getItemDetailById(String id) {

22
shuili-system/src/main/java/com/kms/yxgh/sz/service/SzDangerousTaskService.java

@ -121,5 +121,27 @@ public class SzDangerousTaskService extends BaseService<SzDangerousTaskMapper, S
return dto;
}
public SzDangerousTotalDto countTotal(SzDangerousTaskSearchDto dto) {
SzDangerousTotalDto totalDto = this.getBaseMapper().selectCountByTask(dto);
if (totalDto != null) {
totalDto.setTotalCheckTask(totalDto.getAlreadyCheckTask() + totalDto.getUnCheckTask());
} else {
totalDto = new SzDangerousTotalDto();
}
SzDangerousTotalDto taskDto = this.getBaseMapper().selectCountByTaskTotal(dto);
if (totalDto != null) {
totalDto.setTotalTask(taskDto.getTotalTask());
totalDto.setUnTask(taskDto.getUnTask());
totalDto.setFinishTask(taskDto.getFinishTask());
}
SzDangerousTotalDto itemDto = taskItemRelMapper.selectProblemCountByTask(dto);
if (itemDto != null) {
totalDto.setItemTotal(itemDto.getItemTotal());
totalDto.setNormalTotal(itemDto.getNormalTotal());
totalDto.setProblemTotal(itemDto.getProblemTotal());
}
return totalDto;
}
}

Loading…
Cancel
Save