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