jinlin
2025-04-01 a80b4a7eb099390bb53c967126fa97b30568e1a3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
package com.example.client.service;
 
import com.example.client.dto.ColumnDto;
import com.example.client.utils.ComplexTable;
import com.example.server.progressTrack.Dto.StatistDismantDto;
import com.example.server.progressTrack.Dto.StatistProductDto;
import com.example.server.progressTrack.service.DjJdgzNetworkLevel3Service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import javax.swing.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.ArrayList;
import java.util.List;
 
@Service
public class StatisProductService {
    @Autowired
    DjJdgzNetworkLevel3Service djJdgzNetworkLevel3Service;
    public void createTable(JFrame jFrame, Long level1Id) {
        JFrame frame1 = new JFrame("设备进度统计总表");
        frame1.setSize(1500, 800);
        frame1.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
        frame1.setLocationRelativeTo(null);
        frame1.setVisible(true);
        frame1.addWindowListener(new WindowAdapter() {
            //添加第二个界面的关闭事件:
            public void windowClosing(WindowEvent e) {
                //添加事件:
                jFrame.setEnabled(true);//将主界面再设置为可操作的
            }
        });
 
        List<StatistProductDto> list = djJdgzNetworkLevel3Service.getStatist(level1Id);
 
        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()][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.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);
    }
 
}