From d30e385951ce03335a5023f0775fd144da3c0b88 Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期二, 18 三月 2025 11:18:31 +0800
Subject: [PATCH] 修改
---
src/main/java/com/example/client/service/Level1AddOrUpdate.java | 2
src/main/java/com/example/client/service/Level2ManageService.java | 20
src/main/resources/mapper/progressTrack/ImportRecord.xml | 10
src/main/java/com/example/client/utils/Compute.java | 39 +
src/main/java/com/example/server/progressTrack/model/ImportRecord.java | 27
src/main/java/com/example/client/utils/ColorDescription.java | 19
src/main/java/com/example/client/service/DataExportManageService.java | 29
src/main/java/com/example/client/service/Level3ViewService.java | 2
src/main/java/com/example/server/progressTrack/dao/ImportRecordDao.java | 22
src/main/java/com/example/server/progressTrack/model/DjJdgzHandover.java | 44
src/main/java/com/example/client/service/SubunitService.java | 27
src/main/java/com/example/server/progressTrack/dao/ExportRecordDao.java | 20
src/main/java/com/example/server/progressTrack/model/ExportRecord.java | 25
src/main/resources/logback-spring.xml | 2
src/main/java/com/example/client/utils/MultiSelectComboBox2.java | 116 +++
src/main/java/com/example/client/Main.java | 5
src/main/java/com/example/client/service/Level1ViewService.java | 35
src/main/java/com/example/client/service/Level1ManageService.java | 21
src/main/java/com/example/client/service/ImportTrackRecordService.java | 15
src/main/java/com/example/client/service/Level3AddOrUpdate.java | 2
src/main/java/com/example/client/utils/CommonTable.java | 1
src/main/resources/mapper/progressTrack/DjJdgzHandoverDao.xml | 2
src/main/resources/mapper/cabin/CabinDao.xml | 2
src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java | 36
src/main/resources/templateFile/跟踪记录导入模板.xlsx | 0
src/main/java/com/example/server/teamGroup/model/SysTeamGroupClass.java | 2
src/main/java/com/example/client/service/DismantTrackAddOrUpdate.java | 20
src/main/java/com/example/client/service/HandoverAddOrUpdate.java | 51 +
src/main/java/com/example/client/service/DataImportManageService.java | 37
src/main/java/com/example/server/utils/DownLoadTmpFile.java | 4
src/main/java/com/example/client/service/HandoverService.java | 16
src/main/java/com/example/client/service/Level2AddOrUpdate.java | 2
src/main/resources/mapper/menu/MenuDao.xml | 19
src/main/resources/templateFile/三级网络图导入模板.xlsx | 0
src/main/java/com/example/client/service/DismantTrackService.java | 56 +
src/main/java/com/example/client/service/ImportDataService.java | 12
src/main/java/com/example/client/service/TrackRecordManageService.java | 311 ++++++++-
src/main/java/com/example/server/entity/FieldMetaObjectHandler.java | 13
src/main/java/com/example/client/service/ImportLevel3Service.java | 2
src/main/java/com/example/client/utils/ColorDescriptionComboBox.java | 102 +++
src/main/java/com/example/client/service/Level3ManageService.java | 20
src/main/java/com/example/server/ExportExcel/method/ExcelExport.java | 1
src/main/java/com/example/client/service/SubunitAddOrUpdate.java | 21
src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3Service.java | 36
src/main/resources/db/csiczb1.db | 0
src/main/java/com/example/client/service/ExportTrackRecordService.java | 58 +
src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java | 4
/dev/null | 19
src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java | 275 ++++++++
src/main/java/com/example/client/service/Level2ViewService.java | 48 +
src/main/java/com/example/client/service/Level3View2Service.java | 98 ++
src/main/java/com/example/server/DataSync/service/DataSyncService.java | 51 +
src/main/java/com/example/client/service/MenuService.java | 6
src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml | 38
src/main/resources/application.yml | 3
src/main/resources/mapper/progressTrack/ExportRecord.xml | 10
56 files changed, 1,523 insertions(+), 335 deletions(-)
diff --git a/src/main/java/com/example/client/Main.java b/src/main/java/com/example/client/Main.java
index 4bd5742..7e8a0ee 100644
--- a/src/main/java/com/example/client/Main.java
+++ b/src/main/java/com/example/client/Main.java
@@ -123,7 +123,6 @@
hSplitPane.setDividerSize(10);
hSplitPane.setOneTouchExpandable(true);
hSplitPane.setContinuousLayout(true);
-
frame.getContentPane().add(hSplitPane, BorderLayout.CENTER);
JSplitPane vSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
@@ -172,6 +171,10 @@
tabbedPane.addTab(title, panel);
Component tabComponent = createTabComponent(title, tree);
tabbedPane.setTabComponentAt(tabbedPane.getTabCount() - 1, tabComponent);// 璁剧疆鑷畾涔夋爣绛剧粍浠�//鍒囨崲鍒板綋鍓嶉〉闈�
+ if (tabbedPane.getTabCount() > 5) {
+ // 鍒犻櫎绗竴涓爣绛�
+ tabbedPane.removeTabAt(0);
+ }
tabbedPane.setSelectedIndex(tabbedPane.getTabCount() - 1);
}
diff --git a/src/main/java/com/example/client/service/DataExportManageService.java b/src/main/java/com/example/client/service/DataExportManageService.java
index 28a6341..29c0efa 100644
--- a/src/main/java/com/example/client/service/DataExportManageService.java
+++ b/src/main/java/com/example/client/service/DataExportManageService.java
@@ -3,13 +3,10 @@
import com.example.client.dto.ColumnDto;
import com.example.client.utils.CommonTable;
-import com.example.client.utils.GBC;
-import com.example.client.utils.WaitUtil;
-import com.example.server.DataSync.dto.DataExportDto;
import com.example.server.DataSync.service.DataSyncService;
-import com.example.server.utils.CacheUtils;
+import com.example.server.progressTrack.dao.ExportRecordDao;
+import com.example.server.progressTrack.model.ExportRecord;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import javax.swing.*;
@@ -24,7 +21,12 @@
@Autowired
DataSyncService dataSyncService;
@Autowired
+ ExportRecordDao exportRecordDao;
+ @Autowired
ImportDataService importDataService;
+
+ private List<ColumnDto> columnDto;
+ private JTable table;
public JPanel createTable(Integer width, Integer height, JFrame jFrame) {
JPanel panel = new JPanel(new BorderLayout()); // 浣跨敤 BorderLayout
@@ -43,6 +45,8 @@
JLabel label1 = new JLabel("鎻愮ず淇℃伅");
JTextArea tips = new JTextArea(7, 30);
tips.setEnabled(false);
+ tips.setForeground(Color.BLACK); // 璁剧疆涓洪粦鑹�
+ tips.setDisabledTextColor(Color.BLACK);
tips.setLineWrap(true);
JPanel center = new JPanel(new BorderLayout()); // 涓� left 璁剧疆甯冨眬
@@ -54,12 +58,12 @@
left.add(center, BorderLayout.CENTER);
JLabel label2 = new JLabel("瀵煎嚭璁板綍");
- List<DataExportDto> list = new ArrayList<>();
- List<ColumnDto> columnDto = new ArrayList<>();
+ List<ExportRecord> list = exportRecordDao.getList();
+ columnDto = new ArrayList<>();
columnDto.add(new ColumnDto("搴忓彿", "", 265, "autoCreate", false, null, null));
- columnDto.add(new ColumnDto("瀵煎嚭鏃堕棿", "exportDate", 265, null, false, null, null));
- columnDto.add(new ColumnDto("瀵煎嚭浜�", "importStaff", 265, null, false, null, null));
- JTable table = CommonTable.createCommonTable(list, columnDto);
+ columnDto.add(new ColumnDto("瀵煎嚭鏃堕棿", "createDate", 265, null, false, null, null));
+ columnDto.add(new ColumnDto("鎿嶄綔浜�", "userName", 265, null, false, null, null));
+ table = CommonTable.createCommonTable(list, columnDto);
table.setRowHeight(25);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
@@ -72,10 +76,13 @@
btnExport.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
- dataSyncService.export();
+ dataSyncService.export(tips);
}
});
return panel;
}
+ public void refresh(List<ExportRecord> list){
+ CommonTable.refreshTable(list, columnDto,table);
+ }
}
diff --git a/src/main/java/com/example/client/service/DataImportManageService.java b/src/main/java/com/example/client/service/DataImportManageService.java
index 4d3b099..c990685 100644
--- a/src/main/java/com/example/client/service/DataImportManageService.java
+++ b/src/main/java/com/example/client/service/DataImportManageService.java
@@ -5,10 +5,10 @@
import com.example.client.utils.CommonTable;
import com.example.client.utils.GBC;
import com.example.client.utils.WaitUtil;
-import com.example.server.DataSync.dto.DataExportDto;
-import com.example.server.DataSync.dto.DataImportDto;
import com.example.server.DataSync.service.DataSyncService;
-import com.example.server.progressTrack.model.DjJdgzNetworkLevel2List;
+import com.example.server.progressTrack.dao.ImportRecordDao;
+import com.example.server.progressTrack.model.ExportRecord;
+import com.example.server.progressTrack.model.ImportRecord;
import com.example.server.utils.CacheUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -30,7 +30,11 @@
@Autowired
DataSyncService dataSyncService;
@Autowired
+ ImportRecordDao importRecordDao;
+ @Autowired
ImportDataService importDataService;
+ private List<ColumnDto> columnDto;
+ private JTable table;
public JPanel createTable(Integer width, Integer height, JFrame jFrame) {
JPanel panel = new JPanel(new BorderLayout());
@@ -48,10 +52,10 @@
JPanel center = new JPanel(); // 涓� left 璁剧疆甯冨眬
GridBagLayout layout = new GridBagLayout();
center.setLayout(layout);
- center.setPreferredSize(new Dimension((width - 10) / 2, (height-50)/2));
+ center.setPreferredSize(new Dimension((width - 10) / 2, (height-50)/3));
JPanel south = new JPanel(new BorderLayout()); // 涓� left 璁剧疆甯冨眬
- south.setPreferredSize(new Dimension((width - 10) / 2, (height-50)/2));
+ south.setPreferredSize(new Dimension((width - 10) / 2, (height-50)/3*2));
String site = (String) CacheUtils.get("site", "site");
@@ -67,6 +71,8 @@
JLabel label1 = new JLabel("鎻愮ず淇℃伅");
JTextArea tips = new JTextArea(7, 30);
tips.setEnabled(false);
+ tips.setForeground(Color.BLACK); // 璁剧疆涓洪粦鑹�
+ tips.setDisabledTextColor(Color.BLACK);
tips.setLineWrap(true);
south.add(label1,BorderLayout.NORTH);
south.add(tips,BorderLayout.CENTER);
@@ -82,7 +88,7 @@
SwingWorker<String, Void> sw = new SwingWorker<String, Void>() {
@Override
protected String doInBackground() throws Exception {
- String flag = importDataService.UnzipFile();
+ String flag = importDataService.UnzipFile(tips);
return flag;
}
@@ -95,9 +101,10 @@
// 鍒锋柊琛ㄦ牸鏁版嵁锛堝鏋滀笂浼犳垚鍔燂級
if (uploadSucceeded.equals("true")) {
waitUtil.dispose();
- System.out.println("瀵煎叆鎴愬姛鏃堕棿" + new Date());
+ tips.setText("瀵煎叆鎴愬姛"+new Date());
} else {
waitUtil.dispose();
+ tips.setText("瀵煎叆澶辫触"+new Date());
JOptionPane.showMessageDialog(null, uploadSucceeded, "鎻愮ず", JOptionPane.ERROR_MESSAGE);
}
@@ -118,15 +125,15 @@
left.add(south,BorderLayout.SOUTH);
JLabel label2 = new JLabel("瀵煎叆璁板綍");
- List<DataImportDto> list = new ArrayList<>();
+ List<ImportRecord> list = importRecordDao.getList();
- List<ColumnDto> columnDto = new ArrayList<>();
+ columnDto = new ArrayList<>();
//columnDto.add(new ColumnDto("ID", "id", -1, null,false));
columnDto.add(new ColumnDto("搴忓彿", "", 200, "autoCreate", false, null,null));
- columnDto.add(new ColumnDto("鏁版嵁婧�", "importLocal", 200, null, false, null,null));
- columnDto.add(new ColumnDto("瀵煎叆鏃堕棿", "importDate", 200, null, false, null,null));
- columnDto.add(new ColumnDto("鎿嶄綔浜�", "importStaff", 200, null, false, null,null));
- JTable table = CommonTable.createCommonTable(list, columnDto);
+ columnDto.add(new ColumnDto("鏁版嵁婧�", "importSite", 200, null, false, null,null));
+ columnDto.add(new ColumnDto("瀵煎叆鏃堕棿", "createDate", 200, null, false, null,null));
+ columnDto.add(new ColumnDto("鎿嶄綔浜�", "userName", 200, null, false, null,null));
+ table = CommonTable.createCommonTable(list, columnDto);
table.setRowHeight(25);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
@@ -138,6 +145,10 @@
return panel;
}
+
+ public void refresh(List<ImportRecord> list){
+ CommonTable.refreshTable(list, columnDto,table);
+ }
}
diff --git a/src/main/java/com/example/client/service/DismantTrackAddOrUpdate.java b/src/main/java/com/example/client/service/DismantTrackAddOrUpdate.java
index 86726ce..10d95ee 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;
@@ -51,10 +52,10 @@
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);
@@ -105,7 +106,6 @@
trackTable = CommonTable.createCommonTable(list, columnDto);
trackTable.setRowHeight(25);
-
trackTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
@@ -145,6 +145,7 @@
btnSave.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
+ trackTable.getCellEditor().stopCellEditing();
SysUser user = (SysUser) CacheUtils.get("user", "user");
if (user.getTeamgroup()==null||user.getTeamgroup().equals(nowLevel3.getTeamgroupId().toString())){
CommonTable.saveTableList(list, trackTable, columnDto);
@@ -165,8 +166,19 @@
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;
}
diff --git a/src/main/java/com/example/client/service/DismantTrackService.java b/src/main/java/com/example/client/service/DismantTrackService.java
index 878f4b6..d0d0fbd 100644
--- a/src/main/java/com/example/client/service/DismantTrackService.java
+++ b/src/main/java/com/example/client/service/DismantTrackService.java
@@ -3,6 +3,7 @@
import com.example.client.dto.ColumnDto;
import com.example.client.dto.JComboBoxItem;
import com.example.client.utils.CommonTable;
+import com.example.client.utils.Compute;
import com.example.client.utils.GBC;
import com.example.server.cabin.service.CabinService;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel3;
@@ -43,9 +44,13 @@
JPanel jLeft = new JPanel(new BorderLayout());
JPanel top = new JPanel();
+ JPanel center = new JPanel();
- jLeft.setPreferredSize(new Dimension(600, height));
top.setPreferredSize(new Dimension(600, 100));
+ center.setPreferredSize(new Dimension(600, Compute.ComputeHeight(100,frame)));
+ jLeft.setPreferredSize(new Dimension(600, Compute.ComputeHeight(0,frame)));
+ jLeft.add(center, BorderLayout.CENTER);
+ jLeft.add(top, BorderLayout.NORTH);
GridBagLayout layout = new GridBagLayout();
top.setLayout(layout);
@@ -57,7 +62,7 @@
JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(null);
JComboBoxItem[] cabinList = cabinService.getList();
String[] typeList = new String[]{
- "鏀硅", "鍔犺", "鎹㈣", "鏀硅繘鎬т慨鐞�",""
+ "鏀硅", "鍔犺", "鎹㈣", "鏀硅繘鎬т慨鐞�", ""
};
List<DjJdgzShip> shipList = djJdgzShipService.getList();
Map<String, Long> shipMap = new HashMap<>();
@@ -107,21 +112,19 @@
top.add(sb, new GBC(4, 1, 2, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
top.add(query, new GBC(6, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
- jLeft.add(top, BorderLayout.NORTH);
-
List<ColumnDto> columnDto = new ArrayList<>();
- list = level3Service.getList(null, deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0],null);
+ list = level3Service.getList(null, deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], null);
columnDto.add(new ColumnDto("搴忓彿", "", 60, "autoCreate", false, null, null));
- columnDto.add(new ColumnDto("璁惧鍚嶇О", "name", 110, null, false, null, null));
- columnDto.add(new ColumnDto("閮ㄩ棬", "deptId", 120, "dict", false, null, deptList));
- columnDto.add(new ColumnDto("涓撲笟", "teamgroupId", 120, "dict", false, null, teamList));
+ columnDto.add(new ColumnDto("璁惧鍚嶇О", "name", 200, null, false, null, null));
+ columnDto.add(new ColumnDto("閮ㄩ棬", "deptId", 150, "dict", false, null, deptList));
+ columnDto.add(new ColumnDto("涓撲笟", "teamgroupId", 150, "dict", false, null, teamList));
columnDto.add(new ColumnDto("鑸卞", "cabinId", 100, "dict", false, null, cabinList));
columnDto.add(new ColumnDto("绫诲埆", "type", 100, null, false, null, null));
JTable subTable = CommonTable.createCommonTable(list, columnDto);
subTable.setRowHeight(25);
- subTable.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS);
+ subTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
comboBox.addItemListener(new ItemListener() {
public void itemStateChanged(final ItemEvent event) {
@@ -132,7 +135,7 @@
String type = comboBox4.getSelectedItem().toString();
Long shipId = shipMap.get(content);
- list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null);
+ list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null);
CommonTable.refreshTable(list, columnDto, subTable);
subTable.setRowHeight(25);
@@ -171,7 +174,7 @@
String type = comboBox4.getSelectedItem().toString();
Long shipId = shipMap.get(content);
- list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null);
+ list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null);
CommonTable.refreshTable(list, columnDto, subTable);
subTable.setRowHeight(25);
@@ -201,7 +204,7 @@
String type = comboBox4.getSelectedItem().toString();
Long shipId = shipMap.get(content);
- list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null);
+ list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null);
CommonTable.refreshTable(list, columnDto, subTable);
subTable.setRowHeight(25);
@@ -229,7 +232,7 @@
String type = comboBox4.getSelectedItem().toString();
Long shipId = shipMap.get(content);
- list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null);
+ list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null);
CommonTable.refreshTable(list, columnDto, subTable);
subTable.setRowHeight(25);
@@ -257,7 +260,7 @@
String type = comboBox4.getSelectedItem().toString();
Long shipId = shipMap.get(content);
- list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null);
+ list = level3Service.getList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null);
CommonTable.refreshTable(list, columnDto, subTable);
subTable.setRowHeight(25);
@@ -280,7 +283,7 @@
query.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
- list = level3Service.getList(null, null, null, null, null,sb.getText());
+ list = level3Service.getList(null, null, null, null, null, sb.getText());
CommonTable.refreshTable(list, columnDto, subTable);
subTable.setRowHeight(25);
@@ -300,11 +303,26 @@
}
});
- JScrollPane scrollTable = new JScrollPane(subTable);
- jLeft.add(scrollTable, BorderLayout.CENTER);
+ JScrollPane scrollTable = new JScrollPane(subTable,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
+ scrollTable.setViewportView(subTable);
+ scrollTable.setPreferredSize(new Dimension(600,Compute.ComputeHeightWithScroll(100,frame)));
+ center.add(scrollTable);
+ frame.addComponentListener(new ComponentAdapter() {
+ @Override
+ public void componentResized(ComponentEvent e) {
+ center.setPreferredSize(new Dimension(600, Compute.ComputeHeight(100,frame)));
+ jLeft.setPreferredSize(new Dimension(600, Compute.ComputeHeight(0,frame)));
+ scrollTable.setPreferredSize(new Dimension(600,Compute.ComputeHeightWithScroll(100,frame)));
+ jLeft.revalidate();
+ jLeft.repaint();
+ center.revalidate();
+ center.repaint();
+ scrollTable.revalidate();
+ scrollTable.repaint();
+ }
+ });
- JPanel track = addOrUpdate.createTrack(width - 620, height, list.get(0),frame);
-
+ JPanel track = addOrUpdate.createTrack(width - 620, height, list.get(0), frame);
// 鍒涘缓姘村钩鍒嗗壊闈㈡澘
JSplitPane hSplitPane = new JSplitPane(
diff --git a/src/main/java/com/example/client/service/ExportTrackRecordService.java b/src/main/java/com/example/client/service/ExportTrackRecordService.java
index 6383426..86cb788 100644
--- a/src/main/java/com/example/client/service/ExportTrackRecordService.java
+++ b/src/main/java/com/example/client/service/ExportTrackRecordService.java
@@ -5,7 +5,9 @@
import com.example.client.dto.JComboBoxItem;
import com.example.client.utils.CommonTable;
import com.example.client.utils.GBC;
+import com.example.client.utils.MultiSelectComboBox2;
import com.example.client.utils.RequiredLabel;
+import com.example.server.ExportExcel.dto.ExcelColumnDto;
import com.example.server.progressTrack.model.DjJdgzTrackRecord;
import com.example.server.progressTrack.service.DjJdgzNetworkLevel1Service;
import com.example.server.progressTrack.service.DjJdgzNetworkLevel3ListService;
@@ -13,6 +15,7 @@
import com.example.server.progressTrack.service.DjJdgzTrackRecordService;
import com.example.server.teamGroup.service.SysTeamGroupClassService;
import org.apache.commons.lang3.StringUtils;
+import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.jdesktop.swingx.JXDatePicker;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -23,10 +26,8 @@
import java.io.File;
import java.text.ParseException;
import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.HashMap;
+import java.util.*;
import java.util.List;
-import java.util.Map;
@Service
public class ExportTrackRecordService {
@@ -58,6 +59,28 @@
GridBagLayout layout = new GridBagLayout();
frame1.setLayout(layout);
+
+ List<ExcelColumnDto> columnDto = new ArrayList<>();
+
+ columnDto.add(new ExcelColumnDto("涓�绾ц妭鐐�", "Level1NodeName", 20, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("浜岀骇鑺傜偣", "Level2NodeName", 20, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("椤圭洰鍚嶇О", "Level3NetworkName", 20, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("褰撳墠鑺傜偣", "Level3NodeName", 20, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("涓撲笟", "teamgroupName", 20, HorizontalAlignment.CENTER));
+ columnDto.add(new ExcelColumnDto("鎬绘壙淇崟浣嶅強璐熻矗浜�", "GeneralRepair", 25, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("鍒嗘壙淇崟浣嶅強璐熻矗浜�", "Repair", 25, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("璺熻釜鏂瑰紡", "trackMethodStr", 10, HorizontalAlignment.CENTER));
+ columnDto.add(new ExcelColumnDto("鍔╀慨浜�", "TrackPerson", 25, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("鍘傛柟", "TrackedPerson", 25, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("璺熻釜鍦扮偣", "TrackLocation", 10, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("鑺傜偣杩涘睍", "status", 10, HorizontalAlignment.CENTER));
+ columnDto.add(new ExcelColumnDto("鑴辨湡椋庨櫓", "hasDelayRiskStr", 10, HorizontalAlignment.CENTER));
+ columnDto.add(new ExcelColumnDto("棰勮瀹屾垚鏃堕棿", "EstimatedCompletionTime", 15, HorizontalAlignment.CENTER));
+ columnDto.add(new ExcelColumnDto("瀛樺湪闂", "Problem", 20, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("鍚庣画璁″垝", "FollowupPlan", 20, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("澶囨敞", "Remark", 20, HorizontalAlignment.LEFT));
+ columnDto.add(new ExcelColumnDto("濉啓鏃堕棿", "UpdateDate", 15, HorizontalAlignment.CENTER));
+
JComboBoxItem[] statusList = {
new JComboBoxItem(0L, "杩涜涓�"),
@@ -108,6 +131,14 @@
JLabel JLabel7 = new JLabel("缁撴潫鏃ユ湡");
JXDatePicker endDate = new JXDatePicker();
endDate.setPreferredSize(new Dimension(300, 28));
+
+ List<String> itemList = new ArrayList<>();
+ for (ExcelColumnDto dto : columnDto) {
+ itemList.add(dto.getColumnDesc()); // 灏� dto.getColumnDesc() 娣诲姞鍒� List 涓�
+ }
+
+ String[] items = itemList.toArray(new String[0]);
+ MultiSelectComboBox2 mulcomboBox = new MultiSelectComboBox2(items, null, null);
comboBox.addItemListener(new ItemListener() {
@Override
@@ -167,8 +198,9 @@
frame1.add(JLabel7, new GBC(0, 7, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
frame1.add(endDate, new GBC(1, 7, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ frame1.add(mulcomboBox, new GBC(1, 8, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
- frame1.add(exportButton, new GBC(0, 8, 2, 1).setWeight(0, 0));
+ frame1.add(exportButton, new GBC(0, 11, 2, 1).setWeight(0, 0));
exportButton.addActionListener(new ActionListener() {
@Override
@@ -192,7 +224,7 @@
if (projectItem != null) {
level1NetworkId = projectItem.getId();
- }else {
+ } else {
JOptionPane.showMessageDialog(null, "娌℃湁閫夋嫨宸ョ▼", "鎻愮ず", JOptionPane.WARNING_MESSAGE);
return;
}
@@ -212,17 +244,21 @@
istq = Math.toIntExact(tq.getId());
}
- String filePath = "璺熻釜璁板綍鎶ヨ〃.xlsx";
- djJdgzTrackRecordService.exportExcel(filePath, teamGroupId, level1NetworkId, level3NetworkId, level3NodeId, status, beginDate2, endDate2, istq);
+ List<ExcelColumnDto> columnDto2 = new ArrayList<>();
+ Set<Integer> selectedIndices = mulcomboBox.getSelectedIndices();
+
+ for (Integer index : selectedIndices) {
+ columnDto2.add(columnDto.get(index));
+ }
+
+ String fileName = "璺熻釜璁板綍鎶ヨ〃.xlsx";
JFileChooser fileChooser = new JFileChooser();
- fileChooser.setSelectedFile(new File(filePath));
+ fileChooser.setSelectedFile(new File(fileName));
int result = fileChooser.showSaveDialog(frame1);
if (result == JFileChooser.APPROVE_OPTION) {
File selectedFile = fileChooser.getSelectedFile();
- // 灏嗘枃浠剁Щ鍔ㄥ埌鐢ㄦ埛閫夋嫨鐨勪綅缃�
- File originalFile = new File(filePath);
- originalFile.renameTo(selectedFile);
+ djJdgzTrackRecordService.exportExcel(selectedFile.getPath(), teamGroupId, level1NetworkId, level3NetworkId, level3NodeId, status, beginDate2, endDate2, istq, columnDto2);
JOptionPane.showMessageDialog(frame1, "鏂囦欢瀵煎嚭鎴愬姛");
} else {
JOptionPane.showMessageDialog(frame1, "鏂囦欢瀵煎嚭鍙栨秷");
diff --git a/src/main/java/com/example/client/service/HandoverAddOrUpdate.java b/src/main/java/com/example/client/service/HandoverAddOrUpdate.java
index 0d24746..a0c3fdf 100644
--- a/src/main/java/com/example/client/service/HandoverAddOrUpdate.java
+++ b/src/main/java/com/example/client/service/HandoverAddOrUpdate.java
@@ -93,11 +93,48 @@
handoverTimeDate.setDate(parse);
JLabel JLabel4 = new JLabel("浜ゆ帴鎯呭喌璇存槑");
- JTextArea handoverSitua = new JTextArea(5, 40);
+ /*JTextArea handoverSitua = new JTextArea(5, 40);
handoverSitua.setLineWrap(true);
- handoverSitua.setPreferredSize(new Dimension(600,200));
- if (StringUtils.isNotBlank(data.getHandoverSituation())) {
- handoverSitua.setText(data.getHandoverSituation());
+ handoverSitua.setPreferredSize(new Dimension(600,200));*/
+ JTabbedPane tabbedPane = new JTabbedPane();
+
+ // 鍒涘缓涓撲笟璇存槑 JTextArea
+ JTextArea professExplan = new JTextArea(5, 40);
+ professExplan.setLineWrap(true);
+ professExplan.setWrapStyleWord(true);
+ professExplan.setPreferredSize(new Dimension(600, 200));
+ JScrollPane professionalScrollPane = new JScrollPane(professExplan);
+ professionalScrollPane.setPreferredSize(new Dimension(600, 200));
+
+ // 鍒涘缓閮ㄩ棬璇存槑 JTextArea
+ JTextArea deptExplan = new JTextArea(5, 40);
+ deptExplan.setLineWrap(true);
+ deptExplan.setWrapStyleWord(true);
+ deptExplan.setPreferredSize(new Dimension(600, 200));
+ JScrollPane departmentScrollPane = new JScrollPane(deptExplan);
+ departmentScrollPane.setPreferredSize(new Dimension(600, 200));
+
+ // 鍒涘缓TD璇存槑 JTextArea
+ JTextArea tdExplan = new JTextArea(5, 40);
+ tdExplan.setLineWrap(true);
+ tdExplan.setWrapStyleWord(true);
+ tdExplan.setPreferredSize(new Dimension(600, 200));
+ JScrollPane tdScrollPane = new JScrollPane(tdExplan);
+ tdScrollPane.setPreferredSize(new Dimension(600, 200));
+
+ // 灏� JTextArea 娣诲姞鍒� JTabbedPane
+ tabbedPane.addTab("涓撲笟浜ゆ帴璇存槑", professionalScrollPane);
+ tabbedPane.addTab("閮ㄩ棬浜ゆ帴璇存槑", departmentScrollPane);
+ tabbedPane.addTab("鑹囬槦浜ゆ帴璇存槑", tdScrollPane);
+
+ if (StringUtils.isNotBlank(data.getProfessExplan())) {
+ professExplan.setText(data.getProfessExplan());
+ }
+ if (StringUtils.isNotBlank(data.getDeptExplan())) {
+ deptExplan.setText(data.getDeptExplan());
+ }
+ if (StringUtils.isNotBlank(data.getTdExplan())) {
+ tdExplan.setText(data.getTdExplan());
}
JLabel JLabel5 = new JLabel("闄勪欢");
@@ -128,7 +165,7 @@
frame1.add(handoverTimeDate, new GBC(1, 3, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
frame1.add(JLabel4, new GBC(0, 4, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
- frame1.add(handoverSitua, new GBC(1, 4, 1, 5).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ frame1.add(tabbedPane, new GBC(1, 4, 1, 5).setAnchor(GBC.SOUTHWEST).setInsets(5));
frame1.add(JLabel5, new GBC(0, 9, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
frame1.add(jPanel, new GBC(1, 9, 6, 5).setAnchor(GBC.SOUTHWEST).setInsets(5));
@@ -144,7 +181,9 @@
data.setCurrentTeam(currentTeamDesc.getText());
data.setHandoverTeam(handoverTeamDesc.getText());
data.setHandoverTime(sdFormat.format(handoverTimeDate.getDate()));
- data.setHandoverSituation(handoverSitua.getText());
+ data.setDeptExplan(deptExplan.getText());
+ data.setProfessExplan(professExplan.getText());
+ data.setTdExplan(tdExplan.getText());
Long id = handoverService.save(data);
uploadFile.save(id);
List<DjJdgzHandover> list = handoverService.getList(project.getId());
diff --git a/src/main/java/com/example/client/service/HandoverService.java b/src/main/java/com/example/client/service/HandoverService.java
index d548e2f..e459d71 100644
--- a/src/main/java/com/example/client/service/HandoverService.java
+++ b/src/main/java/com/example/client/service/HandoverService.java
@@ -71,14 +71,14 @@
columnDto = new ArrayList<>();
//columnDto.add(new ColumnDto("ID", "id", -1, null,false));
- columnDto.add(new ColumnDto("搴忓彿", "", (width - 10) / 8, "autoCreate", false, null,null));
- columnDto.add(new ColumnDto("宸ョ▼", "ProjectName", (width - 10) / 8, null, false, null,null));
- columnDto.add(new ColumnDto("浜ゆ柟鑹囬槦", "currentTeam", (width - 10) / 8, null, false, null,null));
- columnDto.add(new ColumnDto("鎺ユ柟鑹囬槦", "handoverTeam", (width - 10) / 8, null, false, null,null));
- columnDto.add(new ColumnDto("浜ゆ帴鏃堕棿", "handoverTime", (width - 10) / 8, "selectDate", false, null,null));
- columnDto.add(new ColumnDto("浜ゆ帴鎯呭喌璇存槑", "handoverSituation", (width - 10) / 8, null, false, null,null));
- columnDto.add(new ColumnDto("闄勪欢", "fileName", (width - 10) / 8, "", false, null,null));
- columnDto.add(new ColumnDto("鎿嶄綔", "", (width - 10) / 8, "", true, buttonList,null));
+ columnDto.add(new ColumnDto("搴忓彿", "", (width - 10) / 7, "autoCreate", false, null,null));
+ columnDto.add(new ColumnDto("宸ョ▼", "ProjectName", (width - 10) / 7, null, false, null,null));
+ columnDto.add(new ColumnDto("浜ゆ柟鑹囬槦", "currentTeam", (width - 10) / 7, null, false, null,null));
+ columnDto.add(new ColumnDto("鎺ユ柟鑹囬槦", "handoverTeam", (width - 10) / 7, null, false, null,null));
+ columnDto.add(new ColumnDto("浜ゆ帴鏃堕棿", "handoverTime", (width - 10) / 7, "selectDate", false, null,null));
+ /* columnDto.add(new ColumnDto("浜ゆ帴鎯呭喌璇存槑", "handoverSituation", (width - 10) / 8, null, false, null,null));
+ */ columnDto.add(new ColumnDto("闄勪欢", "fileName", (width - 10) / 7, "", false, null,null));
+ columnDto.add(new ColumnDto("鎿嶄綔", "", (width - 10) / 7, "", true, buttonList,null));
table = CommonTable.createCommonTable(list[0], columnDto);
table.setRowHeight(25);
diff --git a/src/main/java/com/example/client/service/ImportDataService.java b/src/main/java/com/example/client/service/ImportDataService.java
index 4f14b4a..11cd7b8 100644
--- a/src/main/java/com/example/client/service/ImportDataService.java
+++ b/src/main/java/com/example/client/service/ImportDataService.java
@@ -190,16 +190,21 @@
});
return jPanel;
}
- public String UnzipFile(){
+ public String UnzipFile(JTextArea tips){
+ String massage = "";
String filePath = model.getValueAt(0, 0).toString();
String outputDirectory = UnzipPath;
try {
File zipFile = new File(filePath);
if (!zipFile.exists()) {
+ massage = "ZIP鏂囦欢涓嶅瓨鍦細" + filePath;
+ tips.setText(tips.getText() + massage);
throw new FileNotFoundException("ZIP鏂囦欢涓嶅瓨鍦細" + filePath);
}
if (!zipFile.canRead()) {
+ massage = "鏃犳硶璇诲彇ZIP鏂囦欢锛岃妫�鏌ユ枃浠舵潈闄愶細" + filePath;
+ tips.setText(tips.getText() + massage);
System.err.println("鏃犳硶璇诲彇ZIP鏂囦欢锛岃妫�鏌ユ枃浠舵潈闄愶細" + filePath);
return "false";
}
@@ -240,8 +245,9 @@
}
}
}
- System.out.println("鏂囦欢瑙e帇瀹屾垚锛岀洰鏍囩洰褰曪細" + outputDirectory);
- dataSyncService.importData();
+ massage = "鏂囦欢瑙e帇瀹屾垚锛岀洰鏍囩洰褰曪細" + outputDirectory;
+ tips.setText(tips.getText() + massage);
+ dataSyncService.importData(tips);
} catch (IOException e) {
e.printStackTrace();
return "false";
diff --git a/src/main/java/com/example/client/service/ImportLevel3Service.java b/src/main/java/com/example/client/service/ImportLevel3Service.java
index 2e389e5..2687805 100644
--- a/src/main/java/com/example/client/service/ImportLevel3Service.java
+++ b/src/main/java/com/example/client/service/ImportLevel3Service.java
@@ -79,7 +79,7 @@
JLabel label0 = new JLabel("宸ョ▼");
JComboBox<JComboBoxItem> comboBox0 = new JComboBox<>(projectList);
- JLabel label1 = new JLabel("浜岀骇缃戠粶鍥�");
+ JLabel label1 = new JLabel("涓�绾х綉缁滃浘鑺傜偣");
JComboBox<JComboBoxItem> comboBox1 = new JComboBox<>();
comboBox1.setModel(new DefaultComboBoxModel<>(level2List));
diff --git a/src/main/java/com/example/client/service/ImportTrackRecordService.java b/src/main/java/com/example/client/service/ImportTrackRecordService.java
index b411498..952b9c8 100644
--- a/src/main/java/com/example/client/service/ImportTrackRecordService.java
+++ b/src/main/java/com/example/client/service/ImportTrackRecordService.java
@@ -4,7 +4,6 @@
import com.example.client.dto.JComboBoxItem;
import com.example.client.utils.*;
import com.example.server.cabin.service.CabinService;
-import com.example.server.progressTrack.model.DjJdgzNetworkLevel3;
import com.example.server.progressTrack.model.DjJdgzTrackRecord;
import com.example.server.progressTrack.service.*;
import com.example.server.teamGroup.service.SysTeamGroupClassService;
@@ -38,7 +37,7 @@
@Autowired
private Level3ManageService level3ManageService;
@Autowired
- private DjJdgzNetworkLevel3Service level3Service;
+ private TrackRecordManageService trackRecordManageService;
@Autowired
private DjJdgzNetworkLevel2ListService level2ListService;
@Autowired
@@ -83,7 +82,7 @@
JLabel label0 = new JLabel("宸ョ▼");
JComboBox<JComboBoxItem> comboBox0 = new JComboBox<>(projectList);
- JLabel label1 = new JLabel("浜岀骇缃戠粶鍥�");
+ JLabel label1 = new JLabel("涓�绾х綉缁滃浘鑺傜偣");
JComboBox<JComboBoxItem> comboBox1 = new JComboBox<>();
comboBox1.setModel(new DefaultComboBoxModel<>(level2List));
@@ -297,7 +296,7 @@
String filePath = result.toString();
- String flag = level3Service.importDiagramFromExcel(filePath, level1Id[0], level2Id[0], level2NodeId[0]);
+ String flag = djJdgzTrackRecordService.importDiagramFromExcel(filePath);
return flag;
}
@@ -315,11 +314,11 @@
JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(null);
JComboBoxItem[] cabinList = cabinService.getList();
String[] typeList = new String[]{
- "鏀硅", "鍔犺", "鎹㈣", "鏀硅繘鎬т慨鐞�",""
- };
- List<DjJdgzNetworkLevel3> list = level3Service.getList(null, deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0],null);
+ "鏀硅", "鍔犺", "鎹㈣", "鏀硅繘鎬т慨鐞�", ""
+ };
+ List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.getList(level1Id[0], deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], 0, null);
CommonTable.refreshTable(list, columnDto, subTable);
- level3ManageService.tableModelListener(list, subTable, jFrame);
+ trackRecordManageService.tableModelListener(subTable, jFrame, list);
System.out.println("瀵煎叆鎴愬姛鏃堕棿" + new Date());
} else {
waitUtil.dispose();
diff --git a/src/main/java/com/example/client/service/Level1AddOrUpdate.java b/src/main/java/com/example/client/service/Level1AddOrUpdate.java
index 1f313d9..a07c000 100644
--- a/src/main/java/com/example/client/service/Level1AddOrUpdate.java
+++ b/src/main/java/com/example/client/service/Level1AddOrUpdate.java
@@ -128,7 +128,7 @@
mxGraphComponent graphComponent = new mxGraphComponent(graph);
graphComponent.setConnectable(false);
graphComponent.setDragEnabled(false);
- graphComponent.zoomTo(2, true);
+ graphComponent.zoomTo(1, true);
diagram.add(graphComponent);
mxGraph finalGraph = graph;
diff --git a/src/main/java/com/example/client/service/Level1ManageService.java b/src/main/java/com/example/client/service/Level1ManageService.java
index 0406e9b..a393660 100644
--- a/src/main/java/com/example/client/service/Level1ManageService.java
+++ b/src/main/java/com/example/client/service/Level1ManageService.java
@@ -4,6 +4,7 @@
import com.example.client.dto.JComboBoxItem;
import com.example.client.model.TableButton;
import com.example.client.utils.CommonTable;
+import com.example.client.utils.Compute;
import com.example.client.utils.GBC;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel1;
import com.example.server.progressTrack.model.DjJdgzShip;
@@ -41,13 +42,14 @@
private List<ColumnDto> columnDto;
public JPanel createTable(Integer width, Integer height, JFrame jFrame) {
- JPanel panel = new JPanel();
+ JPanel panel = new JPanel(new BorderLayout());
JPanel topJpanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
- topJpanel.setPreferredSize(new Dimension(width, 37));
+ topJpanel.setPreferredSize(new Dimension(width, 40));
topJpanel.setBackground(Color.WHITE);
JPanel centerJpanel = new JPanel();
- centerJpanel.setPreferredSize(new Dimension(width - 20, height - 100));
+
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(40,jFrame)));
centerJpanel.setBackground(Color.WHITE);
panel.add(topJpanel, BorderLayout.NORTH);
panel.add(centerJpanel, BorderLayout.CENTER);
@@ -116,8 +118,19 @@
JScrollPane scrollPane = new JScrollPane(table, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scrollPane.setViewportView(table);
scrollPane.getViewport().setBackground(Color.WHITE);
- scrollPane.setPreferredSize(new Dimension(width - 20, height - 100));
+ scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(40,jFrame)));
centerJpanel.add(scrollPane);
+ jFrame.addComponentListener(new ComponentAdapter() {
+ @Override
+ public void componentResized(ComponentEvent e) {
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(40,jFrame)));
+ scrollPane.setPreferredSize(new Dimension(width - 20,Compute.ComputeHeightWithScroll(40,jFrame)));
+ centerJpanel.revalidate();
+ centerJpanel.repaint();
+ scrollPane.revalidate();
+ scrollPane.repaint();
+ }
+ });
return panel;
}
diff --git a/src/main/java/com/example/client/service/Level1ViewService.java b/src/main/java/com/example/client/service/Level1ViewService.java
index 2660d99..282e15b 100644
--- a/src/main/java/com/example/client/service/Level1ViewService.java
+++ b/src/main/java/com/example/client/service/Level1ViewService.java
@@ -3,6 +3,7 @@
import com.example.client.dto.ColumnDto;
import com.example.client.model.TableButton;
import com.example.client.utils.CommonTable;
+import com.example.client.utils.Compute;
import com.example.server.progressTrack.Dto.NetworkNodeStatusDto;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel1;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel1List;
@@ -11,6 +12,8 @@
import com.example.server.progressTrack.service.DjJdgzShipService;
import com.example.server.progressTrack.service.NetWorkDiagramService;
import com.mxgraph.swing.mxGraphComponent;
+import com.mxgraph.util.mxPoint;
+import com.mxgraph.util.mxRectangle;
import com.mxgraph.view.mxGraph;
import com.teamdev.jxbrowser.chromium.StopFindAction;
import org.jdesktop.swingx.JXDatePicker;
@@ -37,12 +40,12 @@
@Autowired
private NetWorkDiagramService netWorkDiagramService;
- public JPanel createTable(Integer width, Integer height) {
+ public JPanel createTable(Integer width, Integer height, JFrame frame) {
height = height - 100;
JPanel panel = new JPanel();
JPanel jLeft = new JPanel(new BorderLayout());
- jLeft.setPreferredSize(new Dimension(width / 4 - 20, height));
+ jLeft.setPreferredSize(new Dimension(width / 4 - 20, Compute.ComputeHeight(0, frame)));
JPanel diagram = new JPanel(new BorderLayout());
diagram.setPreferredSize(new Dimension(width - width / 4, height));
@@ -54,16 +57,27 @@
//columnDto.add(new ColumnDto("ID", "id", -1, null,false));
- columnDto.add(new ColumnDto("搴忓彿", "", width / 8 - 10, "autoCreate", false, null,null));
- columnDto.add(new ColumnDto("宸ョ▼", "ProjectName", width / 8, null, false, null,null));
+ columnDto.add(new ColumnDto("搴忓彿", "", width / 8 - 10, "autoCreate", false, null, null));
+ columnDto.add(new ColumnDto("宸ョ▼", "ProjectName", width / 8, null, false, null, null));
JTable subTable = CommonTable.createCommonTable(list, columnDto);
subTable.setRowHeight(25);
- subTable.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS);
+ subTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
JScrollPane scrollTable = new JScrollPane(subTable);
+ scrollTable.setPreferredSize(new Dimension(width / 4 - 20, Compute.ComputeHeightWithScroll(0, frame)));
jLeft.add(scrollTable, BorderLayout.CENTER);
-
+ frame.addComponentListener(new ComponentAdapter() {
+ @Override
+ public void componentResized(ComponentEvent e) {
+ jLeft.setPreferredSize(new Dimension(width / 4 - 20, Compute.ComputeHeight(40, frame)));
+ scrollTable.setPreferredSize(new Dimension(width / 4 - 20, Compute.ComputeHeightWithScroll(40, frame)));
+ jLeft.revalidate();
+ jLeft.repaint();
+ scrollTable.revalidate();
+ scrollTable.repaint();
+ }
+ });
// 鍒涘缓姘村钩鍒嗗壊闈㈡澘
JSplitPane hSplitPane = new JSplitPane(
JSplitPane.HORIZONTAL_SPLIT,
@@ -86,7 +100,7 @@
mxGraphComponent graphComponent = new mxGraphComponent(graph);
graphComponent.setConnectable(false);
graphComponent.setDragEnabled(false);
- graphComponent.zoomTo(2, true);
+ graphComponent.zoomTo(1, true);
diagram.add(graphComponent);
mxGraph finalGraph = graph;
@@ -110,7 +124,12 @@
int r = subTable.getSelectedRow();
DjJdgzNetworkLevel1 data = list.get(r);
List<NetworkNodeStatusDto> nodeStatusList = level1Service.getNodeStatusData(data.getId());
- graph2[0] = netWorkDiagramService.getCsDiagram(graph2[0], data.getContent(), nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height);
+ mxGraph csDiagram = netWorkDiagramService.getCsDiagram(graph2[0], data.getContent(), nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height);
+ if (nodeStatusList != null && nodeStatusList.size() > 0) {
+ graph2[0] = csDiagram;
+ } else {
+ graph2[0].removeCells(graph2[0].getChildVertices(graph2[0].getDefaultParent()));
+ }
}
}
});
diff --git a/src/main/java/com/example/client/service/Level2AddOrUpdate.java b/src/main/java/com/example/client/service/Level2AddOrUpdate.java
index f2e72bf..709dd5e 100644
--- a/src/main/java/com/example/client/service/Level2AddOrUpdate.java
+++ b/src/main/java/com/example/client/service/Level2AddOrUpdate.java
@@ -172,7 +172,7 @@
mxGraphComponent graphComponent = new mxGraphComponent(graph);
graphComponent.setConnectable(false);
graphComponent.setDragEnabled(false);
- graphComponent.zoomTo(2, true);
+ graphComponent.zoomTo(1, true);
diagram.add(graphComponent);
mxGraph finalGraph = graph;
diff --git a/src/main/java/com/example/client/service/Level2ManageService.java b/src/main/java/com/example/client/service/Level2ManageService.java
index 1ead5b2..0437fd8 100644
--- a/src/main/java/com/example/client/service/Level2ManageService.java
+++ b/src/main/java/com/example/client/service/Level2ManageService.java
@@ -4,6 +4,7 @@
import com.example.client.dto.JComboBoxItem;
import com.example.client.model.TableButton;
import com.example.client.utils.CommonTable;
+import com.example.client.utils.Compute;
import com.example.client.utils.GBC;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel1;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel2;
@@ -53,13 +54,13 @@
public JPanel createTable(Integer width, Integer height, JFrame jFrame) {
- JPanel panel = new JPanel();
+ JPanel panel = new JPanel(new BorderLayout());
JPanel topJpanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
- topJpanel.setPreferredSize(new Dimension(width, 37));
+ topJpanel.setPreferredSize(new Dimension(width, 40));
topJpanel.setBackground(Color.WHITE);
JPanel centerJpanel = new JPanel();
- centerJpanel.setPreferredSize(new Dimension(width - 20, height - 100));
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(40,jFrame)));
centerJpanel.setBackground(Color.WHITE);
panel.add(topJpanel, BorderLayout.NORTH);
panel.add(centerJpanel, BorderLayout.CENTER);
@@ -135,8 +136,19 @@
JScrollPane scrollPane = new JScrollPane(table, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scrollPane.setViewportView(table);
scrollPane.getViewport().setBackground(Color.WHITE);
- scrollPane.setPreferredSize(new Dimension(width - 20, height - 100));
+ scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(40,jFrame)));
centerJpanel.add(scrollPane);
+ jFrame.addComponentListener(new ComponentAdapter() {
+ @Override
+ public void componentResized(ComponentEvent e) {
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(40,jFrame)));
+ scrollPane.setPreferredSize(new Dimension(width - 20,Compute.ComputeHeightWithScroll(40,jFrame)));
+ centerJpanel.revalidate();
+ centerJpanel.repaint();
+ scrollPane.revalidate();
+ scrollPane.repaint();
+ }
+ });
return panel;
}
diff --git a/src/main/java/com/example/client/service/Level2ViewService.java b/src/main/java/com/example/client/service/Level2ViewService.java
index e70c7a0..73e5165 100644
--- a/src/main/java/com/example/client/service/Level2ViewService.java
+++ b/src/main/java/com/example/client/service/Level2ViewService.java
@@ -2,6 +2,7 @@
import com.example.client.dto.ColumnDto;
import com.example.client.utils.CommonTable;
+import com.example.client.utils.Compute;
import com.example.server.progressTrack.Dto.NetworkNodeStatusDto;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel1;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel2;
@@ -15,10 +16,7 @@
import javax.swing.*;
import java.awt.*;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.awt.event.MouseWheelEvent;
-import java.awt.event.MouseWheelListener;
+import java.awt.event.*;
import java.util.ArrayList;
import java.util.List;
@@ -30,12 +28,12 @@
@Autowired
private NetWorkDiagramService netWorkDiagramService;
- public JPanel createTable(Integer width, Integer height) {
- height = height - 100;
- JPanel panel = new JPanel();
+ public JPanel createTable(Integer width, Integer height, JFrame frame) {
+ JPanel panel = new JPanel(new BorderLayout());
+ panel.setPreferredSize(new Dimension(width, height));
- JPanel jLeft = new JPanel(new BorderLayout());
- jLeft.setPreferredSize(new Dimension(width / 4 - 20, height));
+ JPanel jLeft = new JPanel();
+ jLeft.setPreferredSize(new Dimension(width / 4 - 20, Compute.ComputeHeight(0, frame)));
JPanel diagram = new JPanel(new BorderLayout());
diagram.setPreferredSize(new Dimension(width - width / 4, height));
@@ -47,16 +45,29 @@
//columnDto.add(new ColumnDto("ID", "id", -1, null,false));
- columnDto.add(new ColumnDto("搴忓彿", "", width / 10 - 10, "autoCreate", false, null,null));
- columnDto.add(new ColumnDto("宸ョ▼", "ProjectName", width / 8, null, false, null,null));
- columnDto.add(new ColumnDto("涓�绾ц妭鐐�", "processName", width / 8, null, false, null,null));
+ columnDto.add(new ColumnDto("搴忓彿", "", 120, "autoCreate", false, null, null));
+ columnDto.add(new ColumnDto("宸ョ▼", "ProjectName", 145, null, false, null, null));
+ columnDto.add(new ColumnDto("涓�绾ц妭鐐�", "processName", 125, null, false, null, null));
JTable subTable = CommonTable.createCommonTable(list, columnDto);
subTable.setRowHeight(25);
- subTable.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS);
+ subTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
JScrollPane scrollTable = new JScrollPane(subTable);
- jLeft.add(scrollTable, BorderLayout.CENTER);
+ scrollTable.setPreferredSize(new Dimension(width / 4 - 20, Compute.ComputeHeightWithScroll(0, frame)));
+ jLeft.add(scrollTable);
+ frame.addComponentListener(new ComponentAdapter() {
+ @Override
+ public void componentResized(ComponentEvent e) {
+
+ jLeft.setPreferredSize(new Dimension(width / 4 - 20, Compute.ComputeHeight(0, frame)));
+ scrollTable.setPreferredSize(new Dimension(width / 4 - 20, Compute.ComputeHeightWithScroll(0, frame)));
+ jLeft.revalidate();
+ jLeft.repaint();
+ scrollTable.revalidate();
+ scrollTable.repaint();
+ }
+ });
// 鍒涘缓姘村钩鍒嗗壊闈㈡澘
JSplitPane hSplitPane = new JSplitPane(
@@ -80,7 +91,7 @@
mxGraphComponent graphComponent = new mxGraphComponent(graph);
graphComponent.setConnectable(false);
graphComponent.setDragEnabled(false);
- graphComponent.zoomTo(2, true);
+ graphComponent.zoomTo(1, true);
diagram.add(graphComponent);
mxGraph finalGraph = graph;
@@ -104,7 +115,12 @@
int r = subTable.getSelectedRow();
DjJdgzNetworkLevel2 data = list.get(r);
List<NetworkNodeStatusDto> nodeStatusList = level2Service.getNodeStatusData(data.getId());
- graph2[0] = netWorkDiagramService.getCsDiagram(graph2[0], data.getContent(), nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height);
+ mxGraph csDiagram = netWorkDiagramService.getCsDiagram(graph2[0], data.getContent(), nodeStatusList, diagram.getPreferredSize().width, diagram.getPreferredSize().height);
+ if (nodeStatusList != null && nodeStatusList.size() > 0) {
+ graph2[0] = csDiagram;
+ } else {
+ graph2[0].removeCells(graph2[0].getChildVertices(graph2[0].getDefaultParent()));
+ }
}
}
});
diff --git a/src/main/java/com/example/client/service/Level3AddOrUpdate.java b/src/main/java/com/example/client/service/Level3AddOrUpdate.java
index 157af61..5c9f56c 100644
--- a/src/main/java/com/example/client/service/Level3AddOrUpdate.java
+++ b/src/main/java/com/example/client/service/Level3AddOrUpdate.java
@@ -142,7 +142,7 @@
mxGraphComponent graphComponent = new mxGraphComponent(graph);
graphComponent.setConnectable(false);
graphComponent.setDragEnabled(false);
- graphComponent.zoomTo(2, true);
+ graphComponent.zoomTo(1, true);
diagram.add(graphComponent);
mxGraph finalGraph = graph;
diff --git a/src/main/java/com/example/client/service/Level3ManageService.java b/src/main/java/com/example/client/service/Level3ManageService.java
index 35e7d8c..b4c719c 100644
--- a/src/main/java/com/example/client/service/Level3ManageService.java
+++ b/src/main/java/com/example/client/service/Level3ManageService.java
@@ -4,6 +4,7 @@
import com.example.client.dto.JComboBoxItem;
import com.example.client.model.TableButton;
import com.example.client.utils.CommonTable;
+import com.example.client.utils.Compute;
import com.example.client.utils.GBC;
import com.example.client.utils.MultiSelectComboBox;
import com.example.server.cabin.service.CabinService;
@@ -57,6 +58,7 @@
public JPanel createTable(Integer width, Integer height, JFrame jFrame) {
JPanel panel = new JPanel();
+ panel.setPreferredSize(new Dimension(width,height));
JPanel topJpanel = new JPanel();
GridBagLayout layout = new GridBagLayout();
@@ -65,7 +67,7 @@
topJpanel.setBackground(Color.WHITE);
JPanel centerJpanel = new JPanel();
- centerJpanel.setPreferredSize(new Dimension(width - 20, height - 100));
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(100,jFrame)));
centerJpanel.setBackground(Color.WHITE);
panel.add(topJpanel, BorderLayout.NORTH);
panel.add(centerJpanel, BorderLayout.CENTER);
@@ -170,11 +172,10 @@
if (e.getStateChange() == ItemEvent.SELECTED) {
JComboBoxItem selectedItem = (JComboBoxItem) comboBox1.getSelectedItem();
if (selectedItem != null) {
- long selectedId = selectedItem.getId();
+ Long selectedId = selectedItem.getId();
JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(selectedId);
comboBox2.setModel(new DefaultComboBoxModel<>(teamList));
- comboBox2.setSelectedIndex(0);
String content = comboBox.getSelectedItem().toString();
JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
@@ -288,8 +289,19 @@
JScrollPane scrollPane = new JScrollPane(table, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scrollPane.setViewportView(table);
scrollPane.getViewport().setBackground(Color.WHITE);
- scrollPane.setPreferredSize(new Dimension(width - 20, height - 120));
+ scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(100,jFrame)));
centerJpanel.add(scrollPane);
+ jFrame.addComponentListener(new ComponentAdapter() {
+ @Override
+ public void componentResized(ComponentEvent e) {
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(100,jFrame)));
+ scrollPane.setPreferredSize(new Dimension(width - 20,Compute.ComputeHeightWithScroll(100,jFrame)));
+ centerJpanel.revalidate();
+ centerJpanel.repaint();
+ scrollPane.revalidate();
+ scrollPane.repaint();
+ }
+ });
return panel;
}
diff --git a/src/main/java/com/example/client/service/Level3View2Service.java b/src/main/java/com/example/client/service/Level3View2Service.java
index 31d2cfc..e6ded97 100644
--- a/src/main/java/com/example/client/service/Level3View2Service.java
+++ b/src/main/java/com/example/client/service/Level3View2Service.java
@@ -3,9 +3,7 @@
import com.example.client.dto.ColumnDto;
import com.example.client.dto.JComboBoxItem;
import com.example.client.model.TableButton;
-import com.example.client.utils.CommonTable;
-import com.example.client.utils.GBC;
-import com.example.client.utils.MultiSelectComboBox;
+import com.example.client.utils.*;
import com.example.server.cabin.service.CabinService;
import com.example.server.progressTrack.Dto.TableNodeDto;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel1;
@@ -18,6 +16,7 @@
import javax.swing.*;
import javax.swing.event.TableModelEvent;
+import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.awt.event.*;
@@ -42,8 +41,8 @@
private List<ColumnDto> columnDto;
- public JPanel createTable(Integer width, Integer height) {
- JPanel panel = new JPanel();
+ public JPanel createTable(Integer width, Integer height,JFrame frame) {
+ JPanel panel = new JPanel(new BorderLayout());
JPanel topJpanel = new JPanel();
GridBagLayout layout = new GridBagLayout();
@@ -52,7 +51,7 @@
topJpanel.setBackground(Color.WHITE);
JPanel centerJpanel = new JPanel();
- centerJpanel.setPreferredSize(new Dimension(width - 20, height - 100));
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(100,frame)));
centerJpanel.setBackground(Color.WHITE);
panel.add(topJpanel, BorderLayout.NORTH);
panel.add(centerJpanel, BorderLayout.CENTER);
@@ -62,7 +61,7 @@
JComboBoxItem[] cabinList = cabinService.getList();
JComboBoxItem[] deptList = sysTeamGroupClassService.getDeptList();
String[] typeList = new String[]{
- "鏀硅", "鍔犺", "鎹㈣", "鏀硅繘鎬т慨鐞�",""
+ "鏀硅", "鍔犺", "鎹㈣", "鏀硅繘鎬т慨鐞�", ""
};
JLabel JLabel0 = new JLabel("宸ョ▼");
@@ -90,6 +89,17 @@
JTextField sb = new JTextField(16);
JButton query = new JButton("鏌ヨ");
+ List<ColorDescription> colorDescriptions = new ArrayList<>();
+ colorDescriptions.add(new ColorDescription("#3498DB", "杩涜涓�"));
+ colorDescriptions.add(new ColorDescription("#F1C40F", "涓存湡"));
+ colorDescriptions.add(new ColorDescription("#E74C3C", "閫炬湡"));
+ colorDescriptions.add(new ColorDescription("#2ECC71", "姝e父瀹屾垚"));
+ colorDescriptions.add(new ColorDescription("#006400", "瓒呮湡瀹屾垚"));
+
+ // 鍒涘缓涓嬫媺妗�
+ ColorDescriptionComboBox comboBox5 = new ColorDescriptionComboBox(colorDescriptions);
+
+
topJpanel.add(JLabel0, new GBC(0, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
topJpanel.add(comboBox, new GBC(1, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
topJpanel.add(JLabel1, new GBC(2, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
@@ -103,8 +113,9 @@
topJpanel.add(sb, new GBC(0, 1, 2, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
topJpanel.add(query, new GBC(2, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel.add(comboBox5, new GBC(3, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
- list = level3Service.getNodeList(shipList.get(0).getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0],null);
+ list = level3Service.getNodeList(shipList.get(0).getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], null);
columnDto = new ArrayList<>();
//columnDto.add(new ColumnDto("ID", "id", -1, null,false));
@@ -122,6 +133,30 @@
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+ MouseMotionListener mouseMotionListener = new MouseMotionListener() {
+ @Override
+ public void mouseDragged(MouseEvent e) {
+ // 涓嶉渶瑕佸鐞嗛紶鏍囨嫋鍔ㄤ簨浠�
+ }
+
+ @Override
+ public void mouseMoved(MouseEvent e) {
+ Point point = e.getPoint();
+ int row = table.rowAtPoint(point);
+ int column = table.columnAtPoint(point);
+
+ if (row <= list.size() && column > 1) {
+ String hexColor = (String) table.getValueAt(row, column);
+ String tooltip = getTooltipText(hexColor);
+ table.setToolTipText(tooltip);
+ } else {
+ table.setToolTipText(null);
+ }
+ }
+ };
+
+ table.addMouseMotionListener(mouseMotionListener);
+
comboBox.addItemListener(new ItemListener() {
public void itemStateChanged(final ItemEvent event) {
String content = comboBox.getSelectedItem().toString();
@@ -131,7 +166,7 @@
String type = comboBox4.getSelectedItem().toString();
Long shipId = shipMap.get(content);
- list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null);
+ list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null);
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
@@ -145,12 +180,11 @@
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
JComboBoxItem selectedItem = (JComboBoxItem) comboBox1.getSelectedItem();
- if (selectedItem.getId() != null) {
- long selectedId = selectedItem.getId();
+ if (selectedItem != null) {
+ Long selectedId = selectedItem.getId();
JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(selectedId);
comboBox2.setModel(new DefaultComboBoxModel<>(teamList));
- comboBox2.setSelectedIndex(0);
String content = comboBox.getSelectedItem().toString();
JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
@@ -159,7 +193,7 @@
String type = comboBox4.getSelectedItem().toString();
Long shipId = shipMap.get(content);
- list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null);
+ list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null);
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
@@ -180,7 +214,7 @@
String type = comboBox4.getSelectedItem().toString();
Long shipId = shipMap.get(content);
- list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null);
+ list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null);
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
@@ -198,7 +232,7 @@
String type = comboBox4.getSelectedItem().toString();
Long shipId = shipMap.get(content);
- list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null);
+ list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null);
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
@@ -216,7 +250,7 @@
String type = comboBox4.getSelectedItem().toString();
Long shipId = shipMap.get(content);
- list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type,null);
+ list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null);
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
@@ -229,7 +263,7 @@
query.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
- list = level3Service.getNodeList(null, null, null, null, null,sb.getText());
+ list = level3Service.getNodeList(null, null, null, null, null, sb.getText());
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
@@ -249,15 +283,43 @@
JScrollPane scrollPane = new JScrollPane(table, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scrollPane.setViewportView(table);
scrollPane.getViewport().setBackground(Color.WHITE);
- scrollPane.setPreferredSize(new Dimension(width - 20, height - 120));
+ scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(100,frame)));
centerJpanel.add(scrollPane);
+ frame.addComponentListener(new ComponentAdapter() {
+ @Override
+ public void componentResized(ComponentEvent e) {
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(100,frame)));
+ scrollPane.setPreferredSize(new Dimension(width - 20,Compute.ComputeHeightWithScroll(100,frame)));
+ centerJpanel.revalidate();
+ centerJpanel.repaint();
+ scrollPane.revalidate();
+ scrollPane.repaint();
+ }
+ });
return panel;
}
+ private static String getTooltipText(String hexColor) {
+ switch (hexColor) {
+ case "#3498DB":
+ return "杩涜涓�";
+ case "#F1C40F":
+ return "涓存湡";
+ case "#E74C3C":
+ return "閫炬湡";
+ case "#2ECC71":
+ return "姝e父瀹屾垚";
+ case "#006400":
+ return "瓒呮湡瀹屾垚";
+ default:
+ return "鏈紑濮�";
+ }
+ }
}
+
diff --git a/src/main/java/com/example/client/service/Level3ViewService.java b/src/main/java/com/example/client/service/Level3ViewService.java
index c8f0643..4479a87 100644
--- a/src/main/java/com/example/client/service/Level3ViewService.java
+++ b/src/main/java/com/example/client/service/Level3ViewService.java
@@ -86,7 +86,7 @@
mxGraphComponent graphComponent = new mxGraphComponent(graph);
graphComponent.setConnectable(false);
graphComponent.setDragEnabled(false);
- graphComponent.zoomTo(2, true);
+ graphComponent.zoomTo(1, true);
diagram.add(graphComponent);
mxGraph finalGraph = graph;
diff --git a/src/main/java/com/example/client/service/MenuService.java b/src/main/java/com/example/client/service/MenuService.java
index 85417d0..301085b 100644
--- a/src/main/java/com/example/client/service/MenuService.java
+++ b/src/main/java/com/example/client/service/MenuService.java
@@ -93,19 +93,19 @@
JPanel level1Manage = level1ManageService.createTable(width, height, frame);
main.showTab("涓�绾х綉缁滃浘绠$悊", level1Manage, tree);
} else if (nodeName.equals("涓�绾х綉缁滃浘鏌ョ湅")) {
- JPanel level1View = level1ViewService.createTable(width, height);
+ JPanel level1View = level1ViewService.createTable(width, height,frame);
main.showTab("涓�绾х綉缁滃浘鏌ョ湅", level1View, tree);
} else if (nodeName.equals("浜岀骇缃戠粶鍥剧鐞�")) {
JPanel level2Manage = level2ManageService.createTable(width, height, frame);
main.showTab("浜岀骇缃戠粶鍥剧鐞�", level2Manage, tree);
} else if (nodeName.equals("浜岀骇缃戠粶鍥炬煡鐪�")) {
- JPanel level2View = level2ViewService.createTable(width, height);
+ JPanel level2View = level2ViewService.createTable(width, height,frame);
main.showTab("浜岀骇缃戠粶鍥炬煡鐪�", level2View, tree);
} else if (nodeName.equals("涓夌骇缃戠粶鍥剧鐞�")) {
JPanel level3Manage = level3ManageService.createTable(width, height, frame);
main.showTab("涓夌骇缃戠粶鍥剧鐞�", level3Manage, tree);
} else if (nodeName.equals("涓夌骇缃戠粶鍥炬煡鐪�")) {
- JPanel level3View = level3View2Service.createTable(width, height);
+ JPanel level3View = level3View2Service.createTable(width, height,frame);
main.showTab("涓夌骇缃戠粶鍥炬煡鐪�", level3View, tree);
} else if (nodeName.equals("椤圭洰杩涘害琛�")) {
JPanel trackRecord = trackRecordManageService.createTable(width, height, frame);
diff --git a/src/main/java/com/example/client/service/SubunitAddOrUpdate.java b/src/main/java/com/example/client/service/SubunitAddOrUpdate.java
index 81dc730..426fb07 100644
--- a/src/main/java/com/example/client/service/SubunitAddOrUpdate.java
+++ b/src/main/java/com/example/client/service/SubunitAddOrUpdate.java
@@ -5,6 +5,7 @@
import com.example.client.model.TableButton;
import com.example.client.utils.BoxIteUtils;
import com.example.client.utils.CommonTable;
+import com.example.client.utils.Compute;
import com.example.client.utils.GBC;
import com.example.server.cabin.service.CabinService;
import com.example.server.progressTrack.model.DjJdgzDismantTrack;
@@ -46,13 +47,13 @@
public JPanel createTrack(Integer width, Integer height, DjJdgzNetworkLevel3 djJdgzNetworkLevel3,JFrame frame) {
nowLevel3 = djJdgzNetworkLevel3;
- JPanel panel = new JPanel();
+ 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(topJpanel, BorderLayout.NORTH);
panel.add(centerJpanel, BorderLayout.CENTER);
@@ -101,9 +102,19 @@
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.ComputeHeightWithScroll(40,frame)));
+ scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(40,frame)));
+ centerJpanel.revalidate();
+ centerJpanel.repaint();
+ scrollPane.revalidate();
+ scrollPane.repaint();
+ }
+ });
return panel;
}
diff --git a/src/main/java/com/example/client/service/SubunitService.java b/src/main/java/com/example/client/service/SubunitService.java
index b94a8f1..e6161b0 100644
--- a/src/main/java/com/example/client/service/SubunitService.java
+++ b/src/main/java/com/example/client/service/SubunitService.java
@@ -3,6 +3,7 @@
import com.example.client.dto.ColumnDto;
import com.example.client.dto.JComboBoxItem;
import com.example.client.utils.CommonTable;
+import com.example.client.utils.Compute;
import com.example.client.utils.GBC;
import com.example.server.cabin.service.CabinService;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel3;
@@ -47,11 +48,16 @@
JPanel jLeft = new JPanel(new BorderLayout());
JPanel top = new JPanel();
+ JPanel center = new JPanel();
GridBagLayout layout = new GridBagLayout();
top.setLayout(layout);
- jLeft.setPreferredSize(new Dimension(width / 2 - 20, height));
top.setPreferredSize(new Dimension(width / 2 - 20, 100));
+ jLeft.setPreferredSize(new Dimension(width / 2 - 20, Compute.ComputeHeight(0,frame)));
+ center.setPreferredSize(new Dimension(width / 2 - 20, Compute.ComputeHeight(100,frame)));
+
+ jLeft.add(center,BorderLayout.CENTER);
+
// 鍒涘缓宸︿晶琛ㄦ牸
@@ -125,7 +131,7 @@
JTable subTable = CommonTable.createCommonTable(list, columnDto);
subTable.setRowHeight(25);
- subTable.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS);
+ subTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
comboBox.addItemListener(new ItemListener() {
public void itemStateChanged(final ItemEvent event) {
@@ -305,7 +311,22 @@
JScrollPane scrollTable = new JScrollPane(subTable);
- jLeft.add(scrollTable, BorderLayout.CENTER);
+ scrollTable.setPreferredSize(new Dimension(width / 2 - 20, Compute.ComputeHeightWithScroll(100,frame)));
+ center.add(scrollTable);
+ frame.addComponentListener(new ComponentAdapter() {
+ @Override
+ public void componentResized(ComponentEvent e) {
+ jLeft.setPreferredSize(new Dimension(width / 2 - 20, Compute.ComputeHeight(0,frame)));
+ center.setPreferredSize(new Dimension(width / 2 - 20, Compute.ComputeHeight(100,frame)));
+ scrollTable.setPreferredSize(new Dimension(width / 2 - 20,Compute.ComputeHeightWithScroll(100,frame)));
+ jLeft.revalidate();
+ jLeft.repaint();
+ center.revalidate();
+ center.repaint();
+ scrollTable.revalidate();
+ scrollTable.repaint();
+ }
+ });
JPanel track = addOrUpdate.createTrack(width / 2, height, list.get(0), frame);
diff --git a/src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java b/src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java
index 323e542..319a680 100644
--- a/src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java
+++ b/src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java
@@ -2,30 +2,22 @@
import com.example.client.dto.ColumnDto;
import com.example.client.dto.JComboBoxItem;
-import com.example.client.model.TableButton;
import com.example.client.utils.CommonTable;
import com.example.client.utils.GBC;
import com.example.client.utils.UploadFile;
import com.example.server.progressTrack.model.DjJdgzDismantTrack;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel3;
-import com.example.server.progressTrack.model.DjJdgzNetworkLevel3List;
import com.example.server.progressTrack.model.DjJdgzTrackRecord;
import com.example.server.progressTrack.service.*;
import com.example.server.sysOss.model.SysOss;
-import com.example.server.teamGroup.service.SysTeamGroupClassService;
import com.example.server.user.model.SysUser;
import com.example.server.utils.CacheUtils;
-import com.mxgraph.swing.mxGraphComponent;
-import com.mxgraph.view.mxGraph;
import org.apache.commons.lang3.StringUtils;
import org.jdesktop.swingx.JXDatePicker;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.swing.*;
-import javax.swing.event.TableModelEvent;
-import javax.swing.table.DefaultTableModel;
-import javax.swing.table.TableModel;
import java.awt.*;
import java.awt.event.*;
import java.text.ParseException;
@@ -114,6 +106,12 @@
trackPersonDesc.setText(data.getTrackPerson());
}
+ JLabel JLabel34 = new JLabel("鍗曚綅");
+ JTextField trackPersonUnitDesc = new JTextField(16);
+ if (StringUtils.isNotBlank(data.getTrackPersonUnit())) {
+ trackPersonUnitDesc.setText(data.getTrackPersonUnit());
+ }
+
JLabel JLabel4 = new JLabel("鑱旂郴鏂瑰紡");
JTextField trackPersonContactDesc = new JTextField(16);
if (StringUtils.isNotBlank(data.getTrackPersonContact())) {
@@ -124,6 +122,12 @@
JTextField trackedPersonDesc = new JTextField(16);
if (StringUtils.isNotBlank(data.getTrackedPerson())) {
trackedPersonDesc.setText(data.getTrackedPerson());
+ }
+
+ JLabel JLabel56 = new JLabel("鍗曚綅");
+ JTextField trackedPersonUnitDesc = new JTextField(16);
+ if (StringUtils.isNotBlank(data.getTrackedPersonUnit())) {
+ trackedPersonUnitDesc.setText(data.getTrackedPersonUnit());
}
JLabel JLabel6 = new JLabel("鑱旂郴鏂瑰紡");
@@ -245,13 +249,17 @@
frame1.add(JLabel3, new GBC(0, 1, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
frame1.add(trackPersonDesc, new GBC(1, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
- frame1.add(JLabel4, new GBC(2, 1, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
- frame1.add(trackPersonContactDesc, new GBC(3, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ frame1.add(JLabel34, new GBC(2, 1, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ frame1.add(trackPersonUnitDesc, new GBC(3, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ frame1.add(JLabel4, new GBC(4, 1, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ frame1.add(trackPersonContactDesc, new GBC(5, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
frame1.add(JLabel5, new GBC(0, 2, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
frame1.add(trackedPersonDesc, new GBC(1, 2, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
- frame1.add(JLabel6, new GBC(2, 2, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
- frame1.add(trackedPersonContactDesc, new GBC(3, 2, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ frame1.add(JLabel56, new GBC(2, 2, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ frame1.add(trackedPersonUnitDesc, new GBC(3, 2, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ frame1.add(JLabel6, new GBC(4, 2, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ frame1.add(trackedPersonContactDesc, new GBC(5, 2, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
frame1.add(JLabel7, new GBC(0, 3, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
frame1.add(generalRepairUnitDesc, new GBC(1, 3, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
@@ -313,6 +321,8 @@
data.setTrackLocation(trackLocatDesc.getText());
data.setTrackPerson(trackPersonDesc.getText());
data.setTrackPersonContact(trackPersonContactDesc.getText());
+ data.setTrackPersonUnit(trackPersonUnitDesc.getText());
+ data.setTrackedPersonUnit(trackedPersonUnitDesc.getText());
data.setTrackedPerson(trackedPersonDesc.getText());
data.setTrackedPersonContact(trackedPersonContactDesc.getText());
data.setGeneralRepairUnit(generalRepairUnitDesc.getText());
@@ -329,7 +339,7 @@
data.setRemark(remark.getText());
Long id = djJdgzTrackRecordService.save(data);
uploadFile.save(id);
- List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.getList(level1Id, 0);
+ List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.getList(level1Id, level3.getDeptId(), null, null, level3.getType(), 0, null);
CommonTable.refreshTable(list, columnDto, table);
trackRecordManageService.tableModelListener(table, jFrame, list);
frame1.dispose();
diff --git a/src/main/java/com/example/client/service/TrackRecordManageService.java b/src/main/java/com/example/client/service/TrackRecordManageService.java
index d30992b..363d012 100644
--- a/src/main/java/com/example/client/service/TrackRecordManageService.java
+++ b/src/main/java/com/example/client/service/TrackRecordManageService.java
@@ -3,12 +3,11 @@
import com.example.client.dto.ColumnDto;
import com.example.client.dto.JComboBoxItem;
import com.example.client.model.TableButton;
-import com.example.client.utils.CommonTable;
+import com.example.client.utils.*;
import com.example.server.cabin.service.CabinService;
import com.example.server.progressTrack.model.*;
import com.example.server.progressTrack.service.DjJdgzNetworkLevel1Service;
import com.example.server.progressTrack.service.DjJdgzNetworkLevel3Service;
-import com.example.server.progressTrack.service.DjJdgzShipService;
import com.example.server.progressTrack.service.DjJdgzTrackRecordService;
import com.example.server.teamGroup.service.SysTeamGroupClassService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -16,12 +15,12 @@
import javax.swing.*;
import javax.swing.event.TableModelEvent;
+import javax.swing.table.TableColumnModel;
import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
+import java.util.Set;
@Service
@@ -50,16 +49,19 @@
private JTable table;
private List<DjJdgzTrackRecord> list;
private List<ColumnDto> columnDto;
+ private TableColumnModel columnModel;
public JPanel createTable(Integer width, Integer height, JFrame jFrame) {
JPanel panel = new JPanel();
- JPanel topJpanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
- topJpanel.setPreferredSize(new Dimension(width, 37));
+ JPanel topJpanel = new JPanel();
+ GridBagLayout layout = new GridBagLayout();
+ topJpanel.setLayout(layout);
+ topJpanel.setPreferredSize(new Dimension(width - 20, 100));
topJpanel.setBackground(Color.WHITE);
JPanel centerJpanel = new JPanel();
- centerJpanel.setPreferredSize(new Dimension(width - 20, height - 100));
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(100,jFrame)));
centerJpanel.setBackground(Color.WHITE);
panel.add(topJpanel, BorderLayout.NORTH);
panel.add(centerJpanel, BorderLayout.CENTER);
@@ -73,44 +75,173 @@
new JComboBoxItem(1L, "宸插畬鎴�")
};
+ JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(null);
+ String[] typeList = new String[]{
+ "鏀硅", "鍔犺", "鎹㈣", "鏀硅繘鎬т慨鐞�", ""
+ };
+
+ JLabel JLabel0 = new JLabel("宸ョ▼");
+ JComboBox<JComboBoxItem> comboBox = new JComboBox<>(projectList);
+ comboBox.setPreferredSize(new Dimension(150, 28));
+
+ JLabel JLabel1 = new JLabel("閮ㄩ棬");
+ JComboBox<JComboBoxItem> comboBox1 = new JComboBox<>(deptList);
+ comboBox1.setPreferredSize(new Dimension(150, 28));
+
+ JComboBoxItem[] teamList1 = sysTeamGroupClassService.getTeamList(deptList[0].getId());
+
+ JLabel JLabel2 = new JLabel("涓撲笟");
+ JComboBox<JComboBoxItem> comboBox2 = new JComboBox<>(teamList1);
+ comboBox2.setPreferredSize(new Dimension(150, 28));
+
+ JLabel JLabel3 = new JLabel("鑸卞");
+ JComboBox<JComboBoxItem> comboBox3 = new JComboBox<>(cabinList);
+ comboBox3.setPreferredSize(new Dimension(150, 28));
+
+ JLabel JLabel4 = new JLabel("绫诲埆");
+ JComboBox<String> comboBox4 = new JComboBox<>(typeList);
+ comboBox4.setPreferredSize(new Dimension(150, 28));
+
+ JLabel JLabel5 = new JLabel("鐘舵��");
+ JComboBox<JComboBoxItem> comboBox5 = new JComboBox<>(statusList);
+ comboBox5.setPreferredSize(new Dimension(150, 28));
+
+ JTextField sb = new JTextField(16);
+ sb.setPreferredSize(new Dimension(150, 28));
+ JButton query = new JButton("鏌ヨ");
+
JButton btnTj = new JButton("缁熻鎶ヨ〃");
JButton btnJc = new JButton("鍛ㄨ繘搴︽鏌ヨ〃");
JButton btnExport = new JButton("瀵煎嚭璺熻釜鎶ヨ〃");
JButton btnImport = new JButton("瀵煎叆璺熻釜鎶ヨ〃");
- JComboBox<JComboBoxItem> comboBox = new JComboBox<>(projectList);
- JComboBox<JComboBoxItem> comboBox2 = new JComboBox<>(statusList);
- JComboBoxItem selectedItem = (JComboBoxItem) comboBox.getSelectedItem();
- JComboBoxItem selectedItem2 = (JComboBoxItem) comboBox2.getSelectedItem();
comboBox.addItemListener(new ItemListener() {
public void itemStateChanged(final ItemEvent event) {
- JComboBoxItem selectedItemNow = (JComboBoxItem) comboBox.getSelectedItem();
- JComboBoxItem selectedItem2Now = (JComboBoxItem) comboBox2.getSelectedItem();
- Long level1Id = selectedItemNow.getId();
- Long Status = selectedItem2Now.getId();
+ JComboBoxItem project = (JComboBoxItem) comboBox.getSelectedItem();
+ JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
+ JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
+ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
+ String type = comboBox4.getSelectedItem().toString();
+ JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
- list = djJdgzTrackRecordService.getList(level1Id, Math.toIntExact(Status));
+ list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
+
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
- table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
- tableModelListener(table, jFrame,list);
+ table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+ tableModelListener(table, jFrame, list);
+ }
+ });
+
+ comboBox1.addItemListener(new ItemListener() {
+ public void itemStateChanged(final ItemEvent event) {
+ JComboBoxItem project = (JComboBoxItem) comboBox.getSelectedItem();
+ JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
+ Long deptId = dept.getId();
+ JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(deptId);
+ comboBox2.setModel(new DefaultComboBoxModel<>(teamList));
+
+ JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
+ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
+ String type = comboBox4.getSelectedItem().toString();
+ JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
+
+ list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
+
+ CommonTable.refreshTable(list, columnDto, table);
+ table.setRowHeight(25);
+
+ table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+ tableModelListener(table, jFrame, list);
}
});
comboBox2.addItemListener(new ItemListener() {
public void itemStateChanged(final ItemEvent event) {
- JComboBoxItem selectedItemNow = (JComboBoxItem) comboBox.getSelectedItem();
- JComboBoxItem selectedItem2Now = (JComboBoxItem) comboBox2.getSelectedItem();
- Long level1Id = selectedItemNow.getId();
- Long Status = selectedItem2Now.getId();
+ JComboBoxItem project = (JComboBoxItem) comboBox.getSelectedItem();
+ JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
+ JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
+ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
+ String type = comboBox4.getSelectedItem().toString();
+ JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
- list = djJdgzTrackRecordService.getList(level1Id, Math.toIntExact(Status));
+ list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
+
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
- table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
- tableModelListener(table, jFrame,list);
+ table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+ tableModelListener(table, jFrame, list);
+ }
+ });
+
+ comboBox3.addItemListener(new ItemListener() {
+ public void itemStateChanged(final ItemEvent event) {
+ JComboBoxItem project = (JComboBoxItem) comboBox.getSelectedItem();
+ JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
+ JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
+ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
+ String type = comboBox4.getSelectedItem().toString();
+ JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
+
+ list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
+
+ CommonTable.refreshTable(list, columnDto, table);
+ table.setRowHeight(25);
+
+ table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+ tableModelListener(table, jFrame, list);
+ }
+ });
+ comboBox4.addItemListener(new ItemListener() {
+ public void itemStateChanged(final ItemEvent event) {
+ JComboBoxItem project = (JComboBoxItem) comboBox.getSelectedItem();
+ JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
+ JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
+ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
+ String type = comboBox4.getSelectedItem().toString();
+ JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
+
+ list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
+
+ CommonTable.refreshTable(list, columnDto, table);
+ table.setRowHeight(25);
+
+ table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+ tableModelListener(table, jFrame, list);
+ }
+ });
+
+ comboBox5.addItemListener(new ItemListener() {
+ public void itemStateChanged(final ItemEvent event) {
+ JComboBoxItem project = (JComboBoxItem) comboBox.getSelectedItem();
+ JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
+ JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
+ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
+ String type = comboBox4.getSelectedItem().toString();
+ JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
+
+ list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()), null);
+
+ CommonTable.refreshTable(list, columnDto, table);
+ table.setRowHeight(25);
+
+ table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+ tableModelListener(table, jFrame, list);
+ }
+ });
+ query.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ JComboBoxItem project = (JComboBoxItem) comboBox.getSelectedItem();
+ list = djJdgzTrackRecordService.getList(project.getId(), null, null, null, null, null, sb.getText());
+
+ CommonTable.refreshTable(list, columnDto, table);
+ table.setRowHeight(25);
+
+ table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+ tableModelListener(table, jFrame, list);
}
});
@@ -118,21 +249,11 @@
@Override
public void actionPerformed(ActionEvent e) {
JComboBoxItem selectedItemNow = (JComboBoxItem) comboBox.getSelectedItem();
- importTrackRecordService.FileUpload(columnDto,table,jFrame);
+ importTrackRecordService.FileUpload(columnDto, table, jFrame);
}
});
- topJpanel.add(btnTj);
- topJpanel.add(btnJc);
- topJpanel.add(btnExport);
- topJpanel.add(btnImport);
- topJpanel.add(comboBox);
- topJpanel.add(comboBox2);
-
- comboBox.setPreferredSize(new Dimension(300, 28));
- comboBox2.setPreferredSize(new Dimension(300, 28));
-
- list = djJdgzTrackRecordService.getList(selectedItem.getId(), Math.toIntExact(selectedItem2.getId()));
+ list = djJdgzTrackRecordService.getList(projectList[0].getId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], Math.toIntExact(statusList[0].getId()), null);
List<TableButton> buttonList = new ArrayList<>();
buttonList.add(new TableButton("edit", "缂栬緫"));
@@ -146,11 +267,11 @@
columnDto.add(new ColumnDto("涓�绾ц妭鐐�", "level1NodeName", 120, null, false, null, null));
columnDto.add(new ColumnDto("浜岀骇鑺傜偣", "level2NodeName", 120, null, false, null, null));
columnDto.add(new ColumnDto("璁惧鍚嶇О", "level3NetworkName", 120, null, false, null, null));
- columnDto.add(new ColumnDto("褰撳墠鑺傜偣", "level3NodeName", 120, null, false, null, null));
- columnDto.add(new ColumnDto("璁″垝瀹屾垚鏃堕棿", "requiredCompletionTime", 200, null, false, null, null));
- columnDto.add(new ColumnDto("鎬绘壙淇崟浣�", "generalRepair", 180, null, false, null, null));
- columnDto.add(new ColumnDto("鍒嗘壙淇崟浣�", "repair", 180, null, false, null, null));
+ columnDto.add(new ColumnDto("褰撳墠鑺傜偣", "level3NodeName", 150, null, false, null, null));
+ columnDto.add(new ColumnDto("璁″垝瀹屾垚鏃堕棿", "requiredCompletionTime", 180, null, false, null, null));
columnDto.add(new ColumnDto("璺熻釜璁板綍", "", 100, "", true, buttonList, null));
+ columnDto.add(new ColumnDto("鎬绘壙淇崟浣�", "generalRepair", 200, null, false, null, null));
+ columnDto.add(new ColumnDto("鍒嗘壙淇崟浣�", "repair", 200, null, false, null, null));
columnDto.add(new ColumnDto("鍘嗗彶璁板綍", "trackNum", 100, null, false, null, null));
columnDto.add(new ColumnDto("瀹屾垚鏃堕棿", "actualCompletion", 200, null, false, null, null));
columnDto.add(new ColumnDto("闄勪欢", "fileName", 200, null, false, null, null));
@@ -159,6 +280,60 @@
table = CommonTable.createCommonTable(list, columnDto);
table.setRowHeight(25);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+
+ List<String> itemList = new ArrayList<>();
+ for (ColumnDto dto : columnDto) {
+ itemList.add(dto.getColumnDesc()); // 灏� dto.getColumnDesc() 娣诲姞鍒� List 涓�
+ }
+
+ String[] items = itemList.toArray(new String[0]);
+ columnModel = table.getColumnModel();
+ MultiSelectComboBox2 mulcomboBox = new MultiSelectComboBox2(items,columnDto,columnModel);
+
+/* final Integer[] lastIndex = {-1};
+ mulcomboBox.addItemListener(new ItemListener() {
+ @Override
+ public void itemStateChanged(ItemEvent event) {
+ int selectedIndex = mulcomboBox.getSelectedIndex();
+ if (lastIndex[0] == selectedIndex){
+ lastIndex[0] = -1;
+ return;
+ }else{
+ lastIndex[0] = selectedIndex;
+ }
+ if (selectedIndex != -1) {
+ // 鏇存柊 selectedIndices
+ if (event.getStateChange() == ItemEvent.SELECTED){
+ Integer width = columnDto.get(selectedIndex).getColumnWidth();
+ columnModel.getColumn(selectedIndex).setPreferredWidth(width);
+ }else{
+ columnModel.getColumn(selectedIndex).setPreferredWidth(0);
+ }
+ }
+ }
+ });*/
+
+ topJpanel.add(JLabel0, new GBC(0, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel.add(comboBox, new GBC(1, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel.add(JLabel1, new GBC(2, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel.add(comboBox1, new GBC(3, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel.add(JLabel2, new GBC(4, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel.add(comboBox2, new GBC(5, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel.add(JLabel3, new GBC(6, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel.add(comboBox3, new GBC(7, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel.add(JLabel4, new GBC(8, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel.add(comboBox4, new GBC(9, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel.add(JLabel5, new GBC(10, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel.add(comboBox5, new GBC(11, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+
+ topJpanel.add(btnTj, new GBC(1, 1, 1, 1).setInsets(5));
+ topJpanel.add(btnJc, new GBC(2, 1, 2, 1).setInsets(5));
+ topJpanel.add(btnImport, new GBC(4, 1, 2, 1).setInsets(5));
+ topJpanel.add(btnExport, new GBC(6, 1, 2, 1).setInsets(5));
+ topJpanel.add(mulcomboBox, new GBC(8, 1, 2, 1).setInsets(5));
+ topJpanel.add(sb, new GBC(10, 1, 2, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel.add(query, new GBC(12, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+
table.addMouseListener(new MouseAdapter() {
@Override
@@ -203,13 +378,24 @@
exportTrackRecordService.openDialog(jFrame);
}
});
- tableModelListener(table, jFrame,list);
+ tableModelListener(table, jFrame, list);
JScrollPane scrollPane = new JScrollPane(table, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scrollPane.setViewportView(table);
scrollPane.getViewport().setBackground(Color.WHITE);
- scrollPane.setPreferredSize(new Dimension(width - 20, height - 130));
+ scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(100,jFrame)));
centerJpanel.add(scrollPane);
+ jFrame.addComponentListener(new ComponentAdapter() {
+ @Override
+ public void componentResized(ComponentEvent e) {
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(100,jFrame)));
+ scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(100,jFrame)));
+ centerJpanel.revalidate();
+ centerJpanel.repaint();
+ scrollPane.revalidate();
+ scrollPane.repaint();
+ }
+ });
return panel;
}
@@ -272,7 +458,7 @@
}
- public void tableModelListener(JTable table, JFrame jFrame,List<DjJdgzTrackRecord> recordList) {
+ public void tableModelListener(JTable table, JFrame jFrame, List<DjJdgzTrackRecord> recordList) {
table.getModel().addTableModelListener(e -> {
// 妫�鏌ヤ簨浠剁被鍨�
if (e.getType() == TableModelEvent.UPDATE) {
@@ -292,7 +478,7 @@
data = djJdgzTrackRecordService.get(data.getId());
data.setLevel1NetworkId(level1Id);
data.setIsUpdate(isUpdate);
- }else{
+ } else {
DjJdgzNetworkLevel3 level3 = level3Service.get(data.getLevel3NetworkId());
data.setGeneralRepairUnit(level3.getGeneralRepairUnit());
data.setGeneralRepairUnitDirector(level3.getGeneralRepairUnitDirector());
@@ -309,6 +495,41 @@
System.out.println("鍗曞厓鏍煎彉鍖�: 琛�=" + row + ", 鍒�=" + column + ", 鏂板��=" + newValue);
}
});
+
+ table.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent e) {
+ if (e.isPopupTrigger()) {
+ showPopupMenu(e);
+ }
+ }
+
+ @Override
+ public void mouseReleased(MouseEvent e) {
+ if (e.isPopupTrigger()) {
+ showPopupMenu(e);
+ }
+ }
+
+ private void showPopupMenu(MouseEvent e) {
+ JPopupMenu popupMenu = new JPopupMenu();
+ JMenuItem menuItem1 = new JMenuItem("鎾ゅ洖");
+ popupMenu.add(menuItem1);
+ int row = table.rowAtPoint(e.getPoint());
+ int col = table.columnAtPoint(e.getPoint());
+ DjJdgzTrackRecord djJdgzTrackRecord = list.get(row);
+ if (djJdgzTrackRecord.getCurrentStatus() == 1) {
+ table.setRowSelectionInterval(row, row);
+ popupMenu.show(e.getComponent(), e.getX(), e.getY());
+ menuItem1.addActionListener(ex -> {
+ djJdgzTrackRecordService.retract(djJdgzTrackRecord.getId());
+ List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.getList(djJdgzTrackRecord.getLevel1NetworkId(), null, null, null, null, 0, null);
+ CommonTable.refreshTable(list, columnDto, table);
+ tableModelListener(table, jFrame, list);
+ });
+ }
+ }
+ });
}
}
diff --git a/src/main/java/com/example/client/utils/ColorDescription.java b/src/main/java/com/example/client/utils/ColorDescription.java
new file mode 100644
index 0000000..beab88e
--- /dev/null
+++ b/src/main/java/com/example/client/utils/ColorDescription.java
@@ -0,0 +1,19 @@
+package com.example.client.utils;
+
+public class ColorDescription {
+ private String hexColor;
+ private String description;
+
+ public ColorDescription(String hexColor, String description) {
+ this.hexColor = hexColor;
+ this.description = description;
+ }
+
+ public String getHexColor() {
+ return hexColor;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+}
diff --git a/src/main/java/com/example/client/utils/ColorDescriptionComboBox.java b/src/main/java/com/example/client/utils/ColorDescriptionComboBox.java
new file mode 100644
index 0000000..b9754cd
--- /dev/null
+++ b/src/main/java/com/example/client/utils/ColorDescriptionComboBox.java
@@ -0,0 +1,102 @@
+package com.example.client.utils;
+
+import com.example.client.dto.ColumnDto;
+
+import javax.swing.*;
+import javax.swing.plaf.basic.BasicComboBoxEditor;
+import javax.swing.table.DefaultTableCellRenderer;
+import javax.swing.table.TableColumnModel;
+import java.awt.*;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class ColorDescriptionComboBox extends JComboBox<ColorDescription> {
+ private String defaultText; // 榛樿鏄剧ず鏂囨湰
+
+ public ColorDescriptionComboBox(List<ColorDescription> colorDescriptions) {
+ super(colorDescriptions.toArray(new ColorDescription[0]));
+ this.defaultText = "鐘舵��"; // 璁剧疆榛樿鏂囨湰
+ setEditable(true);
+
+ // 鑷畾涔夋覆鏌撳櫒
+ setRenderer(new DefaultListCellRenderer() {
+ @Override
+ public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
+ super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
+ if (value instanceof ColorDescription) {
+ ColorDescription cd = (ColorDescription) value;
+ setText(cd.getDescription()); // 鏄剧ず鎻忚堪
+ setIcon(new ColorIcon(cd.getHexColor())); // 璁剧疆鍦嗗舰鍥炬爣
+ }
+ return this;
+ }
+ });
+
+ // 鑷畾涔夌紪杈戝櫒
+ setEditor(new BasicComboBoxEditor() {
+ private JTextField textField;
+
+ @Override
+ public Component getEditorComponent() {
+ if (textField == null) {
+ textField = new JTextField(defaultText); // 璁剧疆榛樿鏂囨湰
+ textField.setEditable(false); // 璁剧疆涓轰笉鍙紪杈�
+ }
+ return textField;
+ }
+
+ @Override
+ public void setItem(Object anObject) {
+ // 绂佺敤鑷姩鏇存柊缂栬緫鍣ㄦ枃鏈殑琛屼负
+ if (textField != null) {
+ textField.setText(defaultText); // 濮嬬粓鏄剧ず榛樿鏂囨湰
+ }
+ }
+ });
+ }
+}
+
+
+// 鑷畾涔夊渾褰㈠浘鏍囩被
+class ColorIcon implements Icon {
+ private Color color;
+
+ public ColorIcon(String hexColor) {
+ this.color = ColorUtils.hexToColor(hexColor);
+ }
+
+ @Override
+ public void paintIcon(Component c, Graphics g, int x, int y) {
+ int width = getIconWidth();
+ int height = getIconHeight();
+ int diameter = Math.min(width, height);
+ int xCenter = (width - diameter) / 2;
+ int yCenter = (height - diameter) / 2;
+
+ g.setColor(color);
+ g.fillOval(x + xCenter, y + yCenter, diameter, diameter);
+ }
+
+ @Override
+ public int getIconWidth() {
+ return 20; // 鍦嗗舰鐨勫搴�
+ }
+
+ @Override
+ public int getIconHeight() {
+ return 20; // 鍦嗗舰鐨勯珮搴�
+ }
+}
+// 鍗佸叚杩涘埗棰滆壊杞崲涓� Color 瀵硅薄
+class ColorUtils {
+ public static Color hexToColor(String hex) {
+ try {
+ hex = hex.trim().replace("#", "");
+ int rgb = Integer.parseInt(hex, 16);
+ return new Color((rgb >> 16) & 0xFF, (rgb >> 8) & 0xFF, rgb & 0xFF);
+ } catch (NumberFormatException e) {
+ return Color.WHITE;
+ }
+ }
+}
diff --git a/src/main/java/com/example/client/utils/CommonTable.java b/src/main/java/com/example/client/utils/CommonTable.java
index ea59bc7..84892be 100644
--- a/src/main/java/com/example/client/utils/CommonTable.java
+++ b/src/main/java/com/example/client/utils/CommonTable.java
@@ -45,6 +45,7 @@
public static void setColumnType(List<ColumnDto> dtoList, JTable table) {
for (int j = 0; j < dtoList.size(); j++) {
table.getColumnModel().getColumn(j).setPreferredWidth(dtoList.get(j).getColumnWidth());
+ table.getColumnModel().getColumn(j).setMinWidth(2);
if (dtoList.get(j).getButtonList() != null) {
CreateTableButton.AcceptRejectRenderer renderer = new CreateTableButton.AcceptRejectRenderer(dtoList.get(j).getButtonList());
table.getColumnModel().getColumn(j).setCellRenderer(renderer);
diff --git a/src/main/java/com/example/client/utils/Compute.java b/src/main/java/com/example/client/utils/Compute.java
new file mode 100644
index 0000000..4216855
--- /dev/null
+++ b/src/main/java/com/example/client/utils/Compute.java
@@ -0,0 +1,39 @@
+package com.example.client.utils;
+
+import javax.swing.*;
+import java.awt.*;
+
+public class Compute {
+ /*public static Integer ComputeHeight(Integer topHeight){
+ GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
+ Rectangle rect = ge.getMaximumWindowBounds();
+ Integer screenWidth = rect.width;
+ Integer screenHeight = rect.height;
+
+ Integer panelHeight = screenHeight - 50 - topHeight;
+
+ return panelHeight;
+ }
+ public static Integer ComputeHeightWithScroll(Integer topHeight){
+ GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
+ Rectangle rect = ge.getMaximumWindowBounds();
+ Integer screenWidth = rect.width;
+ Integer screenHeight = rect.height;
+
+ Integer panelHeight = screenHeight - 50 - 30 - topHeight;
+
+ return panelHeight;
+ }*/
+ public static Integer ComputeHeight(Integer topHeight, JFrame frame){
+ int height = frame.getSize().height;
+ Integer panelHeight = height - 70 - topHeight;
+
+ return panelHeight;
+ }
+ public static Integer ComputeHeightWithScroll(Integer topHeight, JFrame frame){
+ int height = frame.getSize().height;
+ Integer panelHeight = height - 100 - topHeight;
+
+ return panelHeight;
+ }
+}
diff --git a/src/main/java/com/example/client/utils/MultiSelectComboBox2.java b/src/main/java/com/example/client/utils/MultiSelectComboBox2.java
new file mode 100644
index 0000000..fed687b
--- /dev/null
+++ b/src/main/java/com/example/client/utils/MultiSelectComboBox2.java
@@ -0,0 +1,116 @@
+package com.example.client.utils;
+
+import com.example.client.dto.ColumnDto;
+
+import javax.swing.*;
+import javax.swing.plaf.basic.BasicComboBoxEditor;
+import javax.swing.table.TableColumnModel;
+import java.awt.*;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class MultiSelectComboBox2 extends JComboBox<String> {
+ public Set<Integer> selectedIndices = new HashSet<>();
+ private String defaultText; // 榛樿鏄剧ず鏂囨湰
+
+ public MultiSelectComboBox2(String[] items, List<ColumnDto> columnDto, TableColumnModel columnModel) {
+ super(items);
+ this.defaultText = "鑷畾涔夎〃澶�"; // 璁剧疆榛樿鏂囨湰
+ setEditable(true);
+
+ // 鑷畾涔夋覆鏌撳櫒
+ setRenderer(new DefaultListCellRenderer() {
+ @Override
+ public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
+ JCheckBox checkBox = new JCheckBox();
+ checkBox.setText(value.toString()); // 浣跨敤瀛楃涓蹭綔涓烘枃鏈�
+ checkBox.setSelected(selectedIndices.contains(index)); // 璁剧疆閫変腑鐘舵��
+ checkBox.setEnabled(list.isEnabled());
+ checkBox.setFont(list.getFont());
+ checkBox.setFocusPainted(false);
+ checkBox.setBackground(isSelected ? list.getSelectionBackground() : list.getBackground());
+ checkBox.setForeground(isSelected ? list.getSelectionForeground() : list.getForeground());
+ return checkBox;
+ }
+ });
+
+ // 鑷畾涔夌紪杈戝櫒
+ setEditor(new BasicComboBoxEditor() {
+ private JTextField textField;
+
+ @Override
+ public Component getEditorComponent() {
+ if (textField == null) {
+ textField = new JTextField(defaultText); // 璁剧疆榛樿鏂囨湰
+ textField.setEditable(false); // 璁剧疆涓轰笉鍙紪杈�
+ }
+ return textField;
+ }
+
+ @Override
+ public void setItem(Object anObject) {
+ // 绂佺敤鑷姩鏇存柊缂栬緫鍣ㄦ枃鏈殑琛屼负
+ if (textField != null) {
+ textField.setText(defaultText); // 濮嬬粓鏄剧ず榛樿鏂囨湰
+ }
+ }
+ });
+
+ // 娣诲姞鍔ㄤ綔鐩戝惉鍣�
+ addActionListener(e -> {
+ int selectedIndex = getSelectedIndex();
+ if (selectedIndex != -1) {
+ if (selectedIndices.contains(selectedIndex)) {
+ selectedIndices.remove(selectedIndex);
+ if (columnModel != null) {
+ columnModel.getColumn(selectedIndex).setPreferredWidth(2);
+ }
+ } else {
+ selectedIndices.add(selectedIndex);
+ if (columnModel != null) {
+ Integer width = columnDto.get(selectedIndex).getColumnWidth();
+ columnModel.getColumn(selectedIndex).setPreferredWidth(width);
+ }
+ }
+ }
+ });
+
+ // 榛樿閫変腑鎵�鏈夐」
+ for (int i = 0; i < getItemCount(); i++) {
+ selectedIndices.add(i); // 灏嗘墍鏈夌储寮曟坊鍔犲埌閫変腑闆嗗悎
+ }
+ }
+
+ public Set<String> getSelectedItems() {
+ Set<String> selectedItems = new HashSet<>();
+ for (Integer index : selectedIndices) {
+ selectedItems.add((String) getItemAt(index));
+ }
+ return selectedItems;
+ }
+
+ public void setSelectedItems(Set<String> items) {
+ selectedIndices.clear(); // 娓呯┖褰撳墠閫変腑椤�
+ for (int i = 0; i < getItemCount(); i++) {
+ String item = getItemAt(i);
+ if (items.contains(item)) {
+ selectedIndices.add(i); // 灏嗗搴旂殑绱㈠紩娣诲姞鍒伴�変腑闆嗗悎
+ }
+ }
+ }
+
+ public Set<Integer> getUnselectedIndices() {
+ Set<Integer> unselectedIndices = new HashSet<>();
+ for (int i = 0; i < getItemCount(); i++) {
+ if (!selectedIndices.contains(i)) {
+ unselectedIndices.add(i);
+ }
+ }
+ return unselectedIndices;
+ }
+
+ public Set<Integer> getSelectedIndices() {
+ return new HashSet<>(selectedIndices);
+ }
+}
\ No newline at end of file
diff --git a/src/main/java/com/example/server/DataSync/dto/DataExportDto.java b/src/main/java/com/example/server/DataSync/dto/DataExportDto.java
deleted file mode 100644
index c381b98..0000000
--- a/src/main/java/com/example/server/DataSync/dto/DataExportDto.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package com.example.server.DataSync.dto;
-
-import lombok.Data;
-
-@Data
-public class DataExportDto {
- private String exportDate;
- private String exportStaff;
-}
diff --git a/src/main/java/com/example/server/DataSync/dto/DataImportDto.java b/src/main/java/com/example/server/DataSync/dto/DataImportDto.java
deleted file mode 100644
index a88af62..0000000
--- a/src/main/java/com/example/server/DataSync/dto/DataImportDto.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.example.server.DataSync.dto;
-
-import lombok.Data;
-
-@Data
-public class DataImportDto {
- private String importDate;
- private String importLocal;
- private String importStaff;
-}
diff --git a/src/main/java/com/example/server/DataSync/service/DataSyncService.java b/src/main/java/com/example/server/DataSync/service/DataSyncService.java
index e096a1e..3a6f4a8 100644
--- a/src/main/java/com/example/server/DataSync/service/DataSyncService.java
+++ b/src/main/java/com/example/server/DataSync/service/DataSyncService.java
@@ -1,10 +1,16 @@
package com.example.server.DataSync.service;
import com.example.Application;
+import com.example.client.service.DataExportManageService;
+import com.example.client.service.DataImportManageService;
import com.example.client.utils.WaitUtil;
import com.example.server.DataSync.dto.IDUpdateDateDto;
import com.example.server.DataSync.dto.FieldTypeDto;
import com.example.server.mysql.dao.SysMysqlDao;
+import com.example.server.progressTrack.dao.ExportRecordDao;
+import com.example.server.progressTrack.dao.ImportRecordDao;
+import com.example.server.progressTrack.model.ExportRecord;
+import com.example.server.progressTrack.model.ImportRecord;
import com.example.server.utils.CacheUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -28,6 +34,14 @@
public class DataSyncService {
@Autowired
protected SysMysqlDao sysMysqlDao;
+ @Autowired
+ protected ExportRecordDao exportRecordDao;
+ @Autowired
+ protected ImportRecordDao importRecordDao;
+ @Autowired
+ DataExportManageService dataExportManageService;
+ @Autowired
+ DataImportManageService dataImportManageService;
@Value("${data.config-path}")
private String configPath2;
@@ -40,7 +54,9 @@
@Value("${spring.datasource.url}")
private String datasource;
- public void export() {
+
+ public void export(JTextArea tips) {
+ final String[] massage = {""};
String[] parts = datasource.split(":", 3);
// 瀹氫箟鏂囦欢璺緞
String dbPath = parts[2];
@@ -53,15 +69,16 @@
String outputZipPath = showSaveFileDialog(mySite + "鍚屾鏁版嵁鍖�.zip");
if (outputZipPath == null) {
- System.out.println("鐢ㄦ埛鍙栨秷淇濆瓨锛岀▼搴忛��鍑恒��");
- }else{
+ massage[0] = "鐢ㄦ埛鍙栨秷淇濆瓨锛岀▼搴忛��鍑恒��"+ new Date();
+ tips.setText(tips.getText() + massage[0]);
+ } else {
final WaitUtil waitUtil = new WaitUtil(imgPath, "鏁版嵁姝e湪瀵煎叆锛岃绋嶅��");
// 寮�濮嬩笂浼犳枃浠剁殑寮傛浠诲姟
SwingWorker<String, Void> sw = new SwingWorker<String, Void>() {
@Override
protected String doInBackground() throws Exception {
- String flag = zipData(dbPath,configPath,directoryPath,outputZipPath);
+ String flag = zipData(dbPath, configPath, directoryPath, outputZipPath);
return flag;
}
@@ -74,9 +91,15 @@
// 鍒锋柊琛ㄦ牸鏁版嵁锛堝鏋滀笂浼犳垚鍔燂級
if (uploadSucceeded.equals("true")) {
waitUtil.dispose();
- System.out.println("瀵煎嚭鎴愬姛鏃堕棿" + new Date());
+ massage[0] = "瀵煎嚭鎴愬姛" + new Date();
+ exportRecordDao.insert(new ExportRecord());
+ List<ExportRecord> list = exportRecordDao.getList();
+ dataExportManageService.refresh(list);
+ tips.setText(tips.getText() + massage[0]);
} else {
waitUtil.dispose();
+ massage[0] = "瀵煎嚭澶辫触" + new Date();
+ tips.setText(tips.getText() + massage[0]);
JOptionPane.showMessageDialog(null, uploadSucceeded, "鎻愮ず", JOptionPane.ERROR_MESSAGE);
}
@@ -92,7 +115,7 @@
}
}
- public String zipData(String dbPath,String configPath,String directoryPath,String outputZipPath){
+ public String zipData(String dbPath, String configPath, String directoryPath, String outputZipPath) {
// 鍒涘缓ZIP鏂囦欢杈撳嚭娴�
FileOutputStream fos = null;
ZipOutputStream zos = null;
@@ -123,7 +146,8 @@
return "true";
}
- public void importData() {
+ public void importData(JTextArea tips) {
+ String massage = "";
InputStream inStream = null;
Properties properties = new Properties();
try {
@@ -137,8 +161,8 @@
// 閫掑綊澶嶅埗鏂囦欢澶�
copyDirectory(sourceDir, targetDir);
- System.out.println("鏂囦欢澶瑰鍒跺畬鎴愶紝鐩爣璺緞锛�" + targetDir);
-
+ massage = "鏂囦欢澶瑰鍒跺畬鎴愶紝鐩爣璺緞锛�" + targetDir;
+ tips.setText(tips.getText() + massage);
//璇诲彇閰嶇疆
inStream = new FileInputStream(UnzipPath + "config.properties");
properties.load(inStream);
@@ -175,6 +199,8 @@
syncTable("dj_jdgz_track_record");
syncTable("dj_sys_oss");
syncTable("dj_jdgz_dismant_track");
+ syncTable("dj_sys_teamgroup_class");
+ syncTable("sys_user");
}
} else if ("鍘傚".equals(mySite)) {
syncTable("dj_jdgz_handover");
@@ -188,6 +214,11 @@
syncTable("dj_sys_oss");
syncTable("dj_jdgz_dismant_track");
}
+ ImportRecord data =new ImportRecord();
+ data.setImportSite(otherSite);
+ importRecordDao.insert(data);
+ List<ImportRecord> list = importRecordDao.getList();
+ dataImportManageService.refresh(list);
}
public void syncTable(String tableName) {
@@ -250,7 +281,7 @@
java.util.Date otherUpdateDate = dateFormat.parse(otherupdateDate);
if (otherUpdateDate.after(mysqlUpdateDate)) {
isUpdate = true;
- }else {
+ } else {
continue;
}
}
diff --git a/src/main/java/com/example/server/ExportExcel/method/ExcelExport.java b/src/main/java/com/example/server/ExportExcel/method/ExcelExport.java
index b717d9f..e3da8f8 100644
--- a/src/main/java/com/example/server/ExportExcel/method/ExcelExport.java
+++ b/src/main/java/com/example/server/ExportExcel/method/ExcelExport.java
@@ -10,6 +10,7 @@
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import javax.servlet.http.HttpServletResponse;
+import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.lang.reflect.Method;
diff --git a/src/main/java/com/example/server/entity/FieldMetaObjectHandler.java b/src/main/java/com/example/server/entity/FieldMetaObjectHandler.java
index 823c875..16b1603 100644
--- a/src/main/java/com/example/server/entity/FieldMetaObjectHandler.java
+++ b/src/main/java/com/example/server/entity/FieldMetaObjectHandler.java
@@ -19,6 +19,7 @@
import org.springframework.stereotype.Component;
import java.time.LocalDate;
+import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Date;
@@ -34,10 +35,10 @@
public void insertFill(MetaObject metaObject) {
Object object = metaObject.getOriginalObject();
SysUser user = (SysUser) CacheUtils.get("user","user");
- LocalDate currentDate = LocalDate.now();
- DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+ LocalDateTime currentDateTime = LocalDateTime.now();
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
// 灏嗗綋鍓嶆棩鏈熸牸寮忓寲涓哄瓧绗︿覆
- String date = currentDate.format(formatter);
+ String date = currentDateTime.format(formatter);
if (object instanceof TeamEntity) {
TeamEntity entity = (TeamEntity) object;
@@ -64,10 +65,10 @@
@Override
public void updateFill(MetaObject metaObject) {
- LocalDate currentDate = LocalDate.now();
- DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+ LocalDateTime currentDateTime = LocalDateTime.now();
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
// 灏嗗綋鍓嶆棩鏈熸牸寮忓寲涓哄瓧绗︿覆
- String date = currentDate.format(formatter);
+ String date = currentDateTime.format(formatter);
SysUser user =(SysUser) CacheUtils.get("user","user");
Object object = metaObject.getOriginalObject();
if (object instanceof PlatformEntity) {
diff --git a/src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java b/src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java
index dd46f58..faa80ec 100644
--- a/src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java
+++ b/src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java
@@ -19,7 +19,7 @@
@Mapper
public interface DjJdgzTrackRecordDao extends BaseDao<DjJdgzTrackRecord> {
- List<DjJdgzTrackRecord> getList(Long level1NetworkId,Integer status,Long userId);
+ List<DjJdgzTrackRecord> getList(Long level1NetworkId, Long deptId, Long teamId, Long cabinId, String type, Integer status, String name);
List<DjJdgzTrackRecord> getHistory(Long level3NodeId);
@@ -34,4 +34,6 @@
Integer getTrackNum(Long level3NodeId);
List<DjJdgzTrackRecord> getListByImport(Long level1Id, Long level2Id, Long level2NodeId, String selectedIds);
+
+ void retract(Long id);
}
diff --git a/src/main/java/com/example/server/progressTrack/dao/ExportRecordDao.java b/src/main/java/com/example/server/progressTrack/dao/ExportRecordDao.java
new file mode 100644
index 0000000..9af9b4b
--- /dev/null
+++ b/src/main/java/com/example/server/progressTrack/dao/ExportRecordDao.java
@@ -0,0 +1,20 @@
+package com.example.server.progressTrack.dao;
+
+import com.example.server.dao.BaseDao;
+import com.example.server.progressTrack.model.ExportRecord;
+import com.example.server.progressTrack.model.ImportRecord;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+
+/**
+ * dj_jdgz_ship
+ *
+ * @author zt generator
+ * @since 1.0.0 2024-12-18
+ */
+@Mapper
+public interface ExportRecordDao extends BaseDao<ExportRecord> {
+ List<ExportRecord> getList();
+}
diff --git a/src/main/java/com/example/server/progressTrack/dao/ImportRecordDao.java b/src/main/java/com/example/server/progressTrack/dao/ImportRecordDao.java
new file mode 100644
index 0000000..25df55e
--- /dev/null
+++ b/src/main/java/com/example/server/progressTrack/dao/ImportRecordDao.java
@@ -0,0 +1,22 @@
+package com.example.server.progressTrack.dao;
+
+import com.example.client.dto.JComboBoxItem;
+import com.example.server.dao.BaseDao;
+import com.example.server.progressTrack.model.DjJdgzShip;
+import com.example.server.progressTrack.model.ImportRecord;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+
+/**
+ * dj_jdgz_ship
+ *
+ * @author zt generator
+ * @since 1.0.0 2024-12-18
+ */
+@Mapper
+public interface ImportRecordDao extends BaseDao<ImportRecord> {
+ List<ImportRecord> getList();
+
+}
diff --git a/src/main/java/com/example/server/progressTrack/model/DjJdgzHandover.java b/src/main/java/com/example/server/progressTrack/model/DjJdgzHandover.java
index eebfbd7..5edfcd5 100644
--- a/src/main/java/com/example/server/progressTrack/model/DjJdgzHandover.java
+++ b/src/main/java/com/example/server/progressTrack/model/DjJdgzHandover.java
@@ -13,38 +13,42 @@
/**
* dj_jdgz_handover
*
- * @author zt generator
+ * @author zt generator
* @since 1.0.0 2024-12-17
*/
@Data
-@EqualsAndHashCode(callSuper=false)
+@EqualsAndHashCode(callSuper = false)
@TableName("dj_jdgz_handover")
public class DjJdgzHandover extends BusiEntity {
- private static final long serialVersionUID = 1L;
+ private static final long serialVersionUID = 1L;
- @ApiModelProperty(value = "涓�绾х綉缁滃浘ID")
- private Long level1NetworkId;
+ @ApiModelProperty(value = "涓�绾х綉缁滃浘ID")
+ private Long level1NetworkId;
- @TableField(exist = false)
- @ApiModelProperty(value = "宸ョ▼鍚嶇О锛堢敱X鍙�-骞翠唤-淇悊绛夌骇鑷姩鎷兼帴锛�")
- private String projectName;
+ @TableField(exist = false)
+ @ApiModelProperty(value = "宸ョ▼鍚嶇О锛堢敱X鍙�-骞翠唤-淇悊绛夌骇鑷姩鎷兼帴锛�")
+ private String projectName;
- @ApiModelProperty(value = "褰撳墠闃�")
- private String currentTeam;
+ @ApiModelProperty(value = "褰撳墠闃�")
+ private String currentTeam;
- @ApiModelProperty(value = "浜ゆ帴闃�")
- private String handoverTeam;
+ @ApiModelProperty(value = "浜ゆ帴闃�")
+ private String handoverTeam;
- @ApiModelProperty(value = "浜ゆ帴鏃堕棿")
- private String handoverTime;
+ @ApiModelProperty(value = "浜ゆ帴鏃堕棿")
+ private String handoverTime;
- @ApiModelProperty(value = "浜ゆ帴鎯呭喌璇存槑")
- private String handoverSituation;
+ @ApiModelProperty(value = "浜ゆ帴鎯呭喌璇存槑")
+ private String tdExplan;
+ @ApiModelProperty(value = "浜ゆ帴鎯呭喌璇存槑")
+ private String professExplan;
+ @ApiModelProperty(value = "浜ゆ帴鎯呭喌璇存槑")
+ private String deptExplan;
- @ApiModelProperty(value = "澶囨敞")
- private Integer remark;
+ @ApiModelProperty(value = "澶囨敞")
+ private Integer remark;
- @TableField(exist = false)
- private String fileName;
+ @TableField(exist = false)
+ private String fileName;
}
diff --git a/src/main/java/com/example/server/progressTrack/model/ExportRecord.java b/src/main/java/com/example/server/progressTrack/model/ExportRecord.java
new file mode 100644
index 0000000..9407287
--- /dev/null
+++ b/src/main/java/com/example/server/progressTrack/model/ExportRecord.java
@@ -0,0 +1,25 @@
+package com.example.server.progressTrack.model;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.example.client.entity.PlatformLogEntity;
+import com.example.server.entity.BaseEntity;
+import com.example.server.entity.BusiEntity;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * dj_jdgz_handover
+ *
+ * @author zt generator
+ * @since 1.0.0 2024-12-17
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("export_record")
+public class ExportRecord extends PlatformLogEntity {
+ @TableField(exist = false)
+ private String userName;
+}
diff --git a/src/main/java/com/example/server/progressTrack/model/ImportRecord.java b/src/main/java/com/example/server/progressTrack/model/ImportRecord.java
new file mode 100644
index 0000000..2809fd1
--- /dev/null
+++ b/src/main/java/com/example/server/progressTrack/model/ImportRecord.java
@@ -0,0 +1,27 @@
+package com.example.server.progressTrack.model;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.example.client.entity.PlatformLogEntity;
+import com.example.server.entity.BaseEntity;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * dj_jdgz_handover
+ *
+ * @author zt generator
+ * @since 1.0.0 2024-12-17
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("import_record")
+public class ImportRecord extends PlatformLogEntity {
+ private String importSite;
+
+ @TableField(exist = false)
+ private String userName;
+
+}
diff --git a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3Service.java b/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3Service.java
index 6cebd68..4f1382d 100644
--- a/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3Service.java
+++ b/src/main/java/com/example/server/progressTrack/service/DjJdgzNetworkLevel3Service.java
@@ -262,18 +262,18 @@
time1 = time1.replace("/", "-");
node.setRequiredCompletionTime(time1);
node.setProcessName(mapProcessName.get(1));
- node.setSort(sort + 1);
+ node.setSort(1);
DjJdgzNetworkLevel3ListService.insert(node);
} else if (time1.matches("[0-9.]+")) {
time1 = time1.replace(".", "-");
node.setRequiredCompletionTime(time1);
node.setProcessName(mapProcessName.get(1));
- node.setSort(sort + 1);
+ node.setSort(1);
DjJdgzNetworkLevel3ListService.insert(node);
} else if (time1.matches("[0-9-]+")) {
node.setRequiredCompletionTime(time1);
node.setProcessName(mapProcessName.get(1));
- node.setSort(sort + 1);
+ node.setSort(1);
DjJdgzNetworkLevel3ListService.insert(node);
} else {
result = "绗�" + j + "琛�" + "绗�" + 1 + "涓�" + "鑺傜偣鏃堕棿鏃ユ湡鏍煎紡涓嶈鑼�";
@@ -288,18 +288,18 @@
if (time2.matches("[0-9/]+")) {
node.setRequiredCompletionTime(time2);
node.setProcessName(mapProcessName.get(2));
- node.setSort(sort + 1);
+ node.setSort(2);
DjJdgzNetworkLevel3ListService.insert(node);
} else if (time2.matches("[0-9.]+")) {
time2 = time2.replace(".", "-");
node.setRequiredCompletionTime(time2);
node.setProcessName(mapProcessName.get(2));
- node.setSort(sort + 1);
+ node.setSort(2);
DjJdgzNetworkLevel3ListService.insert(node);
} else if (time2.matches("[0-9-]+")) {
node.setRequiredCompletionTime(time2);
node.setProcessName(mapProcessName.get(2));
- node.setSort(sort + 1);
+ node.setSort(2);
DjJdgzNetworkLevel3ListService.insert(node);
} else {
result = "绗�" + j + "琛�" + "绗�" + 2 + "涓�" + "鑺傜偣鏃堕棿鐨勬棩鏈熸牸寮忎笉瑙勮寖";
@@ -315,18 +315,18 @@
time3 = time3.replace("/", "-");
node.setRequiredCompletionTime(time3);
node.setProcessName(mapProcessName.get(3));
- node.setSort(sort + 1);
+ node.setSort(3);
DjJdgzNetworkLevel3ListService.insert(node);
} else if (time3.matches("[0-9.]+")) {
time3 = time3.replace(".", "-");
node.setRequiredCompletionTime(time3);
node.setProcessName(mapProcessName.get(3));
- node.setSort(sort + 1);
+ node.setSort(3);
DjJdgzNetworkLevel3ListService.insert(node);
} else if (time3.matches("[0-9-]+")) {
node.setRequiredCompletionTime(time3);
node.setProcessName(mapProcessName.get(3));
- node.setSort(sort + 1);
+ node.setSort(3);
DjJdgzNetworkLevel3ListService.insert(node);
} else {
result = "绗�" + j + "琛�" + "绗�" + 3 + "涓�" + "鑺傜偣鏃堕棿鐨勬棩鏈熸牸寮忎笉瑙勮寖";
@@ -342,18 +342,18 @@
time4 = time4.replace("/", "-");
node.setRequiredCompletionTime(time4);
node.setProcessName(mapProcessName.get(4));
- node.setSort(sort + 1);
+ node.setSort(4);
DjJdgzNetworkLevel3ListService.insert(node);
} else if (time4.matches("[0-9.]+")) {
time4 = time4.replace(".", "-");
node.setRequiredCompletionTime(time4);
node.setProcessName(mapProcessName.get(4));
- node.setSort(sort + 1);
+ node.setSort(4);
DjJdgzNetworkLevel3ListService.insert(node);
} else if (time4.matches("[0-9-]+")) {
node.setRequiredCompletionTime(time4);
node.setProcessName(mapProcessName.get(4));
- node.setSort(sort + 1);
+ node.setSort(4);
DjJdgzNetworkLevel3ListService.insert(node);
} else {
result = "绗�" + j + "琛�" + "绗�" + 4 + "涓�" + "鑺傜偣鏃堕棿鐨勬棩鏈熸牸寮忎笉瑙勮寖";
@@ -369,18 +369,18 @@
time5 = time5.replace("/", "-");
node.setRequiredCompletionTime(time5);
node.setProcessName(mapProcessName.get(5));
- node.setSort(sort + 1);
+ node.setSort(5);
DjJdgzNetworkLevel3ListService.insert(node);
} else if (time5.matches("[0-9.]+")) {
time5 = time5.replace(".", "-");
node.setRequiredCompletionTime(time5);
node.setProcessName(mapProcessName.get(5));
- node.setSort(sort + 1);
+ node.setSort(5);
DjJdgzNetworkLevel3ListService.insert(node);
} else if (time5.matches("[0-9-]+")) {
node.setRequiredCompletionTime(time5);
node.setProcessName(mapProcessName.get(5));
- node.setSort(sort + 1);
+ node.setSort(5);
DjJdgzNetworkLevel3ListService.insert(node);
} else {
result = "绗�" + j + "琛�" + "绗�" + 5 + "涓�" + "瑕佹眰瀹屾垚鏃堕棿鐨勬棩鏈熸牸寮忎笉瑙勮寖";
@@ -401,13 +401,13 @@
if (StringUtils.isNotBlank(generalRepairUnitDirector)) {
data.setGeneralRepairUnitDirector(generalRepairUnitDirector);
}
- if (StringUtils.isNotBlank(generalRepairUnit)) {
+ if (StringUtils.isNotBlank(repairUnit)) {
data.setRepairUnit(repairUnit);
}
- if (StringUtils.isNotBlank(generalRepairUnit)) {
+ if (StringUtils.isNotBlank(repairUnitContact)) {
data.setRepairUnitContact(repairUnitContact);
}
- if (StringUtils.isNotBlank(generalRepairUnit)) {
+ if (StringUtils.isNotBlank(repairUnitDirector)) {
data.setRepairUnitDirector(repairUnitDirector);
}
diff --git a/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java b/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java
index e011133..2d8cbc5 100644
--- a/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java
+++ b/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java
@@ -7,17 +7,26 @@
import com.example.server.progressTrack.Dto.StatistReportsDto;
import com.example.server.progressTrack.dao.DjJdgzTrackRecordDao;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel1;
+import com.example.server.progressTrack.model.DjJdgzNetworkLevel3;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel3List;
import com.example.server.progressTrack.model.DjJdgzTrackRecord;
import com.example.server.teamGroup.service.SysTeamGroupClassService;
import com.example.server.user.service.UserService;
+import com.example.server.utils.FileUtils;
+import com.example.server.utils.ImportUtil;
import com.example.server.utils.TreeFieldUtils;
import com.example.server.utils.UUIDUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
-import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
@@ -41,12 +50,14 @@
@Autowired
private DjJdgzNetworkLevel3ListService djJdgzNetworkLevel3ListService;
@Autowired
+ private DjJdgzNetworkLevel3Service djJdgzNetworkLevel3Service;
+ @Autowired
private UserService sysUserService;
@Autowired
private SysTeamGroupClassService sysTeamGroupClassService;
- public List<DjJdgzTrackRecord> getList(Long level1NetworkId, Integer status) {
+ public List<DjJdgzTrackRecord> getList(Long level1NetworkId, Long deptId, Long teamId, Long cabinId, String type, Integer status, String name) {
Long userId = null;
/* Map adminRole = sysUserService.adminRole();
Object isTyRole = adminRole.get("isTyRole");
@@ -54,7 +65,7 @@
if (isTyRole.equals(true) || isYwzRole.equals(true)) {
userId = UserContext.getUser().getId();
}*/
- List<DjJdgzTrackRecord> list = baseDao.getList(level1NetworkId, status, userId);
+ List<DjJdgzTrackRecord> list = baseDao.getList(level1NetworkId,deptId,teamId,cabinId,type, status, name);
/*if (list != null && list.size() > 0) {
sysOssService.setListOsses(list, "ProjectProgressFileUpload");
}*/
@@ -205,7 +216,7 @@
public void exportExcel(String filePath, String teamgroupId, Long level1NetworkId,
Long level3NetworkId, Long level3NodeId, Integer status, Date beginDate,
- Date endDate, Integer istq) {
+ Date endDate, Integer istq, List<ExcelColumnDto> columnDto) {
List<ExprotExcelDto> dtos = new ArrayList<>();
/* Map<String, String> keywordMap = dailyPlanService.getReplacement();
String keywordT = keywordMap.get("ting");*/
@@ -225,26 +236,6 @@
ExprotExcelDto dto = new ExprotExcelDto();
dto.setSheetName("璺熻釜璁板綍鏄庣粏");
- List<ExcelColumnDto> columnDto = new ArrayList<>();
-
- columnDto.add(new ExcelColumnDto("涓�绾ц妭鐐�", "Level1NodeName", 20, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("浜岀骇鑺傜偣", "Level2NodeName", 20, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("椤圭洰鍚嶇О", "Level3NetworkName", 20, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("褰撳墠鑺傜偣", "Level3NodeName", 20, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("涓撲笟", "TeamGroupName", 20, HorizontalAlignment.CENTER));
- columnDto.add(new ExcelColumnDto("鎬绘壙淇崟浣嶅強璐熻矗浜�", "GeneralRepair", 25, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("鍒嗘壙淇崟浣嶅強璐熻矗浜�", "Repair", 25, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("璺熻釜鏂瑰紡", "trackMethodStr", 10, HorizontalAlignment.CENTER));
- columnDto.add(new ExcelColumnDto("鍔╀慨浜�", "TrackPerson", 25, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("鍘傛柟", "TrackedPerson", 25, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("璺熻釜鍦扮偣", "TrackLocation", 10, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("鑺傜偣杩涘睍", "status", 10, HorizontalAlignment.CENTER));
- columnDto.add(new ExcelColumnDto("鑴辨湡椋庨櫓", "hasDelayRiskStr", 10, HorizontalAlignment.CENTER));
- columnDto.add(new ExcelColumnDto("棰勮瀹屾垚鏃堕棿", "EstimatedCompletionTime", 15, HorizontalAlignment.CENTER));
- columnDto.add(new ExcelColumnDto("瀛樺湪闂", "Problem", 20, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("鍚庣画璁″垝", "FollowupPlan", 20, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("澶囨敞", "Remark", 20, HorizontalAlignment.LEFT));
- columnDto.add(new ExcelColumnDto("濉啓鏃堕棿", "UpdateDate", 15, HorizontalAlignment.CENTER));
List<DjJdgzTrackRecord> list = baseDao.getdata(teamgroupId, level1NetworkId, level3NetworkId, level3NodeId, status, beginDate, endDate, istq);
@@ -304,6 +295,240 @@
}
public List<DjJdgzTrackRecord> getListByImport(Long level1Id, Long level2Id, Long level2NodeId, String selectedIds) {
- return baseDao.getListByImport(level1Id,level2Id,level2NodeId,selectedIds);
+ return baseDao.getListByImport(level1Id, level2Id, level2NodeId, selectedIds);
+ }
+
+ public String importDiagramFromExcel(String path) {
+ String result = "true";
+ Integer sum = 0; // 鎬诲叡鐨勬潯鏁�
+ Integer suc = 0; // 鎴愬姛鐨勬潯鏁�
+ Integer err = 0; // 澶辫触鐨勬潯鏁�
+ Map<String, Object> errMap = new HashMap<>();
+ MultipartFile mutFile = null;
+ try {
+ mutFile = FileUtils.convertFileToMultipartFile(path);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ String sheetName = null;
+ int row1 = 0;
+ try {
+ // 鑾峰彇瀵煎叆鏂囦欢鐨勫悗缂�鍚�
+ String fileName = mutFile.getOriginalFilename();
+ Workbook workbook = null;
+ //瑙e喅excel鐗堟湰闂
+ if (fileName != null && fileName.endsWith(".xls")) {
+ workbook = new HSSFWorkbook(mutFile.getInputStream());
+ } else if (fileName != null && fileName.endsWith(".xlsx")) {
+ workbook = new XSSFWorkbook(mutFile.getInputStream());
+ }
+ assert workbook != null; //鏂█濡傛灉[boolean琛ㄨ揪寮廬涓簍rue锛屽垯绋嬪簭缁х画鎵ц銆� 濡傛灉涓篺alse锛屽垯绋嬪簭鎶涘嚭AssertionError锛屽苟缁堟鎵ц銆�
+
+ Sheet sheet = workbook.getSheetAt(0);
+ int num = sheet.getLastRowNum(); // 涓�鍏辨湁澶氬皯琛�
+ sheetName = sheet.getSheetName(); //鑾峰彇褰撳墠sheet鍚嶇О
+ sum = sum + num;
+
+ Map<String, Integer> trackMethodMap = new HashMap<>();
+ trackMethodMap.put("绾夸笅", 0);
+ trackMethodMap.put("鐢佃瘽", 1);
+
+ Map<String, Integer> statusMap = new HashMap<>();
+ statusMap.put("杩涜涓�", 0);
+ statusMap.put("宸插畬鎴�", 1);
+
+ Map<String, Integer> hasDelayRiskMap = new HashMap<>();
+ hasDelayRiskMap.put("鏈�", 1);
+ hasDelayRiskMap.put("鏃�", 0);
+
+
+ for (int j = 2; j <= num; j++) {
+ int sort = 0;
+ DjJdgzTrackRecord data = new DjJdgzTrackRecord();
+
+ boolean isErr = false;
+ row1 = j + 1;
+ String pattern = "yyyy-MM-dd";
+ Row row = sheet.getRow(j);
+
+ String idStr = ImportUtil.getCellValue(row, 0, pattern);
+ String dataDate = ImportUtil.getCellValue(row, 1, pattern);
+ String name = ImportUtil.getCellValue(row, 2, pattern);
+ String progressName = ImportUtil.getCellValue(row, 3, pattern);
+ String trackMethodStr = ImportUtil.getCellValue(row, 4, pattern);
+ String trackLocationStr = ImportUtil.getCellValue(row, 5, pattern);
+ String currentStatusStr = ImportUtil.getCellValue(row, 6, pattern);
+ String hasDelayRiskStr = ImportUtil.getCellValue(row, 7, pattern);
+ String estimatedCompletionTimeStr = ImportUtil.getCellValue(row, 8, pattern);
+ String problemStr = ImportUtil.getCellValue(row, 9, pattern);
+ String followupPlanStr = ImportUtil.getCellValue(row, 10, pattern);
+ String remarkStr = ImportUtil.getCellValue(row, 11, pattern);
+ String trackPersonStr = ImportUtil.getCellValue(row, 12, pattern);
+ String trackPersonContact = ImportUtil.getCellValue(row, 13, pattern);
+ String trackPersonUnit = ImportUtil.getCellValue(row, 14, pattern);
+ String trackedPerson = ImportUtil.getCellValue(row, 15, pattern);
+ String trackedPersonContact = ImportUtil.getCellValue(row, 16, pattern);
+ String trackedPersonUnit = ImportUtil.getCellValue(row, 17, pattern);
+ String generalRepairUnit = ImportUtil.getCellValue(row, 18, pattern);
+ String generalRepairUnitDirector = ImportUtil.getCellValue(row, 19, pattern);
+ String generalRepairUnitContact = ImportUtil.getCellValue(row, 20, pattern);
+ String repairUnit = ImportUtil.getCellValue(row, 21, pattern);
+ String repairUnitDirector = ImportUtil.getCellValue(row, 22, pattern);
+ String repairUnitContact = ImportUtil.getCellValue(row, 23, pattern);
+
+ DjJdgzNetworkLevel3 level3 = djJdgzNetworkLevel3Service.get(Long.parseLong(idStr));
+ Long level1NetworkId = level3.getLevel1NetworkId();
+
+ Long id = UUIDUtil.generateId();
+
+ if (StringUtils.isEmpty(dataDate)) {
+ result = "绗�" + j + "琛�" + "褰曞叆鏃堕棿涓嶈兘涓虹┖";
+ isErr = true;
+ continue;
+ } else {
+ int weekNo = this.getWeekNo(level1NetworkId);
+ data.setWeekNo(weekNo);
+ data.setLevel1NetworkId(level1NetworkId);
+ data.setLevel3NetworkId(level3.getId());
+ }
+
+ if (StringUtils.isEmpty(name)) {
+ result = "绗�" + j + "琛�" + "璁惧鍚嶇О涓嶈兘涓虹┖";
+ isErr = true;
+ continue;
+ } else {
+ data.setId(id);
+ data.setLevel3NetworkName(name);
+ }
+
+ if (StringUtils.isEmpty(progressName)) {
+ result = "绗�" + j + "琛�" + "鑺傜偣鍚嶇О涓嶈兘涓虹┖";
+ isErr = true;
+ continue;
+ } else {
+ List<DjJdgzNetworkLevel3List> list = djJdgzNetworkLevel3ListService.getList(level3.getId());
+ for (DjJdgzNetworkLevel3List item : list) {
+ if(item.getProcessName().equals(progressName)){
+ data.setLevel3NodeId(item.getId());
+ data.setEstimatedCompletionTime(item.getRequiredCompletionTime());
+ break;
+ }
+ }
+ data.setProcessName(progressName);
+ }
+
+ if (StringUtils.isEmpty(trackMethodStr)) {
+ data.setTrackMethod(0);
+ } else {
+ data.setTrackMethod(trackMethodMap.get(trackMethodStr));
+ }
+
+ if (StringUtils.isNotBlank(trackLocationStr)) {
+ data.setTrackLocation(trackLocationStr);
+ }
+
+ if (StringUtils.isEmpty(currentStatusStr)) {
+ data.setCurrentStatus(0);
+ } else {
+ data.setCurrentStatus(statusMap.get(currentStatusStr));
+ }
+
+ if (StringUtils.isEmpty(hasDelayRiskStr)) {
+ data.setHasDelayRisk(0);
+ } else {
+ data.setHasDelayRisk(hasDelayRiskMap.get(hasDelayRiskStr));
+ }
+
+ if (StringUtils.isNotBlank(estimatedCompletionTimeStr)) {
+ if (estimatedCompletionTimeStr.matches("[0-9/]+")) {
+ estimatedCompletionTimeStr = estimatedCompletionTimeStr.replace("/", "-");
+ data.setEstimatedCompletionTime(estimatedCompletionTimeStr);
+ } else if (estimatedCompletionTimeStr.matches("[0-9.]+")) {
+ estimatedCompletionTimeStr = estimatedCompletionTimeStr.replace(".", "-");
+ data.setEstimatedCompletionTime(estimatedCompletionTimeStr);
+ } else if (estimatedCompletionTimeStr.matches("[0-9-]+")) {
+ data.setEstimatedCompletionTime(estimatedCompletionTimeStr);
+ } else {
+ result = "绗�" + j + "琛�" + "绗�" + 1 + "涓�" + "棰勮瀹屾垚鏃堕棿鏃ユ湡鏍煎紡涓嶈鑼�";
+ isErr = true;
+ }
+ }
+
+ if (StringUtils.isNotBlank(problemStr)) {
+ data.setProblem(problemStr);
+ }
+
+ if (StringUtils.isNotBlank(followupPlanStr)) {
+ data.setFollowupPlan(followupPlanStr);
+ }
+
+ if (StringUtils.isNotBlank(remarkStr)) {
+ data.setRemark(remarkStr);
+ }
+
+ if (StringUtils.isNotBlank(trackPersonStr)) {
+ data.setTrackPerson(trackPersonStr);
+ }
+
+ if (StringUtils.isNotBlank(trackPersonContact)) {
+ data.setTrackPersonContact(trackPersonContact);
+ }
+
+ if (StringUtils.isNotBlank(trackPersonUnit)) {
+ data.setTrackPersonUnit(trackPersonUnit);
+ }
+
+ if (StringUtils.isNotBlank(trackedPerson)) {
+ data.setTrackPerson(trackPersonStr);
+ }
+
+ if (StringUtils.isNotBlank(trackedPersonContact)) {
+ data.setTrackPersonContact(trackPersonContact);
+ }
+
+ if (StringUtils.isNotBlank(trackedPersonUnit)) {
+ data.setTrackPersonUnit(trackPersonUnit);
+ }
+ if (StringUtils.isNotBlank(generalRepairUnit)) {
+ data.setGeneralRepairUnit(generalRepairUnit);
+ }
+
+ if (StringUtils.isNotBlank(generalRepairUnitContact)) {
+ data.setGeneralRepairUnitContact(generalRepairUnitContact);
+ }
+ if (StringUtils.isNotBlank(generalRepairUnitDirector)) {
+ data.setGeneralRepairUnitDirector(generalRepairUnitDirector);
+ }
+ if (StringUtils.isNotBlank(generalRepairUnit)) {
+ data.setRepairUnit(repairUnit);
+ }
+ if (StringUtils.isNotBlank(generalRepairUnit)) {
+ data.setRepairUnitContact(repairUnitContact);
+ }
+ if (StringUtils.isNotBlank(generalRepairUnit)) {
+ data.setRepairUnitDirector(repairUnitDirector);
+ }
+
+ if (!isErr) {
+ data.setIsUpdate(false);
+ this.save(data);
+ }
+ if (isErr) {
+ err++;
+ continue;
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ result = "瀵煎叆" + row1 + "琛屾暟鎹椂妫�娴嬪埌寮傚父锛屼腑鏂鍏ユ搷浣溿��";
+ }
+
+ suc = sum - err;
+
+ return result;
+ }
+
+ public void retract(Long id) {
+ baseDao.retract(id);
}
}
diff --git a/src/main/java/com/example/server/teamGroup/model/SysTeamGroupClass.java b/src/main/java/com/example/server/teamGroup/model/SysTeamGroupClass.java
index f5d3f45..442e863 100644
--- a/src/main/java/com/example/server/teamGroup/model/SysTeamGroupClass.java
+++ b/src/main/java/com/example/server/teamGroup/model/SysTeamGroupClass.java
@@ -34,10 +34,10 @@
@ApiModelProperty(value = "鍚嶇О")
private String name;
-
@ApiModelProperty(value = "鍒嗙被锛圓/B锛�")
private String classType;
+ @TableField(exist = false)
@ApiModelProperty(value = "绫诲瀷锛�")
private String type;
diff --git a/src/main/java/com/example/server/utils/DownLoadTmpFile.java b/src/main/java/com/example/server/utils/DownLoadTmpFile.java
index fa11450..73e175b 100644
--- a/src/main/java/com/example/server/utils/DownLoadTmpFile.java
+++ b/src/main/java/com/example/server/utils/DownLoadTmpFile.java
@@ -91,7 +91,7 @@
Row row = sheet.createRow(num);
Cell cell = row.createCell(0);
- cell.setCellValue(list.get(i).getId());
+ cell.setCellValue(list.get(i).getId().toString());
cell = row.createCell(1);
cell.setCellValue(date);
@@ -137,7 +137,7 @@
}
cell = row.createCell(20);
if (StringUtils.isNotBlank(list.get(i).getGeneralRepairUnitContact())) {
- cell.setCellValue(list.get(i).getGeneralRepairUnitDirector());
+ cell.setCellValue(list.get(i).getGeneralRepairUnitContact());
}
cell = row.createCell(21);
if (StringUtils.isNotBlank(list.get(i).getRepairUnit())) {
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index d213c7e..2a6d2f0 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,6 +1,3 @@
-server:
- port: 8080
-
logging:
level:
com.example: debug
diff --git a/src/main/resources/db/csiczb1.db b/src/main/resources/db/csiczb1.db
index 831fc47..26c365e 100644
--- a/src/main/resources/db/csiczb1.db
+++ b/src/main/resources/db/csiczb1.db
Binary files differ
diff --git a/src/main/resources/logback-spring.xml b/src/main/resources/logback-spring.xml
index 104ee63..97ef477 100644
--- a/src/main/resources/logback-spring.xml
+++ b/src/main/resources/logback-spring.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<!-- 鏃ュ織鏍圭洰褰�-->
- <property name="LOG_PATH" value="../logs"/>
+ <property name="LOG_PATH" value="./log"/>
<!-- 椤圭洰鍚� -->
<property name="PROJECT_NAME" value="progress_track"/>
<!-- 瀹氫箟鎺у埗鍙拌緭鍑烘牸寮忛鑹� 鏃ュ織鏂囦欢鏍煎紡 -->
diff --git a/src/main/resources/mapper/cabin/CabinDao.xml b/src/main/resources/mapper/cabin/CabinDao.xml
index 8e0300a..c0382af 100644
--- a/src/main/resources/mapper/cabin/CabinDao.xml
+++ b/src/main/resources/mapper/cabin/CabinDao.xml
@@ -11,5 +11,7 @@
SELECT
null AS id,
'' AS name
+ ORDER BY
+ id
</select>
</mapper>
diff --git a/src/main/resources/mapper/menu/MenuDao.xml b/src/main/resources/mapper/menu/MenuDao.xml
index 64ba80f..6935e5f 100644
--- a/src/main/resources/mapper/menu/MenuDao.xml
+++ b/src/main/resources/mapper/menu/MenuDao.xml
@@ -7,14 +7,17 @@
</update>
<select id="getList" resultType="com.example.server.menu.model.Menu">
- select a.id,a.pid,a.menu_name
- from menu a
- where
- a.is_delete = 0
- <if test="site!='宸ヤ綔缁�'">
- and menu_name not like '%绠$悊%'
- </if>
- order by sort
+ SELECT a.id, a.pid, a.menu_name
+ FROM menu a
+ WHERE
+ a.is_delete = 0
+ <if test="site != '宸ヤ綔缁�'">
+ AND (
+ menu_name NOT LIKE '%绠$悊%'
+ OR menu_name = '涓夌骇缃戠粶鍥剧鐞�'
+ )
+ </if>
+ ORDER BY sort;
</select>
</mapper>
diff --git a/src/main/resources/mapper/progressTrack/DjJdgzHandoverDao.xml b/src/main/resources/mapper/progressTrack/DjJdgzHandoverDao.xml
index cd1f2d8..a1668a2 100644
--- a/src/main/resources/mapper/progressTrack/DjJdgzHandoverDao.xml
+++ b/src/main/resources/mapper/progressTrack/DjJdgzHandoverDao.xml
@@ -7,7 +7,7 @@
SELECT
a.*,
b.project_name,
- GROUP_CONCAT(c.name) AS fileName-- 浣跨敤 GROUP_CONCAT 鎷兼帴 c.name
+ GROUP_CONCAT(c.name) AS fileName
FROM
dj_jdgz_handover a
LEFT JOIN dj_jdgz_network_level1 b
diff --git a/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml b/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml
index 641ddf3..e9c7928 100644
--- a/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml
+++ b/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml
@@ -2,6 +2,16 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.server.progressTrack.dao.DjJdgzTrackRecordDao">
+ <update id="retract">
+ UPDATE dj_jdgz_track_record
+ SET CURRENT_STATUS = 0
+ WHERE LEVEL3_NETWORK_ID = (
+ SELECT LEVEL3_NETWORK_ID FROM dj_jdgz_track_record WHERE id = ${id}
+ )
+ AND create_date >= (
+ SELECT create_date FROM dj_jdgz_track_record WHERE id = ${id}
+ );
+ </update>
<select id="getList" resultType="com.example.server.progressTrack.model.DjJdgzTrackRecord">
SELECT
@@ -59,9 +69,6 @@
WHERE
a.IS_DELETE = 0
and a.network_id != 10000
- <if test="userId!=null">
- AND a.TEAMGROUP_ID in (select teamgroup from sys_user where is_delete=0 and user_id=#{userId})
- </if>
<if test="status==1">
AND b.CURRENT_STATUS = 1
</if>
@@ -74,6 +81,21 @@
AND f.IS_DELETE = 0
AND g.IS_DELETE = 0
AND g.id = ${level1NetworkId}
+ <if test="deptId!=null">
+ and c.dept_id = ${deptId}
+ </if>
+ <if test="teamId!=null">
+ and c.TEAMGROUP_ID = ${teamId}
+ </if>
+ <if test="cabinId!=null">
+ and c.cabin_id LIKE '%${cabinId}%'
+ </if>
+ <if test="type!=null and type!=''">
+ and c.type = #{type}
+ </if>
+ <if test="name!=null and name!=''">
+ and c.name LIKE '%${name}%'
+ </if>
<if test="status==0">
GROUP BY
c.id
@@ -89,8 +111,8 @@
select GENERAL_REPAIR_UNIT || ',' || GENERAL_REPAIR_UNIT_DIRECTOR || ',' ||
GENERAL_REPAIR_UNIT_CONTACT AS generalRepair,
REPAIR_UNIT || ',' || REPAIR_UNIT_DIRECTOR || ',' || REPAIR_UNIT_CONTACT AS `repair`,
- track_person || ',' || track_person_contact AS trackPerson,
- tracked_person || ',' || tracked_person_contact AS trackedPerson,
+ track_person || ',' || track_person_unit || ',' || track_person_contact AS trackPerson,
+ tracked_person || ',' || tracked_person_unit || ',' || tracked_person_contact AS trackedPerson,
track_method,
track_location,
CURRENT_STATUS,
@@ -194,8 +216,8 @@
b.GENERAL_REPAIR_UNIT|| ',' || b.GENERAL_REPAIR_UNIT_DIRECTOR|| ',' ||
b.GENERAL_REPAIR_UNIT_CONTACT AS generalRepair,
b.REPAIR_UNIT|| ',' || b.REPAIR_UNIT_DIRECTOR|| ',' || b.REPAIR_UNIT_CONTACT AS `repair`,
- b.track_person|| ',' || b.track_person_contact AS trackPerson,
- b.tracked_person|| ',' || b.tracked_person_contact AS trackedPerson,
+ b.track_person|| ',' || b.track_person_unit || ',' || b.track_person_contact AS trackPerson,
+ b.tracked_person|| ',' || b.tracked_person_unit || ',' || b.tracked_person_contact AS trackedPerson,
b.track_method,
b.track_location,
b.track_location,
@@ -213,7 +235,7 @@
LEFT JOIN dj_jdgz_network_level2 e ON e.id = d.NETWORK_ID
LEFT JOIN dj_jdgz_network_level1_list f ON f.id = e.LEVEL1_NODE_ID
LEFT JOIN dj_jdgz_network_level1 g ON g.id = c.LEVEL1_NETWORK_ID
- LEFT JOIN dj_sys_teamgroup_class h ON h.id = a.TEAMGROUP_ID
+ LEFT JOIN dj_sys_teamgroup_class h ON h.id = c.TEAMGROUP_ID
WHERE
a.IS_DELETE = 0
and a.network_id != 10000
diff --git a/src/main/resources/mapper/progressTrack/ExportRecord.xml b/src/main/resources/mapper/progressTrack/ExportRecord.xml
new file mode 100644
index 0000000..1d5e5a7
--- /dev/null
+++ b/src/main/resources/mapper/progressTrack/ExportRecord.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.example.server.progressTrack.dao.ExportRecordDao">
+ <select id="getList" resultType="com.example.server.progressTrack.model.ExportRecord">
+ select a.*, b.user_name
+ from export_record a
+ left join sys_user b on b.user_id = a.creator
+ </select>
+</mapper>
diff --git a/src/main/resources/mapper/progressTrack/ImportRecord.xml b/src/main/resources/mapper/progressTrack/ImportRecord.xml
new file mode 100644
index 0000000..ade4a27
--- /dev/null
+++ b/src/main/resources/mapper/progressTrack/ImportRecord.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.example.server.progressTrack.dao.ImportRecordDao">
+ <select id="getList" resultType="com.example.server.progressTrack.model.ImportRecord">
+ select a.*, b.user_name
+ from import_record a
+ left join sys_user b on b.user_id = a.creator
+ </select>
+</mapper>
diff --git "a/src/main/resources/templateFile/\344\270\211\347\272\247\347\275\221\347\273\234\345\233\276\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" "b/src/main/resources/templateFile/\344\270\211\347\272\247\347\275\221\347\273\234\345\233\276\345\257\274\345\205\245\346\250\241\346\235\277.xlsx"
index 99fe841..ed8da25 100644
--- "a/src/main/resources/templateFile/\344\270\211\347\272\247\347\275\221\347\273\234\345\233\276\345\257\274\345\205\245\346\250\241\346\235\277.xlsx"
+++ "b/src/main/resources/templateFile/\344\270\211\347\272\247\347\275\221\347\273\234\345\233\276\345\257\274\345\205\245\346\250\241\346\235\277.xlsx"
Binary files differ
diff --git "a/src/main/resources/templateFile/\350\267\237\350\270\252\350\256\260\345\275\225\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" "b/src/main/resources/templateFile/\350\267\237\350\270\252\350\256\260\345\275\225\345\257\274\345\205\245\346\250\241\346\235\277.xlsx"
index 69ce045..f2b3c8d 100644
--- "a/src/main/resources/templateFile/\350\267\237\350\270\252\350\256\260\345\275\225\345\257\274\345\205\245\346\250\241\346\235\277.xlsx"
+++ "b/src/main/resources/templateFile/\350\267\237\350\270\252\350\256\260\345\275\225\345\257\274\345\205\245\346\250\241\346\235\277.xlsx"
Binary files differ
diff --git a/target/classes/mapper/progressTrack/DjJdgzShipDao.xml b/target/classes/mapper/progressTrack/DjJdgzShipDao.xml
deleted file mode 100644
index 5a284f2..0000000
--- a/target/classes/mapper/progressTrack/DjJdgzShipDao.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-
-<mapper namespace="com.example.server.progressTrack.dao.DjJdgzShipDao">
-
- <select id="getList" resultType="com.example.server.progressTrack.model.DjJdgzShip">
- select a.*
- from dj_jdgz_ship a
- where
- a.is_delete = 0
- </select>
- <select id="getListByItem" resultType="com.example.client.dto.JComboBoxItem">
- select a.id,a.ship_no as name
- from dj_jdgz_ship a
- where
- a.is_delete = 0
- </select>
-
-</mapper>
--
Gitblit v1.9.1