This commit is contained in:
caozehui
2024-12-13 16:37:20 +08:00
parent e059e3c2af
commit 878a2e68af
10 changed files with 147 additions and 86 deletions

View File

@@ -15,40 +15,40 @@ import java.util.List;
*/
@Data
public class AdPlanExcel {
@Excel(name = "名称", width = 40)
@Excel(name = "名称", width = 40, needMerge = true)
private String name;
@Excel(name = "模式", width = 20)
@Excel(name = "模式", width = 20, needMerge = true)
@NotBlank(message = DevValidMessage.PATTERN_NOT_BLANK)
private String pattern;
@Excel(name = "父计划id", width = 25)
@Excel(name = "父计划id", width = 25, needMerge = true)
private String fatherPlanId;
@Excel(name = "数据源", width = 20)
private String datasource;
@Excel(name = "数据源", width = 20, needMerge = true)
private String datasourceId;
@Excel(name = "脚本", width = 50)
private String script;
@Excel(name = "脚本", width = 50, needMerge = true)
private String scriptId;
@Excel(name = "误差体系", width = 30)
private String errorSys;
@Excel(name = "误差体系", width = 30, needMerge = true)
private String errorSysId;
@Excel(name = "是否做守时检测", width = 15, replace = {"否_0", "是_1"})
@Excel(name = "是否做守时检测", width = 15, replace = {"否_0", "是_1"}, needMerge = true)
private Integer timeCheck;
@Excel(name = "检测状态", width = 10, replace = {"未检_0", "检测中_1", "检测完成_2"})
@Excel(name = "检测状态", width = 10, replace = {"未检_0", "检测中_1", "检测完成_2"}, needMerge = true)
private Integer testState;
@Excel(name = "报告生成状态", width = 15, replace = {"未生成_0", "部分生成_1", "全部生成_2"})
@Excel(name = "报告生成状态", width = 15, replace = {"未生成_0", "部分生成_1", "全部生成_2"}, needMerge = true)
private Integer reportState;
@Excel(name = "检测结果", width = 10, replace = {"不符合_0", "符合_1", "未检_2"})
@Excel(name = "检测结果", width = 10, replace = {"不符合_0", "符合_1", "未检_2"}, needMerge = true)
private Integer result;
@Excel(name = "数据表后缀", width = 20)
@Excel(name = "数据表后缀", width = 20, needMerge = true)
private Integer code;
@ExcelCollection(name = "绑定的设备")
private List<PqDevExcel> devices;
private List<PqDevExcel.PlanBindDevice> devices;
}

View File

@@ -14,11 +14,7 @@ import com.njcn.gather.device.device.pojo.param.PqDevParam;
import com.njcn.gather.device.device.pojo.po.PqDev;
import com.njcn.gather.device.device.service.IPqDevService;
import com.njcn.gather.device.err.service.IPqErrSysService;
import com.njcn.gather.device.pojo.constant.DevConst;
import com.njcn.gather.device.pojo.enums.CheckResultEnum;
import com.njcn.gather.device.pojo.enums.CheckStateEnum;
import com.njcn.gather.device.pojo.enums.DevResponseEnum;
import com.njcn.gather.device.pojo.enums.PlanReportStateEnum;
import com.njcn.gather.device.pojo.enums.*;
import com.njcn.gather.device.script.service.IPqScriptService;
import com.njcn.gather.device.source.pojo.po.PqSource;
import com.njcn.gather.plan.mapper.AdPlanMapper;
@@ -90,7 +86,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
adPlan.setId(planId);
adPlan.setState(DataStateEnum.ENABLE.getCode());
// 默认为顶级检测计划
adPlan.setFatherPlanId(DevConst.FATHER_ID);
adPlan.setFatherPlanId(CommonEnum.FATHER_ID.getValue());
adPlan.setDatasourceId(String.join(StrUtil.COMMA, param.getDatasourceIds()));
adPlan.setTestState(CheckStateEnum.UNCHECKED.getValue());
adPlan.setReportState(PlanReportStateEnum.REPORT_STATE_NOT_GENERATED.getValue());
@@ -122,16 +118,12 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
// 修改检测计划、检测源关联
adPlanSourceService.updateAdPlanSource(param.getId(), param.getSourceIds());
if (ObjectUtil.isNotEmpty(param.getDevIds())) {
// 修改时,只有未检测过的设备才可以修改绑定设备
List<String> notUnCheckedIds = pqDevService.listNotUnchecked().stream().map(PqDev::getId).collect(Collectors.toList());
List<String> intersection = new ArrayList<>(notUnCheckedIds);
intersection.retainAll(param.getDevIds());
if (ObjectUtil.isEmpty(intersection)) {
pqDevService.bind(param.getId(), param.getDevIds());
} else {
throw new BusinessException(DevResponseEnum.HAS_NOT_UNCHECKED_DEVICE);
}
// 修改时,只有未检测过的设备才可以修改绑定设备
List<String> unCheckedIds = pqDevService.listUnchecked().stream().map(PqDev::getId).collect(Collectors.toList());
if (unCheckedIds.containsAll(param.getDevIds())) {
pqDevService.bind(param.getId(), param.getDevIds());
} else {
throw new BusinessException(DevResponseEnum.HAS_NOT_UNCHECKED_DEVICE);
}
return this.updateById(adPlan);
@@ -214,6 +206,11 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
List<AdPlan> planList = this.list(this.getQueryWrapper(queryParam));
this.visualize(planList);
List<AdPlanExcel> planExcelList = BeanUtil.copyToList(planList, AdPlanExcel.class);
for (int i = 0; i < planList.size(); i++) {
PqDevParam.QueryParam queryParam1 = new PqDevParam.QueryParam();
queryParam1.setPlanId(planList.get(i).getId());
// planExcelList.get(i).setDevices(BeanUtil.copyToList(pqDevService.listByPlanId(queryParam1), PqDevExcel.ExportData.class));
}
return planExcelList;
}
@@ -236,8 +233,8 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
if (StrUtil.isNotBlank(adPlan.getPattern())) {
adPlan.setPattern(dictDataService.getDictDataById(adPlan.getPattern()).getName());
}
if (DevConst.FATHER_ID.equals(adPlan.getFatherPlanId())) {
adPlan.setFatherPlanId("");
if (CommonEnum.FATHER_ID.getValue().equals(adPlan.getFatherPlanId())) {
adPlan.setFatherPlanId(CommonEnum.FATHER_ID.getMsg());
} else {
adPlan.setFatherPlanId(this.getById(adPlan.getFatherPlanId()).getName());
}
@@ -266,7 +263,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
adPlan.setPattern(dictDataService.getDictDataByName(adPlan.getPattern()).getId());
}
// if (DevConst.FATHER_ID.equals(adPlan.getFatherPlanId())) {
// adPlan.setFatherPlanId("");
// adPlan.setFatherPlanId(CommonEnum.FATHER_ID.getValue());
// } else {
// adPlan.setFatherPlanId(this.getById(adPlan.getFatherPlanId()).getId());
// }