From bf5b01b14dc7bfc214e646425a62f5593890d7e3 Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期六, 08 十一月 2025 22:05:37 +0800
Subject: [PATCH] 清洗数据库日期错误,并且导入日期通用化处理
---
src/main/java/com/example/client/service/Level3View2Service.java | 513 ++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 453 insertions(+), 60 deletions(-)
diff --git a/src/main/java/com/example/client/service/Level3View2Service.java b/src/main/java/com/example/client/service/Level3View2Service.java
index dee2b1c..154c509 100644
--- a/src/main/java/com/example/client/service/Level3View2Service.java
+++ b/src/main/java/com/example/client/service/Level3View2Service.java
@@ -2,26 +2,25 @@
import com.example.client.dto.ColumnDto;
import com.example.client.dto.JComboBoxItem;
-import com.example.client.model.TableButton;
import com.example.client.utils.*;
+import com.example.server.ExportExcel.dto.ExcelColumnDto;
import com.example.server.cabin.service.CabinService;
import com.example.server.progressTrack.Dto.TableNodeDto;
-import com.example.server.progressTrack.model.DjJdgzNetworkLevel1;
-import com.example.server.progressTrack.model.DjJdgzNetworkLevel3;
import com.example.server.progressTrack.model.DjJdgzShip;
+import com.example.server.progressTrack.model.DjJdgzTrackRecord;
import com.example.server.progressTrack.service.*;
import com.example.server.teamGroup.service.SysTeamGroupClassService;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
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.*;
+import java.io.File;
import java.util.List;
import java.util.*;
+import java.util.stream.Collectors;
@Service
@@ -30,6 +29,8 @@
private DjJdgzNetworkLevel3Service level3Service;
@Autowired
private DjJdgzShipService djJdgzShipService;
+ @Autowired
+ private DjJdgzTrackRecordService djJdgzTrackRecordService;
@Autowired
private SysTeamGroupClassService sysTeamGroupClassService;
@Autowired
@@ -41,21 +42,35 @@
private List<TableNodeDto> list;
private Map<String, Long> shipMap = new HashMap<>();
private List<ColumnDto> columnDto;
+ @Autowired
+ private DjJdgzNetworkLevel1Service djJdgzNetworkLevel1Service;
- public JPanel createTable(Integer width, Integer height,JFrame frame) {
+ public JPanel createTable(Integer width, Integer height, JFrame frame) {
JPanel panel = new JPanel(new BorderLayout());
- JPanel topJpanel = new JPanel();
+ JPanel topJpanel1 = new JPanel(new BorderLayout());
+ topJpanel1.setPreferredSize(new Dimension(width, 150));
+ topJpanel1.setBackground(Color.WHITE);
+
+ JPanel topJpanel2 = new JPanel();
+
+ CustomPanel customPanel = new CustomPanel();
+ customPanel.setPreferredSize(new Dimension(width, 50));
+ customPanel.setBackground(Color.WHITE);
+
+ topJpanel1.add(topJpanel2, BorderLayout.CENTER);
+ topJpanel1.add(customPanel, BorderLayout.SOUTH);
+
GridBagLayout layout = new GridBagLayout();
- topJpanel.setLayout(layout);
- topJpanel.setPreferredSize(new Dimension(width, 100));
- topJpanel.setBackground(Color.WHITE);
+ topJpanel2.setLayout(layout);
+ topJpanel2.setPreferredSize(new Dimension(width, 100));
+ topJpanel2.setBackground(Color.WHITE);
JPanel centerJpanel = new JPanel();
- centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(95,frame)));
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(145, frame)));
centerJpanel.setBackground(Color.WHITE);
- panel.add(topJpanel, BorderLayout.NORTH);
+ panel.add(topJpanel1, BorderLayout.NORTH);
panel.add(centerJpanel, BorderLayout.CENTER);
List<DjJdgzShip> shipList = djJdgzShipService.getList();
@@ -63,7 +78,13 @@
JComboBoxItem[] cabinList = cabinService.getList();
JComboBoxItem[] deptList = sysTeamGroupClassService.getDeptList();
String[] typeList = new String[]{
- "","鏀硅", "鍔犺", "鎹㈣", "鏀硅繘鎬т慨鐞�"
+ "淇悊", "鏀规崲瑁�", "鏀硅繘鎬т慨鐞�", "涓嶅瑁呰澶�"
+ };
+
+ JComboBoxItem[] isealCabin = {
+ new JComboBoxItem(10000L, ""),
+ new JComboBoxItem(0L, "鍚�"),
+ new JComboBoxItem(1L, "鏄�"),
};
JLabel JLabel0 = new JLabel("宸ョ▼");
@@ -88,12 +109,21 @@
JComboBox<String> comboBox4 = new JComboBox<>(typeList);
comboBox4.setPreferredSize(new Dimension(185, 28));
+ JLabel JLabel5 = new JLabel("鏄惁褰卞搷灏佽埍");
+ JComboBox<JComboBoxItem> comboBox56 = new JComboBox<>(isealCabin);
+ comboBox56.setPreferredSize(new Dimension(185, 28));
+
+ JLabel JLabel6 = new JLabel("鏄惁鑱旇皟");
+ JComboBox<JComboBoxItem> comboBox6 = new JComboBox<>(isealCabin);
+ comboBox6.setPreferredSize(new Dimension(185, 28));
+
JTextField sb = new JTextField(16);
JButton query = new JButton("鏌ヨ");
List<ColorDescription> colorDescriptions = new ArrayList<>();
+ colorDescriptions.add(new ColorDescription("", "鍏ㄩ儴"));
colorDescriptions.add(new ColorDescription("#3498DB", "杩涜涓�"));
- colorDescriptions.add(new ColorDescription("#F1C40F", "涓存湡"));
+ colorDescriptions.add(new ColorDescription("#F1C40F", "涓存湡(7澶�)"));
colorDescriptions.add(new ColorDescription("#E74C3C", "閫炬湡"));
colorDescriptions.add(new ColorDescription("#2ECC71", "姝e父瀹屾垚"));
colorDescriptions.add(new ColorDescription("#006400", "瓒呮湡瀹屾垚"));
@@ -101,36 +131,35 @@
// 鍒涘缓涓嬫媺妗�
ColorDescriptionComboBox comboBox5 = new ColorDescriptionComboBox(colorDescriptions);
JButton btnTjz = new JButton("璁惧杩涘害缁熻鎬昏〃");
+ JButton btnExport = new JButton("瀵煎嚭");
- 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));
+ topJpanel2.add(JLabel0, new GBC(0, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel2.add(comboBox, new GBC(1, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel2.add(JLabel1, new GBC(2, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel2.add(comboBox1, new GBC(3, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel2.add(JLabel2, new GBC(4, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel2.add(comboBox2, new GBC(5, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel2.add(JLabel3, new GBC(6, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel2.add(comboBox3, new GBC(7, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel2.add(JLabel4, new GBC(8, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel2.add(comboBox4, new GBC(9, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
- 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));
- topJpanel.add(btnTjz, new GBC(5, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel2.add(JLabel5, new GBC(0, 1, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel2.add(comboBox56, new GBC(1, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel2.add(JLabel6, new GBC(2, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel2.add(comboBox6, new GBC(3, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel2.add(sb, new GBC(4, 1, 2, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ topJpanel2.add(query, new GBC(6, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel2.add(comboBox5, new GBC(7, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel2.add(btnExport, new GBC(8, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+ topJpanel2.add(btnTjz, new GBC(9, 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], Math.toIntExact(isealCabin[0].getId()), Math.toIntExact(isealCabin[0].getId()), null);
columnDto = new ArrayList<>();
//columnDto.add(new ColumnDto("ID", "id", -1, null,false));
- columnDto.add(new ColumnDto("搴忓彿", "", 227, "autoCreate", false, null, null));
- //columnDto.add(new ColumnDto("宸ョ▼", "ProjectName", 150, null, false, null, null));
- columnDto.add(new ColumnDto("璁惧鍚嶇О", "name", 227, null, true, null, null));
- columnDto.add(new ColumnDto("璁惧鎷嗗嵏鍑鸿埍", "time1Color", 227, "Circle", true, null, null));
- columnDto.add(new ColumnDto("璁惧鍒嗕氦", "time2Color", 227, "Circle", true, null, null));
- columnDto.add(new ColumnDto("鎷嗘閴村畾", "time3Color", 227, "Circle", true, null, null));
- columnDto.add(new ColumnDto("璁惧杩斿巶", "time4Color", 227, "Circle", true, null, null));
- columnDto.add(new ColumnDto("鍥炶", "time5Color", 227, "Circle", true, null, null));
-
+ columnDto = getColumnDtoByType(typeList[0]);
table = CommonTable.createCommonTable(list, columnDto);
table.setRowHeight(25);
@@ -139,8 +168,8 @@
MouseMotionListener mouseMotionListener = new MouseMotionListener() {
@Override
public void mouseDragged(MouseEvent e) {
- // 涓嶉渶瑕佸鐞嗛紶鏍囨嫋鍔ㄤ簨浠�
}
+
@Override
public void mouseMoved(MouseEvent e) {
@@ -148,17 +177,53 @@
int row = table.rowAtPoint(point);
int column = table.columnAtPoint(point);
- if (row <= list.size() && column > 1) {
+ if (row <= list.size() && column > 3) {
+ List<TableNodeDto> filteredData = list;
+ if (comboBox5.getSelectedItem() instanceof String) {
+
+ } else {
+ ColorDescription selectedColorDescription = (ColorDescription) comboBox5.getSelectedItem();
+ if (selectedColorDescription != null) {
+ String selectedHexColor = selectedColorDescription.getHexColor();
+ if (StringUtils.isNotBlank(selectedHexColor)) {
+ filteredData = list.stream()
+ .filter(dto -> dto.getTime1Color() != null && dto.getTime1Color().equals(selectedHexColor) ||
+ dto.getTime2Color() != null && dto.getTime2Color().equals(selectedHexColor) ||
+ dto.getTime3Color() != null && dto.getTime3Color().equals(selectedHexColor) ||
+ dto.getTime4Color() != null && dto.getTime4Color().equals(selectedHexColor) ||
+ dto.getTime5Color() != null && dto.getTime5Color().equals(selectedHexColor))
+ .collect(Collectors.toList());
+ }
+ }
+ }
String hexColor = (String) table.getValueAt(row, column);
- String tooltip = getTooltipText(hexColor);
+ String tooltip = getTooltipText(hexColor, filteredData.get(row));
table.setToolTipText(tooltip);
} else {
table.setToolTipText(null);
}
}
};
+ MouseAdapter mouseAdapter = new MouseAdapter(){
+ @Override
+ public void mouseClicked(MouseEvent e) {
+ // if (historyCalled[0]) return;
+ // 鑾峰彇鐐瑰嚮鐨勮鍜屽垪
+ int row = table.rowAtPoint(e.getPoint());
+
+ // 妫�鏌ユ槸鍚︾偣鍑讳簡鏈夋晥鍗曞厓鏍�
+ if (row >= 0) {
+ Long id = list.get(row).getNetworkId();
+ if (id != null) {
+ getRecordById(frame,id);
+ }
+ }
+ }
+
+ };
table.addMouseMotionListener(mouseMotionListener);
+ table.addMouseListener(mouseAdapter);
comboBox.addItemListener(new ItemListener() {
public void itemStateChanged(final ItemEvent event) {
@@ -167,15 +232,16 @@
JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
String type = comboBox4.getSelectedItem().toString();
+ JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem();
+ JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem();
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, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null);
+ columnDto = getColumnDtoByType(type);
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
-
}
});
comboBox1.addItemListener(new ItemListener() {
@@ -195,8 +261,12 @@
JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
String type = comboBox4.getSelectedItem().toString();
+ JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem();
+ JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem();
+
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, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null);
+ columnDto = getColumnDtoByType(type);
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
@@ -215,10 +285,13 @@
JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
String type = comboBox4.getSelectedItem().toString();
+ JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem();
+ JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem();
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, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null);
+ columnDto = getColumnDtoByType(type);
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
@@ -234,8 +307,12 @@
JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
String type = comboBox4.getSelectedItem().toString();
+ JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem();
+ JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem();
+
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, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null);
+ columnDto = getColumnDtoByType(type);
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
@@ -252,9 +329,58 @@
JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
String type = comboBox4.getSelectedItem().toString();
- Long shipId = shipMap.get(content);
- list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, null);
+ JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem();
+ JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem();
+ Long shipId = shipMap.get(content);
+ list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null);
+
+ columnDto = getColumnDtoByType(type);
+ CommonTable.refreshTable(list, columnDto, table);
+ table.setRowHeight(25);
+
+ table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+
+ }
+ });
+
+ comboBox56.addItemListener(new ItemListener() {
+ public void itemStateChanged(final ItemEvent event) {
+ String content = comboBox.getSelectedItem().toString();
+ JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
+ JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
+ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
+ String type = comboBox4.getSelectedItem().toString();
+
+ JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem();
+ JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem();
+
+ Long shipId = shipMap.get(content);
+ list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null);
+
+ columnDto = getColumnDtoByType(type);
+ CommonTable.refreshTable(list, columnDto, table);
+ table.setRowHeight(25);
+
+ table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+
+ }
+ });
+ comboBox6.addItemListener(new ItemListener() {
+ public void itemStateChanged(final ItemEvent event) {
+ String content = comboBox.getSelectedItem().toString();
+ JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
+ JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
+ JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
+ String type = comboBox4.getSelectedItem().toString();
+
+ JComboBoxItem isCabin = (JComboBoxItem) comboBox56.getSelectedItem();
+ JComboBoxItem isLt = (JComboBoxItem) comboBox6.getSelectedItem();
+
+ Long shipId = shipMap.get(content);
+ list = level3Service.getNodeList(shipId, dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(isCabin.getId()), Math.toIntExact(isLt.getId()), null);
+
+ columnDto = getColumnDtoByType(type);
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
@@ -266,8 +392,9 @@
query.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
- list = level3Service.getNodeList(null, null, null, null, null, sb.getText());
-
+ String type = comboBox4.getSelectedItem().toString();
+ list = level3Service.getNodeList(null, null, null, null, type, null, null, sb.getText());
+ columnDto = getColumnDtoByType(type);
CommonTable.refreshTable(list, columnDto, table);
table.setRowHeight(25);
@@ -287,20 +414,63 @@
public void actionPerformed(ActionEvent e) {
String content = comboBox.getSelectedItem().toString();
Long shipId = shipMap.get(content);
- statisProductService.createTable(frame,shipId);
+ String type = comboBox4.getSelectedItem().toString();
+ statisProductService.createTable(frame, shipId, type);
+ }
+ });
+ btnExport.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ frame.setEnabled(false);
+ export(frame);
}
});
+ comboBox5.addItemListener(new ItemListener() {
+ @Override
+ public void itemStateChanged(ItemEvent e) {
+ if (e.getStateChange() == ItemEvent.SELECTED) {
+ if (comboBox5.getSelectedItem() instanceof String) {
+ return;
+ }
+ ColorDescription selectedColorDescription = (ColorDescription) comboBox5.getSelectedItem();
+ if (selectedColorDescription != null) {
+ String selectedHexColor = selectedColorDescription.getHexColor();
+ if (StringUtils.isNotBlank(selectedHexColor)) {
+ List<TableNodeDto> filteredData = list.stream()
+ .filter(dto -> dto.getTime1Color() != null && dto.getTime1Color().equals(selectedHexColor) ||
+ dto.getTime2Color() != null && dto.getTime2Color().equals(selectedHexColor) ||
+ dto.getTime3Color() != null && dto.getTime3Color().equals(selectedHexColor) ||
+ dto.getTime4Color() != null && dto.getTime4Color().equals(selectedHexColor) ||
+ dto.getTime5Color() != null && dto.getTime5Color().equals(selectedHexColor))
+ .collect(Collectors.toList());
+ CommonTable.refreshTable(filteredData, columnDto, table);
+ }else{
+ String type = comboBox4.getSelectedItem().toString();
+ list = level3Service.getNodeList(null, null, null, null, type, null, null, sb.getText());
+ columnDto = getColumnDtoByType(type);
+ CommonTable.refreshTable(list, columnDto, table);
+ table.setRowHeight(25);
+
+ table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
+
+ }
+ }
+ }
+ }
+ });
+
+ table.setEnabled(false);
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, Compute.ComputeHeightWithScroll(95,frame)));
+ scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(145, frame)));
centerJpanel.add(scrollPane);
frame.addComponentListener(new ComponentAdapter() {
@Override
public void componentResized(ComponentEvent e) {
- centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(95,frame)));
- scrollPane.setPreferredSize(new Dimension(width - 20,Compute.ComputeHeightWithScroll(95,frame)));
+ centerJpanel.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeight(145, frame)));
+ scrollPane.setPreferredSize(new Dimension(width - 20, Compute.ComputeHeightWithScroll(145, frame)));
centerJpanel.revalidate();
centerJpanel.repaint();
scrollPane.revalidate();
@@ -311,23 +481,246 @@
return panel;
}
- private static String getTooltipText(String hexColor) {
+ private void getRecordById(JFrame jFrame, Long id) {
+ jFrame.setEnabled(false);
+ JFrame frame1 = new JFrame("璺熻釜璁板綍");
+ frame1.setSize(2000, 800);
+ frame1.setResizable(true);
+ frame1.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
+ frame1.setLocationRelativeTo(null);
+ frame1.addWindowListener(new WindowAdapter() {
+ //娣诲姞绗簩涓晫闈㈢殑鍏抽棴浜嬩欢:
+ public void windowClosing(WindowEvent e) {
+ //娣诲姞浜嬩欢:
+ jFrame.setEnabled(true);//灏嗕富鐣岄潰鍐嶈缃负鍙搷浣滅殑
+ }
+ });
+
+ List<ColumnDto> columnDto = new ArrayList<>();
+ List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.getRecordById(id);
+ JComboBoxItem[] trackList = {
+ new JComboBoxItem(0L, "绾夸笅"),
+ new JComboBoxItem(1L, "鐢佃瘽"),
+ };
+
+ JComboBoxItem[] statusList = {
+ new JComboBoxItem(0L, "杩涜涓�"),
+ new JComboBoxItem(1L, "宸插畬鎴�"),
+ };
+ JComboBoxItem[] hasDelayRiskList = {
+ new JComboBoxItem(0L, "鏃�"),
+ new JComboBoxItem(1L, "鏈�"),
+ };
+
+ columnDto.add(new ColumnDto("搴忓彿", "", 80, "autoCreate", false, null, null));
+ columnDto.add(new ColumnDto("鑺傜偣鍚嶇О", "processName", 120, null, false, null, null));
+ columnDto.add(new ColumnDto("璺熻釜鏂瑰紡", "trackMethod", 120, "dict", false, null, trackList));
+ columnDto.add(new ColumnDto("璺熻釜鍦扮偣", "trackLocation", 120, null, false, null, null));
+ columnDto.add(new ColumnDto("鍔╀慨浜�", "trackPerson", 180, null, false, null, null));
+ columnDto.add(new ColumnDto("鍘傛柟", "trackedPerson", 180, 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("鑺傜偣杩涘睍", "currentStatus", 120, "dict", false, null, statusList));
+ columnDto.add(new ColumnDto("鑴辨湡椋庨櫓", "hasDelayRisk", 120, "dict", false, null, hasDelayRiskList));
+ columnDto.add(new ColumnDto("棰勮瀹屾垚鏃堕棿", "estimatedCompletionTime", 200, "selectDate", false, null, null));
+ columnDto.add(new ColumnDto("瀛樺湪闂", "problem", 160, null, false, null, null));
+ columnDto.add(new ColumnDto("鍚庣画璁″垝", "followupPlan", 160, null, false, null, null));
+ columnDto.add(new ColumnDto("澶囨敞", "remark", 160, null, false, null, null));
+
+ JTable subTable = CommonTable.createCommonTable(list, columnDto);
+ subTable.setRowHeight(25);
+ subTable.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS);
+ JScrollPane scrollPane = new JScrollPane(subTable, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
+ scrollPane.setViewportView(subTable);
+ scrollPane.getViewport().setBackground(Color.WHITE);
+ //scrollPane.setPreferredSize(new Dimension(width - 20, height - 100));
+
+ frame1.add(scrollPane);
+ frame1.setVisible(true);
+
+ }
+
+ private void export(JFrame jFrame) {
+ JFrame frame1 = new JFrame("瀵煎嚭涓夌骇缃戠粶鍥剧姸鎬�");
+ frame1.setSize(300, 400);
+ frame1.setResizable(true);
+ frame1.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
+ frame1.setLocationRelativeTo(null);
+ frame1.setVisible(true);
+ frame1.addWindowListener(new WindowAdapter() {
+ //娣诲姞绗簩涓晫闈㈢殑鍏抽棴浜嬩欢:
+ public void windowClosing(WindowEvent e) {
+ //娣诲姞浜嬩欢:
+ jFrame.setEnabled(true);//灏嗕富鐣岄潰鍐嶈缃负鍙搷浣滅殑
+ }
+ });
+ GridBagLayout layout = new GridBagLayout();
+ frame1.setLayout(layout);
+
+ JComboBoxItem[] projectList = djJdgzNetworkLevel1Service.getProjectList();
+ JComboBoxItem[] deptList = sysTeamGroupClassService.getDeptList();
+
+ String[] typeList = new String[]{
+ "","杩涜涓�","涓存湡","閫炬湡","姝e父瀹屾垚","瓒呮湡瀹屾垚"
+ };
+
+ JLabel JLabel1 = new JLabel("宸ョ▼");
+ JComboBox<JComboBoxItem> comboBox0 = new JComboBox<>(projectList);
+ comboBox0.setPreferredSize(new Dimension(200, 28));
+ comboBox0.setSelectedIndex(-1);
+
+ JLabel JLabel4 = new JLabel("閮ㄩ棬");
+ JComboBox<JComboBoxItem> comboBox3 = new JComboBox<>(deptList);
+ comboBox3.setPreferredSize(new Dimension(200, 28));
+
+ JComboBoxItem[] teamList1 = sysTeamGroupClassService.getTeamList(deptList[0].getId());
+
+ JLabel JLabel5 = new JLabel("涓撲笟");
+ JComboBox<JComboBoxItem> comboBox4 = new JComboBox<>(teamList1);
+ comboBox4.setPreferredSize(new Dimension(200, 28));
+
+ JLabel JLabel7 = new JLabel("鐘舵��");
+ JComboBox<String> comboBox6 = new JComboBox<>(typeList);
+ comboBox6.setPreferredSize(new Dimension(200, 28));
+
+ comboBox3.addItemListener(new ItemListener() {
+ @Override
+ public void itemStateChanged(ItemEvent e) {
+ if (e.getStateChange() == ItemEvent.SELECTED) {
+ JComboBoxItem selectedItem = (JComboBoxItem) comboBox3.getSelectedItem();
+ if (selectedItem != null) {
+ long selectedId = selectedItem.getId();
+
+ JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(selectedId);
+ comboBox4.setModel(new DefaultComboBoxModel<>(teamList));
+ comboBox4.setSelectedIndex(-1);
+ }
+ }
+ }
+ });
+
+ JButton btnExport = new JButton("瀵煎嚭");
+
+ frame1.add(JLabel1, new GBC(0, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ frame1.add(comboBox0, new GBC(1, 0, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+
+ frame1.add(JLabel4, new GBC(0, 1, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ frame1.add(comboBox3, new GBC(1, 1, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+
+ frame1.add(JLabel5, new GBC(0, 2, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ frame1.add(comboBox4, new GBC(1, 2, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+
+ frame1.add(JLabel7, new GBC(0, 3, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
+ frame1.add(comboBox6, new GBC(1, 3, 1, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
+
+ frame1.add(btnExport, new GBC(0, 4, 2, 1).setWeight(1, 0));
+
+ btnExport.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ JComboBoxItem projectItem = (JComboBoxItem) comboBox0.getSelectedItem();
+ JComboBoxItem deptItem = (JComboBoxItem) comboBox3.getSelectedItem();
+ JComboBoxItem teamGroupItem = (JComboBoxItem) comboBox4.getSelectedItem();
+ String statusItem = comboBox6.getSelectedItem().toString();
+
+ Long level1NetworkId = null;
+ Long deptId = null;
+ Long teamGroupId = null;
+ String status = null;
+
+ if (projectItem != null) {
+ level1NetworkId = projectItem.getId();
+ } else {
+ JOptionPane.showMessageDialog(null, "娌℃湁閫夋嫨宸ョ▼", "鎻愮ず", JOptionPane.WARNING_MESSAGE);
+ return;
+ }
+ if (deptId != null) {
+ deptId = deptItem.getId();
+ }
+ if (teamGroupItem != null) {
+ teamGroupId = teamGroupItem.getId();
+ }
+
+ if (StringUtils.isNotBlank(statusItem)) {
+ status = statusItem;
+ }
+
+ String fileName = "涓夌骇缃戠粶鍥剧姸鎬�.xlsx";
+ JFileChooser fileChooser = new JFileChooser();
+ fileChooser.setSelectedFile(new File(fileName));
+ int result = fileChooser.showSaveDialog(frame1);
+
+ if (result == JFileChooser.APPROVE_OPTION) {
+ File selectedFile = fileChooser.getSelectedFile();
+ level3Service.exportExcel(selectedFile.getPath(), level1NetworkId,deptId, teamGroupId, status);
+ JOptionPane.showMessageDialog(frame1, "鏂囦欢瀵煎嚭鎴愬姛");
+ } else {
+ JOptionPane.showMessageDialog(frame1, "鏂囦欢瀵煎嚭鍙栨秷");
+ }
+ }
+ });
+
+ }
+
+ private JComboBoxItem[] createIsealCabinItems() {
+ return new JComboBoxItem[]{
+ new JComboBoxItem(10000L, ""),
+ new JComboBoxItem(0L, "鍚�"),
+ new JComboBoxItem(1L, "鏄�")
+ };
+ }
+
+ private List<ColumnDto> getColumnDtoByType(String type) {
+ List<ColumnDto> columns = new ArrayList<>();
+ if ("淇悊".equals(type)) {
+ columns.add(new ColumnDto("搴忓彿", "", 100, "autoCreate", false, null, null));
+ columns.add(new ColumnDto("璁惧鍚嶇О", "name", 327, null, true, null, null));
+ columns.add(new ColumnDto("鏄惁褰卞搷灏佽埍", "isealCabin", 160, "dict", false, null, createIsealCabinItems()));
+ columns.add(new ColumnDto("鏄惁鑱旇皟", "islt", 100, "dict", false, null, createIsealCabinItems()));
+ columns.add(new ColumnDto("璁惧鎷嗗嵏鍑鸿埍", "time1Color", 187, "Circle", true, null, null));
+ columns.add(new ColumnDto("璁惧鍒嗕氦", "time2Color", 187, "Circle", true, null, null));
+ columns.add(new ColumnDto("鎷嗘閴村畾", "time3Color", 187, "Circle", true, null, null));
+ columns.add(new ColumnDto("璁惧杩斿巶", "time4Color", 187, "Circle", true, null, null));
+ columns.add(new ColumnDto("鍥炶", "time5Color", 187, "Circle", true, null, null));
+ } else if ("鏀规崲瑁�".equals(type) || "鏀硅繘鎬т慨鐞�".equals(type)) {
+ columns.add(new ColumnDto("搴忓彿", "", 144, "autoCreate", false, null, null));
+ columns.add(new ColumnDto("璁惧鍚嶇О", "name", 320, null, true, null, null));
+ columns.add(new ColumnDto("鏄惁褰卞搷灏佽埍", "isealCabin", 320, "dict", false, null, createIsealCabinItems()));
+ columns.add(new ColumnDto("鏄惁鑱旇皟", "islt", 144, "dict", false, null, createIsealCabinItems()));
+ columns.add(new ColumnDto("璁惧鍒板巶", "time1Color", 320, "Circle", true, null, null));
+ columns.add(new ColumnDto("璁惧瀹夎", "time2Color", 320, "Circle", true, null, null));
+ } else if ("涓嶅瑁呰澶�".equals(type)) {
+ columns.add(new ColumnDto("搴忓彿", "", 100, "autoCreate", false, null, null));
+ columns.add(new ColumnDto("璁惧鍚嶇О", "name", 320, null, true, null, null));
+ columns.add(new ColumnDto("鏄惁褰卞搷灏佽埍", "isealCabin", 160, "dict", false, null, createIsealCabinItems()));
+ columns.add(new ColumnDto("鏄惁鑱旇皟", "islt", 100, "dict", false, null, createIsealCabinItems()));
+ columns.add(new ColumnDto("鎷嗗嵏鍑鸿埍", "time1Color", 155, "Circle", true, null, null));
+ columns.add(new ColumnDto("鍏ュ簱", "time2Color", 155, "Circle", true, null, null));
+ columns.add(new ColumnDto("瀛樻斁浣嶇疆", "time3Color", 155, "Circle", true, null, null));
+ columns.add(new ColumnDto("绉讳氦T闃�", "time4Color", 155, "Circle", true, null, null));
+ columns.add(new ColumnDto("澶囨敞", "remark", 300, null, false, null, null));
+ }
+ return columns;
+ }
+
+ private static String getTooltipText(String hexColor, TableNodeDto tableNodeDto) {
switch (hexColor) {
case "#3498DB":
return "杩涜涓�";
case "#F1C40F":
- return "涓存湡";
+ return tableNodeDto.getLqText();
case "#E74C3C":
- return "閫炬湡";
+ return tableNodeDto.getYqText();
case "#2ECC71":
return "姝e父瀹屾垚";
case "#006400":
- return "瓒呮湡瀹屾垚";
+ return tableNodeDto.getCqText();
default:
return "鏈紑濮�";
}
}
+
}
--
Gitblit v1.9.1