From 76d3f3083dae32838ed34c6f66df454557dc8583 Mon Sep 17 00:00:00 2001 From: weiweiw <14335254+weiweiw22@user.noreply.gitee.com> Date: Fri, 16 Aug 2024 16:26:59 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=BC=8F=E6=B4=9E=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bonus-api/bonus-api-system/pom.xml | 2 +- bonus-api/pom.xml | 2 +- bonus-auth/pom.xml | 2 +- bonus-common/bonus-common-core/pom.xml | 2 +- .../bonus/common/core/annotation/Excel.java | 6 ++ .../common/core/utils/poi/ExcelUtil.java | 88 +++++++++++++++++- .../bonus/common/core/utils/poi/WordUtil.java | 74 +++++++++++++++ .../core/constant/ValidateUtilsTests.java | 7 -- .../common/core/utils/ip/IpUtilsTests.java | 8 +- .../common/core/utils/poi/ExcelUtilTests.java | 47 ++++++++++ .../bonus/common/core/utils/poi/Person.java | 35 +++++++ .../com/bonus/common/core/utils/poi/test.xlsx | Bin 0 -> 9766 bytes bonus-common/bonus-common-datascope/pom.xml | 2 +- bonus-common/bonus-common-datasource/pom.xml | 2 +- bonus-common/bonus-common-log/pom.xml | 2 +- bonus-common/bonus-common-redis/pom.xml | 2 +- bonus-common/bonus-common-seata/pom.xml | 2 +- bonus-common/bonus-common-security/pom.xml | 2 +- bonus-common/bonus-common-sensitive/pom.xml | 2 +- bonus-common/bonus-common-swagger/pom.xml | 2 +- bonus-common/pom.xml | 2 +- bonus-gateway/pom.xml | 2 +- bonus-modules/bonus-file/pom.xml | 2 +- bonus-modules/bonus-gen/pom.xml | 2 +- bonus-modules/bonus-job/pom.xml | 2 +- bonus-modules/bonus-mongodb/pom.xml | 2 +- bonus-modules/bonus-obs/pom.xml | 2 +- bonus-modules/bonus-oss/pom.xml | 2 +- bonus-modules/bonus-system/pom.xml | 2 +- bonus-modules/pom.xml | 2 +- bonus-visual/bonus-monitor/pom.xml | 2 +- bonus-visual/pom.xml | 2 +- pom.xml | 4 +- 33 files changed, 273 insertions(+), 44 deletions(-) create mode 100644 bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/poi/WordUtil.java create mode 100644 bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/poi/ExcelUtilTests.java create mode 100644 bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/poi/Person.java create mode 100644 bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/poi/test.xlsx diff --git a/bonus-api/bonus-api-system/pom.xml b/bonus-api/bonus-api-system/pom.xml index 5596218..21a98e3 100644 --- a/bonus-api/bonus-api-system/pom.xml +++ b/bonus-api/bonus-api-system/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-api - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-api/pom.xml b/bonus-api/pom.xml index 547db28..e3dc255 100644 --- a/bonus-api/pom.xml +++ b/bonus-api/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-auth/pom.xml b/bonus-auth/pom.xml index 5897600..11612ef 100644 --- a/bonus-auth/pom.xml +++ b/bonus-auth/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-common/bonus-common-core/pom.xml b/bonus-common/bonus-common-core/pom.xml index 77b6ed3..9b44183 100644 --- a/bonus-common/bonus-common-core/pom.xml +++ b/bonus-common/bonus-common-core/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/annotation/Excel.java b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/annotation/Excel.java index e86a47d..bfd08f8 100644 --- a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/annotation/Excel.java +++ b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/annotation/Excel.java @@ -18,6 +18,12 @@ import com.bonus.common.core.utils.poi.ExcelHandlerAdapter; @Target(ElementType.FIELD) public @interface Excel { + /** + * 是否是序号 + * @return + */ + public boolean isSequence() default false; + /** * 导出时在excel中排序 */ diff --git a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/poi/ExcelUtil.java b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/poi/ExcelUtil.java index 67e690e..c8d6610 100644 --- a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/poi/ExcelUtil.java +++ b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/poi/ExcelUtil.java @@ -1,7 +1,9 @@ package com.bonus.common.core.utils.poi; +import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; +import java.io.OutputStream; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.ParameterizedType; @@ -20,6 +22,8 @@ import java.util.Map; import java.util.Set; import java.util.stream.Collectors; import javax.servlet.http.HttpServletResponse; + +import com.bonus.common.core.web.domain.AjaxResult; import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.RegExUtils; import org.apache.commons.lang3.reflect.FieldUtils; @@ -580,6 +584,7 @@ public class ExcelUtil int startNo = index * SHEETSIZE; int endNo = Math.min(startNo + SHEETSIZE, list.size()); int rowNo = (1 + rownum) - startNo; + int sequence=1; for (int i = startNo; i < endNo; i++) { rowNo = isSubList() ? (i > 1 ? rowNo + 1 : rowNo + i) : i + 1 + rownum - startNo; @@ -623,7 +628,7 @@ public class ExcelUtil { subField.setAccessible(true); Excel attr = subField.getAnnotation(Excel.class); - this.addCell(attr, row, (T) obj, subField, column + subIndex); + this.addCell(attr, row, (T) obj, subField, column + subIndex,sequence); } subIndex++; } @@ -633,9 +638,10 @@ public class ExcelUtil } else { - this.addCell(excel, row, vo, field, column++); + this.addCell(excel, row, vo, field, column++,sequence); } } + sequence++; } } @@ -932,7 +938,7 @@ public class ExcelUtil /** * 添加单元格 */ - public Cell addCell(Excel attr, Row row, T vo, Field field, int column) + public Cell addCell(Excel attr, Row row, T vo, Field field, int column, int sequence) { Cell cell = null; try @@ -956,7 +962,11 @@ public class ExcelUtil String dateFormat = attr.dateFormat(); String readConverterExp = attr.readConverterExp(); String separator = attr.separator(); - if (StringUtils.isNotEmpty(dateFormat) && StringUtils.isNotNull(value)) + if(attr.isSequence()){ + cell.setCellValue(sequence); + } + + else if (StringUtils.isNotEmpty(dateFormat) && StringUtils.isNotNull(value)) { cell.setCellValue(parseDateToStr(dateFormat, value)); } @@ -1551,4 +1561,74 @@ public class ExcelUtil } return method; } + + /** + * 对list数据源将其里面的数据导入到excel表单 + * + * @param filePath 返回本地excel文件路径 + * @param list 导出数据集合 + * @param sheetName 工作表的名称 + * @param title 标题 + */ + public AjaxResult exportExcelToLocalFile(String filePath, List list, String sheetName, String title) + { + this.init(list, sheetName, title, Type.EXPORT); + if (StringUtils.isNotBlank(filePath)) + return exportExcelToLocalFile(filePath); + else + return exportExcelToLocalFile(sheetName); + } + + + /** + * 对list数据源将其里面的数据导出到excel表单 + doNothing().when(excelUtil).init(null, sheetName, title, Type.EXPORT); + doNothing().when(excelUtil).exportExcelToLocalFile(filePath); + + // Act + excelUtil.exportExcelToLocalFile(filePath, null, sheetName, title); + + // Assert + File file = new File(filePath); + assertTrue(file.exists()); + + // Clean up + file.delete(); + } + + @Excel + public static class User { + private Long id; + private String name; + private String sex; + private Integer age; + private Date birthday; + + // Getters and Setters + } + } + */ + private AjaxResult exportExcelToLocalFile(String filePath) + { + OutputStream out = null; + try + { + writeSheet(); + // 将文档写入文件 + out = new FileOutputStream(filePath); + wb.write(out); + System.out.println("excel document export successfully."); + return AjaxResult.success(filePath); + } + catch (Exception e) + { + log.error("导出Excel异常{}", e.getMessage()); + } + finally + { + IOUtils.closeQuietly(wb); + IOUtils.closeQuietly(out); + } + return AjaxResult.error("导出Excel失败,请联系网站管理员!"); + } } diff --git a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/poi/WordUtil.java b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/poi/WordUtil.java new file mode 100644 index 0000000..98554bc --- /dev/null +++ b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/poi/WordUtil.java @@ -0,0 +1,74 @@ +import org.apache.poi.util.Units; +import org.apache.poi.xwpf.usermodel.*; + +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; + +public class WordUtil { + + private XWPFDocument document; + + public WordUtil() { + this.document = new XWPFDocument(); + } + + // 创建段落 + public void addParagraph(String text, int fontSize) { + XWPFParagraph paragraph = document.createParagraph(); + XWPFRun run = paragraph.createRun(); + run.setText(text); + run.setFontSize(fontSize); + } + + // 插入图片 + public void insertImage(String imgFilePath, int width, int height) { + try (InputStream is = new FileInputStream(imgFilePath)) { + XWPFParagraph paragraph = document.createParagraph(); + XWPFRun run = paragraph.createRun(); + run.addPicture(is, XWPFDocument.PICTURE_TYPE_PNG, imgFilePath, Units.toEMU(width), Units.toEMU(height)); + } catch (Exception e) { + e.printStackTrace(); + } + } + + // 创建表格 + public void createTable(int rows, int cols) { + XWPFTable table = document.createTable(rows, cols); + for (int row = 0; row < rows; row++) { + XWPFTableRow tableRow = table.getRow(row); + for (int cell = 0; cell < cols; cell++) { + XWPFTableCell tableCell = tableRow.getCell(cell); + tableCell.setText("Row " + row + ", Cell " + cell); + } + } + } + + // 保存文档 + public void saveDocument(String filePath) { + try (FileOutputStream out = new FileOutputStream(filePath)) { + document.write(out); + } catch (IOException e) { + e.printStackTrace(); + } + } + + // 关闭文档 + public void closeDocument() { + try { + document.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + public static void main(String[] args) { + WordUtil wordUtil = new WordUtil(); + wordUtil.addParagraph("这是一个段落。", 16); + wordUtil.insertImage("path/to/image.png", 200, 200); + wordUtil.createTable(3, 3); + wordUtil.saveDocument("example.docx"); + wordUtil.closeDocument(); + } +} diff --git a/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/constant/ValidateUtilsTests.java b/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/constant/ValidateUtilsTests.java index 6c8c826..cfc707d 100644 --- a/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/constant/ValidateUtilsTests.java +++ b/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/constant/ValidateUtilsTests.java @@ -1,12 +1,5 @@ package com.bonus.common.core.constant; -//import com.alibaba.nacos.common.JustForTest; -//import com.bonus.common.core.utils.ServletUtils; -//import com.bonus.common.core.utils.StringUtils; -// -//import javax.servlet.http.HttpServletRequest; -//import java.net.InetAddress; -//import java.net.UnknownHostException; import com.bonus.common.core.utils.StringUtils; import com.bonus.common.core.utils.ip.IpUtils; diff --git a/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/ip/IpUtilsTests.java b/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/ip/IpUtilsTests.java index 0cfc6f6..ec91c03 100644 --- a/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/ip/IpUtilsTests.java +++ b/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/ip/IpUtilsTests.java @@ -1,12 +1,6 @@ package com.bonus.common.core.utils.ip; -//import com.alibaba.nacos.common.JustForTest; -//import com.bonus.common.core.utils.ServletUtils; -//import com.bonus.common.core.utils.StringUtils; -// -//import javax.servlet.http.HttpServletRequest; -//import java.net.InetAddress; -//import java.net.UnknownHostException; +import com.bonus.common.core.utils.ip.IpUtils; import org.junit.Assert; import org.junit.Test; import static org.junit.Assert.*; diff --git a/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/poi/ExcelUtilTests.java b/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/poi/ExcelUtilTests.java new file mode 100644 index 0000000..55c03c0 --- /dev/null +++ b/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/poi/ExcelUtilTests.java @@ -0,0 +1,47 @@ +package com.bonus.common.core.utils.poi; +import com.bonus.common.core.utils.poi.ExcelUtil; +import org.junit.Test; +import com.bonus.common.core.annotation.Excel; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +import static org.junit.Assert.assertTrue; +public class ExcelUtilTests { + @Test + public void testImportExcel() { + String currentPath = System.getProperty("user.dir"); + System.out.println("当前执行路径: " + currentPath); + ExcelUtil excelUtil = new ExcelUtil(Person.class); + currentPath +="/src/test/java/com/bonus/common/core/utils/poi/test.xlsx"; + try (FileInputStream fileInputStream = new FileInputStream(currentPath)) { + List persionList = excelUtil.importExcel(fileInputStream); + assertTrue(persionList.size() == 4); + + } catch (FileNotFoundException e) { + throw new RuntimeException(e); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + + @Test + public void testExportExcel() { + String currentPath = System.getProperty("user.dir"); + System.out.println("当前执行路径: " + currentPath); + ExcelUtil excelUtil = new ExcelUtil(Person.class); + Person p1 = new Person("admin",10); + Person p2 = new Person("admin2",20); + + List personList = new ArrayList<>(); + personList.add(p1); + personList.add(p2); + currentPath +="/src/test/java/com/bonus/common/core/utils/poi/testExport.xlsx"; + excelUtil.exportExcelToLocalFile(currentPath,personList, "sheet1", null); + + + } + +} diff --git a/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/poi/Person.java b/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/poi/Person.java new file mode 100644 index 0000000..0cb7d13 --- /dev/null +++ b/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/poi/Person.java @@ -0,0 +1,35 @@ +package com.bonus.common.core.utils.poi; + +import com.bonus.common.core.annotation.Excel; + +public class Person { + @Excel(name = "序号", isSequence = true, cellType = Excel.ColumnType.NUMERIC, type = Excel.Type.EXPORT) + int sequence; + @Excel(name = "姓名", cellType = Excel.ColumnType.STRING) + String name; + @Excel(name = "年龄", isStatistics = true, cellType = Excel.ColumnType.NUMERIC) + int age; + + // 公共无参构造函数 + public Person() { + } + + // 带参数的构造函数 + public Person(String name, int age) { + this.name = name; + this.age = age; + } + + public String getName() { + return name; + } + public void setName(String name) { + this.name = name; + } + + public int getAge() {return age;} + + public void setAge(int age) { + this.age = age; + } +} diff --git a/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/poi/test.xlsx b/bonus-common/bonus-common-core/src/test/java/com/bonus/common/core/utils/poi/test.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..485976a534f6781004d01cea92971e929b4c3f13 GIT binary patch literal 9766 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 HC*1!5RD%95 literal 0 HcmV?d00001 diff --git a/bonus-common/bonus-common-datascope/pom.xml b/bonus-common/bonus-common-datascope/pom.xml index 8019b82..25b14bb 100644 --- a/bonus-common/bonus-common-datascope/pom.xml +++ b/bonus-common/bonus-common-datascope/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-common/bonus-common-datasource/pom.xml b/bonus-common/bonus-common-datasource/pom.xml index 008cd3a..9e409c3 100644 --- a/bonus-common/bonus-common-datasource/pom.xml +++ b/bonus-common/bonus-common-datasource/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-common/bonus-common-log/pom.xml b/bonus-common/bonus-common-log/pom.xml index 47be440..afb5892 100644 --- a/bonus-common/bonus-common-log/pom.xml +++ b/bonus-common/bonus-common-log/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-common/bonus-common-redis/pom.xml b/bonus-common/bonus-common-redis/pom.xml index 59ca246..eca03f0 100644 --- a/bonus-common/bonus-common-redis/pom.xml +++ b/bonus-common/bonus-common-redis/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-common/bonus-common-seata/pom.xml b/bonus-common/bonus-common-seata/pom.xml index 24265c7..a0bab6d 100644 --- a/bonus-common/bonus-common-seata/pom.xml +++ b/bonus-common/bonus-common-seata/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-common/bonus-common-security/pom.xml b/bonus-common/bonus-common-security/pom.xml index 0ba8d1e..b427ab1 100644 --- a/bonus-common/bonus-common-security/pom.xml +++ b/bonus-common/bonus-common-security/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus-common - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-common/bonus-common-sensitive/pom.xml b/bonus-common/bonus-common-sensitive/pom.xml index d2bcbca..6c51537 100644 --- a/bonus-common/bonus-common-sensitive/pom.xml +++ b/bonus-common/bonus-common-sensitive/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-common/bonus-common-swagger/pom.xml b/bonus-common/bonus-common-swagger/pom.xml index 28e284a..f9a3f65 100644 --- a/bonus-common/bonus-common-swagger/pom.xml +++ b/bonus-common/bonus-common-swagger/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-common/pom.xml b/bonus-common/pom.xml index 7ad1829..44e0412 100644 --- a/bonus-common/pom.xml +++ b/bonus-common/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-gateway/pom.xml b/bonus-gateway/pom.xml index e3c561b..59ae83f 100644 --- a/bonus-gateway/pom.xml +++ b/bonus-gateway/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-modules/bonus-file/pom.xml b/bonus-modules/bonus-file/pom.xml index dca2365..543a7c9 100644 --- a/bonus-modules/bonus-file/pom.xml +++ b/bonus-modules/bonus-file/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-modules - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-modules/bonus-gen/pom.xml b/bonus-modules/bonus-gen/pom.xml index 42d112d..077fdae 100644 --- a/bonus-modules/bonus-gen/pom.xml +++ b/bonus-modules/bonus-gen/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-modules - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-modules/bonus-job/pom.xml b/bonus-modules/bonus-job/pom.xml index 1d537b3..9dd99de 100644 --- a/bonus-modules/bonus-job/pom.xml +++ b/bonus-modules/bonus-job/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-modules - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-modules/bonus-mongodb/pom.xml b/bonus-modules/bonus-mongodb/pom.xml index b54c93b..68edd0a 100644 --- a/bonus-modules/bonus-mongodb/pom.xml +++ b/bonus-modules/bonus-mongodb/pom.xml @@ -6,7 +6,7 @@ com.bonus bonus-modules - 24.7.1 + 24.8.0 bonus-modules-mongodb diff --git a/bonus-modules/bonus-obs/pom.xml b/bonus-modules/bonus-obs/pom.xml index ba929d1..c210c18 100644 --- a/bonus-modules/bonus-obs/pom.xml +++ b/bonus-modules/bonus-obs/pom.xml @@ -6,7 +6,7 @@ com.bonus bonus-modules - 24.7.1 + 24.8.0 bonus-modules-obs diff --git a/bonus-modules/bonus-oss/pom.xml b/bonus-modules/bonus-oss/pom.xml index 5a8c71f..83b92bc 100644 --- a/bonus-modules/bonus-oss/pom.xml +++ b/bonus-modules/bonus-oss/pom.xml @@ -6,7 +6,7 @@ com.bonus bonus-modules - 24.7.1 + 24.8.0 bonus-oss diff --git a/bonus-modules/bonus-system/pom.xml b/bonus-modules/bonus-system/pom.xml index aeed399..4737638 100644 --- a/bonus-modules/bonus-system/pom.xml +++ b/bonus-modules/bonus-system/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-modules - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-modules/pom.xml b/bonus-modules/pom.xml index 00d4b05..cc4d897 100644 --- a/bonus-modules/pom.xml +++ b/bonus-modules/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-visual/bonus-monitor/pom.xml b/bonus-visual/bonus-monitor/pom.xml index 9f42cbd..6496ff4 100644 --- a/bonus-visual/bonus-monitor/pom.xml +++ b/bonus-visual/bonus-monitor/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus-visual - 24.7.1 + 24.8.0 4.0.0 diff --git a/bonus-visual/pom.xml b/bonus-visual/pom.xml index 9adc06b..9079bbe 100644 --- a/bonus-visual/pom.xml +++ b/bonus-visual/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.7.1 + 24.8.0 4.0.0 diff --git a/pom.xml b/pom.xml index 99c8b19..42982dc 100644 --- a/pom.xml +++ b/pom.xml @@ -6,14 +6,14 @@ com.bonus bonus - 24.7.1 + 24.8.0 bonus http://www.ahbonus.cn 博诺思微服务系统 - 24.7.1 + 24.8.0 UTF-8 UTF-8 1.8