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.StatistReportsDto; import com.example.server.progressTrack.service.DjJdgzDismantTrackService; import com.example.server.progressTrack.service.DjJdgzTrackRecordService; 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 StatisDismantService { @Autowired private DjJdgzDismantTrackService djJdgzDismantTrackService; public void createTable(JFrame jFrame,Long level1Id) { JFrame frame1 = new JFrame("统计报表"); frame1.setSize(1200, 700); frame1.setResizable(false); 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 columnDto = new ArrayList<>(); List list = djJdgzDismantTrackService.getStatist(level1Id); //columnDto.add(new ColumnDto("ID", "id", -1, null,false)); /* columnDto.add(new ColumnDto("班组专业", "TeamGroupName", 280, null, false, null,null)); columnDto.add(new ColumnDto("项目总数", "AllNum", 150, null, false, null,null)); columnDto.add(new ColumnDto("进行中", "JxzNum", 150, null, false, null,null)); columnDto.add(new ColumnDto("临期", "LqNum", 150, null, false, null,null)); columnDto.add(new ColumnDto("逾期", "YqNum", 150, null, false, null,null)); columnDto.add(new ColumnDto("正常完成", "ZcwcNum", 150, null, false, null,null)); columnDto.add(new ColumnDto("超期完成", "CqwcNum", 150, null, false, null,null)); table = CommonTable.createCommonTable(list, columnDto); table.setRowHeight(25); table.setAutoCreateRowSorter(true); table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); JScrollPane scrollTable = new JScrollPane(table);*/ //frame1.add(scrollTable); Object[][] headerRows = new Object[2][9]; headerRows[0] = new Object[]{"部门/专业","总数",ComplexTable.mergeCellX,"拆卸进度完成",ComplexTable.mergeCellX,"子部件",ComplexTable.mergeCellX,ComplexTable.mergeCellX,ComplexTable.mergeCellX,}; //此处2-5是不会显示出来的,因为1-4向下合并了一行 + 向右合并了一列 , 而2-5被这个矩形范围包括了 headerRows[1] = new Object[]{ComplexTable.mergeCellY, "设备","子部件","设备","子部件","已拆卸","已出舱","已退重","已入库"}; String[][] body = new String[list.size()][9]; for (int i = 0; i < list.size(); i++) { StatistDismantDto data =list.get(i); body[i][0] = data.getName(); body[i][1] = String.valueOf(data.getSbsl()); body[i][2] = String.valueOf(data.getZbjsl()); body[i][3] = String.valueOf(data.getSbcxsl()); body[i][4] = String.valueOf(data.getZbjcxsl()); body[i][5] = String.valueOf(data.getDismantsl()); body[i][6] = String.valueOf(data.getExitsl()); body[i][7] = String.valueOf(data.getReturnsl()); body[i][8] = String.valueOf(data.getWarehousesl()); } JScrollPane scrollTable = new JScrollPane(new ComplexTable(headerRows , body,130)); frame1.add(scrollTable); frame1.setVisible(true); } }