jinlin
2025-04-28 efce7ce3e63712ecc8b4c3039a73b508fc3ea880
src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel1Service.java
@@ -2,9 +2,12 @@
import com.example.client.dto.JComboBoxItem;
import com.example.client.service.BaseService;
import com.example.server.progressTrack.Dto.DiagramNodeDto;
import com.example.server.progressTrack.Dto.NetworkNodeStatusDto;
import com.example.server.progressTrack.Dto.ProjectDto;
import com.example.server.progressTrack.dao.DjJdgzNetworkLevel1Dao;
import com.example.server.progressTrack.dao.DjJdgzNetworkLevel1ListDao;
import com.example.server.progressTrack.dao.DjJdgzNetworkLevel2ListDao;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel1;
import org.apache.ibatis.session.ExecutorType;
import org.apache.ibatis.session.SqlSession;
@@ -12,7 +15,10 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -25,6 +31,14 @@
public class DjJdgzNetworkLevel1Service extends BaseService<DjJdgzNetworkLevel1Dao, DjJdgzNetworkLevel1> {
    @Autowired
    NetWorkDiagramService netWorkDiagramService;
    @Autowired
    private DjJdgzNetworkLevel1ListService djJdgzNetworkLevel1ListService;
    @Autowired
    private DjJdgzNetworkLevel1ListDao djJdgzNetworkLevel1ListDao;
    @Autowired
    private DjJdgzNetworkLevel2ListDao djJdgzNetworkLevel2ListDao;
    @Autowired
    private DjJdgzNetworkLevel2Service djJdgzNetworkLevel2Service;
    /**
     * 分页查询
     *
@@ -38,7 +52,6 @@
    /**
     * 获取节点状态数据
     *
     */
    public List<NetworkNodeStatusDto> getNodeStatusData(Long id) {
        baseDao.setLevel1StatusNull(id);
@@ -97,4 +110,49 @@
        String statusDiagram = netWorkDiagramService.getStatusDiagram(json, null, nodeStatusData);
        return statusDiagram;
    }
    public List<DiagramNodeDto> getNodeList(Long id) {
        List<DiagramNodeDto> nodeList = djJdgzNetworkLevel1ListDao.getNodeList(id);
        JComboBoxItem[] level2List = djJdgzNetworkLevel2Service.getLevel2List(id);
        for (JComboBoxItem item : level2List) {
            List<DiagramNodeDto> nodeList2 = djJdgzNetworkLevel2ListDao.getNodeList(item.getId());
            nodeList.addAll(nodeList2);
        }
        Collections.sort(nodeList, new Comparator<DiagramNodeDto>() {
            @Override
            public int compare(DiagramNodeDto n1, DiagramNodeDto n2) {
                try {
                    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
                    Date date1 = sdf.parse(n1.getRequiredCompletion());
                    Date date2 = sdf.parse(n2.getRequiredCompletion());
                    return date1.compareTo(date2);
                } catch (ParseException e) {
                    throw new IllegalArgumentException("Invalid date format. Please use the format 'yyMMdd'.", e);
                }
            }
        });
        return nodeList;
    }
    public List<NetworkNodeStatusDto> getNodeStatus(Long id) {
        List<NetworkNodeStatusDto> nodeStatusList = this.getNodeStatusData(id);
        JComboBoxItem[] level2List = djJdgzNetworkLevel2Service.getLevel2List(id);
        for (JComboBoxItem item : level2List) {
            List<NetworkNodeStatusDto> nodeStatusList2 = djJdgzNetworkLevel2Service.getNodeStatusData(item.getId());
            nodeStatusList.addAll(nodeStatusList2);
        }
        return nodeStatusList;
    }
    public List<DiagramNodeDto> getNodeList2(Long id) {
        List<DiagramNodeDto> nodeList2 =new ArrayList<>();
        JComboBoxItem[] level2List = djJdgzNetworkLevel2Service.getLevel2List(id);
        for (JComboBoxItem item : level2List) {
            nodeList2 = djJdgzNetworkLevel2ListDao.getNodeList(item.getId());
        }
        return nodeList2;
    }
}