|
|
|
|
@@ -10,7 +10,6 @@ import cn.hutool.core.util.CharsetUtil;
|
|
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
|
|
@@ -18,12 +17,16 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
|
import com.njcn.common.pojo.enums.common.DataStateEnum;
|
|
|
|
|
import com.njcn.common.pojo.exception.BusinessException;
|
|
|
|
|
import com.njcn.common.pojo.poi.PullDown;
|
|
|
|
|
import com.njcn.gather.device.mapper.PqDevMapper;
|
|
|
|
|
import com.njcn.gather.device.pojo.enums.*;
|
|
|
|
|
import com.njcn.gather.device.pojo.param.PqDevParam;
|
|
|
|
|
import com.njcn.gather.device.pojo.po.PqDev;
|
|
|
|
|
import com.njcn.gather.device.pojo.po.PqDevSub;
|
|
|
|
|
import com.njcn.gather.device.pojo.vo.CNDevExcel;
|
|
|
|
|
import com.njcn.gather.device.pojo.vo.PqDevVO;
|
|
|
|
|
import com.njcn.gather.device.pojo.vo.ProvinceDevExcel;
|
|
|
|
|
import com.njcn.gather.device.service.IPqDevService;
|
|
|
|
|
import com.njcn.gather.device.service.IPqDevSubService;
|
|
|
|
|
import com.njcn.gather.err.pojo.po.PqErrSys;
|
|
|
|
|
import com.njcn.gather.err.service.IPqErrSysService;
|
|
|
|
|
import com.njcn.gather.plan.mapper.AdPlanMapper;
|
|
|
|
|
@@ -104,6 +107,8 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
private final IDevTypeService devTypeService;
|
|
|
|
|
private final IDictTypeService dictTypeService;
|
|
|
|
|
private final AdHarmonicService adHarmonicService;
|
|
|
|
|
private final PqDevMapper pqDevMapper;
|
|
|
|
|
private final IPqDevSubService pqDevSubService;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public Page<AdPlanVO> listAdPlan(AdPlanParam.QueryParam queryParam) {
|
|
|
|
|
@@ -118,16 +123,25 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
PqReport report = this.baseMapper.getPqReportById(adPlan.getReportTemplateId());
|
|
|
|
|
adPlanVO.setReportTemplateName(report.getName() + "_" + report.getVersion());
|
|
|
|
|
}
|
|
|
|
|
return adPlanVO;
|
|
|
|
|
}).collect(Collectors.toList());
|
|
|
|
|
adPlanVOList.forEach(adPlanVO -> {
|
|
|
|
|
adPlanVO.setScriptName(pqScriptService.getPqScriptById(adPlanVO.getScriptId()).getName());
|
|
|
|
|
adPlanVO.setErrorSysName(pqErrSysService.getPqErrSysById(adPlanVO.getErrorSysId()).getName());
|
|
|
|
|
|
|
|
|
|
List<PqSource> pqSourceList = adPlanSourceService.listPqSourceByPlanId(adPlanVO.getId());
|
|
|
|
|
adPlanVO.setSourceIds(pqSourceList.stream().map(PqSource::getId).collect(Collectors.toList()));
|
|
|
|
|
adPlanVO.setSourceName(pqSourceList.stream().map(PqSource::getName).collect(Collectors.toList()));
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
PqDevParam.QueryParam queryParam1 = new PqDevParam.QueryParam();
|
|
|
|
|
queryParam1.setPlanId(adPlanVO.getId());
|
|
|
|
|
List<PqDevVO> pqDevVOList = pqDevMapper.selectByQueryParam(queryParam1);
|
|
|
|
|
if (CollUtil.isNotEmpty(pqDevVOList)) {
|
|
|
|
|
long count = pqDevVOList.stream().filter(pqDev -> CheckStateEnum.CHECKED.getValue().equals(pqDev.getCheckState())).count();
|
|
|
|
|
adPlanVO.setProgress((float) count / pqDevVOList.size());
|
|
|
|
|
} else {
|
|
|
|
|
adPlanVO.setProgress(0.0f);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return adPlanVO;
|
|
|
|
|
}).collect(Collectors.toList());
|
|
|
|
|
|
|
|
|
|
Page<AdPlanVO> page2 = new Page<>(PageFactory.getPageNum(queryParam), PageFactory.getPageSize(queryParam));
|
|
|
|
|
page2.setTotal(page1.getTotal());
|
|
|
|
|
@@ -372,42 +386,47 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public boolean updateTestState(String planId, List<String> devIds) {
|
|
|
|
|
if (CollUtil.isNotEmpty(devIds)) {
|
|
|
|
|
pqDevService.update(new LambdaUpdateWrapper<PqDev>()
|
|
|
|
|
.set(PqDev::getCheckState, CheckStateEnum.CHECKING.getValue())
|
|
|
|
|
.in(PqDev::getId, devIds));
|
|
|
|
|
return this.update(new LambdaUpdateWrapper<AdPlan>()
|
|
|
|
|
.set(AdPlan::getTestState, CheckStateEnum.CHECKING.getValue())
|
|
|
|
|
.eq(AdPlan::getId, planId));
|
|
|
|
|
}
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
// @Override
|
|
|
|
|
// public boolean updateTestState(String planId, List<String> devIds) {
|
|
|
|
|
// if (CollUtil.isNotEmpty(devIds)) {
|
|
|
|
|
// pqDevService.update(new LambdaUpdateWrapper<PqDev>()
|
|
|
|
|
// .set(PqDev::getCheckState, CheckStateEnum.CHECKING.getValue())
|
|
|
|
|
// .in(PqDev::getId, devIds));
|
|
|
|
|
// return this.update(new LambdaUpdateWrapper<AdPlan>()
|
|
|
|
|
// .set(AdPlan::getTestState, CheckStateEnum.CHECKING.getValue())
|
|
|
|
|
// .eq(AdPlan::getId, planId));
|
|
|
|
|
// }
|
|
|
|
|
// return true;
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public boolean updateBackTestState(String planId, List<String> devIds) {
|
|
|
|
|
//当前如果第二次进行测试,则需要将判断之前状态是否不是非检测状态
|
|
|
|
|
List<PqDev> devList = pqDevService.list(new LambdaQueryWrapper<PqDev>().in(PqDev::getId, devIds));
|
|
|
|
|
if (CollUtil.isNotEmpty(devList)) {
|
|
|
|
|
for (PqDev pqDev : devList) {
|
|
|
|
|
if (!pqDev.getCheckResult().equals(CheckResultEnum.UNCHECKED.getValue())) {
|
|
|
|
|
pqDevService.update(new LambdaUpdateWrapper<PqDev>()
|
|
|
|
|
.set(PqDev::getCheckState, CheckStateEnum.CHECKED.getValue())
|
|
|
|
|
.in(PqDev::getId, devIds));
|
|
|
|
|
} else {
|
|
|
|
|
pqDevService.update(new LambdaUpdateWrapper<PqDev>()
|
|
|
|
|
.set(PqDev::getCheckState, CheckStateEnum.UNCHECKED.getValue())
|
|
|
|
|
.in(PqDev::getId, devIds));
|
|
|
|
|
if (CollUtil.isNotEmpty(devIds)) {
|
|
|
|
|
//当前如果第二次进行测试,则需要将判断之前状态是否不是非检测状态
|
|
|
|
|
List<PqDevVO> pqDevVOList = pqDevMapper.listByDevIds(devIds);
|
|
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(pqDevVOList)) {
|
|
|
|
|
for (PqDevVO pqDevVO : pqDevVOList) {
|
|
|
|
|
if (!pqDevVO.getCheckResult().equals(CheckResultEnum.UNCHECKED.getValue())) {
|
|
|
|
|
pqDevSubService.update(new LambdaUpdateWrapper<PqDevSub>()
|
|
|
|
|
.set(PqDevSub::getCheckState, CheckStateEnum.CHECKED.getValue())
|
|
|
|
|
.in(PqDevSub::getDevId, devIds));
|
|
|
|
|
} else {
|
|
|
|
|
pqDevSubService.update(new LambdaUpdateWrapper<PqDevSub>()
|
|
|
|
|
.set(PqDevSub::getCheckState, CheckStateEnum.UNCHECKED.getValue())
|
|
|
|
|
.in(PqDevSub::getDevId, devIds));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
List<PqDev> list = pqDevService.list(new LambdaQueryWrapper<PqDev>().in(PqDev::getPlanId, planId));
|
|
|
|
|
List<PqDev> collect = list.stream().filter(x -> !x.getCheckState().equals(CheckStateEnum.UNCHECKED.getValue())).collect(Collectors.toList());
|
|
|
|
|
if (CollUtil.isEmpty(collect)) {
|
|
|
|
|
return this.update(new LambdaUpdateWrapper<AdPlan>()
|
|
|
|
|
.set(AdPlan::getTestState, CheckStateEnum.UNCHECKED.getValue())
|
|
|
|
|
.eq(AdPlan::getId, planId));
|
|
|
|
|
PqDevParam.QueryParam queryParam = new PqDevParam.QueryParam();
|
|
|
|
|
queryParam.setPlanId(planId);
|
|
|
|
|
List<PqDevVO> pqDevVOList1 = pqDevMapper.selectByQueryParam(queryParam);
|
|
|
|
|
List<PqDev> collect = pqDevVOList1.stream().filter(x -> !x.getCheckState().equals(CheckStateEnum.UNCHECKED.getValue())).collect(Collectors.toList());
|
|
|
|
|
if (CollUtil.isEmpty(collect)) {
|
|
|
|
|
return this.update(new LambdaUpdateWrapper<AdPlan>()
|
|
|
|
|
.set(AdPlan::getTestState, CheckStateEnum.UNCHECKED.getValue())
|
|
|
|
|
.eq(AdPlan::getId, planId));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
@@ -444,19 +463,19 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
|
|
|
|
|
if (planList.size() > 1) {
|
|
|
|
|
StringBuffer allNote = new StringBuffer();
|
|
|
|
|
List<PqDev> allDevList = new ArrayList<>();
|
|
|
|
|
List<PqDevVO> allDevList = new ArrayList<>();
|
|
|
|
|
for (AdPlan plan : planList) {
|
|
|
|
|
PqDevParam.QueryParam queryParam = new PqDevParam.QueryParam();
|
|
|
|
|
queryParam.setPlanId(plan.getId());
|
|
|
|
|
List<PqDev> devList = pqDevService.listByPlanId(queryParam);
|
|
|
|
|
devList = devList.stream().filter(x -> !x.getCheckResult().equals(CheckResultEnum.UNCHECKED.getValue())).collect(Collectors.toList());
|
|
|
|
|
allDevList.addAll(devList);
|
|
|
|
|
List<PqDevVO> pqDevVOList = pqDevMapper.selectByQueryParam(queryParam);
|
|
|
|
|
pqDevVOList = pqDevVOList.stream().filter(x -> !x.getCheckResult().equals(CheckResultEnum.UNCHECKED.getValue())).collect(Collectors.toList());
|
|
|
|
|
allDevList.addAll(pqDevVOList);
|
|
|
|
|
|
|
|
|
|
allNote.append(plan.getName() + "计划" + devList.size() + "台,");
|
|
|
|
|
allNote.append(plan.getName() + "计划" + pqDevVOList.size() + "台,");
|
|
|
|
|
if (plan.getName().equals("概览")) {
|
|
|
|
|
sheets.put(plan.getName() + "检测计划", getRows(plan.getName(), devList, maxTime, getNote(plan, devList)));
|
|
|
|
|
sheets.put(plan.getName() + "检测计划", getRows(plan.getName(), pqDevVOList, maxTime, getNote(plan, pqDevVOList)));
|
|
|
|
|
} else {
|
|
|
|
|
sheets.put(plan.getName(), getRows(plan.getName(), devList, maxTime, getNote(plan, devList)));
|
|
|
|
|
sheets.put(plan.getName(), getRows(plan.getName(), pqDevVOList, maxTime, getNote(plan, pqDevVOList)));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
allNote.insert(0, "说明:总计" + allDevList.size() + "台设备,");
|
|
|
|
|
@@ -466,10 +485,10 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
AdPlan plan = planList.get(0);
|
|
|
|
|
PqDevParam.QueryParam queryParam = new PqDevParam.QueryParam();
|
|
|
|
|
queryParam.setPlanId(plan.getId());
|
|
|
|
|
List<PqDev> devList = pqDevService.listByPlanId(queryParam);
|
|
|
|
|
devList = devList.stream().filter(x -> !x.getCheckResult().equals(CheckResultEnum.UNCHECKED.getValue())).collect(Collectors.toList());
|
|
|
|
|
List<PqDevVO> pqDevVOList = pqDevMapper.selectByQueryParam(queryParam);
|
|
|
|
|
pqDevVOList = pqDevVOList.stream().filter(x -> !x.getCheckResult().equals(CheckResultEnum.UNCHECKED.getValue())).collect(Collectors.toList());
|
|
|
|
|
|
|
|
|
|
sheets.put(plan.getName(), getRows(plan.getName(), devList, maxTime, getNote(plan, devList)));
|
|
|
|
|
sheets.put(plan.getName(), getRows(plan.getName(), pqDevVOList, maxTime, getNote(plan, pqDevVOList)));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
exportPassRateExcel("数据分析结果.xlsx", maxTime, sheets);
|
|
|
|
|
@@ -513,21 +532,25 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void importPlan(MultipartFile file, String patternId, HttpServletResponse response) {
|
|
|
|
|
public boolean importPlan(MultipartFile file, String patternId, HttpServletResponse response) {
|
|
|
|
|
String currrentScene = sysTestConfigService.getCurrrentScene();
|
|
|
|
|
SceneEnum sceneEnum = SceneEnum.getSceneEnum(currrentScene);
|
|
|
|
|
switch (sceneEnum) {
|
|
|
|
|
case PROVINCE_PLATFORM:
|
|
|
|
|
this.importProvincePlan(file, patternId, response);
|
|
|
|
|
break;
|
|
|
|
|
return this.importProvincePlan(file, patternId, response);
|
|
|
|
|
case LEAVE_FACTORY_TEST:
|
|
|
|
|
this.importCNPlan(file, patternId, response);
|
|
|
|
|
break;
|
|
|
|
|
return this.importCNPlan(file, patternId, response);
|
|
|
|
|
case SELF_TEST:
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public boolean splitPlan(AdPlanParam.SplitParam param) {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
@@ -545,9 +568,9 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
|
|
|
|
|
PqDevParam.QueryParam queryParam1 = new PqDevParam.QueryParam();
|
|
|
|
|
queryParam1.setPlanId(planList.get(i).getId());
|
|
|
|
|
List<PqDev> pqDevs = pqDevService.listByPlanId(queryParam1);
|
|
|
|
|
pqDevService.visualizeProvinceDev(pqDevs);
|
|
|
|
|
List<ProvinceDevExcel> deviceExportData = BeanUtil.copyToList(pqDevs, ProvinceDevExcel.class);
|
|
|
|
|
List<PqDevVO> pqDevVOList = pqDevMapper.selectByQueryParam(queryParam1);
|
|
|
|
|
pqDevService.visualizeProvinceDev(pqDevVOList);
|
|
|
|
|
List<ProvinceDevExcel> deviceExportData = BeanUtil.copyToList(pqDevVOList, ProvinceDevExcel.class);
|
|
|
|
|
planExcelList.get(i).setDevices(deviceExportData);
|
|
|
|
|
}
|
|
|
|
|
ExcelUtil.exportExcelPullDown(new ExportParams(), "检测计划导出数据.xlsx", 2, this.getPullDownList(SceneEnum.PROVINCE_PLATFORM, queryParam.getPatternId()), ProvincePlanExcel.class, planExcelList);
|
|
|
|
|
@@ -568,7 +591,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
|
|
|
|
|
PqDevParam.QueryParam queryParam1 = new PqDevParam.QueryParam();
|
|
|
|
|
queryParam1.setPlanId(planList.get(i).getId());
|
|
|
|
|
List<PqDev> pqDevs = pqDevService.listByPlanId(queryParam1);
|
|
|
|
|
List<PqDevVO> pqDevs = pqDevMapper.selectByQueryParam(queryParam1);
|
|
|
|
|
pqDevService.visualizeCNDev(pqDevs);
|
|
|
|
|
List<CNDevExcel> deviceExportData = BeanUtil.copyToList(pqDevs, CNDevExcel.class);
|
|
|
|
|
planExcelList.get(i).setDevices(deviceExportData);
|
|
|
|
|
@@ -577,7 +600,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Transactional
|
|
|
|
|
public void importCNPlan(MultipartFile file, String patternId, HttpServletResponse response) {
|
|
|
|
|
public boolean importCNPlan(MultipartFile file, String patternId, HttpServletResponse response) {
|
|
|
|
|
ImportParams params = new ImportParams();
|
|
|
|
|
params.setStartSheetIndex(0);
|
|
|
|
|
params.setSheetNum(1);
|
|
|
|
|
@@ -598,8 +621,9 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
throw new BusinessException(DetectionResponseEnum.IMPORT_DATA_FAIL);
|
|
|
|
|
}
|
|
|
|
|
if (ObjectUtil.isNotEmpty(planExcelList)) {
|
|
|
|
|
this.importCNPlan(planExcelList, patternId);
|
|
|
|
|
return this.importCNPlan(planExcelList, patternId);
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
@@ -609,7 +633,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
* @param patternId
|
|
|
|
|
*/
|
|
|
|
|
@Transactional
|
|
|
|
|
public void importCNPlan(List<CNPlanExcel> planExcelList, String patternId) {
|
|
|
|
|
public boolean importCNPlan(List<CNPlanExcel> planExcelList, String patternId) {
|
|
|
|
|
List<AdPlan> adPlans = BeanUtil.copyToList(planExcelList, AdPlan.class);
|
|
|
|
|
|
|
|
|
|
String patternCode = dictDataService.getDictDataById(patternId).getCode();
|
|
|
|
|
@@ -653,11 +677,11 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
}
|
|
|
|
|
// 逆向可视化
|
|
|
|
|
this.reverseVisualize(adPlans);
|
|
|
|
|
this.saveBatch(adPlans);
|
|
|
|
|
return this.saveBatch(adPlans);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Transactional
|
|
|
|
|
public void importProvincePlan(MultipartFile file, String patternId, HttpServletResponse response) {
|
|
|
|
|
public boolean importProvincePlan(MultipartFile file, String patternId, HttpServletResponse response) {
|
|
|
|
|
ImportParams params = new ImportParams();
|
|
|
|
|
params.setStartSheetIndex(0);
|
|
|
|
|
params.setSheetNum(1);
|
|
|
|
|
@@ -678,8 +702,9 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
throw new BusinessException(DetectionResponseEnum.IMPORT_DATA_FAIL);
|
|
|
|
|
}
|
|
|
|
|
if (ObjectUtil.isNotEmpty(planExcelList)) {
|
|
|
|
|
this.importProvincePlan(planExcelList, patternId);
|
|
|
|
|
return this.importProvincePlan(planExcelList, patternId);
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
@@ -688,7 +713,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
* @param planExcelList
|
|
|
|
|
* @param patternId
|
|
|
|
|
*/
|
|
|
|
|
public void importProvincePlan(List<ProvincePlanExcel> planExcelList, String patternId) {
|
|
|
|
|
public boolean importProvincePlan(List<ProvincePlanExcel> planExcelList, String patternId) {
|
|
|
|
|
List<AdPlan> adPlans = BeanUtil.copyToList(planExcelList, AdPlan.class);
|
|
|
|
|
|
|
|
|
|
String patternCode = dictDataService.getDictDataById(patternId).getCode();
|
|
|
|
|
@@ -737,7 +762,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
}
|
|
|
|
|
// 逆向可视化
|
|
|
|
|
this.reverseVisualize(adPlans);
|
|
|
|
|
this.saveBatch(adPlans);
|
|
|
|
|
return this.saveBatch(adPlans);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
@@ -766,7 +791,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
* @param devList 设备列表
|
|
|
|
|
* @return 备注信息
|
|
|
|
|
*/
|
|
|
|
|
private String getNote(AdPlan plan, List<PqDev> devList) {
|
|
|
|
|
private String getNote(AdPlan plan, List<PqDevVO> devList) {
|
|
|
|
|
StringBuffer note = new StringBuffer();
|
|
|
|
|
note.append("说明:本计划共有" + devList.size() + "台设备,");
|
|
|
|
|
Map<String, List<PqDev>> devTypeMap = devList.stream().collect(Collectors.groupingBy(PqDev::getDevType, Collectors.toList()));
|
|
|
|
|
@@ -793,7 +818,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
* @param note 备注
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
private List<String[]> getRows(String header, List<PqDev> devList, Integer maxTime, String note) {
|
|
|
|
|
private List<String[]> getRows(String header, List<PqDevVO> devList, Integer maxTime, String note) {
|
|
|
|
|
List<String[]> rows = new ArrayList<>();
|
|
|
|
|
String[] row1 = new String[]{header};
|
|
|
|
|
|
|
|
|
|
@@ -813,7 +838,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
for (int i = 1; i <= maxTime; i++) {
|
|
|
|
|
row2[i] = i + "次检测";
|
|
|
|
|
int tempI = i;
|
|
|
|
|
List<PqDev> tempDevList = devList.stream().filter(dev -> dev.getReCheckNum() <= tempI).collect(Collectors.toList());
|
|
|
|
|
List<PqDevVO> tempDevList = devList.stream().filter(dev -> dev.getRecheckNum() <= tempI).collect(Collectors.toList());
|
|
|
|
|
long passCount = tempDevList.stream().filter(dev -> dev.getCheckResult() == CheckResultEnum.ACCORD.getValue()).count();
|
|
|
|
|
row3[i] = passCount + "";
|
|
|
|
|
row4[i] = total + "";
|
|
|
|
|
@@ -873,7 +898,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|
|
|
|
}
|
|
|
|
|
if (adPlan.getAssociateReport().equals(0)) {
|
|
|
|
|
adPlan.setReportTemplateId(null);
|
|
|
|
|
}else if (StrUtil.isNotBlank(adPlan.getReportTemplateId())) {
|
|
|
|
|
} else if (StrUtil.isNotBlank(adPlan.getReportTemplateId())) {
|
|
|
|
|
String[] split = adPlan.getReportTemplateId().split("_");
|
|
|
|
|
String reportId = this.baseMapper.getReportIdByNameAndVersion(split[0], split[1]);
|
|
|
|
|
if (ObjectUtil.isNull(reportId)) {
|
|
|
|
|
|