|
|
|
@ -1,11 +1,17 @@
|
|
|
|
|
package com.supervision.service.impl;
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
|
import com.supervision.model.ConfigTreatmentPlan;
|
|
|
|
|
import com.supervision.service.ConfigTreatmentPlanService;
|
|
|
|
|
import com.supervision.mapper.ConfigTreatmentPlanMapper;
|
|
|
|
|
import com.supervision.vo.manage.TreatmentPlanTreeNode;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Objects;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @author Administrator
|
|
|
|
|
* @description 针对表【vp_treatment_plan(处置计划表)】的数据库操作Service实现
|
|
|
|
@ -15,6 +21,57 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
public class ConfigConfigTreatmentPlanServiceImpl extends ServiceImpl<ConfigTreatmentPlanMapper, ConfigTreatmentPlan>
|
|
|
|
|
implements ConfigTreatmentPlanService {
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public List<TreatmentPlanTreeNode> queryTree(Integer disposalMethod) {
|
|
|
|
|
|
|
|
|
|
List<ConfigTreatmentPlan> list = super.lambdaQuery().eq(!Objects.isNull(disposalMethod),
|
|
|
|
|
ConfigTreatmentPlan::getDisposalPlan, disposalMethod).list();
|
|
|
|
|
|
|
|
|
|
if (CollUtil.isEmpty(list)){
|
|
|
|
|
return CollUtil.newArrayList();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
TreatmentPlanTreeNode root = new TreatmentPlanTreeNode();
|
|
|
|
|
for (ConfigTreatmentPlan configTreatmentPlan : list) {
|
|
|
|
|
String id = configTreatmentPlan.getId();
|
|
|
|
|
String disposalPlan = configTreatmentPlan.getDisposalPlan();
|
|
|
|
|
String firstMeasures = configTreatmentPlan.getFirstMeasures();
|
|
|
|
|
String secondMeasures = configTreatmentPlan.getSecondMeasures();
|
|
|
|
|
|
|
|
|
|
// 一级节点
|
|
|
|
|
if (StrUtil.isEmpty(disposalPlan)){
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
TreatmentPlanTreeNode disposalPlanNode = root.findChildByName(disposalPlan);
|
|
|
|
|
if (null == disposalPlanNode){
|
|
|
|
|
disposalPlanNode = new TreatmentPlanTreeNode(StrUtil.isNotEmpty(firstMeasures) ? null : id, disposalPlan);
|
|
|
|
|
root.getOrDefaultChild().add(disposalPlanNode);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 二级节点
|
|
|
|
|
if (StrUtil.isEmpty(firstMeasures)){
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
TreatmentPlanTreeNode firstMeasuresNode = disposalPlanNode.findChildByName(firstMeasures);
|
|
|
|
|
if (null == firstMeasuresNode){
|
|
|
|
|
firstMeasuresNode = new TreatmentPlanTreeNode(StrUtil.isNotEmpty(secondMeasures) ? null : id,firstMeasures);
|
|
|
|
|
disposalPlanNode.getOrDefaultChild().add(firstMeasuresNode);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 三级节点
|
|
|
|
|
if (StrUtil.isEmpty(secondMeasures)){
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
TreatmentPlanTreeNode secondMeasuresNode = firstMeasuresNode.findChildByName(secondMeasures);
|
|
|
|
|
if (null == secondMeasuresNode){
|
|
|
|
|
secondMeasuresNode = new TreatmentPlanTreeNode(id,secondMeasures);
|
|
|
|
|
firstMeasuresNode.getOrDefaultChild().add(secondMeasuresNode);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return root.getChild();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|