Browse Source

feat:病险工程-水闸/堤防-添加完成时间字段&修复sql&补充脚本

master_tdsql
huangrenya 1 year ago
parent
commit
b5995645be
  1. 4
      shuili-system/src/main/java/com/kms/yxgh/df/controller/DfDangerousProjectController.java
  2. 6
      shuili-system/src/main/java/com/kms/yxgh/df/domain/DfDangerousTask.java
  3. 43
      shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousParamDto.java
  4. 6
      shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousProjectItemDto.java
  5. 12
      shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousTaskDto.java
  6. 6
      shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousTaskSearchDto.java
  7. 3
      shuili-system/src/main/java/com/kms/yxgh/df/dto/DfProjectListDto.java
  8. 28
      shuili-system/src/main/java/com/kms/yxgh/df/mapper/DfDangerousProjectItemMapper.java
  9. 6
      shuili-system/src/main/java/com/kms/yxgh/df/mapper/DfDangerousTaskItemRelMapper.java
  10. 19
      shuili-system/src/main/java/com/kms/yxgh/df/mapper/DfDangerousTaskMapper.java
  11. 8
      shuili-system/src/main/java/com/kms/yxgh/df/service/DfDangerousProjectService.java
  12. 32
      shuili-system/src/main/java/com/kms/yxgh/df/service/DfDangerousTaskService.java
  13. 6
      shuili-system/src/main/java/com/kms/yxgh/df/service/DfSuperviseEngineeringService.java
  14. 4
      shuili-system/src/main/java/com/kms/yxgh/sz/controller/SzDangerousProjectController.java
  15. 6
      shuili-system/src/main/java/com/kms/yxgh/sz/domain/SzDangerousTask.java
  16. 44
      shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousParamDto.java
  17. 6
      shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousProjectItemDto.java
  18. 12
      shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousTaskDto.java
  19. 22
      shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousTaskSearchDto.java
  20. 2
      shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzProjectListDto.java
  21. 29
      shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousProjectItemMapper.java
  22. 6
      shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousTaskItemRelMapper.java
  23. 27
      shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousTaskMapper.java
  24. 8
      shuili-system/src/main/java/com/kms/yxgh/sz/service/SzDangerousProjectService.java
  25. 37
      shuili-system/src/main/java/com/kms/yxgh/sz/service/SzDangerousTaskService.java
  26. 5
      shuili-system/src/main/java/com/kms/yxgh/sz/service/SzSuperviseEngineeringService.java
  27. 2
      sql/sy/v1.2.0/全量脚本/v1.2.0-all.sql
  28. 2
      sql/sy/v1.2.0/增量脚本/v1.2.0-update.sql

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

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

6
shuili-system/src/main/java/com/kms/yxgh/df/domain/DfDangerousTask.java

@ -66,4 +66,10 @@ public class DfDangerousTask extends SyBaseEntity {
@ApiModelProperty(value = "状态")
private String state;
/**
* 完成时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("完成时间")
private Date finishTime;
}

43
shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousParamDto.java

@ -25,12 +25,17 @@ public class DfDangerousParamDto {
@ApiModelProperty(value = "状态")
private String state;
/**
* 备注
*/
@ApiModelProperty (value = "备注")
private String remark;
/**
* 项目问题列表
*/
private List<ProblemParam> problemList;
@Data
public static class ProblemParam {
@ -43,30 +48,6 @@ public class DfDangerousParamDto {
@ApiModelProperty("项目ID")
private String projectId;
/**
* 问题描述
*/
@ApiModelProperty(value = "问题描述")
private String problemDescribe;
/**
* 现场记录情况
*/
@ApiModelProperty(value = "现场记录情况")
private String siteSituationRecords;
/**
* 问题填报列表
*/
private List<ProblemLevelParam> levelList;
}
@Data
public static class ProblemLevelParam {
@ApiModelProperty("主键")
private String id;
/**
* 项目内容ID
*/
@ -79,5 +60,17 @@ public class DfDangerousParamDto {
@ApiModelProperty("等级")
private String level;
/**
* 问题描述
*/
@ApiModelProperty(value = "问题描述")
private String problemDescribe;
/**
* 现场记录情况
*/
@ApiModelProperty(value = "现场记录情况")
private String siteSituationRecords;
}
}

6
shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousProjectItemDto.java

@ -25,6 +25,12 @@ public class DfDangerousProjectItemDto {
@ApiModelProperty("病险工程核查项目ID")
private String projectId;
/**
* 项目名称
*/
@ApiModelProperty("项目名称")
private String projectName;
/**
* 检查内容
*/

12
shuili-system/src/main/java/com/kms/yxgh/df/dto/DfDangerousTaskDto.java

@ -86,4 +86,16 @@ public class DfDangerousTaskDto extends DfDangerousTaskSearchDto{
@ApiModelProperty (value = "病险工程核查分组名称")
private String groupName;
/**
* 备注
*/
@ApiModelProperty (value = "备注")
private String remark;
/**
* 完成时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("完成时间")
private Date finishTime;
}

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

@ -67,4 +67,10 @@ public class DfDangerousTaskSearchDto {
*/
@ApiModelProperty("堤防类型")
private String dikeType;
/**
* 状态巡查报告
*/
@ApiModelProperty(value = "状态")
private String state;
}

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

@ -34,4 +34,7 @@ public class DfProjectListDto {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "最后执行时间")
private Date lastTime;
@ApiModelProperty("堤防型式")
private String dikePatt;
}

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

@ -2,8 +2,13 @@ package com.kms.yxgh.df.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.kms.yxgh.df.domain.DfDangerousProjectItem;
import com.kms.yxgh.df.dto.DfDangerousProjectItemDto;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* 堤防病险工程核查项目内容Mapper接口
* @author hry
@ -11,4 +16,27 @@ import org.springframework.stereotype.Repository;
*/
@Repository
public interface DfDangerousProjectItemMapper extends BaseMapper<DfDangerousProjectItem> {
/**
* 查询项目及内容列表
* @param dto
* @return
*/
@Select("<script>" +
"SELECT xm.name as projectName, nr.project_id as projectId, nr.id, nr.content " +
"FROM bs_sgc_df_bxgcxmnr nr " +
"LEFT JOIN bs_sgc_df_bxgcxm xm ON xm.id = nr.project_id " +
"WHERE 1=1 " +
"<if test='dto.projectId != null and dto.projectId != \"\"'>" +
"AND xm.id = #{dto.projectId} " +
"</if>" +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND nr.id = #{dto.id} " +
"</if>" +
"<if test='dto.content != null and dto.content != \"\"'>" +
"AND nr.content like concat('%', #{dto.content}, '%') " +
"</if>" +
"ORDER BY xm.create_time asc" +
"</script>")
List<DfDangerousProjectItemDto> selectItemList(@Param("dto") DfDangerousProjectItemDto dto);
}

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

@ -15,9 +15,9 @@ public interface DfDangerousTaskItemRelMapper extends BaseMapper<DfDangerousTask
@Insert({
"<script>",
"insert into bs_sgc_df_bxgcglxm(task_id, project_id, project_item_id, level) values ",
"insert into bs_sgc_df_bxgcnrgl(task_id, project_id, project_item_id, level, PROBLEM_DESCRIBE, SITE_SITUATION_RECORDS) values ",
"<foreach collection='problemList' item='item' index='index' separator=','>",
"(#{item.taskId}, #{item.projectId}, #{item.projectItemId}, #{item.level} )",
"(#{item.taskId}, #{item.projectId}, #{item.projectItemId}, #{item.level}, #{item.problemDescribe}, #{item.siteSituationRecords} )",
"</foreach>",
"</script>"
})
@ -27,7 +27,7 @@ public interface DfDangerousTaskItemRelMapper extends BaseMapper<DfDangerousTask
@Select("<script>" +
"SELECT xm.name as projectName, nr.project_id as projectId, nr.content, " +
"wt.id, wt.task_id as taskId, wt.PROJECT_ITEM_ID as projectItemId, wt.level, wt.PROBLEM_DESCRIBE as problemDescribe, wt.SITE_SITUATION_RECORDS as siteSituationRecords "+
"FROM bs_sgc_df_bxgcglxm wt " +
"FROM bs_sgc_df_bxgcnrgl wt " +
"LEFT JOIN bs_sgc_df_bxgcxm xm on wt.project_id = xm.id " +
"LEFT JOIN bs_sgc_df_bxgcxmnr nr on wt.project_item_id = nr.id " +
"WHERE 1=1 " +

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

@ -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 " +
"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 " +
"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 " +
@ -52,6 +52,9 @@ public interface DfDangerousTaskMapper extends BaseMapper<DfDangerousTask> {
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND rw.id = #{dto.id} " +
"</if>" +
"<if test='dto.state != null and dto.state != \"\"'>" +
"AND rw.state = #{dto.state} " +
"</if>" +
"ORDER BY rw.create_time asc" +
"</script>")
IPage<DfDangerousTaskDto> selectByPage(Page<DfDangerousTaskDto> page, @Param("dto") DfDangerousTaskSearchDto dto);
@ -60,21 +63,21 @@ 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, 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, df.dike_grad as dikeGrad, df.DIKE_PATT as dikePatt, df.DIKE_TYPE as dikeType " +
"gl.engineering_management_unit as engineeringManagementUnit, df.adcd_start as adcdStart, df.adcd_end as adcdEnd, df.dike_grad as dikeGrad, df.DIKE_PATT as dikePatt, df.DIKE_TYPE as dikeType, rw.remark " +
"FROM bs_sgc_df_bxgcrw rw " +
"LEFT JOIN bs_sgc_df_gcda df ON df.dike_code = da.dike_code " +
"LEFT JOIN bs_sgc_df_gcda df ON rw.dike_code = df.dike_code " +
"LEFT JOIN bs_sgc_df_gcgl gl ON rw.dike_code = gl.dike_code " +
"WHERE df.expr_date is null " +
"AND gl.expr_date is null " +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND rw.id = #{dto.id} " +
"<if test='id != null and id != \"\"'>" +
"AND rw.id = #{id} " +
"</if>" +
"</script>")
DfDangerousTaskDto selectByIdDetail(Serializable id);
DfDangerousTaskDto selectByIdDetail(@Param("id") String id);
@Select({
"<script>",
"select df.dike_code dike_code, df.dike_name dike_name, df.dike_grad, df.dike_type, df.dike_len, df.adcd_start, df.adcd_end, pj.engineering_management_unit engineering_management_unit, pj.water_administrative_department water_administrative_department ",
"select df.dike_code dike_code, df.dike_name dike_name, df.dike_grad, df.dike_type, df.dike_len,df.dike_patt,df.adcd_start, df.adcd_end, pj.engineering_management_unit engineering_management_unit, pj.water_administrative_department water_administrative_department ",
"from bs_sgc_df_gcda df ",
"left join bs_sgc_df_gcgl pj on pj.dike_code = df.dike_code and pj.expr_date is null ",
"left join bs_sgc_df_aqjdxx aqjd on aqjd.dfrw_id = df.id ",
@ -91,6 +94,8 @@ public interface DfDangerousTaskMapper extends BaseMapper<DfDangerousTask> {
@Results({
@Result(property = "dikeCode", column = "dike_code"),
@Result(property = "dikeName", column = "dike_name"),
@Result(property = "dikeGrad", column = "dike_grad"),
@Result(property = "dikePatt", column = "dike_patt"),
@Result(property = "engineeringManagementUnit", column = "engineering_management_unit"),
@Result(property = "waterAdministrativeDepartment", column = "water_administrative_department"),
@Result(property = "identifyTime", column = "identify_time"),

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

@ -10,6 +10,7 @@ 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;
@ -78,8 +79,11 @@ public class DfDangerousProjectService extends BaseService<DfDangerousProjectMap
}
public List<DfDangerousProjectItemDto> getItemList(String projectId) {
List<DfDangerousProjectItem> itemList = projectItemMapper.selectList(Wrappers.<DfDangerousProjectItem>lambdaQuery().eq(DfDangerousProjectItem::getProjectId, projectId));
return BeanCopyUtils.copyList(itemList, DfDangerousProjectItemDto.class);
DfDangerousProjectItemDto enable = new DfDangerousProjectItemDto();
if(StringUtils.isNotBlank(projectId)){
enable.setProjectId(projectId);
}
return projectItemMapper.selectItemList(enable);
}
public DfDangerousProjectItemDto getItemDetailById(String id) {

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

@ -1,9 +1,10 @@
package com.kms.yxgh.df.service;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.kms.yxgh.base.SzException;
import com.kms.yxgh.base.enums.SuperviseEngineeringStatus;
import com.kms.yxgh.df.domain.DfDangerousTask;
import com.kms.yxgh.df.domain.DfDangerousTaskItemRel;
import com.kms.yxgh.df.dto.*;
@ -17,6 +18,7 @@ import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@ -84,32 +86,26 @@ public class DfDangerousTaskService extends BaseService<DfDangerousTaskMapper, D
if (task == null) {
throw new SzException("堤防病险工程核查任务不存在,请确认id值是否正确");
}
if (CollectionUtil.isEmpty(dto.getProblemList())) {
return dto;
}
// 2. 新增填报内容
List<DfDangerousTaskItemRel> itemRel = dto.getProblemList().stream().flatMap(v -> {
// 2.1 删除关联数据
List<String> problemIds = v.getLevelList().stream().filter(level -> StringUtils.isNotBlank(level.getId())).map(DfDangerousParamDto.ProblemLevelParam::getId).collect(Collectors.toList());
if (!problemIds.isEmpty()) {
taskItemRelMapper.deleteBatchIds(problemIds);
}
return v.getLevelList().stream().map(level -> {
DfDangerousTaskItemRel problem = new DfDangerousTaskItemRel();
BeanCopyUtils.copy(level, problem);
problem.setId(null);
problem.setTaskId(task.getId());
return problem;
});
List<DfDangerousTaskItemRel> itemRel = dto.getProblemList().stream().filter(v->StringUtils.isNotBlank(v.getLevel())).map(level -> {
DfDangerousTaskItemRel problem = new DfDangerousTaskItemRel();
BeanCopyUtils.copy(level, problem);
problem.setId(null);
problem.setTaskId(task.getId());
return problem;
}).collect(Collectors.toList());
// 3. 批量新增
if (!itemRel.isEmpty()) {
taskItemRelMapper.delete(Wrappers.<DfDangerousTaskItemRel>lambdaQuery().eq(DfDangerousTaskItemRel::getTaskId, task.getId()));
taskItemRelMapper.insertBatch(itemRel);
}
// 4. 修改任务状态
task.setState(dto.getState());
task.setRemark(dto.getRemark());
if(SuperviseEngineeringStatus.SUBMIT.getValue().equals(dto.getState())){
task.setFinishTime(new Date());
}
this.updateById(task);
return dto;
}

6
shuili-system/src/main/java/com/kms/yxgh/df/service/DfSuperviseEngineeringService.java

@ -53,7 +53,6 @@ public class DfSuperviseEngineeringService extends BaseService<DfSuperviseProble
task.setWeather(dto.getWeather());
task.setState(dto.getState());
// 1.2 新增工程问题
// 1.2 新增工程问题
if (CollectionUtil.isNotEmpty(dto.getProblemList())) {
List<DfSuperviseProblem> problemList = new ArrayList<>();
@ -72,12 +71,9 @@ public class DfSuperviseEngineeringService extends BaseService<DfSuperviseProble
}
problemList.add(problem);
});
List<String> problemIds = dto.getProblemList().stream().map(DfSuperviseEngineeringParamDto.ProblemParam::getId).collect(Collectors.toList());
if (problemIds.size() > 0) {
this.getBaseMapper().deleteBatchIds(problemIds);
}
// 批量新增
if (problemList.size() > 0) {
this.getBaseMapper().delete(Wrappers.<DfSuperviseProblem>lambdaQuery().eq(DfSuperviseProblem::getTaskId, task.getId()));
this.getBaseMapper().insertProblem(problemList);
}
}

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

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

6
shuili-system/src/main/java/com/kms/yxgh/sz/domain/SzDangerousTask.java

@ -65,4 +65,10 @@ public class SzDangerousTask extends SyBaseEntity {
@ApiModelProperty(value = "状态")
private String state;
/**
* 完成时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("完成时间")
private Date finishTime;
}

44
shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousParamDto.java

@ -25,12 +25,18 @@ public class SzDangerousParamDto {
@ApiModelProperty(value = "状态")
private String state;
/**
* 备注
*/
@ApiModelProperty (value = "备注")
private String remark;
/**
* 项目问题列表
*/
private List<ProblemParam> problemList;
@Data
public static class ProblemParam {
@ -43,30 +49,6 @@ public class SzDangerousParamDto {
@ApiModelProperty("项目ID")
private String projectId;
/**
* 问题描述
*/
@ApiModelProperty(value = "问题描述")
private String problemDescribe;
/**
* 现场记录情况
*/
@ApiModelProperty(value = "现场记录情况")
private String siteSituationRecords;
/**
* 问题填报列表
*/
private List<ProblemLevelParam> levelList;
}
@Data
public static class ProblemLevelParam {
@ApiModelProperty("主键")
private String id;
/**
* 项目内容ID
*/
@ -79,5 +61,17 @@ public class SzDangerousParamDto {
@ApiModelProperty("等级")
private String level;
/**
* 问题描述
*/
@ApiModelProperty(value = "问题描述")
private String problemDescribe;
/**
* 现场记录情况
*/
@ApiModelProperty(value = "现场记录情况")
private String siteSituationRecords;
}
}

6
shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousProjectItemDto.java

@ -25,6 +25,12 @@ public class SzDangerousProjectItemDto {
@ApiModelProperty("病险工程核查项目ID")
private String projectId;
/**
* 项目名称
*/
@ApiModelProperty("项目名称")
private String projectName;
/**
* 检查内容
*/

12
shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzDangerousTaskDto.java

@ -86,4 +86,16 @@ public class SzDangerousTaskDto extends SzDangerousTaskSearchDto {
@ApiModelProperty (value = "病险工程核查分组名称")
private String groupName;
/**
* 备注
*/
@ApiModelProperty (value = "备注")
private String remark;
/**
* 完成时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("完成时间")
private Date finishTime;
}

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

@ -25,17 +25,15 @@ public class SzDangerousTaskSearchDto {
@ApiModelProperty("水闸名称")
private String wagaName;
/**
* 水闸等级
*/
@ApiModelProperty("水闸等级")
/** 所属流域 */
@ApiModelProperty("所属流域")
private String riverLocation;
/**
* 水闸等级
*/
@ApiModelProperty("水闸等级")
private String dikeGrad;
/** 建筑物级别 */
@ApiModelProperty("建筑物级别")
private String mainBuildGrad;
/**
* 管理单位
@ -60,4 +58,10 @@ public class SzDangerousTaskSearchDto {
*/
@ApiModelProperty("水闸类型")
private String wagaType;
/**
* 状态巡查报告
*/
@ApiModelProperty(value = "状态")
private String state;
}

2
shuili-system/src/main/java/com/kms/yxgh/sz/dto/SzProjectListDto.java

@ -30,4 +30,6 @@ public class SzProjectListDto {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "最后巡查时间")
private Date lastTime;
@ApiModelProperty("建筑物级别")
private String mainBuildGrad;
}

29
shuili-system/src/main/java/com/kms/yxgh/sz/mapper/SzDangerousProjectItemMapper.java

@ -2,8 +2,13 @@ package com.kms.yxgh.sz.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.kms.yxgh.sz.domain.SzDangerousProjectItem;
import com.kms.yxgh.sz.dto.SzDangerousProjectItemDto;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* 水闸病险工程核查项目内容Mapper接口
* @author hry
@ -11,4 +16,28 @@ import org.springframework.stereotype.Repository;
*/
@Repository
public interface SzDangerousProjectItemMapper extends BaseMapper<SzDangerousProjectItem> {
/**
* 查询项目及内容列表
* @param dto
* @return
*/
@Select("<script>" +
"SELECT xm.name as projectName, nr.project_id as projectId, nr.id, nr.content " +
"FROM bs_sgc_sz_bxgcxmnr nr " +
"LEFT JOIN bs_sgc_sz_bxgcxm xm ON xm.id = nr.project_id " +
"WHERE 1=1 " +
"<if test='dto.projectId != null and dto.projectId != \"\"'>" +
"AND xm.id = #{dto.projectId} " +
"</if>" +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND nr.id = #{dto.id} " +
"</if>" +
"<if test='dto.content != null and dto.content != \"\"'>" +
"AND nr.content like concat('%', #{dto.content}, '%') " +
"</if>" +
"ORDER BY xm.create_time asc" +
"</script>")
List<SzDangerousProjectItemDto> selectItemList(@Param("dto") SzDangerousProjectItemDto dto);
}

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

@ -15,9 +15,9 @@ public interface SzDangerousTaskItemRelMapper extends BaseMapper<SzDangerousTask
@Insert({
"<script>",
"insert into bs_sgc_sz_bxgcglxm(task_id, project_id, project_item_id, level) values ",
"insert into bs_sgc_sz_bxgcnrgl(task_id, project_id, project_item_id, level, PROBLEM_DESCRIBE, SITE_SITUATION_RECORDS) values ",
"<foreach collection='problemList' item='item' index='index' separator=','>",
"(#{item.taskId}, #{item.projectId}, #{item.projectItemId}, #{item.level} )",
"(#{item.taskId}, #{item.projectId}, #{item.projectItemId}, #{item.level}, #{item.problemDescribe}, #{item.siteSituationRecords} )",
"</foreach>",
"</script>"
})
@ -27,7 +27,7 @@ public interface SzDangerousTaskItemRelMapper extends BaseMapper<SzDangerousTask
@Select("<script>" +
"SELECT xm.name as projectName, nr.project_id as projectId, nr.content, " +
"wt.id, wt.task_id as taskId, wt.PROJECT_ITEM_ID as projectItemId, wt.level, wt.PROBLEM_DESCRIBE as problemDescribe, wt.SITE_SITUATION_RECORDS as siteSituationRecords "+
"FROM bs_sgc_sz_bxgcglxm wt " +
"FROM bs_sgc_sz_bxgcnrgl wt " +
"LEFT JOIN bs_sgc_sz_bxgcxm xm on wt.project_id = xm.id " +
"LEFT JOIN bs_sgc_sz_bxgcxmnr nr on wt.project_item_id = nr.id " +
"WHERE 1=1 " +

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

@ -10,7 +10,6 @@ import com.kms.yxgh.sz.dto.SzDangerousTaskSearchDto;
import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;
import java.io.Serializable;
import java.util.Date;
/**
@ -24,7 +23,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 " +
"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 " +
"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 " +
@ -44,11 +43,17 @@ public interface SzDangerousTaskMapper extends BaseMapper<SzDangerousTask> {
"AND gl.engineering_management_unit like concat('%', #{dto.engineeringManagementUnit}, '%') " +
"</if>" +
"<if test='dto.engScal != null and dto.engScal != \"\"'>" +
"AND df.ENG_SCAL = #{dto.ENG_SCAL} " +
"AND df.ENG_SCAL = #{dto.engScal} " +
"</if>" +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND rw.id = #{dto.id} " +
"</if>" +
"<if test='dto.mainBuildGrad != null and dto.mainBuildGrad != \"\"'>" +
"AND df.MAIN_BUILD_GRAD = #{dto.mainBuildGrad} " +
"</if>" +
"<if test='dto.state != null and dto.state != \"\"'>" +
"AND rw.state = #{dto.state} " +
"</if>" +
"ORDER BY rw.create_time asc" +
"</script>")
IPage<SzDangerousTaskDto> selectByPage(Page<SzDangerousTaskDto> page, @Param("dto") SzDangerousTaskSearchDto dto);
@ -56,23 +61,23 @@ 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, df.waga_name as wagaName, " +
"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 " +
"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, " +
"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,df.MAIN_BUILD_GRAD as mainBuildGrad, rw.remark " +
"FROM bs_sgc_sz_bxgcrw rw " +
"LEFT JOIN bs_sgc_sz_jbxx df ON df.waga_code = da.waga_code " +
"LEFT JOIN bs_sgc_sz_jbxx df ON rw.waga_code = df.waga_code " +
"LEFT JOIN bs_sgc_sz_gcgl gl ON rw.waga_code = gl.waga_code " +
"WHERE df.expr_date is null " +
"AND gl.expr_date is null " +
"<if test='dto.id != null and dto.id != \"\"'>" +
"AND rw.id = #{dto.id} " +
"<if test='id != null and id != \"\"'>" +
"AND rw.id = #{id} " +
"</if>" +
"</script>")
SzDangerousTaskDto selectByIdDetail(Serializable id);
SzDangerousTaskDto selectByIdDetail(@Param("id") String id);
@Select({
"<script>",
"select df.waga_code waga_code, df.waga_name waga_name, df.waga_type, df.adcd, df.eng_scal, pj.engineering_management_unit engineering_management_unit, pj.water_administrative_department water_administrative_department, ",
"aqjd.identify_time ,aqjd.security_category, aqjd.safety_appraisal_opinion ",
"aqjd.identify_time ,aqjd.security_category, aqjd.safety_appraisal_opinion,df.main_build_grad ",
"from bs_sgc_sz_jbxx df ",
"left join bs_sgc_sz_gcgl pj on pj.waga_code = df.waga_code and pj.expr_date is null ",
"left join bs_sgc_sz_aqjdxx aqjd on aqjd.szrw_id = df.id ",
@ -92,6 +97,8 @@ public interface SzDangerousTaskMapper extends BaseMapper<SzDangerousTask> {
@Results({
@Result(property = "wagaCode", column = "waga_code"),
@Result(property = "wagaName", column = "waga_name"),
@Result(property = "engScal", column = "eng_scal"),
@Result(property = "mainBuildGrad", column = "main_build_grad"),
@Result(property = "engineeringManagementUnit", column = "engineering_management_unit"),
@Result(property = "waterAdministrativeDepartment", column = "water_administrative_department"),
@Result(property = "identifyTime", column = "identify_time"),

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

@ -10,6 +10,7 @@ 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;
@ -78,8 +79,11 @@ public class SzDangerousProjectService extends BaseService<SzDangerousProjectMap
}
public List<SzDangerousProjectItemDto> getItemList(String projectId) {
List<SzDangerousProjectItem> itemList = projectItemMapper.selectList(Wrappers.<SzDangerousProjectItem>lambdaQuery().eq(SzDangerousProjectItem::getProjectId, projectId));
return BeanCopyUtils.copyList(itemList, SzDangerousProjectItemDto.class);
SzDangerousProjectItemDto enable = new SzDangerousProjectItemDto();
if(StringUtils.isNotBlank(projectId)){
enable.setProjectId(projectId);
}
return projectItemMapper.selectItemList(enable);
}
public SzDangerousProjectItemDto getItemDetailById(String id) {

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

@ -1,9 +1,10 @@
package com.kms.yxgh.sz.service;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.kms.yxgh.base.SzException;
import com.kms.yxgh.base.enums.SuperviseEngineeringStatus;
import com.kms.yxgh.sz.domain.SzDangerousTask;
import com.kms.yxgh.sz.domain.SzDangerousTaskItemRel;
import com.kms.yxgh.sz.dto.*;
@ -17,6 +18,7 @@ import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@ -84,41 +86,36 @@ public class SzDangerousTaskService extends BaseService<SzDangerousTaskMapper, S
if (task == null) {
throw new SzException("水闸病险工程核查任务不存在,请确认id值是否正确");
}
if (CollectionUtil.isEmpty(dto.getProblemList())) {
return dto;
}
// 2. 新增填报内容
List<SzDangerousTaskItemRel> itemRel = dto.getProblemList().stream().flatMap(v -> {
// 2.1 删除关联数据
List<String> problemIds = v.getLevelList().stream().filter(level -> StringUtils.isNotBlank(level.getId())).map(SzDangerousParamDto.ProblemLevelParam::getId).collect(Collectors.toList());
if (!problemIds.isEmpty()) {
taskItemRelMapper.deleteBatchIds(problemIds);
}
return v.getLevelList().stream().map(level -> {
SzDangerousTaskItemRel problem = new SzDangerousTaskItemRel();
BeanCopyUtils.copy(level, problem);
problem.setId(null);
problem.setTaskId(task.getId());
return problem;
});
List<SzDangerousTaskItemRel> itemRel = dto.getProblemList().stream().filter(v->StringUtils.isNotBlank(v.getLevel())).map(level -> {
SzDangerousTaskItemRel problem = new SzDangerousTaskItemRel();
BeanCopyUtils.copy(level, problem);
problem.setId(null);
problem.setTaskId(task.getId());
return problem;
}).collect(Collectors.toList());
// 3. 批量新增
if (!itemRel.isEmpty()) {
if (itemRel.size() > 0) {
taskItemRelMapper.delete(Wrappers.<SzDangerousTaskItemRel>lambdaQuery().eq(SzDangerousTaskItemRel::getTaskId, task.getId()));
taskItemRelMapper.insertBatch(itemRel);
}
// 4. 修改任务状态
task.setState(dto.getState());
task.setRemark(dto.getRemark());
if (SuperviseEngineeringStatus.SUBMIT.getValue().equals(dto.getState())) {
task.setFinishTime(new Date());
}
this.updateById(task);
return dto;
}
public SzDangerousTaskDetailDto getDetailByTaskId(String taskId){
public SzDangerousTaskDetailDto getDetailByTaskId(String taskId) {
SzDangerousTaskDetailDto dto = BeanCopyUtils.copy(getDetailById(taskId), SzDangerousTaskDetailDto.class);
SzDangerousTaskItemRelDto relDto= new SzDangerousTaskItemRelDto();
SzDangerousTaskItemRelDto relDto = new SzDangerousTaskItemRelDto();
relDto.setTaskId(taskId);
dto.setProblemList(taskItemRelMapper.selectByListParam(relDto));
return dto;

5
shuili-system/src/main/java/com/kms/yxgh/sz/service/SzSuperviseEngineeringService.java

@ -71,12 +71,9 @@ public class SzSuperviseEngineeringService extends BaseService<SzSuperviseProble
}
problemList.add(problem);
});
List<String> problemIds = dto.getProblemList().stream().map(SzSuperviseEngineeringParamDto.ProblemParam::getId).collect(Collectors.toList());
if (problemIds.size() > 0) {
this.getBaseMapper().deleteBatchIds(problemIds);
}
// 批量新增
if (problemList.size() > 0) {
this.getBaseMapper().delete(Wrappers.<SzSuperviseProblem>lambdaQuery().eq(SzSuperviseProblem::getTaskId, task.getId()));
this.getBaseMapper().insertProblem(problemList);
}
}

2
sql/sy/v1.2.0/全量脚本/v1.2.0-all.sql

@ -483,6 +483,7 @@ CREATE TABLE `bs_sgc_df_bxgcrw` (
`DONE_TIME` datetime DEFAULT NULL COMMENT '结束时间',
`CONTENT` varchar(500) COLLATE utf8mb4_general_ci COMMENT '检查任务背景',
`STATE` varchar(50) DEFAULT NULL COMMENT '状态',
`FINISH_TIME` datetime DEFAULT NULL COMMENT '完成时间',
`REMARK` text COLLATE utf8mb4_general_ci COMMENT '备注',
`CREATE_UID` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人',
`CREATE_TIME` datetime DEFAULT NULL COMMENT '创建时间',
@ -924,6 +925,7 @@ CREATE TABLE `bs_sgc_sz_bxgcrw` (
`DONE_TIME` datetime DEFAULT NULL COMMENT '结束时间',
`CONTENT` varchar(500) COLLATE utf8mb4_general_ci COMMENT '检查任务背景',
`STATE` varchar(50) DEFAULT NULL COMMENT '状态',
`FINISH_TIME` datetime DEFAULT NULL COMMENT '完成时间',
`REMARK` text COLLATE utf8mb4_general_ci COMMENT '备注',
`CREATE_UID` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人',
`CREATE_TIME` datetime DEFAULT NULL COMMENT '创建时间',

2
sql/sy/v1.2.0/增量脚本/v1.2.0-update.sql

@ -244,6 +244,7 @@ CREATE TABLE `bs_sgc_df_bxgcrw` (
`DONE_TIME` datetime DEFAULT NULL COMMENT '结束时间',
`CONTENT` varchar(500) COLLATE utf8mb4_general_ci COMMENT '检查任务背景',
`STATE` varchar(50) DEFAULT NULL COMMENT '状态',
`FINISH_TIME` datetime DEFAULT NULL COMMENT '完成时间',
`REMARK` text COLLATE utf8mb4_general_ci COMMENT '备注',
`CREATE_UID` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人',
`CREATE_TIME` datetime DEFAULT NULL COMMENT '创建时间',
@ -523,6 +524,7 @@ CREATE TABLE `bs_sgc_sz_bxgcrw` (
`DONE_TIME` datetime DEFAULT NULL COMMENT '结束时间',
`CONTENT` varchar(500) COLLATE utf8mb4_general_ci COMMENT '检查任务背景',
`STATE` varchar(50) DEFAULT NULL COMMENT '状态',
`FINISH_TIME` datetime DEFAULT NULL COMMENT '完成时间',
`REMARK` text COLLATE utf8mb4_general_ci COMMENT '备注',
`CREATE_UID` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人',
`CREATE_TIME` datetime DEFAULT NULL COMMENT '创建时间',

Loading…
Cancel
Save