jinlin
2025-04-10 af67fb927c3f30fa70df834f0e97f0b4a91e6119
src/main/java/com/example/client/service/TrackRecordManageService.java
@@ -11,7 +11,7 @@
import com.example.server.progressTrack.service.DjJdgzTrackRecordService;
import com.example.server.teamGroup.service.SysTeamGroupClassService;
import com.example.server.user.model.SysUser;
import com.example.server.utils.CacheUtils;
import com.example.server.utils.UserAndSiteUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -79,37 +79,54 @@
        JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(null);
        String[] typeList = new String[]{
                "","改装", "加装", "换装", "改进性修理"
                "","改装", "加装", "换装", "修理","改进性修理"
        };
        JComboBoxItem[] isealCabin = {
                new JComboBoxItem(10000L, ""),
                new JComboBoxItem(0L, "否"),
                new JComboBoxItem(1L, "是"),
        };
        JLabel JLabel0 = new JLabel("工程");
        JComboBox<JComboBoxItem> comboBox = new JComboBox<>(projectList);
        comboBox.setPreferredSize(new Dimension(150, 28));
        comboBox.setPreferredSize(new Dimension(210, 28));
        JLabel JLabel1 = new JLabel("部门");
        JComboBox<JComboBoxItem> comboBox1 = new JComboBox<>(deptList);
        comboBox1.setPreferredSize(new Dimension(150, 28));
        comboBox1.setPreferredSize(new Dimension(140, 28));
        comboBox1.setMaximumSize(new Dimension(140, 28));
        JComboBoxItem[] teamList1 = sysTeamGroupClassService.getTeamList(deptList[0].getId());
        JLabel JLabel2 = new JLabel("专业");
        JComboBox<JComboBoxItem> comboBox2 = new JComboBox<>(teamList1);
        comboBox2.setPreferredSize(new Dimension(150, 28));
        comboBox2.setPreferredSize(new Dimension(140, 28));
        comboBox2.setMaximumSize(new Dimension(140, 28));
        JLabel JLabel3 = new JLabel("舱室");
        JComboBox<JComboBoxItem> comboBox3 = new JComboBox<>(cabinList);
        comboBox3.setPreferredSize(new Dimension(150, 28));
        comboBox3.setPreferredSize(new Dimension(120, 28));
        comboBox3.setMaximumSize(new Dimension(120, 28));
        JLabel JLabel4 = new JLabel("类别");
        JComboBox<String> comboBox4 = new JComboBox<>(typeList);
        comboBox4.setPreferredSize(new Dimension(150, 28));
        comboBox4.setPreferredSize(new Dimension(140, 28));
        comboBox4.setMaximumSize(new Dimension(140, 28));
        JLabel JLabel5 = new JLabel("状态");
        JComboBox<JComboBoxItem> comboBox5 = new JComboBox<>(statusList);
        comboBox5.setPreferredSize(new Dimension(150, 28));
        comboBox5.setPreferredSize(new Dimension(120, 28));
        comboBox5.setMaximumSize(new Dimension(120, 28));
        JLabel JLabel78 = new JLabel("是否影响封舱");
        JComboBox<JComboBoxItem> comboBox7 = new JComboBox<>(isealCabin);
        comboBox7.setPreferredSize(new Dimension(120, 28));
        comboBox7.setMaximumSize(new Dimension(120, 28));
        JTextField sb = new JTextField(16);
        sb.setPreferredSize(new Dimension(150, 28));
        sb.setPreferredSize(new Dimension(140, 28));
        sb.setMaximumSize(new Dimension(140, 28));
        JButton query = new JButton("查询");
        JButton btnTj = new JButton("统计报表");
@@ -126,7 +143,9 @@
                String type = comboBox4.getSelectedItem().toString();
                JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
                JComboBoxItem isealCabinItem = (JComboBoxItem) comboBox7.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()),Math.toIntExact(isealCabinItem.getId()), null);
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
@@ -149,7 +168,9 @@
                String type = comboBox4.getSelectedItem().toString();
                JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
                JComboBoxItem isealCabinItem = (JComboBoxItem) comboBox7.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()),Math.toIntExact(isealCabinItem.getId()), null);
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
@@ -168,7 +189,9 @@
                String type = comboBox4.getSelectedItem().toString();
                JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
                JComboBoxItem isealCabinItem = (JComboBoxItem) comboBox7.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()),Math.toIntExact(isealCabinItem.getId()), null);
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
@@ -187,7 +210,9 @@
                String type = comboBox4.getSelectedItem().toString();
                JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
                JComboBoxItem isealCabinItem = (JComboBoxItem) comboBox7.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()),Math.toIntExact(isealCabinItem.getId()), null);
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
@@ -205,7 +230,9 @@
                String type = comboBox4.getSelectedItem().toString();
                JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
                JComboBoxItem isealCabinItem = (JComboBoxItem) comboBox7.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()),Math.toIntExact(isealCabinItem.getId()), null);
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
@@ -223,8 +250,28 @@
                JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
                String type = comboBox4.getSelectedItem().toString();
                JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
                JComboBoxItem isealCabinItem = (JComboBoxItem) comboBox7.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()),Math.toIntExact(isealCabinItem.getId()), null);
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
                table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
                tableModelListener(table, jFrame, list);
            }
        });
        comboBox7.addItemListener(new ItemListener() {
            public void itemStateChanged(final ItemEvent event) {
                JComboBoxItem project = (JComboBoxItem) comboBox.getSelectedItem();
                JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
                JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
                JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
                String type = comboBox4.getSelectedItem().toString();
                JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
                JComboBoxItem isealCabinItem = (JComboBoxItem) comboBox7.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()),Math.toIntExact(isealCabinItem.getId()), null);
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
@@ -237,7 +284,7 @@
            @Override
            public void actionPerformed(ActionEvent e) {
                JComboBoxItem project = (JComboBoxItem) comboBox.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), null, null, null, null, null, sb.getText());
                list = djJdgzTrackRecordService.getList(project.getId(), null, null, null, null, 0, 0,sb.getText());
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
@@ -256,7 +303,12 @@
            }
        });
        list = djJdgzTrackRecordService.getList(projectList[0].getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], Math.toIntExact(statusList[0].getId()), null);
        list = djJdgzTrackRecordService.getList(projectList[0].getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], Math.toIntExact(statusList[0].getId()),  Math.toIntExact(isealCabin[0].getId()),null);
        if (list == null || list.size() == 0) {
            JOptionPane.showMessageDialog(null, "还未录入三级网络图数据", "提示", JOptionPane.WARNING_MESSAGE);
            return null;
        }
        List<TableButton> buttonList = new ArrayList<>();
        buttonList.add(new TableButton("edit", "编辑"));
@@ -270,6 +322,7 @@
        columnDto.add(new ColumnDto("一级节点", "level1NodeName", 120, null, false, null, null));
        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("当前节点", "level3NodeName", 150, null, false, null, null));
        columnDto.add(new ColumnDto("计划完成时间", "requiredCompletionTime", 180, null, false, null, null));
        columnDto.add(new ColumnDto("跟踪记录", "", 100, "", true, buttonList, null));
@@ -292,7 +345,6 @@
        String[] items = itemList.toArray(new String[0]);
        columnModel = table.getColumnModel();
        MultiSelectComboBox2 mulcomboBox = new MultiSelectComboBox2(items, columnDto, columnModel);
/*        final Integer[] lastIndex = {-1};
        mulcomboBox.addItemListener(new ItemListener() {
            @Override
@@ -317,27 +369,27 @@
        });*/
        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));
        topJpanel.add(JLabel5, new GBC(10, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
        topJpanel.add(comboBox5, new GBC(11, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
        topJpanel.add(comboBox, new GBC(1, 0, 3, 1).setAnchor(GBC.SOUTHWEST).setInsets(5).setWeight(0,0));
        topJpanel.add(JLabel1, new GBC(4, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
        topJpanel.add(comboBox1, new GBC(5, 0, 2, 1).setAnchor(GBC.SOUTHWEST).setInsets(5).setWeight(0,0));
        topJpanel.add(JLabel2, new GBC(7, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
        topJpanel.add(comboBox2, new GBC(8, 0, 2, 1).setAnchor(GBC.SOUTHWEST).setInsets(5).setWeight(0,0));
        topJpanel.add(JLabel3, new GBC(10, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
        topJpanel.add(comboBox3, new GBC(11, 0, 2, 1).setAnchor(GBC.SOUTHWEST).setInsets(5).setWeight(0,0));
        topJpanel.add(JLabel4, new GBC(13, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
        topJpanel.add(comboBox4, new GBC(14, 0, 2, 1).setAnchor(GBC.SOUTHWEST).setInsets(5).setWeight(0,0));
        topJpanel.add(JLabel5, new GBC(16, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
        topJpanel.add(comboBox5, new GBC(17, 0, 2, 1).setAnchor(GBC.SOUTHWEST).setInsets(5).setWeight(0,0));
        topJpanel.add(JLabel78, new GBC(19, 0, 3, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
        topJpanel.add(comboBox7, new GBC(22, 0, 2, 1).setAnchor(GBC.SOUTHWEST).setInsets(5).setWeight(0,0));
        topJpanel.add(btnTj, new GBC(1, 1, 1, 1).setInsets(5));
        topJpanel.add(btnJc, new GBC(2, 1, 2, 1).setInsets(5));
        topJpanel.add(btnImport, new GBC(4, 1, 2, 1).setInsets(5));
        topJpanel.add(btnExport, new GBC(6, 1, 2, 1).setInsets(5));
        topJpanel.add(mulcomboBox, new GBC(8, 1, 2, 1).setInsets(5));
        topJpanel.add(sb, new GBC(10, 1, 2, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
        topJpanel.add(query, new GBC(12, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
        topJpanel.add(btnTj, new GBC(1, 1, 3, 1).setInsets(5));
        topJpanel.add(btnJc, new GBC(4, 1, 3, 1).setInsets(5));
        topJpanel.add(btnImport, new GBC(7, 1, 3, 1).setInsets(5));
        topJpanel.add(btnExport, new GBC(10, 1, 3, 1).setInsets(5));
        topJpanel.add(mulcomboBox, new GBC(13, 1, 3, 1).setInsets(5));
        topJpanel.add(sb, new GBC(16, 1, 3, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
        topJpanel.add(query, new GBC(19, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
        table.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
@@ -403,6 +455,10 @@
                scrollPane.repaint();
            }
        });
        System.out.println("comboBox width: " + comboBox.getPreferredSize().height);
        System.out.println("comboBox2 width: " + comboBox2.getPreferredSize().height);
        System.out.println("topJpanel width: " + topJpanel.getPreferredSize().height);
        return panel;
    }
@@ -525,14 +581,14 @@
                int row = table.rowAtPoint(e.getPoint());
                int col = table.columnAtPoint(e.getPoint());
                DjJdgzTrackRecord djJdgzTrackRecord = list.get(row);
                String site = (String) CacheUtils.get("site", "site");
                String site = (String) UserAndSiteUtils.get("site", "site");
                if (djJdgzTrackRecord.getCurrentStatus() == 1 && site.equals("工作组")) {
                    table.setRowSelectionInterval(row, row);
                    popupMenu.show(e.getComponent(), e.getX(), e.getY());
                    menuItem1.addActionListener(ex -> {
                        djJdgzTrackRecordService.retract(djJdgzTrackRecord.getId());
                        List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.getList(djJdgzTrackRecord.getLevel1NetworkId(), null, null, null, null, 0, null);
                        List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.getList(djJdgzTrackRecord.getLevel1NetworkId(), null, null, null, null, 0,0, null);
                        CommonTable.refreshTable(list, columnDto, table);
                        tableModelListener(table, jFrame, list);
                    });