From f0aae4b39afbcbb18fb5a0b32e3ca689662c5ca7 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期一, 10 三月 2025 08:21:31 +0800 Subject: [PATCH] jar --- src/main/java/com/example/client/utils/CommonTable.java | 51 ++++++++++++++++++++------------------------------- 1 files changed, 20 insertions(+), 31 deletions(-) diff --git a/src/main/java/com/example/client/utils/CommonTable.java b/src/main/java/com/example/client/utils/CommonTable.java index f9e4232..ea59bc7 100644 --- a/src/main/java/com/example/client/utils/CommonTable.java +++ b/src/main/java/com/example/client/utils/CommonTable.java @@ -37,7 +37,7 @@ } }; table.setModel(dataModel); - setColumnType(dtoList,table); + setColumnType(dtoList, table); return table; } @@ -62,7 +62,7 @@ }); table.getColumnModel().getColumn(j).setCellEditor(new DatePickerEditor(datePicker)); } - if ("dict".equals(dtoList.get(j).getColumnType())) { + if ("dict".equals(dtoList.get(j).getColumnType()) || "dicts".equals(dtoList.get(j).getColumnType())) { Map<Long, JComboBoxItem> itemMap = new HashMap<>(); JComboBoxItem[] dictList = dtoList.get(j).getDictList(); for (JComboBoxItem item : dictList) { @@ -87,30 +87,8 @@ table.getColumnModel().getColumn(j).setCellRenderer(new CellComboBoxRenderer(itemMap)); table.getColumnModel().getColumn(j).setCellEditor(new CellComboBoxEditor(comboBox, itemMap)); } - if ("dicts".equals(dtoList.get(j).getColumnType())) { - Map<Long, JComboBoxItem> itemMap = new HashMap<>(); - JComboBoxItem[] dictList = dtoList.get(j).getDictList(); - for (JComboBoxItem item : dictList) { - itemMap.put(item.getId(), item); - } - - // 鍒涘缓 JComboBox 骞舵坊鍔� Item 瀵硅薄 - JComboBox<JComboBoxItem> comboBox = new JComboBox<>(dictList); - - // 璁剧疆鑷畾涔夋覆鏌撳櫒 - comboBox.setRenderer(new BasicComboBoxRenderer() { - @Override - public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { - super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); - if (value instanceof JComboBoxItem) { - JComboBoxItem item = (JComboBoxItem) value; - setText(item.getName()); // 鏄剧ず name - } - return this; - } - }); - table.getColumnModel().getColumn(j).setCellRenderer(new CellComboBoxRenderer(itemMap)); - table.getColumnModel().getColumn(j).setCellEditor(new CellComboBoxEditor(comboBox, itemMap)); + if ("Circle".equals(dtoList.get(j).getColumnType())) { + table.getColumnModel().getColumn(j).setCellRenderer(new CircleRenderer()); } } } @@ -118,10 +96,10 @@ public static void refreshTable(List<?> list, List<ColumnDto> dtoList, JTable table) { TableModel dataModel = createCommonTableModel(list, dtoList); table.setModel(dataModel); - setColumnType(dtoList,table); + setColumnType(dtoList, table); } - public static TableModel createCommonTableModel(List<?> list, List<ColumnDto> dtoList) { + public static String[][] getRowData(List<?> list, List<ColumnDto> dtoList) { String[][] rowData = new String[list.size()][dtoList.size()]; for (int i = 0; i < list.size(); i++) { @@ -145,6 +123,8 @@ rowData[i][j] = valueStr; } else if (dtoList.get(j).getColumnType().equals("dicts")) { rowData[i][j] = valueStr; + } else if (dtoList.get(j).getColumnType().equals("Circle")) { + rowData[i][j] = valueStr; } else if (dtoList.get(j).getColumnType().equals("autoCreate")) { rowData[i][j] = "" + (i + 1); } @@ -153,6 +133,11 @@ } } } + return rowData; + } + + public static TableModel createCommonTableModel(List<?> list, List<ColumnDto> dtoList) { + String[][] rowData = getRowData(list, dtoList); String[] columnNames = new String[dtoList.size()]; for (int j = 0; j < dtoList.size(); j++) { columnNames[j] = dtoList.get(j).getColumnDesc(); @@ -173,16 +158,18 @@ if (StringUtils.isNotBlank(fieldName)) { if ("dict".equals(dtoList.get(j).getColumnType())) { method = c1azz.getMethod("set" + StringUtils.capitalize(fieldName), Long.class); + } else if ("dicts".equals(dtoList.get(j).getColumnType())) { + method = c1azz.getMethod("set" + StringUtils.capitalize(fieldName), Integer.class); } else { method = c1azz.getMethod("set" + StringUtils.capitalize(fieldName), String.class); } Object value = table.getModel().getValueAt(i, j); - if (value != null) { + if (value != null && !value.equals("") ) { if ("selectDate".equals(dtoList.get(j).getColumnType())) { method.invoke(object, value.toString()); System.out.println(value.toString().length()); String valueStr = value.toString(); - Method method2 = c1azz.getMethod("set" + StringUtils.capitalize(fieldName) + "Digit", Long.class); + //Method method2 = c1azz.getMethod("set" + StringUtils.capitalize(fieldName) + "Digit", Long.class); SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); Date date = null; try { @@ -191,9 +178,11 @@ e.printStackTrace(); } Long timestamp = date.getTime(); - method2.invoke(object, timestamp); + // method2.invoke(object, timestamp); } else if ("dict".equals(dtoList.get(j).getColumnType())) { method.invoke(object, Long.parseLong(value.toString())); + } else if ("dicts".equals(dtoList.get(j).getColumnType())) { + method.invoke(object, Integer.valueOf(value.toString())); } else { method.invoke(object, value.toString()); } -- Gitblit v1.9.1