From efce7ce3e63712ecc8b4c3039a73b508fc3ea880 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期一, 28 四月 2025 10:20:37 +0800 Subject: [PATCH] 修改 --- src/main/java/com/example/client/service/Level1AddOrUpdate.java | 2 src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java | 16 src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3ListService.java | 16 src/main/resources/templateFile/跟踪记录导入模板.xlsx | 0 src/main/java/com/example/server/progressTrack/service/DjJdgzDismantTrackService.java | 2 src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel1ListService.java | 2 src/main/java/com/example/server/progressTrack/model/DjJdgzNetworkLevel3.java | 3 src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3ListDao.xml | 2 src/main/java/com/example/server/progressTrack/Dto/TableNodeDto.java | 8 src/main/java/com/example/client/utils/CustomPanel.java | 62 +++ src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3Dao.xml | 70 +++ src/main/java/com/example/client/service/Level3ViewService.java | 6 src/main/java/com/example/client/service/Level2AddOrUpdate.java | 2 src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel2ListService.java | 2 src/main/resources/templateFile/三级网络图导入模板.xlsx | 0 src/main/java/com/example/client/service/DismantTrackService.java | 16 src/main/java/com/example/client/service/SubunitService.java | 16 src/main/java/com/example/client/service/TrackRecordManageService.java | 3 src/main/java/com/example/server/progressTrack/dao/DjJdgzNetworkLevel3Dao.java | 8 src/main/java/com/example/client/service/ImportLevel3Service.java | 4 src/main/java/com/example/client/utils/ColorDescriptionComboBox.java | 8 src/main/java/com/example/client/service/Level3ManageService.java | 96 ++++- src/main/java/com/example/client/service/StatisProductService.java | 84 +++- src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel1Service.java | 66 +++ src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel2ListDao.xml | 2 src/main/java/com/example/server/progressTrack/service/NetWorkDiagramService.java | 32 + src/main/java/com/example/server/progressTrack/Dto/StatistProductDto.java | 6 src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3Service.java | 146 +++++-- src/main/resources/db/csiczb1.db | 0 src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java | 2 src/main/java/com/example/client/service/Level1ViewService.java | 4 src/main/java/com/example/client/service/ImportTrackRecordService.java | 4 src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java | 7 src/main/java/com/example/client/service/Level2ViewService.java | 32 + src/main/java/com/example/client/service/Level3View2Service.java | 293 +++++++++++++--- src/main/java/com/example/client/service/StatisReportsService.java | 11 src/main/java/com/example/server/DataSync/service/DataSyncService.java | 11 src/main/java/com/example/server/progressTrack/dao/DjJdgzNetworkLevel3ListDao.java | 2 src/main/java/com/example/client/service/Level3AddOrUpdate.java | 4 src/main/java/com/example/server/progressTrack/model/DjJdgzTrackRecord.java | 4 src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml | 14 41 files changed, 821 insertions(+), 247 deletions(-) diff --git a/src/main/java/com/example/client/service/DismantTrackService.java b/src/main/java/com/example/client/service/DismantTrackService.java index 916b802..28c1c83 100644 --- a/src/main/java/com/example/client/service/DismantTrackService.java +++ b/src/main/java/com/example/client/service/DismantTrackService.java @@ -62,7 +62,7 @@ JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(null); JComboBoxItem[] cabinList = cabinService.getList(); String[] typeList = new String[]{ - "","鏀硅", "鍔犺", "鎹㈣", "淇悊","鏀硅繘鎬т慨鐞�" + "","鏀规崲瑁�","淇悊","鏀硅繘鎬т慨鐞�","涓嶅瑁呰澶�" }; List<DjJdgzShip> shipList = djJdgzShipService.getList(); Map<String, Long> shipMap = new HashMap<>(); @@ -114,7 +114,7 @@ top.add(query, new GBC(6, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); List<ColumnDto> columnDto = new ArrayList<>(); - list = level3Service.getList(shipList.get(0).getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0],null, null); + list = level3Service.getList(shipList.get(0).getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0],null, null,null); if (list == null || list.size() == 0) { JOptionPane.showMessageDialog(null, "杩樻湭褰曞叆涓夌骇缃戠粶鍥炬暟鎹�", "鎻愮ず", JOptionPane.WARNING_MESSAGE); return null; @@ -140,7 +140,7 @@ String type = comboBox4.getSelectedItem().toString(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null, null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null, null,null); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); @@ -179,7 +179,7 @@ String type = comboBox4.getSelectedItem().toString(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null,null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null,null,null); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); @@ -209,7 +209,7 @@ String type = comboBox4.getSelectedItem().toString(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null, null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null, null,null); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); @@ -237,7 +237,7 @@ String type = comboBox4.getSelectedItem().toString(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null,null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null,null,null); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); @@ -265,7 +265,7 @@ String type = comboBox4.getSelectedItem().toString(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null, null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null, null,null); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); @@ -288,7 +288,7 @@ query.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { - list = level3Service.getList(null, null, null, null, null,null, sb.getText()); + list = level3Service.getList(null, null, null, null, null,null,null, sb.getText()); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); diff --git a/src/main/java/com/example/client/service/ImportLevel3Service.java b/src/main/java/com/example/client/service/ImportLevel3Service.java index 33556db..a937a15 100644 --- a/src/main/java/com/example/client/service/ImportLevel3Service.java +++ b/src/main/java/com/example/client/service/ImportLevel3Service.java @@ -303,9 +303,9 @@ JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(null); JComboBoxItem[] cabinList = cabinService.getList(); String[] typeList = new String[]{ - "","鏀硅", "鍔犺", "鎹㈣", "淇悊","鏀硅繘鎬т慨鐞�" + "","鏀规崲瑁�","淇悊","鏀硅繘鎬т慨鐞�","涓嶅瑁呰澶�" }; - List<DjJdgzNetworkLevel3> list = level3Service.getList(null, deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0],0,null); + List<DjJdgzNetworkLevel3> list = level3Service.getList(null, deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0],0,0,null); CommonTable.refreshTable(list, columnDto, subTable); level3ManageService.tableModelListener(list, subTable, jFrame); System.out.println("瀵煎叆鎴愬姛鏃堕棿" + new Date()); diff --git a/src/main/java/com/example/client/service/ImportTrackRecordService.java b/src/main/java/com/example/client/service/ImportTrackRecordService.java index bab2ebc..afa9004 100644 --- a/src/main/java/com/example/client/service/ImportTrackRecordService.java +++ b/src/main/java/com/example/client/service/ImportTrackRecordService.java @@ -92,9 +92,11 @@ JLabel label1 = new JLabel("涓�绾х綉缁滃浘鑺傜偣"); JComboBox<JComboBoxItem> comboBox1 = new JComboBox<>(); comboBox1.setModel(new DefaultComboBoxModel<>(level2List)); + comboBox1.setSelectedIndex(-1); JLabel label2 = new JLabel("浜岀骇缃戠粶鍥捐妭鐐�"); JComboBox<JComboBoxItem> comboBox2 = new JComboBox<>(level2NodeList); + comboBox2.setSelectedIndex(-1); comboBox2.setRenderer(new DefaultListCellRenderer() { @Override public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) { @@ -331,7 +333,7 @@ JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(null); JComboBoxItem[] cabinList = cabinService.getList(); String[] typeList = new String[]{ - "","鏀硅", "鍔犺", "鎹㈣", "淇悊","鏀硅繘鎬т慨鐞�" + "","鏀规崲瑁�","淇悊","鏀硅繘鎬т慨鐞�","涓嶅瑁呰澶�" }; List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.getList(level1Id[0], deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], 0,0, null); CommonTable.refreshTable(list, columnDto, subTable); diff --git a/src/main/java/com/example/client/service/Level1AddOrUpdate.java b/src/main/java/com/example/client/service/Level1AddOrUpdate.java index c57ff3b..2e0c0c5 100644 --- a/src/main/java/com/example/client/service/Level1AddOrUpdate.java +++ b/src/main/java/com/example/client/service/Level1AddOrUpdate.java @@ -126,7 +126,7 @@ frame1.setVisible(true); mxGraph graph = new mxGraph(); - graph = netWorkDiagramService.getCsDiagram(graph,data.getContent(),null,diagram.getWidth(),diagram.getHeight()); + graph = netWorkDiagramService.getCsDiagram(graph,data.getContent(),null,diagram.getWidth(),diagram.getHeight(),null); mxGraphComponent graphComponent = new mxGraphComponent(graph); graphComponent.setConnectable(false); graphComponent.setDragEnabled(false); diff --git a/src/main/java/com/example/client/service/Level1ViewService.java b/src/main/java/com/example/client/service/Level1ViewService.java index 3280d15..f2535c4 100644 --- a/src/main/java/com/example/client/service/Level1ViewService.java +++ b/src/main/java/com/example/client/service/Level1ViewService.java @@ -100,7 +100,7 @@ String json = list.get(0).getContent(); List<NetworkNodeStatusDto> nodeStatusList = level1Service.getNodeStatusData(list.get(0).getId()); - graph = netWorkDiagramService.getCsDiagram(graph, json, nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height); + graph = netWorkDiagramService.getCsDiagram(graph, json, nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height,null); mxGraphComponent graphComponent = new mxGraphComponent(graph); graphComponent.setConnectable(false); @@ -129,7 +129,7 @@ int r = subTable.getSelectedRow(); DjJdgzNetworkLevel1 data = list.get(r); List<NetworkNodeStatusDto> nodeStatusList = level1Service.getNodeStatusData(data.getId()); - mxGraph csDiagram = netWorkDiagramService.getCsDiagram(graph2[0], data.getContent(), nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height); + mxGraph csDiagram = netWorkDiagramService.getCsDiagram(graph2[0], data.getContent(), nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height,null); if (nodeStatusList != null && nodeStatusList.size() > 0) { graph2[0] = csDiagram; } else { diff --git a/src/main/java/com/example/client/service/Level2AddOrUpdate.java b/src/main/java/com/example/client/service/Level2AddOrUpdate.java index 60bc7c0..6bedfa1 100644 --- a/src/main/java/com/example/client/service/Level2AddOrUpdate.java +++ b/src/main/java/com/example/client/service/Level2AddOrUpdate.java @@ -170,7 +170,7 @@ mxGraph graph = new mxGraph(); DjJdgzNetworkLevel2 djJdgzNetworkLevel2 = level2Service.get(data.getId()); - graph = netWorkDiagramService.getCsDiagram(graph,djJdgzNetworkLevel2.getContent(),null,diagram.getWidth(),diagram.getHeight()); + graph = netWorkDiagramService.getCsDiagram(graph,djJdgzNetworkLevel2.getContent(),null,diagram.getWidth(),diagram.getHeight(),null); mxGraphComponent graphComponent = new mxGraphComponent(graph); graphComponent.setConnectable(false); graphComponent.setDragEnabled(false); diff --git a/src/main/java/com/example/client/service/Level2ViewService.java b/src/main/java/com/example/client/service/Level2ViewService.java index da28ef8..54b7a21 100644 --- a/src/main/java/com/example/client/service/Level2ViewService.java +++ b/src/main/java/com/example/client/service/Level2ViewService.java @@ -3,6 +3,7 @@ import com.example.client.dto.ColumnDto; import com.example.client.utils.CommonTable; import com.example.client.utils.Compute; +import com.example.server.progressTrack.Dto.DiagramNodeDto; import com.example.server.progressTrack.Dto.NetworkNodeStatusDto; import com.example.server.progressTrack.model.DjJdgzNetworkLevel1; import com.example.server.progressTrack.model.DjJdgzNetworkLevel2; @@ -11,6 +12,7 @@ import com.example.server.progressTrack.service.NetWorkDiagramService; import com.mxgraph.swing.mxGraphComponent; import com.mxgraph.view.mxGraph; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -25,6 +27,8 @@ public class Level2ViewService { @Autowired private DjJdgzNetworkLevel2Service level2Service; + @Autowired + private DjJdgzNetworkLevel1Service level1Service; @Autowired private NetWorkDiagramService netWorkDiagramService; @@ -41,7 +45,7 @@ // 鍒涘缓瀛愯〃鏍� List<ColumnDto> columnDto = new ArrayList<>(); - List<DjJdgzNetworkLevel2> list = level2Service.getList(null); + List<DjJdgzNetworkLevel1> list = level1Service.getList(null); //columnDto.add(new ColumnDto("ID", "id", -1, null,false)); if (list == null || list.size() == 0) { JOptionPane.showMessageDialog(null, "杩樻湭褰曞叆浜岀骇缃戠粶鍥炬暟鎹�", "鎻愮ず", JOptionPane.WARNING_MESSAGE); @@ -49,8 +53,8 @@ } columnDto.add(new ColumnDto("搴忓彿", "", 120, "autoCreate", false, null, null)); - columnDto.add(new ColumnDto("宸ョ▼", "ProjectName", 145, null, false, null, null)); - columnDto.add(new ColumnDto("涓�绾ц妭鐐�", "processName", 125, null, false, null, null)); + columnDto.add(new ColumnDto("宸ョ▼", "ProjectName", 270, null, false, null, null)); + //columnDto.add(new ColumnDto("涓�绾ц妭鐐�", "processName", 125, null, false, null, null)); JTable subTable = CommonTable.createCommonTable(list, columnDto); subTable.setRowHeight(25); @@ -86,10 +90,14 @@ panel.add(hSplitPane, BorderLayout.CENTER); mxGraph graph = new mxGraph(); - String json = list.get(0).getContent(); - List<NetworkNodeStatusDto> nodeStatusList = level2Service.getNodeStatusData(list.get(0).getId()); - graph = netWorkDiagramService.getCsDiagram(graph, json, nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height); + List<DiagramNodeDto> list2 = level1Service.getNodeList(list.get(0).getId()); + List<DiagramNodeDto> list22 = level1Service.getNodeList2(list.get(0).getId()); + + String json = netWorkDiagramService.createSimpleDiagram(list2); + List<NetworkNodeStatusDto> nodeStatusList = level1Service.getNodeStatus(list.get(0).getId()); + + graph = netWorkDiagramService.getCsDiagram(graph, json, nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height,list22); mxGraphComponent graphComponent = new mxGraphComponent(graph); graphComponent.setConnectable(false); @@ -116,10 +124,14 @@ if (e.getButton() == MouseEvent.BUTTON1) { // 寰楀埌閫変腑鐨勮鍒楃殑绱㈠紩鍊� int r = subTable.getSelectedRow(); - DjJdgzNetworkLevel2 data = list.get(r); - List<NetworkNodeStatusDto> nodeStatusList = level2Service.getNodeStatusData(data.getId()); - mxGraph csDiagram = netWorkDiagramService.getCsDiagram(graph2[0], data.getContent(), nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height); - if (nodeStatusList != null && nodeStatusList.size() > 0) { + + List<DiagramNodeDto> list2 = level1Service.getNodeList(list.get(r).getId()); + + String json = netWorkDiagramService.createSimpleDiagram(list2); + List<NetworkNodeStatusDto> nodeStatusList = level1Service.getNodeStatus(list.get(r).getId()); + List<DiagramNodeDto> list22 = level1Service.getNodeList2(list.get(r).getId()); + mxGraph csDiagram = netWorkDiagramService.getCsDiagram(graph2[0], json, nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height,list22); + if (StringUtils.isNotBlank(json)) { graph2[0] = csDiagram; } else { graph2[0].removeCells(graph2[0].getChildVertices(graph2[0].getDefaultParent())); diff --git a/src/main/java/com/example/client/service/Level3AddOrUpdate.java b/src/main/java/com/example/client/service/Level3AddOrUpdate.java index 85bb745..4a55e11 100644 --- a/src/main/java/com/example/client/service/Level3AddOrUpdate.java +++ b/src/main/java/com/example/client/service/Level3AddOrUpdate.java @@ -69,7 +69,7 @@ List<ColumnDto> columnDto = new ArrayList<>(); List<DjJdgzNetworkLevel3List> list = level3ListService.getList(data.getId()); if (list.size() == 0) { - list = level3ListService.getDefult(); + list = level3ListService.getDefult(data.getType()); } for (DjJdgzNetworkLevel3List item : list) { if (item.getTeamgroupId() == null) { @@ -140,7 +140,7 @@ frame1.setVisible(true); mxGraph graph = new mxGraph(); - graph = netWorkDiagramService.getCsDiagram(graph, data.getContent(), null, diagram.getWidth(), diagram.getHeight()); + graph = netWorkDiagramService.getCsDiagram(graph, data.getContent(), null, diagram.getWidth(), diagram.getHeight(),null); mxGraphComponent graphComponent = new mxGraphComponent(graph); graphComponent.setConnectable(false); graphComponent.setDragEnabled(false); diff --git a/src/main/java/com/example/client/service/Level3ManageService.java b/src/main/java/com/example/client/service/Level3ManageService.java index fdf9ad3..c3153ab 100644 --- a/src/main/java/com/example/client/service/Level3ManageService.java +++ b/src/main/java/com/example/client/service/Level3ManageService.java @@ -75,7 +75,7 @@ JComboBoxItem[] cabinList = cabinService.getList(); JComboBoxItem[] deptList = sysTeamGroupClassService.getDeptList(); String[] typeList = new String[]{ - "","鏀硅", "鍔犺", "鎹㈣", "淇悊","鏀硅繘鎬т慨鐞�" + "","鏀规崲瑁�","淇悊","鏀硅繘鎬т慨鐞�","涓嶅瑁呰澶�" }; JComboBoxItem[] isealCabin = { new JComboBoxItem(10000L, ""), @@ -109,6 +109,10 @@ JComboBox<JComboBoxItem> comboBox5 = new JComboBox<>(isealCabin); comboBox5.setPreferredSize(new Dimension(185, 28)); + JLabel JLabel6 = new JLabel("鏄惁鑱旇皟"); + JComboBox<JComboBoxItem> comboBox6 = new JComboBox<>(isealCabin); + comboBox6.setPreferredSize(new Dimension(185, 28)); + JTextField sb = new JTextField(16); JButton query = new JButton("鏌ヨ"); @@ -128,12 +132,14 @@ topJpanel.add(JLabel5, new GBC(0, 1, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); topJpanel.add(comboBox5, new GBC(1, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - topJpanel.add(sb, new GBC(2, 1, 2, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); - topJpanel.add(query, new GBC(4, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - topJpanel.add(btnInsert, new GBC(5, 1, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); - topJpanel.add(btnImport, new GBC(6, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel.add(JLabel6, new GBC(2, 1, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + topJpanel.add(comboBox6, new GBC(3, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel.add(sb, new GBC(4, 1, 2, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + topJpanel.add(query, new GBC(6, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel.add(btnInsert, new GBC(7, 1, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + topJpanel.add(btnImport, new GBC(8, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - list = level3Service.getList(shipList.get(0).getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], Math.toIntExact(isealCabin[0].getId()), null); + list = level3Service.getList(shipList.get(0).getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], Math.toIntExact(isealCabin[0].getId()),Math.toIntExact(isealCabin[0].getId()), null); List<TableButton> buttonList = new ArrayList<>(); buttonList.add(new TableButton("edit", "缂栬緫")); buttonList.add(new TableButton("del", "鍒犻櫎")); @@ -141,16 +147,17 @@ columnDto = new ArrayList<>(); //columnDto.add(new ColumnDto("ID", "id", -1, null,false)); - columnDto.add(new ColumnDto("搴忓彿", "", 100, "autoCreate", false, null, null)); + columnDto.add(new ColumnDto("搴忓彿", "", 80, "autoCreate", false, null, null)); //columnDto.add(new ColumnDto("宸ョ▼", "ProjectName", 150, null, false, null, null)); - columnDto.add(new ColumnDto("閮ㄩ棬", "deptId", 176, "dict", false, null, deptList)); - columnDto.add(new ColumnDto("涓撲笟", "teamgroupId", 176, "dict", false, null, teamList)); - columnDto.add(new ColumnDto("鑸卞", "cabinId", 100, "dict", false, null, cabinList)); + columnDto.add(new ColumnDto("閮ㄩ棬", "deptId", 150, "dict", false, null, deptList)); + columnDto.add(new ColumnDto("涓撲笟", "teamgroupId", 150, "dict", false, null, teamList)); + columnDto.add(new ColumnDto("鑸卞", "cabinId", 80, "dict", false, null, cabinList)); columnDto.add(new ColumnDto("绫诲埆", "type", 120, null, false, null, null)); columnDto.add(new ColumnDto("涓�绾х綉缁滃浘鑺傜偣鍚嶇О", "level1NodeName", 185, null, false, null, null)); columnDto.add(new ColumnDto("浜岀骇缃戠粶鍥捐妭鐐瑰悕绉�", "level2NodeName", 185, null, false, null, null)); columnDto.add(new ColumnDto("涓夌骇缃戠粶鍥惧悕绉�", "name", 176, null, false, null, null)); - columnDto.add(new ColumnDto("鏄惁褰卞搷灏佽埍", "isealCabin", 176, "dict", false, null, isealCabin)); + columnDto.add(new ColumnDto("鏄惁褰卞搷灏佽埍", "isealCabin", 160, "dict", false, null, isealCabin)); + columnDto.add(new ColumnDto("鏄惁鑱旇皟", "islt", 100, "dict", false, null, isealCabin)); columnDto.add(new ColumnDto("鎿嶄綔", "", 190, "", true, buttonList, null)); table = CommonTable.createCommonTable(list, columnDto); @@ -171,9 +178,10 @@ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); String type = comboBox4.getSelectedItem().toString(); JComboBoxItem isCabin = (JComboBoxItem) comboBox5.getSelectedItem(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),Math.toIntExact(isLt.getId()),null); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -199,9 +207,10 @@ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); JComboBoxItem isCabin = (JComboBoxItem) comboBox5.getSelectedItem(); String type = comboBox4.getSelectedItem().toString(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),Math.toIntExact(isLt.getId()),null); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -222,8 +231,10 @@ JComboBoxItem isCabin = (JComboBoxItem) comboBox5.getSelectedItem(); String type = comboBox4.getSelectedItem().toString(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); + Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),Math.toIntExact(isLt.getId()),null); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -240,9 +251,10 @@ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); JComboBoxItem isCabin = (JComboBoxItem) comboBox5.getSelectedItem(); String type = comboBox4.getSelectedItem().toString(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),Math.toIntExact(isLt.getId()),null); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -259,9 +271,10 @@ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); JComboBoxItem isCabin = (JComboBoxItem) comboBox5.getSelectedItem(); String type = comboBox4.getSelectedItem().toString(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),Math.toIntExact(isLt.getId()),null); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -280,8 +293,31 @@ JComboBoxItem isCabin = (JComboBoxItem) comboBox5.getSelectedItem(); String type = comboBox4.getSelectedItem().toString(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); + Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),Math.toIntExact(isLt.getId()),null); + + CommonTable.refreshTable(list, columnDto, table); + table.setRowHeight(25); + + table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); + tableModelListener(list, table, jFrame); + } + }); + comboBox6.addItemListener(new ItemListener() { + public void itemStateChanged(final ItemEvent event) { + String content = comboBox.getSelectedItem().toString(); + JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem(); + JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem(); + JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); + JComboBoxItem isCabin = (JComboBoxItem) comboBox5.getSelectedItem(); + String type = comboBox4.getSelectedItem().toString(); + + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); + + Long shipId = shipMap.get(content); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()),Math.toIntExact(isLt.getId()),null); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -295,7 +331,7 @@ query.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { - list = level3Service.getList(null, null, null, null, null,null, sb.getText()); + list = level3Service.getList(null, null, null, null, null,null,null, sb.getText()); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -346,7 +382,7 @@ public void insert(JFrame jFrame,DjJdgzNetworkLevel3 data) { JFrame frame1 = new JFrame("鏂板涓夌骇缃戠粶鍥�"); - frame1.setSize(500, 460); + frame1.setSize(500, 500); frame1.setResizable(true); frame1.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); frame1.setLocationRelativeTo(null); @@ -366,7 +402,7 @@ JComboBoxItem[] cabinList = cabinService.getList(); JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(null); String[] typeList = new String[]{ - "","鏀硅", "鍔犺", "鎹㈣", "淇悊","鏀硅繘鎬т慨鐞�" + "","鏀规崲瑁�","淇悊","鏀硅繘鎬т慨鐞�","涓嶅瑁呰澶�" }; JComboBoxItem[] isealCabin = { new JComboBoxItem(0L, "鍚�"), @@ -450,6 +486,13 @@ comboBox7.setSelectedItem(BoxIteUtils.GetSelectItemById(isealCabin, Long.valueOf(data.getIsealCabin()))); } + JLabel JLabel789 = new JLabel("鏄惁鑱旇皟"); + JComboBox<JComboBoxItem> comboBox78 = new JComboBox<>(isealCabin); + comboBox78.setPreferredSize(new Dimension(185, 28)); + if (data.getIslt()!=null){ + comboBox78.setSelectedItem(BoxIteUtils.GetSelectItemById(isealCabin, Long.valueOf(data.getIslt()))); + } + JLabel JLabel8 = new JLabel("涓夌骇缃戠粶鍥惧悕绉�"); JTextField level3Name = new JTextField(16); if (StringUtils.isNotBlank(data.getName())){ @@ -526,11 +569,14 @@ frame1.add(comboBox6, new GBC(1, 6, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); frame1.add(JLabel78, new GBC(0, 7, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); frame1.add(comboBox7, new GBC(1, 7, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + frame1.add(JLabel789, new GBC(0, 8, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + frame1.add(comboBox78, new GBC(1, 8, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - frame1.add(JLabel8, new GBC(0, 8, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); - frame1.add(level3Name, new GBC(1, 8, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - frame1.add(btnSave, new GBC(0, 9, 2, 1).setWeight(1, 0)); + frame1.add(JLabel8, new GBC(0, 9, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + frame1.add(level3Name, new GBC(1, 9, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + + frame1.add(btnSave, new GBC(0, 10, 2, 1).setWeight(1, 0)); btnSave.addActionListener((e) -> { JComboBoxItem level1 = (JComboBoxItem) comboBox0.getSelectedItem(); @@ -539,6 +585,7 @@ JComboBoxItem dept = (JComboBoxItem) comboBox3.getSelectedItem(); JComboBoxItem team = (JComboBoxItem) comboBox4.getSelectedItem(); JComboBoxItem isealCabinItem = (JComboBoxItem) comboBox7.getSelectedItem(); + JComboBoxItem iltItem = (JComboBoxItem) comboBox78.getSelectedItem(); Set<JComboBoxItem> selectedItems = comboBox5.getSelectedItems(); StringBuilder selectedIds = new StringBuilder(); for (JComboBoxItem item : selectedItems) { @@ -551,6 +598,7 @@ data.setLevel2NodeId(level2Node.getId()); data.setName(name); data.setIsealCabin(Math.toIntExact(isealCabinItem.getId())); + data.setIslt(Math.toIntExact(iltItem.getId())); data.setDeptId(dept.getId()); data.setTeamgroupId(team.getId()); data.setTeamgroupName(team.getName()); @@ -562,7 +610,7 @@ level3Service.insert(data); } - list = level3Service.getList(level1Data.getShipId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], Math.toIntExact(isealCabin[0].getId()), null); + list = level3Service.getList(level1Data.getShipId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], Math.toIntExact(isealCabin[0].getId()),Math.toIntExact(isealCabin[0].getId()), null); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); diff --git a/src/main/java/com/example/client/service/Level3View2Service.java b/src/main/java/com/example/client/service/Level3View2Service.java index 548b587..803e1c5 100644 --- a/src/main/java/com/example/client/service/Level3View2Service.java +++ b/src/main/java/com/example/client/service/Level3View2Service.java @@ -2,26 +2,22 @@ import com.example.client.dto.ColumnDto; import com.example.client.dto.JComboBoxItem; -import com.example.client.model.TableButton; import com.example.client.utils.*; import com.example.server.cabin.service.CabinService; import com.example.server.progressTrack.Dto.TableNodeDto; -import com.example.server.progressTrack.model.DjJdgzNetworkLevel1; -import com.example.server.progressTrack.model.DjJdgzNetworkLevel3; import com.example.server.progressTrack.model.DjJdgzShip; import com.example.server.progressTrack.service.*; import com.example.server.teamGroup.service.SysTeamGroupClassService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.swing.*; -import javax.swing.event.TableModelEvent; -import javax.swing.table.DefaultTableCellRenderer; -import javax.swing.table.DefaultTableModel; import java.awt.*; import java.awt.event.*; import java.util.List; import java.util.*; +import java.util.stream.Collectors; @Service @@ -43,19 +39,31 @@ private List<ColumnDto> columnDto; - public JPanel createTable(Integer width, Integer height,JFrame frame) { + public JPanel createTable(Integer width, Integer height, JFrame frame) { JPanel panel = new JPanel(new BorderLayout()); - JPanel topJpanel = new JPanel(); + JPanel topJpanel1 = new JPanel(new BorderLayout()); + topJpanel1.setPreferredSize(new Dimension(width, 150)); + topJpanel1.setBackground(Color.WHITE); + + JPanel topJpanel2 = new JPanel(); + + CustomPanel customPanel = new CustomPanel(); + customPanel.setPreferredSize(new Dimension(width, 50)); + customPanel.setBackground(Color.WHITE); + + topJpanel1.add(topJpanel2, BorderLayout.CENTER); + topJpanel1.add(customPanel, BorderLayout.SOUTH); + GridBagLayout layout = new GridBagLayout(); - topJpanel.setLayout(layout); - topJpanel.setPreferredSize(new Dimension(width, 100)); - topJpanel.setBackground(Color.WHITE); + topJpanel2.setLayout(layout); + topJpanel2.setPreferredSize(new Dimension(width, 100)); + topJpanel2.setBackground(Color.WHITE); JPanel centerJpanel = new JPanel(); - centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(95,frame))); + centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(145, frame))); centerJpanel.setBackground(Color.WHITE); - panel.add(topJpanel, BorderLayout.NORTH); + panel.add(topJpanel1, BorderLayout.NORTH); panel.add(centerJpanel, BorderLayout.CENTER); List<DjJdgzShip> shipList = djJdgzShipService.getList(); @@ -63,7 +71,13 @@ JComboBoxItem[] cabinList = cabinService.getList(); JComboBoxItem[] deptList = sysTeamGroupClassService.getDeptList(); String[] typeList = new String[]{ - "","鏀硅", "鍔犺", "鎹㈣", "淇悊","鏀硅繘鎬т慨鐞�" + "淇悊", "鏀规崲瑁�", "鏀硅繘鎬т慨鐞�", "涓嶅瑁呰澶�" + }; + + JComboBoxItem[] isealCabin = { + new JComboBoxItem(10000L, ""), + new JComboBoxItem(0L, "鍚�"), + new JComboBoxItem(1L, "鏄�"), }; JLabel JLabel0 = new JLabel("宸ョ▼"); @@ -88,12 +102,21 @@ JComboBox<String> comboBox4 = new JComboBox<>(typeList); comboBox4.setPreferredSize(new Dimension(185, 28)); + JLabel JLabel5 = new JLabel("鏄惁褰卞搷灏佽埍"); + JComboBox<JComboBoxItem> comboBox56 = new JComboBox<>(isealCabin); + comboBox56.setPreferredSize(new Dimension(185, 28)); + + JLabel JLabel6 = new JLabel("鏄惁鑱旇皟"); + JComboBox<JComboBoxItem> comboBox6 = new JComboBox<>(isealCabin); + comboBox6.setPreferredSize(new Dimension(185, 28)); + JTextField sb = new JTextField(16); JButton query = new JButton("鏌ヨ"); List<ColorDescription> colorDescriptions = new ArrayList<>(); + colorDescriptions.add(new ColorDescription("", "鍏ㄩ儴")); colorDescriptions.add(new ColorDescription("#3498DB", "杩涜涓�")); - colorDescriptions.add(new ColorDescription("#F1C40F", "涓存湡")); + colorDescriptions.add(new ColorDescription("#F1C40F", "涓存湡(7澶�)")); colorDescriptions.add(new ColorDescription("#E74C3C", "閫炬湡")); colorDescriptions.add(new ColorDescription("#2ECC71", "姝e父瀹屾垚")); colorDescriptions.add(new ColorDescription("#006400", "瓒呮湡瀹屾垚")); @@ -102,35 +125,31 @@ ColorDescriptionComboBox comboBox5 = new ColorDescriptionComboBox(colorDescriptions); JButton btnTjz = new JButton("璁惧杩涘害缁熻鎬昏〃"); - topJpanel.add(JLabel0, new GBC(0, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); - topJpanel.add(comboBox, new GBC(1, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - topJpanel.add(JLabel1, new GBC(2, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); - topJpanel.add(comboBox1, new GBC(3, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - topJpanel.add(JLabel2, new GBC(4, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); - topJpanel.add(comboBox2, new GBC(5, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - topJpanel.add(JLabel3, new GBC(6, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); - topJpanel.add(comboBox3, new GBC(7, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - topJpanel.add(JLabel4, new GBC(8, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); - topJpanel.add(comboBox4, new GBC(9, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel2.add(JLabel0, new GBC(0, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + topJpanel2.add(comboBox, new GBC(1, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel2.add(JLabel1, new GBC(2, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + topJpanel2.add(comboBox1, new GBC(3, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel2.add(JLabel2, new GBC(4, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + topJpanel2.add(comboBox2, new GBC(5, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel2.add(JLabel3, new GBC(6, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + topJpanel2.add(comboBox3, new GBC(7, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel2.add(JLabel4, new GBC(8, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + topJpanel2.add(comboBox4, new GBC(9, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - topJpanel.add(sb, new GBC(0, 1, 2, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); - topJpanel.add(query, new GBC(2, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - topJpanel.add(comboBox5, new GBC(3, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - topJpanel.add(btnTjz, new GBC(5, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel2.add(JLabel5, new GBC(0, 1, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + topJpanel2.add(comboBox56, new GBC(1, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel2.add(JLabel6, new GBC(2, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel2.add(comboBox6, new GBC(3, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel2.add(sb, new GBC(4, 1, 2, 1).setAnchor(GBC.SOUTHEAST).setInsets(5)); + topJpanel2.add(query, new GBC(6, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel2.add(comboBox5, new GBC(7, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); + topJpanel2.add(btnTjz, new GBC(9, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5)); - list = level3Service.getNodeList(shipList.get(0).getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], null); + list = level3Service.getNodeList(shipList.get(0).getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], Math.toIntExact(isealCabin[0].getId()), Math.toIntExact(isealCabin[0].getId()), null); columnDto = new ArrayList<>(); //columnDto.add(new ColumnDto("ID", "id", -1, null,false)); - columnDto.add(new ColumnDto("搴忓彿", "", 227, "autoCreate", false, null, null)); - //columnDto.add(new ColumnDto("宸ョ▼", "ProjectName", 150, null, false, null, null)); - columnDto.add(new ColumnDto("璁惧鍚嶇О", "name", 227, null, true, null, null)); - columnDto.add(new ColumnDto("璁惧鎷嗗嵏鍑鸿埍", "time1Color", 227, "Circle", true, null, null)); - columnDto.add(new ColumnDto("璁惧鍒嗕氦", "time2Color", 227, "Circle", true, null, null)); - columnDto.add(new ColumnDto("鎷嗘閴村畾", "time3Color", 227, "Circle", true, null, null)); - columnDto.add(new ColumnDto("璁惧杩斿巶", "time4Color", 227, "Circle", true, null, null)); - columnDto.add(new ColumnDto("鍥炶", "time5Color", 227, "Circle", true, null, null)); - + columnDto = getColumnDtoByType(typeList[0]); table = CommonTable.createCommonTable(list, columnDto); table.setRowHeight(25); @@ -148,9 +167,27 @@ int row = table.rowAtPoint(point); int column = table.columnAtPoint(point); - if (row <= list.size() && column > 1) { + if (row <= list.size() && column > 3) { + List<TableNodeDto> filteredData = list; + if (comboBox5.getSelectedItem() instanceof String) { + + } else { + ColorDescription selectedColorDescription = (ColorDescription) comboBox5.getSelectedItem(); + if (selectedColorDescription != null) { + String selectedHexColor = selectedColorDescription.getHexColor(); + if (StringUtils.isNotBlank(selectedHexColor)) { + filteredData = list.stream() + .filter(dto -> dto.getTime1Color() != null && dto.getTime1Color().equals(selectedHexColor) || + dto.getTime2Color() != null && dto.getTime2Color().equals(selectedHexColor) || + dto.getTime3Color() != null && dto.getTime3Color().equals(selectedHexColor) || + dto.getTime4Color() != null && dto.getTime4Color().equals(selectedHexColor) || + dto.getTime5Color() != null && dto.getTime5Color().equals(selectedHexColor)) + .collect(Collectors.toList()); + } + } + } String hexColor = (String) table.getValueAt(row, column); - String tooltip = getTooltipText(hexColor); + String tooltip = getTooltipText(hexColor, filteredData.get(row)); table.setToolTipText(tooltip); } else { table.setToolTipText(null); @@ -167,15 +204,16 @@ JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem(); JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); String type = comboBox4.getSelectedItem().toString(); + JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); Long shipId = shipMap.get(content); - list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null); - + list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null); + columnDto = getColumnDtoByType(type); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); - } }); comboBox1.addItemListener(new ItemListener() { @@ -195,8 +233,12 @@ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); String type = comboBox4.getSelectedItem().toString(); + JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); + Long shipId = shipMap.get(content); - list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null); + list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null); + columnDto = getColumnDtoByType(type); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -215,10 +257,13 @@ JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem(); JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); String type = comboBox4.getSelectedItem().toString(); + JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); Long shipId = shipMap.get(content); - list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null); + list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null); + columnDto = getColumnDtoByType(type); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -234,8 +279,12 @@ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); String type = comboBox4.getSelectedItem().toString(); + JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); + Long shipId = shipMap.get(content); - list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null); + list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null); + columnDto = getColumnDtoByType(type); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -252,9 +301,58 @@ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); String type = comboBox4.getSelectedItem().toString(); - Long shipId = shipMap.get(content); - list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null); + JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); + Long shipId = shipMap.get(content); + list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null); + + columnDto = getColumnDtoByType(type); + CommonTable.refreshTable(list, columnDto, table); + table.setRowHeight(25); + + table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); + + } + }); + + comboBox56.addItemListener(new ItemListener() { + public void itemStateChanged(final ItemEvent event) { + String content = comboBox.getSelectedItem().toString(); + JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem(); + JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem(); + JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); + String type = comboBox4.getSelectedItem().toString(); + + JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); + + Long shipId = shipMap.get(content); + list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null); + + columnDto = getColumnDtoByType(type); + CommonTable.refreshTable(list, columnDto, table); + table.setRowHeight(25); + + table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); + + } + }); + comboBox6.addItemListener(new ItemListener() { + public void itemStateChanged(final ItemEvent event) { + String content = comboBox.getSelectedItem().toString(); + JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem(); + JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem(); + JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem(); + String type = comboBox4.getSelectedItem().toString(); + + JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem(); + JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem(); + + Long shipId = shipMap.get(content); + list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null); + + columnDto = getColumnDtoByType(type); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -266,8 +364,9 @@ query.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { - list = level3Service.getNodeList(null, null, null, null, null, sb.getText()); - + String type = comboBox4.getSelectedItem().toString(); + list = level3Service.getNodeList(null, null, null, null, type, null, null, sb.getText()); + columnDto = getColumnDtoByType(type); CommonTable.refreshTable(list, columnDto, table); table.setRowHeight(25); @@ -287,7 +386,42 @@ public void actionPerformed(ActionEvent e) { String content = comboBox.getSelectedItem().toString(); Long shipId = shipMap.get(content); - statisProductService.createTable(frame,shipId); + String type = comboBox4.getSelectedItem().toString(); + statisProductService.createTable(frame, shipId, type); + } + }); + + comboBox5.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + if (e.getStateChange() == ItemEvent.SELECTED) { + if (comboBox5.getSelectedItem() instanceof String) { + return; + } + ColorDescription selectedColorDescription = (ColorDescription) comboBox5.getSelectedItem(); + if (selectedColorDescription != null) { + String selectedHexColor = selectedColorDescription.getHexColor(); + if (StringUtils.isNotBlank(selectedHexColor)) { + List<TableNodeDto> filteredData = list.stream() + .filter(dto -> dto.getTime1Color() != null && dto.getTime1Color().equals(selectedHexColor) || + dto.getTime2Color() != null && dto.getTime2Color().equals(selectedHexColor) || + dto.getTime3Color() != null && dto.getTime3Color().equals(selectedHexColor) || + dto.getTime4Color() != null && dto.getTime4Color().equals(selectedHexColor) || + dto.getTime5Color() != null && dto.getTime5Color().equals(selectedHexColor)) + .collect(Collectors.toList()); + CommonTable.refreshTable(filteredData, columnDto, table); + }else{ + String type = comboBox4.getSelectedItem().toString(); + list = level3Service.getNodeList(null, null, null, null, type, null, null, sb.getText()); + columnDto = getColumnDtoByType(type); + CommonTable.refreshTable(list, columnDto, table); + table.setRowHeight(25); + + table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); + + } + } + } } }); @@ -295,13 +429,13 @@ JScrollPane scrollPane = new JScrollPane(table, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); scrollPane.setViewportView(table); scrollPane.getViewport().setBackground(Color.WHITE); - scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(95,frame))); + scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(145, frame))); centerJpanel.add(scrollPane); frame.addComponentListener(new ComponentAdapter() { @Override public void componentResized(ComponentEvent e) { - centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(95,frame))); - scrollPane.setPreferredSize(new Dimension(width - 20,Compute.ComputeHeightWithScroll(95,frame))); + centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(145, frame))); + scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(145, frame))); centerJpanel.revalidate(); centerJpanel.repaint(); scrollPane.revalidate(); @@ -311,24 +445,65 @@ return panel; } + private JComboBoxItem[] createIsealCabinItems() { + return new JComboBoxItem[]{ + new JComboBoxItem(10000L, ""), + new JComboBoxItem(0L, "鍚�"), + new JComboBoxItem(1L, "鏄�") + }; + } - private static String getTooltipText(String hexColor) { + private List<ColumnDto> getColumnDtoByType(String type) { + List<ColumnDto> columns = new ArrayList<>(); + if ("淇悊".equals(type)) { + columns.add(new ColumnDto("搴忓彿", "", 100, "autoCreate", false, null, null)); + columns.add(new ColumnDto("璁惧鍚嶇О", "name", 327, null, true, null, null)); + columns.add(new ColumnDto("鏄惁褰卞搷灏佽埍", "isealCabin", 160, "dict", false, null, createIsealCabinItems())); + columns.add(new ColumnDto("鏄惁鑱旇皟", "islt", 100, "dict", false, null, createIsealCabinItems())); + columns.add(new ColumnDto("璁惧鎷嗗嵏鍑鸿埍", "time1Color", 187, "Circle", true, null, null)); + columns.add(new ColumnDto("璁惧鍒嗕氦", "time2Color", 187, "Circle", true, null, null)); + columns.add(new ColumnDto("鎷嗘閴村畾", "time3Color", 187, "Circle", true, null, null)); + columns.add(new ColumnDto("璁惧杩斿巶", "time4Color", 187, "Circle", true, null, null)); + columns.add(new ColumnDto("鍥炶", "time5Color", 187, "Circle", true, null, null)); + } else if ("鏀规崲瑁�".equals(type) || "鏀硅繘鎬т慨鐞�".equals(type)) { + columns.add(new ColumnDto("搴忓彿", "", 144, "autoCreate", false, null, null)); + columns.add(new ColumnDto("璁惧鍚嶇О", "name", 320, null, true, null, null)); + columns.add(new ColumnDto("鏄惁褰卞搷灏佽埍", "isealCabin", 320, "dict", false, null, createIsealCabinItems())); + columns.add(new ColumnDto("鏄惁鑱旇皟", "islt", 144, "dict", false, null, createIsealCabinItems())); + columns.add(new ColumnDto("璁惧鍒板巶", "time1Color", 320, "Circle", true, null, null)); + columns.add(new ColumnDto("璁惧瀹夎", "time2Color", 320, "Circle", true, null, null)); + } else if ("涓嶅瑁呰澶�".equals(type)) { + columns.add(new ColumnDto("搴忓彿", "", 100, "autoCreate", false, null, null)); + columns.add(new ColumnDto("璁惧鍚嶇О", "name", 320, null, true, null, null)); + columns.add(new ColumnDto("鏄惁褰卞搷灏佽埍", "isealCabin", 160, "dict", false, null, createIsealCabinItems())); + columns.add(new ColumnDto("鏄惁鑱旇皟", "islt", 100, "dict", false, null, createIsealCabinItems())); + columns.add(new ColumnDto("鎷嗗嵏鍑鸿埍", "time1Color", 155, "Circle", true, null, null)); + columns.add(new ColumnDto("鍏ュ簱", "time2Color", 155, "Circle", true, null, null)); + columns.add(new ColumnDto("瀛樻斁浣嶇疆", "time3Color", 155, "Circle", true, null, null)); + columns.add(new ColumnDto("绉讳氦T闃�", "time4Color", 155, "Circle", true, null, null)); + columns.add(new ColumnDto("澶囨敞", "remark", 300, null, false, null, null)); + } + return columns; + } + + private static String getTooltipText(String hexColor, TableNodeDto tableNodeDto) { switch (hexColor) { case "#3498DB": return "杩涜涓�"; case "#F1C40F": - return "涓存湡"; + return tableNodeDto.getLqText(); case "#E74C3C": - return "閫炬湡"; + return tableNodeDto.getYqText(); case "#2ECC71": return "姝e父瀹屾垚"; case "#006400": - return "瓒呮湡瀹屾垚"; + return tableNodeDto.getCqText(); default: return "鏈紑濮�"; } } + } diff --git a/src/main/java/com/example/client/service/Level3ViewService.java b/src/main/java/com/example/client/service/Level3ViewService.java index c2c3954..69449c7 100644 --- a/src/main/java/com/example/client/service/Level3ViewService.java +++ b/src/main/java/com/example/client/service/Level3ViewService.java @@ -41,7 +41,7 @@ // 鍒涘缓瀛愯〃鏍� List<ColumnDto> columnDto = new ArrayList<>(); - List<DjJdgzNetworkLevel3> list = level3Service.getList(null, null, null, null, null,null,null); + List<DjJdgzNetworkLevel3> list = level3Service.getList(null, null, null, null, null,null,null,null); //columnDto.add(new ColumnDto("ID", "id", -1, null,false)); @@ -81,7 +81,7 @@ List<NetworkNodeStatusDto> nodeStatusList = level3Service.getNodeStatusData(id); - graph = netWorkDiagramService.getCsDiagram(graph, json, nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height); + graph = netWorkDiagramService.getCsDiagram(graph, json, nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height,null); mxGraphComponent graphComponent = new mxGraphComponent(graph); graphComponent.setConnectable(false); @@ -110,7 +110,7 @@ int r = subTable.getSelectedRow(); DjJdgzNetworkLevel3 data = list.get(r); List<NetworkNodeStatusDto> nodeStatusList = level3Service.getNodeStatusData(data.getId()); - graph2[0] = netWorkDiagramService.getCsDiagram(graph2[0], data.getContent(), nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height); + graph2[0] = netWorkDiagramService.getCsDiagram(graph2[0], data.getContent(), nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height,null); } } }); diff --git a/src/main/java/com/example/client/service/StatisProductService.java b/src/main/java/com/example/client/service/StatisProductService.java index 51bd380..1402c22 100644 --- a/src/main/java/com/example/client/service/StatisProductService.java +++ b/src/main/java/com/example/client/service/StatisProductService.java @@ -18,7 +18,8 @@ public class StatisProductService { @Autowired DjJdgzNetworkLevel3Service djJdgzNetworkLevel3Service; - public void createTable(JFrame jFrame, Long level1Id) { + + public void createTable(JFrame jFrame, Long level1Id, String type) { JFrame frame1 = new JFrame("璁惧杩涘害缁熻鎬昏〃"); frame1.setSize(1500, 800); frame1.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); @@ -32,29 +33,72 @@ } }); - List<StatistProductDto> list = djJdgzNetworkLevel3Service.getStatist(level1Id); + List<StatistProductDto> list = djJdgzNetworkLevel3Service.getStatist(level1Id, type); + if (type.equals("鏀硅繘鎬т慨鐞�") || type.equals("鏀规崲瑁�")) { + Object[][] headerRows = new Object[2][4]; + headerRows[0] = new Object[]{"閮ㄩ棬/涓撲笟", "鍚勮妭鐐圭殑璁惧涓暟", ComplexTable.mergeCellX, "鑺傜偣鍏ㄩ儴瀹屾垚涓暟"}; + //姝ゅ2-5鏄笉浼氭樉绀哄嚭鏉ョ殑锛屽洜涓�1-4鍚戜笅鍚堝苟浜嗕竴琛� + 鍚戝彸鍚堝苟浜嗕竴鍒� 锛� 鑰�2-5琚繖涓煩褰㈣寖鍥村寘鎷簡 + headerRows[1] = new Object[]{ComplexTable.mergeCellY, "璁惧鍒板巶", "璁惧瀹夎", ComplexTable.mergeCellY}; - Object[][] headerRows = new Object[2][9]; - headerRows[0] = new Object[]{"閮ㄩ棬/涓撲笟","鍚勮妭鐐圭殑璁惧涓暟", ComplexTable.mergeCellX,ComplexTable.mergeCellX,ComplexTable.mergeCellX,ComplexTable.mergeCellX,"鑺傜偣鍏ㄩ儴瀹屾垚涓暟"}; - //姝ゅ2-5鏄笉浼氭樉绀哄嚭鏉ョ殑锛屽洜涓�1-4鍚戜笅鍚堝苟浜嗕竴琛� + 鍚戝彸鍚堝苟浜嗕竴鍒� 锛� 鑰�2-5琚繖涓煩褰㈣寖鍥村寘鎷簡 - headerRows[1] = new Object[]{ComplexTable.mergeCellY, "璁惧鎷嗗嵏鍑鸿埍","璁惧鍒嗕氦","鎷嗘閴村畾","璁惧杩斿巶","鍥炶",ComplexTable.mergeCellY}; + String[][] body = new String[list.size()][4]; - String[][] body = new String[list.size()][9]; + for (int i = 0; i < list.size(); i++) { + StatistProductDto data = list.get(i); + body[i][0] = data.getName(); + body[i][1] = String.valueOf(data.getDcsl()); + body[i][2] = String.valueOf(data.getAzsl()); + body[i][3] = String.valueOf(data.getWcsl()); + } - for (int i = 0; i < list.size(); i++) { - StatistProductDto data =list.get(i); - body[i][0] = data.getName(); - body[i][1] = String.valueOf(data.getCxsl()); - body[i][2] = String.valueOf(data.getFjsl()); - body[i][3] = String.valueOf(data.getJdsl()); - body[i][4] = String.valueOf(data.getFcsl()); - body[i][5] = String.valueOf(data.getHzsl()); - body[i][6] = String.valueOf(data.getWcsl()); + JScrollPane scrollTable = new JScrollPane(new ComplexTable(headerRows, body, 367)); + frame1.add(scrollTable); + frame1.setVisible(true); + + } else if (type.equals("涓嶅瑁呰澶�")) { + Object[][] headerRows = new Object[2][6]; + headerRows[0] = new Object[]{"閮ㄩ棬/涓撲笟", "鍚勮妭鐐圭殑璁惧涓暟", ComplexTable.mergeCellX, ComplexTable.mergeCellX, ComplexTable.mergeCellX, "鑺傜偣鍏ㄩ儴瀹屾垚涓暟"}; + //姝ゅ2-5鏄笉浼氭樉绀哄嚭鏉ョ殑锛屽洜涓�1-4鍚戜笅鍚堝苟浜嗕竴琛� + 鍚戝彸鍚堝苟浜嗕竴鍒� 锛� 鑰�2-5琚繖涓煩褰㈣寖鍥村寘鎷簡 + headerRows[1] = new Object[]{ComplexTable.mergeCellY, "鎷嗗嵏鍑鸿埍", "鍏ュ簱", "瀛樻斁浣嶇疆","绉讳氦T闃�", ComplexTable.mergeCellY}; + + String[][] body = new String[list.size()][6]; + + for (int i = 0; i < list.size(); i++) { + StatistProductDto data = list.get(i); + body[i][0] = data.getName(); + body[i][1] = String.valueOf(data.getCcsl()); + body[i][2] = String.valueOf(data.getRksl()); + body[i][3] = String.valueOf(data.getCfsl()); + body[i][4] = String.valueOf(data.getYjsl()); + body[i][5] = String.valueOf(data.getWcsl()); + } + + JScrollPane scrollTable = new JScrollPane(new ComplexTable(headerRows, body, 245)); + frame1.add(scrollTable); + frame1.setVisible(true); + + } else if (type.equals("淇悊")) { + Object[][] headerRows = new Object[2][7]; + headerRows[0] = new Object[]{"閮ㄩ棬/涓撲笟", "鍚勮妭鐐圭殑璁惧涓暟", ComplexTable.mergeCellX, ComplexTable.mergeCellX, ComplexTable.mergeCellX, ComplexTable.mergeCellX, "鑺傜偣鍏ㄩ儴瀹屾垚涓暟"}; + //姝ゅ2-5鏄笉浼氭樉绀哄嚭鏉ョ殑锛屽洜涓�1-4鍚戜笅鍚堝苟浜嗕竴琛� + 鍚戝彸鍚堝苟浜嗕竴鍒� 锛� 鑰�2-5琚繖涓煩褰㈣寖鍥村寘鎷簡 + headerRows[1] = new Object[]{ComplexTable.mergeCellY, "璁惧鎷嗗嵏鍑鸿埍", "璁惧鍒嗕氦", "鎷嗘閴村畾", "璁惧杩斿巶", "鍥炶", ComplexTable.mergeCellY}; + + String[][] body = new String[list.size()][7]; + + for (int i = 0; i < list.size(); i++) { + StatistProductDto data = list.get(i); + body[i][0] = data.getName(); + body[i][1] = String.valueOf(data.getCxsl()); + body[i][2] = String.valueOf(data.getFjsl()); + body[i][3] = String.valueOf(data.getJdsl()); + body[i][4] = String.valueOf(data.getFcsl()); + body[i][5] = String.valueOf(data.getHzsl()); + body[i][6] = String.valueOf(data.getWcsl()); + } + + JScrollPane scrollTable = new JScrollPane(new ComplexTable(headerRows, body, 210)); + frame1.add(scrollTable); + frame1.setVisible(true); } - - JScrollPane scrollTable = new JScrollPane(new ComplexTable(headerRows , body,210)); - frame1.add(scrollTable); - frame1.setVisible(true); } } diff --git a/src/main/java/com/example/client/service/StatisReportsService.java b/src/main/java/com/example/client/service/StatisReportsService.java index 0a8033f..20551da 100644 --- a/src/main/java/com/example/client/service/StatisReportsService.java +++ b/src/main/java/com/example/client/service/StatisReportsService.java @@ -114,8 +114,7 @@ private void reportRecord(int column, Long level1NetworkId,Long teamgroupId) { JFrame frame1 = new JFrame("璁板綍"); - frame1.setSize(500, 400); - frame1.setResizable(false); + frame1.setSize(1000, 500); frame1.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); frame1.setLocationRelativeTo(null); frame1.setVisible(true); @@ -124,9 +123,9 @@ List<ColumnDto> columnDto = new ArrayList<>(); //columnDto.add(new ColumnDto("ID", "id", -1, null,false)); - columnDto.add(new ColumnDto("搴忓彿", "", (500 - 10) / 3, "autoCreate", false, null, null)); - columnDto.add(new ColumnDto("璁惧鍚嶇О", "name", (500 - 10) / 3, null, false, null, null)); - columnDto.add(new ColumnDto("鑺傜偣鍚嶇О", "processName", (500 - 10) / 3, null, false, null, null)); + columnDto.add(new ColumnDto("搴忓彿", "", 50, "autoCreate", false, null, null)); + columnDto.add(new ColumnDto("璁惧鍚嶇О", "name", 770, null, false, null, null)); + columnDto.add(new ColumnDto("鑺傜偣鍚嶇О", "processName", 160, null, false, null, null)); JTable table = CommonTable.createCommonTable(list, columnDto); table.setRowHeight(25); @@ -136,7 +135,7 @@ JScrollPane scrollPane = new JScrollPane(table, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); scrollPane.setViewportView(table); scrollPane.getViewport().setBackground(Color.WHITE); - scrollPane.setPreferredSize(new Dimension(500 - 20, 400)); + scrollPane.setPreferredSize(new Dimension(1000 - 20, 400)); frame1.add(scrollPane); } diff --git a/src/main/java/com/example/client/service/SubunitService.java b/src/main/java/com/example/client/service/SubunitService.java index fa0276d..50476ba 100644 --- a/src/main/java/com/example/client/service/SubunitService.java +++ b/src/main/java/com/example/client/service/SubunitService.java @@ -66,7 +66,7 @@ JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(null); JComboBoxItem[] cabinList = cabinService.getList(); String[] typeList = new String[]{ - "","鏀硅", "鍔犺", "鎹㈣", "淇悊","鏀硅繘鎬т慨鐞�" + "","鏀规崲瑁�","淇悊","鏀硅繘鎬т慨鐞�","涓嶅瑁呰澶�" }; List<DjJdgzShip> shipList = djJdgzShipService.getList(); Map<String, Long> shipMap = new HashMap<>(); @@ -120,7 +120,7 @@ jLeft.add(top, BorderLayout.NORTH); List<ColumnDto> columnDto = new ArrayList<>(); - list = level3Service.getList(shipList.get(0).getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0],null,null); + list = level3Service.getList(shipList.get(0).getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0],null,null,null); if (list == null || list.size() == 0) { JOptionPane.showMessageDialog(null, "杩樻湭褰曞叆涓夌骇缃戠粶鍥炬暟鎹�", "鎻愮ず", JOptionPane.WARNING_MESSAGE); @@ -147,7 +147,7 @@ String type = comboBox4.getSelectedItem().toString(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null,null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null,null,null); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); @@ -185,7 +185,7 @@ String type = comboBox4.getSelectedItem().toString(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null,null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null,null,null); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); @@ -215,7 +215,7 @@ String type = comboBox4.getSelectedItem().toString(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null,null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null,null,null); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); @@ -243,7 +243,7 @@ String type = comboBox4.getSelectedItem().toString(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null,null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null,null,null); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); @@ -271,7 +271,7 @@ String type = comboBox4.getSelectedItem().toString(); Long shipId = shipMap.get(content); - list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null,null); + list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null,null,null); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); @@ -294,7 +294,7 @@ query.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { - list = level3Service.getList(null, null, null, null, null,null,sb.getText()); + list = level3Service.getList(null, null, null, null, null,null,null,sb.getText()); CommonTable.refreshTable(list, columnDto, subTable); subTable.setRowHeight(25); diff --git a/src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java b/src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java index 71a6b97..4e40d08 100644 --- a/src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java +++ b/src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java @@ -7,6 +7,7 @@ import com.example.client.utils.UploadFile; import com.example.server.progressTrack.model.DjJdgzDismantTrack; import com.example.server.progressTrack.model.DjJdgzNetworkLevel3; +import com.example.server.progressTrack.model.DjJdgzNetworkLevel3List; import com.example.server.progressTrack.model.DjJdgzTrackRecord; import com.example.server.progressTrack.service.*; import com.example.server.sysOss.model.SysOss; @@ -37,8 +38,15 @@ private UploadFile uploadFile; @Autowired private DjJdgzDismantTrackService djJdgzDismantTrackService; + @Autowired + private DjJdgzNetworkLevel3ListService djJdgzNetworkLevel3ListService; public void openDialog(DjJdgzTrackRecord data, JFrame jFrame, Long level1Id, List<ColumnDto> columnDto, JTable table) { + if (StringUtils.isBlank(data.getLevel3NodeName())) { + DjJdgzNetworkLevel3List djJdgzNetworkLevel3List = djJdgzNetworkLevel3ListService.get(data.getLevel3NodeId()); + data.setLevel3NodeName(djJdgzNetworkLevel3List.getProcessName()); + data.setProcessName(djJdgzNetworkLevel3List.getProcessName()); + } JFrame frame1 = new JFrame(data.getLevel3NetworkName() + "璺熻釜璁板綍"); frame1.setSize(1200, 800); frame1.setResizable(false); @@ -156,8 +164,8 @@ JLabel JLabel10 = new JLabel("鍒嗘壙淇崟浣�"); JTextField repairUnitDesc = new JTextField(16); - if (StringUtils.isNotBlank(data.getRepairUnitContact())) { - repairUnitDesc.setText(data.getRepairUnitContact()); + if (StringUtils.isNotBlank(data.getRepairUnit())) { + repairUnitDesc.setText(data.getRepairUnit()); } JLabel JLabel11 = new JLabel("璐熻矗浜�"); @@ -341,9 +349,9 @@ data.setProblem(problem.getText()); data.setFollowupPlan(plan.getText()); data.setRemark(remark.getText()); - Long id = djJdgzTrackRecordService.save(data,"save"); + Long id = djJdgzTrackRecordService.save(data, "save"); uploadFile.save(id); - List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.getList(level1Id, level3.getDeptId(), null, null, level3.getType(), 0,0, null); + List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.getList(level1Id, level3.getDeptId(), null, null, level3.getType(), 0, 0, null); CommonTable.refreshTable(list, columnDto, table); trackRecordManageService.tableModelListener(table, jFrame, list); frame1.dispose(); diff --git a/src/main/java/com/example/client/service/TrackRecordManageService.java b/src/main/java/com/example/client/service/TrackRecordManageService.java index 6c1f7a9..ecc2ee0 100644 --- a/src/main/java/com/example/client/service/TrackRecordManageService.java +++ b/src/main/java/com/example/client/service/TrackRecordManageService.java @@ -79,7 +79,7 @@ JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(null); String[] typeList = new String[]{ - "","鏀硅", "鍔犺", "鎹㈣", "淇悊","鏀硅繘鎬т慨鐞�" + "","鏀规崲瑁�","淇悊","鏀硅繘鎬т慨鐞�","涓嶅瑁呰澶�" }; JComboBoxItem[] isealCabin = { new JComboBoxItem(10000L, ""), @@ -330,6 +330,7 @@ columnDto.add(new ColumnDto("浜岀骇鑺傜偣", "level2NodeName", 120, null, false, null, null)); columnDto.add(new ColumnDto("璁惧鍚嶇О", "level3NetworkName", 120, null, false, null, null)); columnDto.add(new ColumnDto("鏄惁褰卞搷灏佽埍", "isealCabin", 180, "dict", false, null, isealCabin)); + columnDto.add(new ColumnDto("鏄惁鑱旇皟", "islt", 180, "dict", false, null, isealCabin)); columnDto.add(new ColumnDto("褰撳墠鑺傜偣", "level3NodeName", 150, null, false, null, null)); columnDto.add(new ColumnDto("璁″垝瀹屾垚鏃堕棿", "requiredCompletionTime", 180, null, false, null, null)); columnDto.add(new ColumnDto("璺熻釜璁板綍", "", 100, "", true, buttonList, null)); diff --git a/src/main/java/com/example/client/utils/ColorDescriptionComboBox.java b/src/main/java/com/example/client/utils/ColorDescriptionComboBox.java index b9754cd..6669f9d 100644 --- a/src/main/java/com/example/client/utils/ColorDescriptionComboBox.java +++ b/src/main/java/com/example/client/utils/ColorDescriptionComboBox.java @@ -48,9 +48,11 @@ @Override public void setItem(Object anObject) { - // 绂佺敤鑷姩鏇存柊缂栬緫鍣ㄦ枃鏈殑琛屼负 - if (textField != null) { - textField.setText(defaultText); // 濮嬬粓鏄剧ず榛樿鏂囨湰 + if (anObject instanceof ColorDescription) { + ColorDescription cd = (ColorDescription) anObject; + textField.setText(cd.getDescription()); // 璁剧疆缂栬緫鍣ㄦ枃鏈负鎻忚堪 + } else { + textField.setText(defaultText); // 璁剧疆榛樿鏂囨湰 } } }); diff --git a/src/main/java/com/example/client/utils/CustomPanel.java b/src/main/java/com/example/client/utils/CustomPanel.java new file mode 100644 index 0000000..0e7c3dd --- /dev/null +++ b/src/main/java/com/example/client/utils/CustomPanel.java @@ -0,0 +1,62 @@ +package com.example.client.utils; + +import javax.swing.*; +import java.awt.*; + +public class CustomPanel extends JPanel { + private static final int DIAMETER = 20; // 鍦嗙殑鐩村緞 + private static final int SPACING = 10; // 鍦嗗拰鏂囧瓧涔嬮棿鐨勯棿璺� + + private static class CircleInfo { + String colorCode; + String text; + + CircleInfo(String colorCode, String text) { + this.colorCode = colorCode; + this.text = text; + } + } + + public CustomPanel() { + // 娣诲姞澶氫釜鍦嗗舰鍜屾枃瀛椾俊鎭� + CircleInfo[] circleInfos = new CircleInfo[]{ + new CircleInfo("#3498DB", "杩涜涓�"), + new CircleInfo("#F1C40F", "涓存湡(7澶�)"), + new CircleInfo("#E74C3C", "閫炬湡"), + new CircleInfo("#2ECC71", "姝e父瀹屾垚"), + new CircleInfo("#006400", "瓒呮湡瀹屾垚") + }; + setCircleInfos(circleInfos); + } + + private CircleInfo[] circleInfos; + + public void setCircleInfos(CircleInfo[] circleInfos) { + this.circleInfos = circleInfos; + revalidate(); + repaint(); + } + + @Override + protected void paintComponent(Graphics g) { + super.paintComponent(g); + + int x = 140; // 璧峰缁樺埗浣嶇疆 + int y = (getHeight() - DIAMETER) / 2; // 鍨傜洿灞呬腑 + + for (CircleInfo circleInfo : circleInfos) { + // 瑙f瀽棰滆壊浠g爜骞剁粯鍒跺渾褰� + Color color = Color.decode(circleInfo.colorCode); + g.setColor(color); + g.fillOval(x, y, DIAMETER, DIAMETER); + + // 璁剧疆鏂囧瓧棰滆壊鍜屽瓧浣擄紝骞剁粯鍒舵枃瀛� + g.setColor(Color.BLACK); + g.setFont(new Font("瀹嬩綋", Font.BOLD, 20)); + x += DIAMETER + SPACING; // 鏇存柊缁樺埗浣嶇疆 + g.drawString(circleInfo.text, x, y + DIAMETER / 2 + 5); + + x += g.getFontMetrics().stringWidth(circleInfo.text) + 20; // 鏇存柊缁樺埗浣嶇疆 + } + } +} diff --git a/src/main/java/com/example/server/DataSync/service/DataSyncService.java b/src/main/java/com/example/server/DataSync/service/DataSyncService.java index 029b576..51348b7 100644 --- a/src/main/java/com/example/server/DataSync/service/DataSyncService.java +++ b/src/main/java/com/example/server/DataSync/service/DataSyncService.java @@ -66,10 +66,12 @@ String mySite = (String) UserAndSiteUtils.get("site", "site"); // 寮瑰嚭鏂囦欢閫夋嫨妗嗭紝璁╃敤鎴烽�夋嫨淇濆瓨ZIP鏂囦欢鐨勮矾寰� - String outputZipPath = showSaveFileDialog(mySite + "鍚屾鏁版嵁鍖�.zip"); + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); + + String outputZipPath = showSaveFileDialog(dateFormat.format(new Date()) + mySite + "鍚屾鏁版嵁鍖�.zip"); if (outputZipPath == null) { - massage[0] = "鐢ㄦ埛鍙栨秷淇濆瓨锛岀▼搴忛��鍑恒��"+ new Date(); + massage[0] = "鐢ㄦ埛鍙栨秷淇濆瓨锛岀▼搴忛��鍑恒��" + new Date(); tips.setText(tips.getText() + massage[0]); } else { final WaitUtil waitUtil = new WaitUtil(imgPath, "鏁版嵁姝e湪瀵煎叆锛岃绋嶅��"); @@ -154,6 +156,9 @@ Path sourceDir = Paths.get(UnzipPath + "life-protection"); Path targetDir = Paths.get(localPath + "life-protection"); + if (!Files.exists(sourceDir)) { + Files.createDirectories(sourceDir); + } // 濡傛灉鐩爣鏂囦欢澶逛笉瀛樺湪锛屽垱寤哄畠 if (!Files.exists(targetDir)) { Files.createDirectories(targetDir); @@ -230,7 +235,7 @@ syncTable("dj_jdgz_ship"); syncTable("dj_jdgz_dismant_track"); } - ImportRecord data =new ImportRecord(); + ImportRecord data = new ImportRecord(); data.setImportSite(otherSite); importRecordDao.insert(data); List<ImportRecord> list = importRecordDao.getList(); diff --git a/src/main/java/com/example/server/progressTrack/Dto/StatistProductDto.java b/src/main/java/com/example/server/progressTrack/Dto/StatistProductDto.java index 6996c36..310526c 100644 --- a/src/main/java/com/example/server/progressTrack/Dto/StatistProductDto.java +++ b/src/main/java/com/example/server/progressTrack/Dto/StatistProductDto.java @@ -14,4 +14,10 @@ private Integer fcsl; private Integer hzsl; private Integer wcsl; + private Integer ccsl; + private Integer rksl; + private Integer cfsl; + private Integer yjsl; + private Integer dcsl; + private Integer azsl; } diff --git a/src/main/java/com/example/server/progressTrack/Dto/TableNodeDto.java b/src/main/java/com/example/server/progressTrack/Dto/TableNodeDto.java index 13899e3..d02ef3f 100644 --- a/src/main/java/com/example/server/progressTrack/Dto/TableNodeDto.java +++ b/src/main/java/com/example/server/progressTrack/Dto/TableNodeDto.java @@ -18,6 +18,9 @@ @ApiModelProperty(value = "褰撳墠鐘舵��") private Integer currentStatus; + private Integer islt; + private Integer isealCabin; + private String processName; private String name; @@ -27,4 +30,9 @@ private String time4Color; private String time5Color; + private String yqText; + private String lqText; + private String cqText; + private String remark; + } diff --git a/src/main/java/com/example/server/progressTrack/dao/DjJdgzNetworkLevel3Dao.java b/src/main/java/com/example/server/progressTrack/dao/DjJdgzNetworkLevel3Dao.java index fc5f467..2079aab 100644 --- a/src/main/java/com/example/server/progressTrack/dao/DjJdgzNetworkLevel3Dao.java +++ b/src/main/java/com/example/server/progressTrack/dao/DjJdgzNetworkLevel3Dao.java @@ -21,7 +21,7 @@ @Mapper public interface DjJdgzNetworkLevel3Dao extends BaseDao<DjJdgzNetworkLevel3> { - List<DjJdgzNetworkLevel3> getList(Long shipId, Long deptId, Long teamId, Long cabinId, String type,Integer isealCabin,String name); + List<DjJdgzNetworkLevel3> getList(Long shipId, Long deptId, Long teamId, Long cabinId, String type,Integer isealCabin,Integer isLt,String name); List<NetworkNodeStatusDto> getNodeStatusData(Long id); void deleteLevel3(Long id); @@ -35,7 +35,9 @@ JComboBoxItem[] getListByExport(Long projectId, Long deptId, Long teamId); - List<TableNodeDto> getNodeList(Long shipId, Long deptId, Long teamId, Long cabinId, String type, String name); + List<TableNodeDto> getNodeList(Long shipId, Long deptId, Long teamId, Long cabinId, String type,Integer isCabin,Integer islt, String name); - List<StatistProductDto> getStatist(Long level1Id); + List<StatistProductDto> getStatist(Long level1Id,String type); + + String getRemark(Long networkId, String type); } diff --git a/src/main/java/com/example/server/progressTrack/dao/DjJdgzNetworkLevel3ListDao.java b/src/main/java/com/example/server/progressTrack/dao/DjJdgzNetworkLevel3ListDao.java index cfa2a39..0338ae1 100644 --- a/src/main/java/com/example/server/progressTrack/dao/DjJdgzNetworkLevel3ListDao.java +++ b/src/main/java/com/example/server/progressTrack/dao/DjJdgzNetworkLevel3ListDao.java @@ -28,7 +28,7 @@ List<DjJdgzNetworkLevel3List> getNextNode(Integer sort, Long networkId); - List<DjJdgzNetworkLevel3List> getDefult(); + List<DjJdgzNetworkLevel3List> getDefult(Long defultId); List<DiagramNode2Dto> getAllNodeLevel3ByProject(Long level1NetworkId, Long userId); diff --git a/src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java b/src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java index 90c2ee6..48ebf03 100644 --- a/src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java +++ b/src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java @@ -41,4 +41,6 @@ List<ReportRecordDto> getReportRecord(Long level1NetworkId, int column, Long teamgroupId); Long getIsExit(Long level3NetworkId, String processName); + + List<DjJdgzTrackRecord> getName(Long level3NetworkId); } diff --git a/src/main/java/com/example/server/progressTrack/model/DjJdgzNetworkLevel3.java b/src/main/java/com/example/server/progressTrack/model/DjJdgzNetworkLevel3.java index 9003534..1491499 100644 --- a/src/main/java/com/example/server/progressTrack/model/DjJdgzNetworkLevel3.java +++ b/src/main/java/com/example/server/progressTrack/model/DjJdgzNetworkLevel3.java @@ -34,6 +34,9 @@ @ApiModelProperty(value = "鏄惁褰卞搷灏佽埍") private Integer isealCabin; + @ApiModelProperty(value = "鏄惁鑱旇皟") + private Integer islt; + @ApiModelProperty(value = "鐝粍涓撲笟ID") private Long teamgroupId; diff --git a/src/main/java/com/example/server/progressTrack/model/DjJdgzTrackRecord.java b/src/main/java/com/example/server/progressTrack/model/DjJdgzTrackRecord.java index cc421a7..a37eed8 100644 --- a/src/main/java/com/example/server/progressTrack/model/DjJdgzTrackRecord.java +++ b/src/main/java/com/example/server/progressTrack/model/DjJdgzTrackRecord.java @@ -122,6 +122,10 @@ @TableField(exist = false) @ApiModelProperty(value = "") + private Integer islt; + + @TableField(exist = false) + @ApiModelProperty(value = "") private Integer trackNum; @TableField(exist = false) diff --git a/src/main/java/com/example/server/progressTrack/service/DjJdgzDismantTrackService.java b/src/main/java/com/example/server/progressTrack/service/DjJdgzDismantTrackService.java index c4a2a04..cdef401 100644 --- a/src/main/java/com/example/server/progressTrack/service/DjJdgzDismantTrackService.java +++ b/src/main/java/com/example/server/progressTrack/service/DjJdgzDismantTrackService.java @@ -93,7 +93,7 @@ sheetName = sheet.getSheetName(); //鑾峰彇褰撳墠sheet鍚嶇О sum = sum + num; - List<DjJdgzNetworkLevel3> list = djJdgzNetworkLevel3Service.getList(null, null, null, null, null,null,null); + List<DjJdgzNetworkLevel3> list = djJdgzNetworkLevel3Service.getList(null, null, null, null, null,null,null,null); JComboBoxItem[] list1 = cabinService.getList(); diff --git a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel1ListService.java b/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel1ListService.java index 1a1f037..eacd465 100644 --- a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel1ListService.java +++ b/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel1ListService.java @@ -78,7 +78,7 @@ data.setContent(simpleDiagram); djJdgzNetworkLevel1Service.update(data); - netWorkDiagramService.getCsDiagram(graph,simpleDiagram,null,jPanel.getWidth(),jPanel.getHeight()); + netWorkDiagramService.getCsDiagram(graph,simpleDiagram,null,jPanel.getWidth(),jPanel.getHeight(),null); } public String getDiagram(Long networkId) { diff --git a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel1Service.java b/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel1Service.java index 90b163a..9049fed 100644 --- a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel1Service.java +++ b/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 = djJdgzNetworkLevel2ListDao.getNodeList(item.getId()); + } + return nodeList2; + } } diff --git a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel2ListService.java b/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel2ListService.java index 19d4d01..bd35894 100644 --- a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel2ListService.java +++ b/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel2ListService.java @@ -99,7 +99,7 @@ DjJdgzNetworkLevel2 level2 = djJdgzNetworkLevel2Service.get(networkId); level2.setContent(simpleDiagram); djJdgzNetworkLevel2Service.update(level2); - netWorkDiagramService.getCsDiagram(graph,simpleDiagram,null,jPanel.getWidth(),jPanel.getHeight()); + netWorkDiagramService.getCsDiagram(graph,simpleDiagram,null,jPanel.getWidth(),jPanel.getHeight(),null); } /** diff --git a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3ListService.java b/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3ListService.java index 5fc33a3..fdfa59e 100644 --- a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3ListService.java +++ b/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3ListService.java @@ -1,5 +1,6 @@ package com.example.server.progressTrack.service; +import com.example.client.dto.ColumnDto; import com.example.client.dto.JComboBoxItem; import com.example.client.service.BaseService; import com.example.server.progressTrack.Dto.DiagramMajorDto; @@ -16,6 +17,7 @@ import org.springframework.stereotype.Service; import javax.swing.*; +import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -63,8 +65,16 @@ return djJdgzNetworkLevel3List; } - public List<DjJdgzNetworkLevel3List> getDefult() { - return baseDao.getDefult(); + public List<DjJdgzNetworkLevel3List> getDefult(String type) { + Long defultId = null; + if (type.equals("鏀硅繘鎬т慨鐞�")||type.equals("鏀规崲瑁�")){ + defultId = 10002L; + } else if (type.equals("涓嶅瑁呰澶�")) { + defultId = 10001L; + }else if (type.equals("淇悊")) { + defultId = 10000L; + } + return baseDao.getDefult(defultId); } public void save(List<DjJdgzNetworkLevel3List> list, Long networkId, JPanel jPanel, mxGraph graph) { //baseDao.deleteAll(networkId); @@ -83,7 +93,7 @@ data.setContent(simpleDiagram); djJdgzNetworkLevel3Service.update(data); - netWorkDiagramService.getCsDiagram(graph,simpleDiagram,null,jPanel.getWidth(),jPanel.getHeight()); + netWorkDiagramService.getCsDiagram(graph,simpleDiagram,null,jPanel.getWidth(),jPanel.getHeight(),null); } public JComboBoxItem[] getListBothItem(Long networkId) { diff --git a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3Service.java b/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3Service.java index a7ae88b..c17dd52 100644 --- a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3Service.java +++ b/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3Service.java @@ -51,8 +51,8 @@ @Value("${zt.oss.local-path}") private String path; - public List<StatistProductDto> getStatist(Long level1Id) { - return baseDao.getStatist(level1Id); + public List<StatistProductDto> getStatist(Long level1Id,String type) { + return baseDao.getStatist(level1Id,type); } enum StatusEnum {zy, jxz, lq, yq, zcwc, cqwc} @@ -60,8 +60,8 @@ String[] fillColorArr = {"#e5e5e5", "#3498DB", "#F1C40F", "#E74C3C", "#2ECC71", "#006400"}; String[] fontColorArr = {"#e5e5e5", "#3498DB", "#F1C40F", "#E74C3C", "#2ECC71", "#006400"}; - public List<DjJdgzNetworkLevel3> getList(Long shipId, Long deptId, Long teamId, Long cabinId, String type,Integer isealCabin, String name) { - List<DjJdgzNetworkLevel3> list = baseDao.getList(shipId, deptId, teamId, cabinId, type,isealCabin, name); + public List<DjJdgzNetworkLevel3> getList(Long shipId, Long deptId, Long teamId, Long cabinId, String type, Integer isealCabin,Integer isLt, String name) { + List<DjJdgzNetworkLevel3> list = baseDao.getList(shipId, deptId, teamId, cabinId, type, isealCabin,isLt, name); return list; } @@ -135,13 +135,6 @@ sheetName = sheet.getSheetName(); //鑾峰彇褰撳墠sheet鍚嶇О sum = sum + num; - Map<Integer, String> mapProcessName = new HashMap<>(); - mapProcessName.put(1, "璁惧鎷嗗嵏鍑鸿埍"); - mapProcessName.put(2, "璁惧鍒嗕氦"); - mapProcessName.put(3, "鎷嗘閴村畾"); - mapProcessName.put(4, "璁惧杩斿巶"); - mapProcessName.put(5, "鍥炶"); - Map<String, String> mapTeamGroup = sysTeamGroupClassService.getMapGroup(false, "hld"); JComboBoxItem[] cabinList = cabinService.getList(); JComboBoxItem[] deptList = sysTeamGroupClassService.getDeptList(); @@ -173,25 +166,30 @@ String name = ImportUtil.getCellValue(row, 0, pattern); String isealCabinStr = ImportUtil.getCellValue(row, 1, pattern); - String deptStr = ImportUtil.getCellValue(row, 2, pattern); - String teamGroupStr = ImportUtil.getCellValue(row, 3, pattern); - String cabinStr = ImportUtil.getCellValue(row, 4, pattern); - String typeStr = ImportUtil.getCellValue(row, 5, pattern); - String time1 = ImportUtil.getCellValue(row, 6, pattern); - String time2 = ImportUtil.getCellValue(row, 7, pattern); - String time3 = ImportUtil.getCellValue(row, 8, pattern); - String time4 = ImportUtil.getCellValue(row, 9, pattern); - String time5 = ImportUtil.getCellValue(row, 10, pattern); - String repairUnit = ImportUtil.getCellValue(row, 11, pattern); - String repairUnitDirector = ImportUtil.getCellValue(row, 12, pattern); - String repairUnitContact = ImportUtil.getCellValue(row, 13, pattern); - String generalRepairUnit = ImportUtil.getCellValue(row, 14, pattern); - String generalRepairUnitDirector = ImportUtil.getCellValue(row, 15, pattern); - String generalRepairUnitContact = ImportUtil.getCellValue(row, 16, pattern); + String isltStr = ImportUtil.getCellValue(row, 2, pattern); + String deptStr = ImportUtil.getCellValue(row, 3, pattern); + String teamGroupStr = ImportUtil.getCellValue(row, 4, pattern); + String cabinStr = ImportUtil.getCellValue(row, 5, pattern); + String typeStr = ImportUtil.getCellValue(row, 6, pattern); + String time1 = ImportUtil.getCellValue(row, 7, pattern); + String time2 = ImportUtil.getCellValue(row, 8, pattern); + String time3 = ImportUtil.getCellValue(row, 9, pattern); + String time4 = ImportUtil.getCellValue(row, 10, pattern); + String time5 = ImportUtil.getCellValue(row, 11, pattern); + String repairUnit = ImportUtil.getCellValue(row, 12, pattern); + String repairUnitDirector = ImportUtil.getCellValue(row, 13, pattern); + String repairUnitContact = ImportUtil.getCellValue(row, 14, pattern); + String generalRepairUnit = ImportUtil.getCellValue(row, 15, pattern); + String generalRepairUnitDirector = ImportUtil.getCellValue(row, 16, pattern); + String generalRepairUnitContact = ImportUtil.getCellValue(row, 17, pattern); Integer isealCabin = 0; - if (isealCabinStr.equals("鏄�")){ + Integer islt = 0; + if (isealCabinStr.equals("鏄�")) { isealCabin = 1; + } + if (isltStr.equals("鏄�")) { + islt = 1; } Long id = UUIDUtil.generateId(); @@ -207,6 +205,7 @@ data.setLevel2NetworkId(level2NetworkId); data.setLevel2NodeId(level2NodeId); data.setIsealCabin(isealCabin); + data.setIslt(islt); } if (StringUtils.isEmpty(deptStr)) { @@ -270,21 +269,29 @@ } if (StringUtils.isNotBlank(time1)) { + String Pname = ""; + if (typeStr.equals("鏀规崲瑁�")||typeStr.equals("鏀硅繘鎬т慨鐞�")){ + Pname = "璁惧鍒板巶"; + }else if(typeStr.equals("淇悊")){ + Pname = "璁惧鎷嗗嵏鍑鸿埍"; + }else if(typeStr.equals("涓嶅瑁呰澶�")){ + Pname = "鎷嗗嵏鍑鸿埍"; + } if (time1.matches("[0-9/]+")) { time1 = time1.replace("/", "-"); node.setRequiredCompletionTime(time1); - node.setProcessName(mapProcessName.get(1)); + node.setProcessName(Pname); node.setSort(1); DjJdgzNetworkLevel3ListService.insert(node); } else if (time1.matches("[0-9.]+")) { time1 = time1.replace(".", "-"); node.setRequiredCompletionTime(time1); - node.setProcessName(mapProcessName.get(1)); + node.setProcessName(Pname); node.setSort(1); DjJdgzNetworkLevel3ListService.insert(node); } else if (time1.matches("[0-9-]+")) { node.setRequiredCompletionTime(time1); - node.setProcessName(mapProcessName.get(1)); + node.setProcessName(Pname); node.setSort(1); DjJdgzNetworkLevel3ListService.insert(node); } else { @@ -297,20 +304,28 @@ if (node.getId() != null) { node.setId(null); } + String Pname = ""; + if (typeStr.equals("鏀规崲瑁�")||typeStr.equals("鏀硅繘鎬т慨鐞�")){ + Pname = "璁惧瀹夎"; + }else if(typeStr.equals("淇悊")){ + Pname = "璁惧鍒嗕氦"; + }else if(typeStr.equals("涓嶅瑁呰澶�")){ + Pname = "鍏ュ簱"; + } if (time2.matches("[0-9/]+")) { node.setRequiredCompletionTime(time2); - node.setProcessName(mapProcessName.get(2)); + node.setProcessName(Pname); node.setSort(2); DjJdgzNetworkLevel3ListService.insert(node); } else if (time2.matches("[0-9.]+")) { time2 = time2.replace(".", "-"); node.setRequiredCompletionTime(time2); - node.setProcessName(mapProcessName.get(2)); + node.setProcessName(Pname); node.setSort(2); DjJdgzNetworkLevel3ListService.insert(node); } else if (time2.matches("[0-9-]+")) { node.setRequiredCompletionTime(time2); - node.setProcessName(mapProcessName.get(2)); + node.setProcessName(Pname); node.setSort(2); DjJdgzNetworkLevel3ListService.insert(node); } else { @@ -323,21 +338,27 @@ if (node.getId() != null) { node.setId(null); } + String Pname = ""; + if(typeStr.equals("淇悊")){ + Pname = "鎷嗘閴村畾"; + }else if(typeStr.equals("涓嶅瑁呰澶�")){ + Pname = "瀛樻斁浣嶇疆"; + } if (time3.matches("[0-9/]+")) { time3 = time3.replace("/", "-"); node.setRequiredCompletionTime(time3); - node.setProcessName(mapProcessName.get(3)); + node.setProcessName(Pname); node.setSort(3); DjJdgzNetworkLevel3ListService.insert(node); } else if (time3.matches("[0-9.]+")) { time3 = time3.replace(".", "-"); node.setRequiredCompletionTime(time3); - node.setProcessName(mapProcessName.get(3)); + node.setProcessName(Pname); node.setSort(3); DjJdgzNetworkLevel3ListService.insert(node); } else if (time3.matches("[0-9-]+")) { node.setRequiredCompletionTime(time3); - node.setProcessName(mapProcessName.get(3)); + node.setProcessName(Pname); node.setSort(3); DjJdgzNetworkLevel3ListService.insert(node); } else { @@ -350,21 +371,27 @@ if (node.getId() != null) { node.setId(null); } + String Pname = ""; + if(typeStr.equals("淇悊")){ + Pname = "璁惧杩斿巶"; + }else if(typeStr.equals("涓嶅瑁呰澶�")){ + Pname = "绉讳氦T闃�"; + } if (time4.matches("[0-9/]+")) { time4 = time4.replace("/", "-"); node.setRequiredCompletionTime(time4); - node.setProcessName(mapProcessName.get(4)); + node.setProcessName(Pname); node.setSort(4); DjJdgzNetworkLevel3ListService.insert(node); } else if (time4.matches("[0-9.]+")) { time4 = time4.replace(".", "-"); node.setRequiredCompletionTime(time4); - node.setProcessName(mapProcessName.get(4)); + node.setProcessName(Pname); node.setSort(4); DjJdgzNetworkLevel3ListService.insert(node); } else if (time4.matches("[0-9-]+")) { node.setRequiredCompletionTime(time4); - node.setProcessName(mapProcessName.get(4)); + node.setProcessName(Pname); node.setSort(4); DjJdgzNetworkLevel3ListService.insert(node); } else { @@ -380,18 +407,18 @@ if (time5.matches("[0-9/]+")) { time5 = time5.replace("/", "-"); node.setRequiredCompletionTime(time5); - node.setProcessName(mapProcessName.get(5)); + node.setProcessName("鍥炶"); node.setSort(5); DjJdgzNetworkLevel3ListService.insert(node); } else if (time5.matches("[0-9.]+")) { time5 = time5.replace(".", "-"); node.setRequiredCompletionTime(time5); - node.setProcessName(mapProcessName.get(5)); + node.setProcessName("鍥炶"); node.setSort(5); DjJdgzNetworkLevel3ListService.insert(node); } else if (time5.matches("[0-9-]+")) { node.setRequiredCompletionTime(time5); - node.setProcessName(mapProcessName.get(5)); + node.setProcessName("鍥炶"); node.setSort(5); DjJdgzNetworkLevel3ListService.insert(node); } else { @@ -449,8 +476,8 @@ return list; } - public List<TableNodeDto> getNodeList(Long shipId, Long deptId, Long teamId, Long cabinId, String type, String name) { - List<TableNodeDto> list = baseDao.getNodeList(shipId, deptId, teamId, cabinId, type, name); + public List<TableNodeDto> getNodeList(Long shipId, Long deptId, Long teamId, Long cabinId, String type,Integer isCabin,Integer islt, String name) { + List<TableNodeDto> list = baseDao.getNodeList(shipId, deptId, teamId, cabinId, type,isCabin,islt, name); Map<Long, StatusEnum> statusMap = new HashMap<>(); Date today = new Date(); @@ -472,8 +499,12 @@ if (node.getCurrentStatus() == null || node.getCurrentStatus() == 0) { if (today.after(requiredCompletionDate)) { statusMap.put(node.getId(), StatusEnum.yq); + int days = (int) ((today.getTime() - requiredCompletionDate.getTime()) / (1000 * 60 * 60 * 24)); + node.setYqText("瑕佹眰鏃堕棿涓�" + sdf.format(requiredCompletionDate) + "宸查�炬湡" + days + "澶�"); } else if ((requiredCompletionDate.getTime() - today.getTime()) / (1000 * 60 * 60 * 24) < 7) { statusMap.put(node.getId(), StatusEnum.lq); + int days = (int) ((requiredCompletionDate.getTime() - today.getTime()) / (1000 * 60 * 60 * 24)); + node.setLqText("瑕佹眰鏃堕棿涓�" + sdf.format(requiredCompletionDate) + "杩樻湁" + days + "澶╀复鏈�"); } else { statusMap.put(node.getId(), StatusEnum.jxz); } @@ -481,6 +512,8 @@ // 宸插畬鎴� if (node.getActualCompletion() != null && actualCompletionDate.after(requiredCompletionDate)) { statusMap.put(node.getId(), StatusEnum.cqwc); + int days = (int) ((today.getTime() - requiredCompletionDate.getTime()) / (1000 * 60 * 60 * 24)); + node.setCqText("瑕佹眰鏃堕棿涓�" + sdf.format(requiredCompletionDate) + "瓒呮湡" + days + "澶╁畬鎴�"); } else { statusMap.put(node.getId(), StatusEnum.zcwc); } @@ -495,20 +528,37 @@ } else { data = new TableNodeDto(); + String remark = baseDao.getRemark(node.getNetworkId(),type); + if (StringUtils.isNotBlank(remark)){ + data.setRemark(remark); + } data.setName(node.getName()); data.setNetworkId(node.getNetworkId()); + data.setIsealCabin(node.getIsealCabin()); + data.setIslt(node.getIslt()); dataList.add(data); oldId = node.getNetworkId(); } + status = statusMap.get(node.getId()); - if (node.getProcessName().equals("璁惧鎷嗗嵏鍑鸿埍")) { + if (StringUtils.isNotBlank(node.getLqText())) { + data.setLqText(node.getLqText()); + } + if (StringUtils.isNotBlank(node.getYqText())) { + data.setYqText(node.getYqText()); + } + if (StringUtils.isNotBlank(node.getCqText())) { + data.setCqText(node.getCqText()); + } + + if (node.getProcessName().equals("璁惧鎷嗗嵏鍑鸿埍")||node.getProcessName().equals("璁惧鍒板巶")||node.getProcessName().equals("鎷嗗嵏鍑鸿埍")) { data.setTime1Color(fillColorArr[status.ordinal()]); - } else if (node.getProcessName().equals("璁惧鍒嗕氦")) { + } else if (node.getProcessName().equals("璁惧鍒嗕氦")||node.getProcessName().equals("璁惧瀹夎")||node.getProcessName().equals("鍏ュ簱")) { data.setTime2Color(fillColorArr[status.ordinal()]); - } else if (node.getProcessName().equals("鎷嗘閴村畾")) { + } else if (node.getProcessName().equals("鎷嗘閴村畾")||node.getProcessName().equals("瀛樻斁浣嶇疆")) { data.setTime3Color(fillColorArr[status.ordinal()]); - } else if (node.getProcessName().equals("璁惧杩斿巶")) { + } else if (node.getProcessName().equals("璁惧杩斿巶")||node.getProcessName().equals("绉讳氦T闃�")) { data.setTime4Color(fillColorArr[status.ordinal()]); } else if (node.getProcessName().equals("鍥炶")) { data.setTime5Color(fillColorArr[status.ordinal()]); diff --git a/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java b/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java index 26d6fd0..391d936 100644 --- a/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java +++ b/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java @@ -129,7 +129,8 @@ if (djJdgzTrackRecord.getCurrentStatus() == 1) { DjJdgzNetworkLevel3List nextNode = djJdgzNetworkLevel3ListService.getNextNode(djJdgzTrackRecord.getLevel3NodeId(), djJdgzTrackRecord.getLevel3NetworkId()); - if (nextNode != null) { + Long oldId = baseDao.getIsExit(nextNode.getNetworkId(),nextNode.getProcessName()); + if (nextNode != null && oldId == null) { DjJdgzTrackRecord data = new DjJdgzTrackRecord(); data.setLevel3NodeId(nextNode.getId()); data.setProcessName(nextNode.getProcessName()); @@ -543,4 +544,8 @@ public List<ReportRecordDto> getReportRecord(Long level1NetworkId, int column, Long teamgroupId) { return baseDao.getReportRecord(level1NetworkId, column, teamgroupId); } + + public List<DjJdgzTrackRecord> getName(Long level3NetworkId) { + return baseDao.getName(level3NetworkId); + } } diff --git a/src/main/java/com/example/server/progressTrack/service/NetWorkDiagramService.java b/src/main/java/com/example/server/progressTrack/service/NetWorkDiagramService.java index 78a5b2a..4cc3de7 100644 --- a/src/main/java/com/example/server/progressTrack/service/NetWorkDiagramService.java +++ b/src/main/java/com/example/server/progressTrack/service/NetWorkDiagramService.java @@ -4,7 +4,6 @@ import cn.hutool.core.date.DateUtil; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject;; -import cn.hutool.json.XML; import com.example.client.service.BaseService; import com.example.client.utils.UUIDUtil; import com.example.server.progressTrack.Dto.*; @@ -13,7 +12,6 @@ import com.example.server.utils.TimeUtils; import com.mxgraph.util.mxConstants; import com.mxgraph.view.mxGraph; -import com.mxgraph.view.mxStylesheet; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -1187,10 +1185,11 @@ return result; } - public mxGraph getCsDiagram(mxGraph graph, String json, List<NetworkNodeStatusDto> nodeStatusList, Integer panelWidth, Integer panelHeight) { + public mxGraph getCsDiagram(mxGraph graph, String json, List<NetworkNodeStatusDto> nodeStatusList, Integer panelWidth, Integer panelHeight, List<DiagramNodeDto> list) { if (StringUtils.isBlank(json)) { return graph; } + Map<Long, StatusEnum> statusMap = new HashMap<>(); if (nodeStatusList != null) { Date today = new Date(); @@ -1311,7 +1310,7 @@ if ("1888761224410202114".equals(idValue)) { System.out.println(2222); } - Object insertVertex = createInsertVertex(graph, jsonArray.getJSONObject(i), defX, defY, status); + Object insertVertex = createInsertVertex(graph, jsonArray.getJSONObject(i), defX, defY, status, list); map.put(idValue, insertVertex); } } @@ -1449,7 +1448,7 @@ return graph; } - public Object createInsertVertex(mxGraph graph, JSONObject jsonObject, Integer defX, Integer defY, StatusEnum status) { + public Object createInsertVertex(mxGraph graph, JSONObject jsonObject, Integer defX, Integer defY, StatusEnum status, List<DiagramNodeDto> list) { Object parent = graph.getDefaultParent(); String shapeValue = jsonObject.get("shape").toString(); Object graphObject = null; @@ -1457,7 +1456,7 @@ case "custom-circle": case "custom-circle1": String text = (String) JsonUtils2.getJsonValueByPath(jsonObject, "attrs/text/text".split("/")); - //String title = (String) JsonUtils2.getJsonValueByPath(jsonObject, "attrs/title/text".split("/")); + String title = (String) JsonUtils2.getJsonValueByPath(jsonObject, "attrs/title/text".split("/")); String idValue = jsonObject.get("id").toString(); Integer x = (Integer) JsonUtils2.getJsonValueByPath(jsonObject, "position/x".split("/")) + defX; @@ -1466,8 +1465,21 @@ Integer height = (Integer) JsonUtils2.getJsonValueByPath(jsonObject, "size/height".split("/")); if (status != null) { String fontColor = "fontColor=" + fillColorArr[status.ordinal()] + ";"; - graphObject = graph.insertVertex(parent, idValue, text, x, y, width, height, - "whiteSpace=wrap;labelWidth=60;" + fontColor + mxConstants.STYLE_SHAPE + "=" + mxConstants.SHAPE_ELLIPSE); + if (list != null && list.size() > 0) { + for (DiagramNodeDto node : list) { + if (text.equals(node.getProcessName())){ + graphObject = graph.insertVertex(parent, idValue, text, x, y, width, height, + "whiteSpace=wrap;labelWidth=60;" + fontColor ); + break; + }else{ + graphObject = graph.insertVertex(parent, idValue, text, x, y, width, height, + "whiteSpace=wrap;labelWidth=60;" + fontColor + mxConstants.STYLE_SHAPE + "=" + mxConstants.SHAPE_ELLIPSE); + } + } + }else{ + graphObject = graph.insertVertex(parent, idValue, text, x, y, width, height, + "whiteSpace=wrap;labelWidth=60;" + fontColor + mxConstants.STYLE_SHAPE + "=" + mxConstants.SHAPE_ELLIPSE); + } } else { if ("寮�濮�".equals(text) || "缁撴潫".equals(text)) { graphObject = graph.insertVertex(parent, idValue, "", x + width / 4, y + height / 4, width / 2, height / 2, @@ -1477,9 +1489,9 @@ "whiteSpace=wrap;labelWidth=60;" + mxConstants.STYLE_SHAPE + "=" + mxConstants.SHAPE_ELLIPSE); } } - /*if (StringUtils.isNotBlank(title)) { + if (StringUtils.isNotBlank(title)) { createText(graph, title, x, y, width, height); - }*/ + } break; case "custom-rect": String label = (String) JsonUtils2.getJsonValueByPath(jsonObject, "attrs/label/textWrap/text".split("/")); diff --git a/src/main/resources/db/csiczb1.db b/src/main/resources/db/csiczb1.db index 98fbf5d..f7a61aa 100644 --- a/src/main/resources/db/csiczb1.db +++ b/src/main/resources/db/csiczb1.db Binary files differ diff --git a/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel2ListDao.xml b/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel2ListDao.xml index 440d63b..5065892 100644 --- a/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel2ListDao.xml +++ b/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel2ListDao.xml @@ -100,7 +100,7 @@ and a.level1_node_id = ${level1NodeId} </select> <select id="getNodeList" resultType="com.example.server.progressTrack.Dto.DiagramNodeDto"> - select a.* + select a.*,a.REQUIRED_COMPLETION_TIME as REQUIRED_COMPLETION from dj_jdgz_network_level2_list a where a.is_delete = 0 diff --git a/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3Dao.xml b/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3Dao.xml index 47735e6..8ff478e 100644 --- a/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3Dao.xml +++ b/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3Dao.xml @@ -52,8 +52,11 @@ <if test="isealCabin!=10000 and isealCabin!=null"> and a.iseal_cabin = ${isealCabin} </if> + <if test="isLt!=10000 and isLt!=null"> + and a.islt = ${isLt} + </if> <if test="type!=null and type!=''"> - and a.type = #{type} + and a.type = '${type}' </if> <if test="name!=null and name!=''"> and a.name LIKE '%${name}%' @@ -98,35 +101,46 @@ </select> <select id="getNodeList" resultType="com.example.server.progressTrack.Dto.TableNodeDto"> SELECT - b.name, - a.NETWORK_ID, - a.process_name, - a.ID, a.REQUIRED_COMPLETION_TIME, a.ACTUAL_COMPLETION, a.CURRENT_STATUS - FROM `dj_jdgz_network_level3_list` a - LEFT JOIN dj_jdgz_network_level3 b on b.ID = a.NETWORK_ID - LEFT JOIN dj_jdgz_network_level1 c on c.ID = b.LEVEL1_NETWORK_ID + c.name, + b.NETWORK_ID, + b.process_name, + c.islt, + c.iseal_cabin, + b.ID, b.REQUIRED_COMPLETION_TIME, b.ACTUAL_COMPLETION, b.CURRENT_STATUS + FROM dj_jdgz_track_record a + LEFT JOIN dj_jdgz_network_level3_list b on b.ID = a.LEVEL3_NODE_ID + LEFT JOIN dj_jdgz_network_level3 c on c.ID = b.NETWORK_ID + LEFT JOIN dj_jdgz_network_level1 d on d.ID = c.LEVEL1_NETWORK_ID where a.is_delete = 0 and b.is_delete = 0 and c.is_delete = 0 + and d.is_delete = 0 <if test="shipId!=null"> - and c.ship_id = ${shipId} + and d.ship_id = ${shipId} </if> <if test="deptId!=null"> - and b.dept_id = ${deptId} + and c.dept_id = ${deptId} </if> <if test="teamId!=null"> - and b.TEAMGROUP_ID = ${teamId} + and c.TEAMGROUP_ID = ${teamId} </if> <if test="cabinId!=null"> - and b.cabin_id = ${cabinId} + and c.cabin_id = ${cabinId} + </if> + <if test="isCabin!=10000 and isCabin!=null"> + and c.iseal_cabin = ${isCabin} + </if> + <if test="islt!=10000 and islt!=null"> + and c.islt = ${islt} </if> <if test="type!=null and type!=''"> - and b.type = #{type} + and c.type = '${type}' </if> <if test="name!=null and name!=''"> - and b.name LIKE '%${name}%' + and c.name LIKE '%${name}%' </if> + ORDER BY NETWORK_ID </select> <select id="getStatist" resultType="com.example.server.progressTrack.Dto.StatistProductDto"> SELECT @@ -138,6 +152,12 @@ COUNT(DISTINCT CASE WHEN fvp.process_name = '鎷嗘閴村畾' THEN b.id END) AS jdsl, COUNT(DISTINCT CASE WHEN fvp.process_name = '璁惧杩斿巶' THEN b.id END) AS fcsl, COUNT(DISTINCT CASE WHEN fvp.process_name = '鍥炶' THEN b.id END) AS hzsl, + COUNT(DISTINCT CASE WHEN fvp.process_name = '鎷嗗嵏鍑鸿埍' THEN b.id END) AS ccsl, + COUNT(DISTINCT CASE WHEN fvp.process_name = '鍏ュ簱' THEN b.id END) AS rksl, + COUNT(DISTINCT CASE WHEN fvp.process_name = '瀛樻斁浣嶇疆' THEN b.id END) AS cfsl, + COUNT(DISTINCT CASE WHEN fvp.process_name = '绉讳氦T闃�' THEN b.id END) AS yjsl, + COUNT(DISTINCT CASE WHEN fvp.process_name = '璁惧鍒板巶' THEN b.id END) AS dcsl, + COUNT(DISTINCT CASE WHEN fvp.process_name = '璁惧瀹夎' THEN b.id END) AS azsl, COUNT(DISTINCT CASE WHEN all_complete.network_id IS NOT NULL THEN b.id END) AS wcsl FROM dj_sys_teamgroup_class a @@ -170,6 +190,10 @@ network_id FROM dj_jdgz_network_level3_list + LEFT JOIN dj_jdgz_network_level3 ON dj_jdgz_network_level3_list.network_id = dj_jdgz_network_level3.id + where dj_jdgz_network_level3_list.is_delete = 0 + and dj_jdgz_network_level3.is_delete = 0 + and dj_jdgz_network_level3.type = '${type}' GROUP BY network_id HAVING @@ -182,6 +206,24 @@ ORDER BY sort; </select> + <select id="getRemark" resultType="java.lang.String"> + SELECT + b.remark + FROM + dj_jdgz_track_record b + LEFT JOIN dj_jdgz_network_level3 a ON b.LEVEL3_NETWORK_ID = a.ID + WHERE + a.is_delete = 0 + AND b.is_delete = 0 + AND a.id = ${networkId} + AND a.type = '${type}' + AND b.remark IS NOT NULL + ORDER BY + ABS((julianday('now') - julianday(b.CREATE_DATE)) * 86400) desc, + ABS((julianday('now') - julianday(b.UPDATE_DATE)) * 86400) desc + + LIMIT 1; + </select> </mapper> diff --git a/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3ListDao.xml b/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3ListDao.xml index 67560a6..fa406ef 100644 --- a/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3ListDao.xml +++ b/src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3ListDao.xml @@ -35,7 +35,7 @@ select a.sort, a.process_name from dj_jdgz_network_level3_list a where a.is_delete = 0 - and a.network_id = 10000 + and a.network_id = ${defultId} ORDER BY sort </select> <select id="getAllNodeLevel3ByProject" diff --git a/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml b/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml index 7206048..f4883e6 100644 --- a/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml +++ b/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml @@ -36,6 +36,7 @@ c.dept_id, c.cabin_id, c.iseal_cabin, + c.islt, c.type, c.`NAME` as level3NetworkName, a.PROCESS_NAME AS level3NodeName, @@ -515,5 +516,18 @@ AND is_delete = 0 ) </select> + <select id="getName" resultType="com.example.server.progressTrack.model.DjJdgzTrackRecord"> + SELECT + PROCESS_NAME + FROM + dj_jdgz_track_record + WHERE + is_delete = 0 + AND LEVEL3_NETWORK_ID = ${level3NetworkId} + GROUP BY + PROCESS_NAME + ORDER BY + CREATE_DATE ,UPDATE_DATE + </select> </mapper> diff --git "a/src/main/resources/templateFile/\344\270\211\347\272\247\347\275\221\347\273\234\345\233\276\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" "b/src/main/resources/templateFile/\344\270\211\347\272\247\347\275\221\347\273\234\345\233\276\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" index cce8df0..a37484c 100644 --- "a/src/main/resources/templateFile/\344\270\211\347\272\247\347\275\221\347\273\234\345\233\276\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" +++ "b/src/main/resources/templateFile/\344\270\211\347\272\247\347\275\221\347\273\234\345\233\276\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" Binary files differ diff --git "a/src/main/resources/templateFile/\350\267\237\350\270\252\350\256\260\345\275\225\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" "b/src/main/resources/templateFile/\350\267\237\350\270\252\350\256\260\345\275\225\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" index 03ebad5..3d161b5 100644 --- "a/src/main/resources/templateFile/\350\267\237\350\270\252\350\256\260\345\275\225\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" +++ "b/src/main/resources/templateFile/\350\267\237\350\270\252\350\256\260\345\275\225\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" Binary files differ -- Gitblit v1.9.1