检测计划相关功能代码-补充
This commit is contained in:
@@ -40,7 +40,6 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
/**
|
||||
* @author caozehui
|
||||
* @date 2024-12-09
|
||||
@@ -186,7 +185,6 @@ public class AdPlanController extends BaseController {
|
||||
adPlanService.analyse(ids);
|
||||
}
|
||||
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/listByPlanId")
|
||||
@ApiOperation("查询出所有已绑定的设备")
|
||||
@@ -247,7 +245,7 @@ public class AdPlanController extends BaseController {
|
||||
for (PqDevVO pqDevVO : pqDevVOPage.getRecords()) {
|
||||
if (StrUtil.isNotBlank(pqDevVO.getPlanId())) {
|
||||
AdPlan plan1 = planList.stream().filter(p -> p.getId().equals(pqDevVO.getPlanId())).findFirst().get();
|
||||
if (!ObjectUtil.isNotNull(plan1) && plan.getId().equals(plan1.getFatherPlanId())) {
|
||||
if (ObjectUtil.isNotNull(plan1) && plan.getId().equals(plan1.getFatherPlanId())) {
|
||||
pqDevVO.setBoundPlanName(plan1.getName());
|
||||
pqDevVO.setAssign(DataStateEnum.ENABLE.getCode());
|
||||
} else {
|
||||
@@ -317,7 +315,6 @@ public class AdPlanController extends BaseController {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/updateBindDev")
|
||||
@ApiOperation("子计划绑定/解绑被检设备")
|
||||
@@ -326,7 +323,7 @@ public class AdPlanController extends BaseController {
|
||||
String methodDescribe = getMethodDescribe("updateBindDev");
|
||||
LogUtil.njcnDebug(log, "{},绑定/解绑参数为:{}", methodDescribe, param);
|
||||
|
||||
boolean result = adPlanService.updateBindDev(param.getPlanId(), param.getDevIds());
|
||||
boolean result = adPlanService.updateBindDev(param);
|
||||
if (result) {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe);
|
||||
} else {
|
||||
@@ -334,7 +331,6 @@ public class AdPlanController extends BaseController {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.DELETE)
|
||||
// @PostMapping("/deleteSubPlan")
|
||||
// @ApiOperation("删除子计划")
|
||||
|
||||
@@ -163,7 +163,7 @@ public interface IAdPlanService extends IService<AdPlan> {
|
||||
* @param pqDevIds
|
||||
* @return
|
||||
*/
|
||||
boolean updateBindDev(String planId, List<String> pqDevIds);
|
||||
boolean updateBindDev(PqDevParam.BindPlanParam param);
|
||||
|
||||
/**
|
||||
* 子计划绑定/解绑标准设备
|
||||
|
||||
@@ -324,12 +324,25 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
// 修改检测计划、检测源关联
|
||||
adPlanSourceService.updateAdPlanSource(param.getId(), param.getSourceIds());
|
||||
}
|
||||
// 若修改了名称,则修改相关子计划的来源字段
|
||||
if (!plan1.getName().equals(param.getName()) && CommonEnum.FATHER_ID.getValue().equals(plan1.getFatherPlanId())) {
|
||||
this.lambdaUpdate().in(AdPlan::getFatherPlanId, plan1.getId()).eq(AdPlan::getState, DataStateEnum.ENABLE.getCode())
|
||||
.set(AdPlan::getOrigin, param.getName()).update();
|
||||
}
|
||||
return this.updateById(plan2);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public boolean deleteAdPlan(List<String> ids, String pattern) {
|
||||
for (String id : ids) {
|
||||
PqDevParam.QueryParam queryParam = new PqDevParam.QueryParam();
|
||||
queryParam.setPlanIdList(Arrays.asList(id));
|
||||
if (ObjectUtils.isNotEmpty(pqDevService.listByPlanId(queryParam))) {
|
||||
throw new BusinessException(DetectionResponseEnum.PLAN_HAS_DEVICE_BIND);
|
||||
}
|
||||
}
|
||||
|
||||
DictData dictData = dictDataService.getDictDataById(pattern);
|
||||
if (PatternEnum.CONTRAST.getValue().equals(dictData.getCode())) {
|
||||
List<AdPlan> planList = this.lambdaQuery().in(AdPlan::getFatherPlanId, ids).eq(AdPlan::getState, DataStateEnum.ENABLE.getCode()).list();
|
||||
@@ -339,23 +352,14 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
|
||||
// 删除检测计划、标准设备关联
|
||||
adPlanStandardDevService.deleteAdPlanStandardDev(ids);
|
||||
} else {
|
||||
// 删除相关检测表格
|
||||
List<String> codeList = this.listByIds(ids).stream().map(plan -> String.valueOf(plan.getCode())).collect(Collectors.toList());
|
||||
tableGenService.deleteTable(codeList);
|
||||
// 删除检测计划、检测源关联
|
||||
adPlanSourceService.deleteAdPlanSourceByPlanIds(ids);
|
||||
}
|
||||
|
||||
for (String id : ids) {
|
||||
PqDevParam.QueryParam queryParam = new PqDevParam.QueryParam();
|
||||
queryParam.setPlanIdList(Arrays.asList(id));
|
||||
if (ObjectUtils.isNotEmpty(pqDevService.listByPlanId(queryParam))) {
|
||||
throw new BusinessException(DetectionResponseEnum.PLAN_HAS_DEVICE_BIND);
|
||||
}
|
||||
}
|
||||
|
||||
// 删除检测计划、检测源关联
|
||||
adPlanSourceService.deleteAdPlanSourceByPlanIds(ids);
|
||||
|
||||
// 删除相关检测表格
|
||||
List<String> codeList = this.listByIds(ids).stream().map(plan -> String.valueOf(plan.getCode())).collect(Collectors.toList());
|
||||
tableGenService.deleteTable(codeList);
|
||||
|
||||
return this.lambdaUpdate().in(AdPlan::getId, ids).set(AdPlan::getState, DataStateEnum.DELETED.getCode()).update();
|
||||
}
|
||||
|
||||
@@ -702,26 +706,39 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
@Override
|
||||
@Transactional
|
||||
public boolean updateSubPlanName(String planId, String name) {
|
||||
AdPlan plan = new AdPlan();
|
||||
plan.setId(planId);
|
||||
AdPlan plan = this.getById(planId);
|
||||
plan.setName(name);
|
||||
|
||||
return this.updateById(plan);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean updateBindDev(String planId, List<String> pqDevIds) {
|
||||
public boolean updateBindDev(PqDevParam.BindPlanParam param) {
|
||||
|
||||
List<AdPlan> list = new ArrayList<>();
|
||||
AdPlan plan = this.getById(planId);
|
||||
plan.setTestState(pqDevService.bind(planId, pqDevIds));
|
||||
AdPlan plan = this.getById(param.getPlanId());
|
||||
AdPlan fatherPlan = this.getById(plan.getFatherPlanId());
|
||||
|
||||
List<PqDev> pqDevList1 = pqDevService.list(new QueryWrapper<PqDev>().eq("Plan_Id", param.getPlanId()).eq("State", DataStateEnum.ENABLE.getCode()));
|
||||
List<String> devIds1 = pqDevList1.stream().map(PqDev::getId).collect(Collectors.toList());
|
||||
|
||||
List<PqDev> pqDevList2 = pqDevService.list(new QueryWrapper<PqDev>().eq("Plan_Id", fatherPlan.getId()).eq("State", DataStateEnum.ENABLE.getCode()));
|
||||
List<String> devIds2 = pqDevList2.stream().map(PqDev::getId).collect(Collectors.toList());
|
||||
|
||||
if (param.getBindFlag().equals(1)) {
|
||||
devIds1.addAll(param.getDevIds());
|
||||
devIds2.removeAll(param.getDevIds());
|
||||
} else {
|
||||
devIds1.removeAll(param.getDevIds());
|
||||
devIds2.addAll(param.getDevIds());
|
||||
}
|
||||
|
||||
plan.setTestState(pqDevService.bind(param.getPlanId(), devIds1));
|
||||
list.add(plan);
|
||||
|
||||
// 同时修改父计划的绑定
|
||||
AdPlan fatherPlan = this.getById(plan.getFatherPlanId());
|
||||
if (ObjectUtil.isNotNull(fatherPlan)) {
|
||||
fatherPlan.setTestState(pqDevService.bind(fatherPlan.getId(), pqDevIds));
|
||||
list.add(fatherPlan);
|
||||
}
|
||||
fatherPlan.setTestState(pqDevService.bind(fatherPlan.getId(), devIds2));
|
||||
list.add(fatherPlan);
|
||||
|
||||
return this.updateBatchById(list);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user