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, String type) {
|
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, 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};
|
|
String[][] body = new String[list.size()][4];
|
|
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());
|
}
|
|
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);
|
}
|
}
|
|
}
|