From 77d58298d00c11ade8862ca8acb0fdef5a45322e Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期五, 21 三月 2025 17:39:38 +0800
Subject: [PATCH] 修改

---
 src/main/java/com/example/client/service/DismantTrackAddOrUpdate.java |   74 +++++++++++++++++++++++++++----------
 1 files changed, 54 insertions(+), 20 deletions(-)

diff --git a/src/main/java/com/example/client/service/DismantTrackAddOrUpdate.java b/src/main/java/com/example/client/service/DismantTrackAddOrUpdate.java
index cf8ac81..82459a0 100644
--- a/src/main/java/com/example/client/service/DismantTrackAddOrUpdate.java
+++ b/src/main/java/com/example/client/service/DismantTrackAddOrUpdate.java
@@ -5,6 +5,7 @@
 import com.example.client.model.TableButton;
 import com.example.client.utils.CommonTable;
 import com.example.client.utils.ComplexTable;
+import com.example.client.utils.Compute;
 import com.example.server.cabin.service.CabinService;
 import com.example.server.progressTrack.Dto.StatistReportsDto;
 import com.example.server.progressTrack.model.DjJdgzDismantTrack;
@@ -33,42 +34,51 @@
     @Autowired
     private DjJdgzDismantTrackService djJdgzDismantTrackService;
     @Autowired
+    private DjJdgzNetworkLevel3Service djJdgzNetworkLevel3Service;
+    @Autowired
     private StatisDismantService statisDismantService;
+    @Autowired
+    private StatisDismant2Service statisDismant2Service;
     @Autowired
     private CabinService cabinService;
     private  JTable trackTable;
     private   List<ColumnDto> columnDto;
+    private   DjJdgzNetworkLevel3 nowLevel3;
+    private    List<DjJdgzDismantTrack> list;
 
     public JPanel createTrack(Integer width, Integer height, DjJdgzNetworkLevel3 djJdgzNetworkLevel3,JFrame frame) {
+        nowLevel3 = djJdgzNetworkLevel3;
         JPanel panel = new JPanel(new BorderLayout());
         panel.setPreferredSize(new Dimension(width, height));
 
         JPanel topJpanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
-        topJpanel.setPreferredSize(new Dimension(width - 10, 37));
+        topJpanel.setPreferredSize(new Dimension(width - 10, 40));
 
         JPanel centerJpanel = new JPanel();
-        centerJpanel.setPreferredSize(new Dimension(width - 20, height - 100));
+        centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(40,frame)));
 
         panel.add(centerJpanel, BorderLayout.CENTER);
         panel.add(topJpanel, BorderLayout.NORTH);
 
-        JButton btnTj = new JButton("缁熻鎶ヨ〃");
+        JButton btnTjz = new JButton("鎷嗗嵏杩涘害缁熻鎬昏〃");
+        JButton btnTj = new JButton("鎷嗗嵏杩涘害璇︽儏琛�");
         JButton btnExport = new JButton("瀵煎嚭鎷嗗嵏鎶ヨ〃");
         JButton btnSave = new JButton("淇濆瓨");
         JButton btnImport = new JButton("鎵归噺瀵煎叆");
 
+        topJpanel.add(btnTjz);
         topJpanel.add(btnTj);
         topJpanel.add(btnExport);
         topJpanel.add(btnSave);
         topJpanel.add(btnImport);
 
-        List<DjJdgzDismantTrack> list = djJdgzDismantTrackService.getList(djJdgzNetworkLevel3.getId(), null);
+        list = djJdgzDismantTrackService.getList(nowLevel3.getId(), null);
         List<TableButton> buttonList = new ArrayList<>();
         buttonList.add(new TableButton("edit", "缂栬緫"));
         JComboBoxItem[] cabinList = cabinService.getList();
         JComboBoxItem[] statusList = {
-                new JComboBoxItem(0, "杩涜涓�"),
-                new JComboBoxItem(1, "宸插畬鎴�"),
+                new JComboBoxItem(0L, "杩涜涓�"),
+                new JComboBoxItem(1L, "宸插畬鎴�"),
         };
 
         // 鍒涘缓宸︿晶琛ㄦ牸
@@ -80,23 +90,22 @@
         columnDto.add(new ColumnDto("鎷嗗嵏鏃堕棿", "dismantTime", 130, "selectDate", true, null, null));
         columnDto.add(new ColumnDto("鎷嗗嵏鍗曚綅", "dismantUnit", 120, null, true, null, null));
         columnDto.add(new ColumnDto("鎷嗗嵏浜哄憳", "dismantStaff", 120, null, true, null, null));
-        columnDto.add(new ColumnDto("鎷嗗嵏鍔╀慨鑹囧憳", "dismantAssistant", 180, null, true, null, null));
+        columnDto.add(new ColumnDto("鎷嗗嵏鍔╀慨T鍛�", "dismantAssistant", 180, null, true, null, null));
         columnDto.add(new ColumnDto("鍑鸿埍鏃堕棿", "exitTime", 130, "selectDate", true, null, null));
         columnDto.add(new ColumnDto("鍑鸿埍鍗曚綅", "exitUnit", 120, null, true, null, null));
         columnDto.add(new ColumnDto("鍑鸿埍浜哄憳", "exitStaff", 120, null, true, null, null));
-        columnDto.add(new ColumnDto("鍑鸿埍鍔╀慨鑹囧憳", "exitAssistant", 180, null, true, null, null));
+        columnDto.add(new ColumnDto("鍑鸿埍鍔╀慨T鍛�", "exitAssistant", 180, null, true, null, null));
         columnDto.add(new ColumnDto("閫�閲嶆椂闂�", "returnWeightTime", 130, "selectDate", true, null, null));
         columnDto.add(new ColumnDto("绉伴噸鍛�", "weigher", 120, null, true, null, null));
         columnDto.add(new ColumnDto("閫�閲嶉噸閲�", "returnWeight", 120, null, true, null, null));
-        columnDto.add(new ColumnDto("閫�閲嶅姪淇墖鍛�", "returnWeightAssistant", 180, null, true, null, null));
+        columnDto.add(new ColumnDto("閫�閲嶅姪淇甌鍛�", "returnWeightAssistant", 180, null, true, null, null));
         columnDto.add(new ColumnDto("鍏ュ簱鏃堕棿", "warehouseTime", 130, "selectDate", true, null, null));
         columnDto.add(new ColumnDto("鍏ュ簱浜哄憳", "warehouseStaff", 120, null, true, null, null));
         columnDto.add(new ColumnDto("褰撳墠瀛樻斁浣嶇疆", "currentLocation", 160, null, true, null, null));
-        columnDto.add(new ColumnDto("鐘舵��", "status", 120, "dict", true, null, statusList));
+        columnDto.add(new ColumnDto("鐘舵��", "status", 120, "dicts", true, null, statusList));
 
         trackTable = CommonTable.createCommonTable(list, columnDto);
         trackTable.setRowHeight(25);
-        trackTable.setAutoCreateRowSorter(true);
         trackTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
 
 
@@ -105,24 +114,33 @@
                 "鍑鸿埍闃舵",ComplexTable.mergeCellX,ComplexTable.mergeCellX,ComplexTable.mergeCellX,"閫�閲嶉樁娈�",ComplexTable.mergeCellX,ComplexTable.mergeCellX,ComplexTable.mergeCellX,
                 "鍏ュ簱闃舵",ComplexTable.mergeCellX,"褰撳墠瀛樻斁浣嶇疆"};
         //姝ゅ2-5鏄笉浼氭樉绀哄嚭鏉ョ殑锛屽洜涓�1-4鍚戜笅鍚堝苟浜嗕竴琛� + 鍚戝彸鍚堝苟浜嗕竴鍒�  锛� 鑰�2-5琚繖涓煩褰㈣寖鍥村寘鎷簡
-        headerRows[1] = new Object[]{ComplexTable.mergeCellY, ComplexTable.mergeCellY ,ComplexTable.mergeCellY ,"鏃堕棿","鍗曚綅","浜哄憳","鍔╀慨鑹囧憳",
-                "鏃堕棿","鍗曚綅","浜哄憳","鍔╀慨鑹囧憳","鏃堕棿","绉伴噸鍛�","閲嶉噺","鍔╀慨鑹囧憳","鏃堕棿","浜哄憳",ComplexTable.mergeCellY};
+        headerRows[1] = new Object[]{ComplexTable.mergeCellY, ComplexTable.mergeCellY ,ComplexTable.mergeCellY ,"鏃堕棿","鍗曚綅","浜哄憳","鍔╀慨T鍛�",
+                "鏃堕棿","鍗曚綅","浜哄憳","鍔╀慨T鍛�","鏃堕棿","绉伴噸鍛�","閲嶉噺","鍔╀慨T鍛�","鏃堕棿","浜哄憳",ComplexTable.mergeCellY};
 
         String[][] body = CommonTable.getRowData(list,columnDto);
 
         trackTable = new ComplexTable(headerRows,body);
         CommonTable.setColumnType(columnDto, trackTable);*/
 
+        btnTjz.addActionListener(new ActionListener() {
+            @Override
+            public void actionPerformed(ActionEvent e) {
+                frame.setEnabled(false);
+                statisDismantService.createTable(frame,nowLevel3.getLevel1NetworkId());
+            }
+        });
         btnTj.addActionListener(new ActionListener() {
             @Override
             public void actionPerformed(ActionEvent e) {
-                statisDismantService.createTable(frame,djJdgzNetworkLevel3.getLevel1NetworkId());
+                frame.setEnabled(false);
+                statisDismant2Service.createTable(frame,nowLevel3.getLevel1NetworkId());
             }
         });
 
         btnExport.addActionListener(new ActionListener() {
             @Override
             public void actionPerformed(ActionEvent e) {
+                frame.setEnabled(false);
                 exportDismantTrackService.openDialog(frame);
             }
         });
@@ -130,12 +148,15 @@
         btnSave.addActionListener(new ActionListener() {
             @Override
             public void actionPerformed(ActionEvent e) {
+                if (trackTable.isEditing()) {
+                    trackTable.getCellEditor().stopCellEditing();
+                }
                 SysUser user = (SysUser) CacheUtils.get("user", "user");
-                if (user.getTeamgroup()==null||user.getTeamgroup().equals(djJdgzNetworkLevel3.getTeamgroupId())){
+                if (user.getTeamgroup()==null||user.getTeamgroup().equals(nowLevel3.getTeamgroupId().toString())){
                     CommonTable.saveTableList(list, trackTable, columnDto);
                     djJdgzDismantTrackService.save(list);
                 }else{
-                    JOptionPane.showMessageDialog(null, "涓嶅彲鎿嶄綔鍏朵粬涓撲笟鏁版嵁", "鎻愮ず", JOptionPane.WARNING_MESSAGE);
+                    JOptionPane.showMessageDialog(null, "褰撳墠鐢ㄦ埛涓嶅彲鎿嶄綔鍏朵粬涓撲笟鏁版嵁", "鎻愮ず", JOptionPane.WARNING_MESSAGE);
                 }
             }
         });
@@ -143,23 +164,36 @@
         btnImport.addActionListener(new ActionListener() {
             @Override
             public void actionPerformed(ActionEvent e) {
-                importDismantTrackService.FileUpload(djJdgzNetworkLevel3.getId(),frame);
+                frame.setEnabled(false);
+                importDismantTrackService.FileUpload(nowLevel3.getId(),frame);
             }
         });
 
 
         JScrollPane scrollPane = new JScrollPane(trackTable, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
         scrollPane.setViewportView(trackTable);
-        scrollPane.setPreferredSize(new Dimension(width - 20, height - 130));
+        scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(40,frame)));
         centerJpanel.add(scrollPane);
+        frame.addComponentListener(new ComponentAdapter() {
+            @Override
+            public void componentResized(ComponentEvent e) {
+                centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(40,frame)));
+                scrollPane.setPreferredSize(new Dimension(width - 20,Compute.ComputeHeightWithScroll(40,frame)));
+                centerJpanel.revalidate();
+                centerJpanel.repaint();
+                scrollPane.revalidate();
+                scrollPane.repaint();
+            }
+        });
 
         return panel;
     }
     public void refreshTable(Long level3Id){
-        List<DjJdgzDismantTrack> list = djJdgzDismantTrackService.getList(level3Id, null);
+        nowLevel3 = djJdgzNetworkLevel3Service.get(level3Id);
+        list = djJdgzDismantTrackService.getList(level3Id, null);
         CommonTable.refreshTable(list, columnDto, trackTable);
         trackTable.setRowHeight(25);
-        trackTable.setAutoCreateRowSorter(true);
+
         trackTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
     }
 

--
Gitblit v1.9.1