jinlin
2025-04-28 efce7ce3e63712ecc8b4c3039a73b508fc3ea880
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);
    }
}