Browse Source

feat: 调整开始计划接口

master_tdsql
hxh 1 year ago
parent
commit
fb70a22b08
  1. 5
      shuili-system/src/main/java/com/kms/yxgh/df/domain/DfProjectCheckingRel.java
  2. 11
      shuili-system/src/main/java/com/kms/yxgh/df/dto/DfProjectCheckingRelDto.java
  3. 6
      shuili-system/src/main/java/com/kms/yxgh/df/dto/StartPlan.java
  4. 7
      shuili-system/src/main/java/com/kms/yxgh/df/service/DfProjectService.java
  5. 26
      shuili-system/src/main/java/com/kms/yxgh/df/service/DfRecordService.java
  6. 1
      sql/sy/v1.2.0/增量脚本/v1.2.0-update.sql

5
shuili-system/src/main/java/com/kms/yxgh/df/domain/DfProjectCheckingRel.java

@ -24,9 +24,12 @@ public class DfProjectCheckingRel extends SyBaseEntity {
* 巡查计划ID * 巡查计划ID
*/ */
@ApiModelProperty("巡查ID") @ApiModelProperty("巡查ID")
private String checkingId; private String xcId;
@ApiModelProperty("堤防代码") @ApiModelProperty("堤防代码")
private String dickCode; private String dickCode;
@ApiModelProperty("巡查类型")
private Long type;
} }

11
shuili-system/src/main/java/com/kms/yxgh/df/dto/DfProjectCheckingRelDto.java

@ -23,5 +23,14 @@ public class DfProjectCheckingRelDto {
private String dickCode; private String dickCode;
@ApiModelProperty(value = "巡查id") @ApiModelProperty(value = "巡查id")
private List<String> checkings; private List<Checking> checkings;
@Data
public static class Checking {
@ApiModelProperty(value = "巡查id")
private String xcId;
@ApiModelProperty(value = "巡查类型")
private Long type;
}
} }

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

@ -17,6 +17,8 @@ public class StartPlan {
@ApiModelProperty("计划id") @ApiModelProperty("计划id")
private String planId; private String planId;
@ApiModelProperty("巡查id") @ApiModelProperty("堤防编号")
private String xcId; private String dickCode;
@ApiModelProperty("巡查类型")
private Long type;
} }

7
shuili-system/src/main/java/com/kms/yxgh/df/service/DfProjectService.java

@ -41,7 +41,7 @@ public class DfProjectService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void relChecking(DfProjectCheckingRelDto dfProjectCheckingRelDto) { public void relChecking(DfProjectCheckingRelDto dfProjectCheckingRelDto) {
String dickCode = dfProjectCheckingRelDto.getDickCode(); String dickCode = dfProjectCheckingRelDto.getDickCode();
List<String> checkings = dfProjectCheckingRelDto.getCheckings(); List<DfProjectCheckingRelDto.Checking> checkings = dfProjectCheckingRelDto.getCheckings();
unbindCheckingsFromDickCode(dickCode); unbindCheckingsFromDickCode(dickCode);
@ -54,12 +54,13 @@ public class DfProjectService {
dfProjectCheckingRelMapper.delete(wrapper); dfProjectCheckingRelMapper.delete(wrapper);
} }
private void bindCheckingsToDickCode(String dickCode, List<String> plans) { private void bindCheckingsToDickCode(String dickCode, List<DfProjectCheckingRelDto.Checking> plans) {
List<DfProjectCheckingRel> projectPlanRels = plans.stream() List<DfProjectCheckingRel> projectPlanRels = plans.stream()
.map(checking -> { .map(checking -> {
DfProjectCheckingRel dfProjectCheckingRel = new DfProjectCheckingRel(); DfProjectCheckingRel dfProjectCheckingRel = new DfProjectCheckingRel();
dfProjectCheckingRel.setDickCode(dickCode); dfProjectCheckingRel.setDickCode(dickCode);
dfProjectCheckingRel.setCheckingId(checking); dfProjectCheckingRel.setXcId(checking.getXcId());
dfProjectCheckingRel.setType(checking.getType());
return dfProjectCheckingRel; return dfProjectCheckingRel;
}) })
.collect(Collectors.toList()); .collect(Collectors.toList());

26
shuili-system/src/main/java/com/kms/yxgh/df/service/DfRecordService.java

@ -9,10 +9,12 @@ import com.kms.system.service.SysUserService;
import com.kms.yxgh.base.DfException; import com.kms.yxgh.base.DfException;
import com.kms.yxgh.base.enums.CheckingStatus; import com.kms.yxgh.base.enums.CheckingStatus;
import com.kms.yxgh.base.enums.RecordStatus; import com.kms.yxgh.base.enums.RecordStatus;
import com.kms.yxgh.df.domain.DfProjectCheckingRel;
import com.kms.yxgh.df.domain.DfRecord; import com.kms.yxgh.df.domain.DfRecord;
import com.kms.yxgh.df.domain.DfRecordItem; import com.kms.yxgh.df.domain.DfRecordItem;
import com.kms.yxgh.df.dto.*; import com.kms.yxgh.df.dto.*;
import com.kms.yxgh.df.dto.DfRecordDetailDto.DfRecordItemDto; import com.kms.yxgh.df.dto.DfRecordDetailDto.DfRecordItemDto;
import com.kms.yxgh.df.mapper.DfProjectCheckingRelMapper;
import com.kms.yxgh.df.mapper.DfRecordItemMapper; import com.kms.yxgh.df.mapper.DfRecordItemMapper;
import com.kms.yxgh.df.mapper.DfRecordMapper; import com.kms.yxgh.df.mapper.DfRecordMapper;
import com.kms.yxgh.util.BeanCopyUtils; import com.kms.yxgh.util.BeanCopyUtils;
@ -45,6 +47,7 @@ public class DfRecordService extends BaseService<DfRecordMapper, DfRecord> {
private final DfCheckingService dfCheckingService; private final DfCheckingService dfCheckingService;
private final DfPlanService dfPlanService; private final DfPlanService dfPlanService;
private final SysUserService userService; private final SysUserService userService;
private final DfProjectCheckingRelMapper dfProjectCheckingRelMapper;
public IPage<DfRecordSearchDto> search(SearchParam<DfRecord> sp) { public IPage<DfRecordSearchDto> search(SearchParam<DfRecord> sp) {
IPage<DfRecord> page = selectPage(sp); IPage<DfRecord> page = selectPage(sp);
@ -86,18 +89,33 @@ public class DfRecordService extends BaseService<DfRecordMapper, DfRecord> {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public DfRecordDetailDto start(StartPlan startPlan) { public DfRecordDetailDto start(StartPlan startPlan) {
if (StringUtils.isEmpty(startPlan.getPlanId())) { if (StringUtils.isEmpty(startPlan.getPlanId())) {
if (StringUtils.isEmpty(startPlan.getXcId())) { if (StringUtils.isEmpty(startPlan.getDickCode())) {
throw new DfException("巡查计划id与巡查id不能都为空"); throw new DfException("巡查计划id与堤防编码不能都为空");
} }
return initRecord(startPlan, startPlan.getXcId(), null); String xcId = getXcId(startPlan);
if (StringUtils.isEmpty(xcId)) {
throw new DfException("该堤防没有配置巡查项目,开始巡查失败");
}
return initRecord(startPlan, xcId, null);
} else { } else {
DfPlanDetailDto planDetailDto = dfPlanService.getDetailById(startPlan.getPlanId()); DfPlanDetailDto planDetailDto = dfPlanService.getDetailById(startPlan.getPlanId());
if (planDetailDto != null) { if (planDetailDto != null) {
planDetailDto.setId(null); planDetailDto.setId(null);
return initRecord(startPlan, planDetailDto.getXcId(), planDetailDto.getName()); return initRecord(startPlan, planDetailDto.getXcId(), planDetailDto.getName());
} }
throw new DfException("查询巡查计划"); throw new DfException("巡查计划不存在,开始巡查失败");
}
}
private String getXcId(StartPlan startPlan) {
Wrapper<DfProjectCheckingRel> wrapper = Wrappers.<DfProjectCheckingRel>lambdaQuery()
.eq(DfProjectCheckingRel::getDickCode, startPlan.getDickCode())
.eq(DfProjectCheckingRel::getType, startPlan.getType());
DfProjectCheckingRel rel = dfProjectCheckingRelMapper.selectOne(wrapper);
if (rel == null) {
return null;
} }
return rel.getXcId();
} }
private DfRecordDetailDto initRecord(StartPlan startPlan, String xcId, String name) { private DfRecordDetailDto initRecord(StartPlan startPlan, String xcId, String name) {

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

@ -5,6 +5,7 @@ ALTER TABLE `bs_sgc_df_xsjh` ADD `DIKE_CODE` varchar(18) COLLATE utf8mb4_genera
CREATE TABLE `bs_sgc_df_xspj` ( CREATE TABLE `bs_sgc_df_xspj` (
`ID` int NOT NULL AUTO_INCREMENT COMMENT '堤防巡视检查与堤防绑定编号', `ID` int NOT NULL AUTO_INCREMENT COMMENT '堤防巡视检查与堤防绑定编号',
`XC_ID` int NOT NULL COMMENT '巡查ID', `XC_ID` int NOT NULL COMMENT '巡查ID',
`TYPE` int DEFAULT NULL COMMENT '巡查类型',
`DIKE_CODE` varchar(18) COLLATE utf8mb4_general_ci NOT NULL COMMENT '堤防代码', `DIKE_CODE` varchar(18) COLLATE utf8mb4_general_ci NOT NULL COMMENT '堤防代码',
`CREATE_UID` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人', `CREATE_UID` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人',
`CREATE_TIME` datetime DEFAULT NULL COMMENT '创建时间', `CREATE_TIME` datetime DEFAULT NULL COMMENT '创建时间',

Loading…
Cancel
Save