jinlin
4 天以前 66f0597bf6a1e79540c6bc51dedf561c22f3bdb5
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,19 +15,30 @@
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;
/**
 * dj_jdgz_network_level1
 *
 * @author zt generator
 * @author zt generator
 * @since 1.0.0 2024-12-17
 */
@Service
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);
@@ -49,7 +62,7 @@
        return list;
    }
    public JComboBoxItem[] getProjectList(){
    public JComboBoxItem[] getProjectList() {
        JComboBoxItem[] list = baseDao.getProjectList();
        return list;
    }
@@ -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.addAll(djJdgzNetworkLevel2ListDao.getNodeList(item.getId()));
        }
        return nodeList2;
    }
}