diff --git a/detection/src/main/java/com/njcn/gather/plan/controller/AdPlanController.java b/detection/src/main/java/com/njcn/gather/plan/controller/AdPlanController.java index 20c387ce..9660d6d6 100644 --- a/detection/src/main/java/com/njcn/gather/plan/controller/AdPlanController.java +++ b/detection/src/main/java/com/njcn/gather/plan/controller/AdPlanController.java @@ -246,13 +246,13 @@ public class AdPlanController extends BaseController { // } @OperateInfo(info = LogEnum.BUSINESS_COMMON) - @GetMapping("/getBigTestItem") + @PostMapping("/getBigTestItem") @ApiOperation("获取检测大项数据") @ApiImplicitParam(name = "id", value = "检测计划id", required = true) - public HttpResult>> getBigTestItem(@RequestParam("planId") String planId) { + public HttpResult>> getBigTestItem(@RequestBody AdPlanParam.CheckParam checkParam) { String methodDescribe = getMethodDescribe("getBigTestItem"); - LogUtil.njcnDebug(log, "{},查询数据为:{}", methodDescribe, planId); - List> result = adPlanService.getBigTestItem(planId); + LogUtil.njcnDebug(log, "{},查询数据为:{}", methodDescribe, checkParam); + List> result = adPlanService.getBigTestItem(checkParam.getReCheckType(),checkParam.getPlanId(),checkParam.getDevId()); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } diff --git a/detection/src/main/java/com/njcn/gather/plan/pojo/param/AdPlanParam.java b/detection/src/main/java/com/njcn/gather/plan/pojo/param/AdPlanParam.java index 9aaad57b..16f0c8a8 100644 --- a/detection/src/main/java/com/njcn/gather/plan/pojo/param/AdPlanParam.java +++ b/detection/src/main/java/com/njcn/gather/plan/pojo/param/AdPlanParam.java @@ -6,6 +6,7 @@ import com.njcn.web.pojo.param.BaseParam; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; +import org.springframework.web.bind.annotation.RequestParam; import javax.validation.constraints.*; import java.util.List; @@ -126,4 +127,11 @@ public class AdPlanParam { // private Integer result; } + @Data + public static class CheckParam{ + // 0:不合格项复检 1:全部复检 + private Integer reCheckType; + private String planId; + private String devId; + } } diff --git a/detection/src/main/java/com/njcn/gather/plan/service/IAdPlanService.java b/detection/src/main/java/com/njcn/gather/plan/service/IAdPlanService.java index 464412e9..e2d5d4d9 100644 --- a/detection/src/main/java/com/njcn/gather/plan/service/IAdPlanService.java +++ b/detection/src/main/java/com/njcn/gather/plan/service/IAdPlanService.java @@ -3,9 +3,9 @@ package com.njcn.gather.plan.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.njcn.gather.plan.pojo.param.AdPlanParam; -import com.njcn.gather.plan.pojo.vo.AdPlanVO; import com.njcn.gather.plan.pojo.po.AdPlan; import com.njcn.gather.plan.pojo.vo.AdPlanExcel; +import com.njcn.gather.plan.pojo.vo.AdPlanVO; import java.util.List; import java.util.Map; @@ -70,6 +70,7 @@ public interface IAdPlanService extends IService { /** * 二楼导入检测计划 + * * @param planExcelList * @param patternId */ @@ -85,26 +86,30 @@ public interface IAdPlanService extends IService { /** * 获取检测大项 * + * @param reCheckType 0:不合格项复检 1:全部复检 * @param planId 检测计划Id + * @param devId 设备Id * @return */ - List> getBigTestItem(String planId); + List> getBigTestItem(Integer reCheckType, String planId, String devId); /** * 修改计划状态 + * * @param planId * @param devIds * @return */ - boolean updateTestState(String planId,List devIds); + boolean updateTestState(String planId, List devIds); /** * 数据状态回退 + * * @param planId * @param devIds * @return */ - boolean updateBackTestState(String planId,List devIds); + boolean updateBackTestState(String planId, List devIds); void finishPlan(String planId); diff --git a/detection/src/main/java/com/njcn/gather/plan/service/impl/AdPlanServiceImpl.java b/detection/src/main/java/com/njcn/gather/plan/service/impl/AdPlanServiceImpl.java index 1716c3ea..29721344 100644 --- a/detection/src/main/java/com/njcn/gather/plan/service/impl/AdPlanServiceImpl.java +++ b/detection/src/main/java/com/njcn/gather/plan/service/impl/AdPlanServiceImpl.java @@ -37,6 +37,9 @@ import com.njcn.gather.script.service.IPqScriptDtlsService; import com.njcn.gather.script.service.IPqScriptService; import com.njcn.gather.source.pojo.po.PqSource; import com.njcn.gather.source.service.IPqSourceService; +import com.njcn.gather.storage.pojo.po.AdBaseResult; +import com.njcn.gather.storage.service.AdHarmonicService; +import com.njcn.gather.storage.service.AdNonHarmonicService; import com.njcn.gather.storage.service.TableGenService; import com.njcn.gather.system.config.pojo.po.SysTestConfig; import com.njcn.gather.system.config.service.ISysTestConfigService; @@ -91,6 +94,8 @@ public class AdPlanServiceImpl extends ServiceImpl impleme private final ISysTestConfigService sysTestConfigService; private final IDevTypeService devTypeService; private final IDictTypeService dictTypeService; + private final AdNonHarmonicService adNonHarmonicService; + private final AdHarmonicService adHarmonicService; @Override public Page listAdPlan(AdPlanParam.QueryParam queryParam) { @@ -163,7 +168,7 @@ public class AdPlanServiceImpl extends ServiceImpl impleme AdPlan plan1 = this.getById(param.getId()); AdPlan plan2 = new AdPlan(); if (plan1.getTestState() != CheckStateEnum.UNCHECKED.getValue()) { - if (!plan1.getScriptId().equals(param.getScriptId())){ + if (!plan1.getScriptId().equals(param.getScriptId())) { throw new BusinessException(PlanResponseEnum.CANNOT_CHANGE_SCRIPT_WHEN_CHECKING); } if (!plan1.getErrorSysId().equals(param.getErrorSysId())) { @@ -351,7 +356,7 @@ public class AdPlanServiceImpl extends ServiceImpl impleme } @Override - public List> getBigTestItem(String planId) { + public List> getBigTestItem(Integer reCheckType, String planId, String devId) { List> result = new ArrayList<>(); AdPlan adPlan = this.getById(planId); if (ObjectUtil.isNull(adPlan)) { @@ -361,6 +366,20 @@ public class AdPlanServiceImpl extends ServiceImpl impleme List scriptDtlsList = pqScriptDtlsService.listPqScriptDtlByScriptId(scriptId); + // 不合格项复检 + if (reCheckType == 0) { + List allResultList = new ArrayList<>(); + allResultList.addAll(adHarmonicService.get(scriptId, null, devId, "-1", adPlan.getCode())); + allResultList.addAll(adNonHarmonicService.get(scriptId, null, devId, "-1", adPlan.getCode())); + + if (ObjectUtil.isNotEmpty(allResultList)) { + List passList = allResultList.stream().filter(obj -> obj.getResultFlag() == 1).collect(Collectors.toList()); + TreeSet sortSet = passList.stream().map(AdBaseResult::getSort).collect(Collectors.toCollection(TreeSet::new)); + + scriptDtlsList = scriptDtlsList.stream().filter(obj -> !sortSet.contains(obj.getScriptIndex())).collect(Collectors.toList()); + } + } + Map> collect = scriptDtlsList.stream() .sorted(Comparator.comparing(PqScriptDtls::getScriptIndex)) .collect(Collectors.groupingBy(PqScriptDtls::getScriptType, LinkedHashMap::new, Collectors.toList())); diff --git a/entrance/src/main/resources/application.yml b/entrance/src/main/resources/application.yml index 8899d7b8..5ca55656 100644 --- a/entrance/src/main/resources/application.yml +++ b/entrance/src/main/resources/application.yml @@ -6,7 +6,7 @@ spring: datasource: druid: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://192.168.1.24:13306/pqs9100?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=CTT + url: jdbc:mysql://192.168.1.24:13306/pqs91001?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=CTT username: root password: njcnpqs #初始化建立物理连接的个数、最小、最大连接数 @@ -45,10 +45,10 @@ mybatis-plus: socket: source: - ip: 192.168.1.138 + ip: 192.168.1.24 port: 62000 device: - ip: 192.168.1.138 + ip: 192.168.1.24 port: 61000 webSocket: diff --git a/storage/src/main/java/com/njcn/gather/storage/mapper/mapping/TableGenMapper.xml b/storage/src/main/java/com/njcn/gather/storage/mapper/mapping/TableGenMapper.xml index b18927d4..99065c76 100644 --- a/storage/src/main/java/com/njcn/gather/storage/mapper/mapping/TableGenMapper.xml +++ b/storage/src/main/java/com/njcn/gather/storage/mapper/mapping/TableGenMapper.xml @@ -10,7 +10,7 @@ Sort int(4) NOT NULL COMMENT '总检测脚本中的测试项序号', AD_Type CHAR(32) NOT NULL COMMENT '检测指标,字典表', Data_Type CHAR(32) NOT NULL COMMENT '数据指标,只有数据源为分钟统计时候才会使用(最大、最小、平均、CP95,默认平均值),字典表', - Result_Flag int(1) NULL COMMENT '1不合格 2合格 4无法处理', + Result_Flag int(1) NULL COMMENT '1合格 2不合格 4无法处理', A_Value varchar(30) DEFAULT NULL COMMENT 'A相值', B_Value varchar(30) DEFAULT NULL COMMENT 'B相值', C_Value varchar(30) DEFAULT NULL COMMENT 'C相值', @@ -33,7 +33,7 @@ Sort int(4) NOT NULL COMMENT '总检测脚本中的测试项序号', AD_Type CHAR(32) NOT NULL COMMENT '检测指标,字典表', Data_Type CHAR(32) NOT NULL COMMENT '数据指标,只有数据源为分钟统计时候才会使用(最大、最小、平均、CP95,默认平均值),字典表', - Result_Flag int(1) NOT NULL COMMENT '1不合格 2合格 4无法处理', + Result_Flag int(1) NOT NULL COMMENT '1合格 2不合格 4无法处理', A_Value json NULL COMMENT 'A相值', B_Value json NULL COMMENT 'B相值', C_Value json NULL COMMENT 'C相值', diff --git a/storage/src/main/java/com/njcn/gather/storage/service/impl/TableGenServiceImpl.java b/storage/src/main/java/com/njcn/gather/storage/service/impl/TableGenServiceImpl.java index 1d018738..c5708f5b 100644 --- a/storage/src/main/java/com/njcn/gather/storage/service/impl/TableGenServiceImpl.java +++ b/storage/src/main/java/com/njcn/gather/storage/service/impl/TableGenServiceImpl.java @@ -57,7 +57,7 @@ public class TableGenServiceImpl implements TableGenService { " Sort int(5) NOT NULL COMMENT '总检测脚本中的测试项序号',\n" + " AD_Type CHAR(32) NOT NULL COMMENT '检测指标,字典表',\n" + " Data_Type CHAR(32) NOT NULL COMMENT '数据指标,只有数据源为分钟统计时候才会使用(最大、最小、平均、CP95,默认平均值),字典表',\n" + - " Result_Flag int(1) NOT NULL COMMENT '1不合格 2合格 4无法处理',\n" + + " Result_Flag int(1) NOT NULL COMMENT '1合格 2不合格 4无法处理',\n" + A + B + C + " PRIMARY KEY (Monitor_Id, Script_Id, Sort, AD_Type)\n" + ") COMMENT='监测数据表';";