From 3f2ac515d5c81840279725c73768bded0adbbfd5 Mon Sep 17 00:00:00 2001 From: hjx <577364224@qq.com> Date: Wed, 10 Dec 2025 10:48:38 +0800 Subject: [PATCH 01/12] =?UTF-8?q?nacos=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mhd-auth/src/main/resources/bootstrap.yml | 8 ++++++-- mhd-gateway/src/main/resources/bootstrap.yml | 8 ++++++-- .../mhd-system/src/main/resources/bootstrap.yml | 8 ++++++-- mhd-user-center/src/main/resources/bootstrap.yml | 10 ++++++---- mhd_finance/src/main/resources/bootstrap.yml | 9 ++++++--- mhd_product/src/main/resources/bootstrap.yml | 8 ++++++-- mhd_thrid_party/src/main/resources/bootstrap.yml | 8 ++++++-- mhd_transport/src/main/resources/bootstrap.yml | 8 ++++++-- 8 files changed, 48 insertions(+), 19 deletions(-) diff --git a/mhd-auth/src/main/resources/bootstrap.yml b/mhd-auth/src/main/resources/bootstrap.yml index ddb64b1d3..0d77c84d4 100644 --- a/mhd-auth/src/main/resources/bootstrap.yml +++ b/mhd-auth/src/main/resources/bootstrap.yml @@ -14,11 +14,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd-gateway/src/main/resources/bootstrap.yml b/mhd-gateway/src/main/resources/bootstrap.yml index d1a88efe4..0693f24a5 100644 --- a/mhd-gateway/src/main/resources/bootstrap.yml +++ b/mhd-gateway/src/main/resources/bootstrap.yml @@ -16,12 +16,16 @@ spring: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 # server-addr: 10.102.192.5:6848 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 # server-addr: 10.102.192.5:6848 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml index 16293438f..df3406e6b 100644 --- a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml +++ b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml @@ -15,11 +15,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd-user-center/src/main/resources/bootstrap.yml b/mhd-user-center/src/main/resources/bootstrap.yml index f26ae0f15..a7f140f07 100644 --- a/mhd-user-center/src/main/resources/bootstrap.yml +++ b/mhd-user-center/src/main/resources/bootstrap.yml @@ -20,13 +20,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 -# server-addr: 116.204.23.92:8848 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 -# server-addr: 116.204.23.92:8848 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd_finance/src/main/resources/bootstrap.yml b/mhd_finance/src/main/resources/bootstrap.yml index 97e774c85..9e3cc74ba 100644 --- a/mhd_finance/src/main/resources/bootstrap.yml +++ b/mhd_finance/src/main/resources/bootstrap.yml @@ -20,13 +20,16 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 -# server-addr: 116.204.23.92:8848 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # server-addr: 116.204.23.92:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd_product/src/main/resources/bootstrap.yml b/mhd_product/src/main/resources/bootstrap.yml index 1a8021d1d..83d02b91d 100644 --- a/mhd_product/src/main/resources/bootstrap.yml +++ b/mhd_product/src/main/resources/bootstrap.yml @@ -20,11 +20,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd_thrid_party/src/main/resources/bootstrap.yml b/mhd_thrid_party/src/main/resources/bootstrap.yml index a922ae813..d39e02931 100644 --- a/mhd_thrid_party/src/main/resources/bootstrap.yml +++ b/mhd_thrid_party/src/main/resources/bootstrap.yml @@ -20,11 +20,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd_transport/src/main/resources/bootstrap.yml b/mhd_transport/src/main/resources/bootstrap.yml index 464240e6c..7ed80ec33 100644 --- a/mhd_transport/src/main/resources/bootstrap.yml +++ b/mhd_transport/src/main/resources/bootstrap.yml @@ -21,12 +21,16 @@ spring: # server-addr: 127.0.0.1:8848 # 线上测试环境配置使用ip+端口号 # server-addr: 10.33.0.129:6010r - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置使用ip+端口号 # server-addr: 10.33.0.129:6010 - server-addr: 10.33.0.129:6010 +# server-addr: 10.33.0.129:6010 + #线上正式环境 + server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 From 4be7e27ee0785cc441e7bb799b05a740b580c5fc Mon Sep 17 00:00:00 2001 From: hjx <577364224@qq.com> Date: Wed, 10 Dec 2025 14:21:53 +0800 Subject: [PATCH 02/12] =?UTF-8?q?minio=E5=AF=B9=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/minio/MinioBootUtil.java | 240 ++++++++++++++++++ 1 file changed, 240 insertions(+) create mode 100644 mhd-common/mhd-common-core/src/main/java/minio/MinioBootUtil.java diff --git a/mhd-common/mhd-common-core/src/main/java/minio/MinioBootUtil.java b/mhd-common/mhd-common-core/src/main/java/minio/MinioBootUtil.java new file mode 100644 index 000000000..f0ab2e931 --- /dev/null +++ b/mhd-common/mhd-common-core/src/main/java/minio/MinioBootUtil.java @@ -0,0 +1,240 @@ +package minio; + +import com.aliyun.oss.ServiceException; +import io.minio.MinioClient; +import io.minio.errors.InvalidEndpointException; +import io.minio.errors.InvalidPortException; +import lombok.extern.slf4j.Slf4j; +import net.coobird.thumbnailator.Thumbnails; +import org.jeecg.modules.oss.dto.WaterMarkDTO; +import org.jeecg.modules.system.entity.SysDepartInterfaceInfo; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.util.UriUtils; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; +import java.util.List; + +/** + * @Description: minio oss 上传工具类 + */ +@Slf4j +public class MinioBootUtil { + + private static String bucket; + private static String host; + private static String accessKey; + private static String secretKey; + /** + * minio 工具客户端 + */ + private static MinioClient minioClient = null; + + private static String FILE_URL; + + /** + * @Description 强制初始化minio + * @Author Alex + * @Date 2023/10/25 11:12 + */ + public static MinioClient forceInitMinio(List sysDepartInterfaceInfoList) throws InvalidPortException, InvalidEndpointException { + for (SysDepartInterfaceInfo sysDepartInterfaceInfo : sysDepartInterfaceInfoList) { + String interfaceTypeKey = sysDepartInterfaceInfo.getInterfaceTypeKey();//接口参数 + String interfaceTypeValue = sysDepartInterfaceInfo.getInterfaceTypeValue();//接口参数值 + switch (interfaceTypeKey) { + case "bucket": + bucket = interfaceTypeValue; + break; + case "host": + host = interfaceTypeValue; + break; + case "accessKey": + accessKey = interfaceTypeValue; + break; + case "secretKey": + secretKey = interfaceTypeValue; + break; + default: + break; + } + } + minioClient = new MinioClient(host, accessKey, secretKey); + return minioClient; + } + private static MinioClient initMinio() throws InvalidPortException, InvalidEndpointException { + if (minioClient == null) { + minioClient = new MinioClient(host, accessKey, secretKey); + } + return minioClient; + } + /** + * 上传文件 + * 文件上传成功,返回文件完整访问路径 + * 文件上传失败,返回 null + * + * @param multipartFile 待上传文件 + * @param fileDir 文件保存目录 + * @return oss 中的相对文件路径 + */ + public static String upload(MultipartFile multipartFile, String fileDir, List sysDepartInterfaceInfoList) { + for (SysDepartInterfaceInfo sysDepartInterfaceInfo : sysDepartInterfaceInfoList) { + String interfaceTypeKey = sysDepartInterfaceInfo.getInterfaceTypeKey();//接口参数 + String interfaceTypeValue = sysDepartInterfaceInfo.getInterfaceTypeValue();//接口参数值 + switch (interfaceTypeKey) { + case "bucket": + bucket = interfaceTypeValue; + break; + case "host": + host = interfaceTypeValue; + break; + case "accessKey": + accessKey = interfaceTypeValue; + break; + case "secretKey": + secretKey = interfaceTypeValue; + break; + default: + break; + } + } + + try (InputStream inputStream = multipartFile.getInputStream()) { + //初始化minio + initMinio(); + // bucket 不存在,创建 + if (!minioClient.bucketExists(bucket)) { + minioClient.makeBucket(bucket); + } + // 上传文件的名称 + String fileName = multipartFile.getOriginalFilename(); + long timestamp = Calendar.getInstance().getTimeInMillis(); + // PutObjectOptions,上传配置(文件大小,内存中文件分片大小) +// PutObjectOptions putObjectOptions = new PutObjectOptions(multipartFile.getSize(), PutObjectOptions.MIN_MULTIPART_SIZE); +// // 文件的ContentType +// putObjectOptions.setContentType(multipartFile.getContentType()); + + SimpleDateFormat sdYear = new SimpleDateFormat("yyyy"); + SimpleDateFormat sdMonth = new SimpleDateFormat("MM"); + SimpleDateFormat sdDay = new SimpleDateFormat("dd"); + String year = sdYear.format(new Date()); + String month = sdMonth.format(new Date()); + String day = sdDay.format(new Date()); + String filrDir = "wlhy/" + year + "/" + month + "/" + day + "/"; + +// minioClient.putObject(bucket, filrDir+timestamp+fileName, inputStream, putObjectOptions); + minioClient.putObject(bucket, filrDir+timestamp+fileName, inputStream, multipartFile.getContentType()); + // 返回访问路径 + String fileurl = host+ "/"+bucket + "/"+filrDir+timestamp+ UriUtils.encode(fileName, StandardCharsets.UTF_8); + System.out.println("fileurl===="+fileurl); + FILE_URL = fileurl; + return fileurl; + } catch (ServiceException e){ + log.error(e.getErrorMessage()); + } catch (Exception e){ + log.error(e.getMessage()); + } + return FILE_URL; + } + + /** + * 上传文件 带时间水印 + * 文件上传成功,返回文件完整访问路径 + * 文件上传失败,返回 null + * + * @param multipartFile 待上传文件 + * @param fileDir 文件保存目录 + * @return oss 中的相对文件路径 + */ + public static String uploadWaterMark(MultipartFile multipartFile, WaterMarkDTO waterMarkDTO, String fileDir, List sysDepartInterfaceInfoList) { + for (SysDepartInterfaceInfo sysDepartInterfaceInfo : sysDepartInterfaceInfoList) { + String interfaceTypeKey = sysDepartInterfaceInfo.getInterfaceTypeKey();//接口参数 + String interfaceTypeValue = sysDepartInterfaceInfo.getInterfaceTypeValue();//接口参数值 + switch (interfaceTypeKey) { + case "bucket": + bucket = interfaceTypeValue; + break; + case "host": + host = interfaceTypeValue; + break; + case "accessKey": + accessKey = interfaceTypeValue; + break; + case "secretKey": + secretKey = interfaceTypeValue; + break; + default: + break; + } + } + + // 压缩代码 + InputStream inputStream = null; + try { + //初始化minio + initMinio(); + // bucket 不存在,创建 + if (!minioClient.bucketExists(bucket)) { + minioClient.makeBucket(bucket); + } + String OriginalFilename = multipartFile.getOriginalFilename(); + inputStream = multipartFile.getInputStream(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + //水印内容 + String waterMarkContent = sdf.format(new Date()); + //以下两种方法加水印 + //方法1 + if (OriginalFilename.indexOf(".pdf") < 0) { + ByteArrayOutputStream byteArrayOutputStreamut = new ByteArrayOutputStream(); + Thumbnails.of(inputStream).width(1024).keepAspectRatio(true).outputQuality(0.9).toOutputStream(byteArrayOutputStreamut); + inputStream = new ByteArrayInputStream(byteArrayOutputStreamut.toByteArray()); + //添加水印 + inputStream = OssBootUtil.buildWatermarkOfText(inputStream, waterMarkDTO, OssBootUtil.WaterMarkLocation.SOUTH_WEST, null, 0.5f); + } + //方法2 + /*if (ImageUtil.isImage(multipartFile.getOriginalFilename())) { + inputStream = ImageUtil.getInputStream( + ImageUtil.setWatermark( + ImageUtil.compress( + ImageIO.read(inputStream)),waterMarkContent), + ImageUtil.getFileExtention(multipartFile.getOriginalFilename())); + }*/ + StringBuilder fileUrl = new StringBuilder(); + String suffix = multipartFile.getOriginalFilename().substring(multipartFile.getOriginalFilename().lastIndexOf('.')); + // 上传文件的名称 + String fileName = multipartFile.getOriginalFilename(); + long timestamp = Calendar.getInstance().getTimeInMillis(); + // PutObjectOptions,上传配置(文件大小,内存中文件分片大小) +// PutObjectOptions putObjectOptions = new PutObjectOptions(multipartFile.getSize(), PutObjectOptions.MIN_MULTIPART_SIZE); +// // 文件的ContentType +// putObjectOptions.setContentType(multipartFile.getContentType()); + + SimpleDateFormat sdYear = new SimpleDateFormat("yyyy"); + SimpleDateFormat sdMonth = new SimpleDateFormat("MM"); + SimpleDateFormat sdDay = new SimpleDateFormat("dd"); + String year = sdYear.format(new Date()); + String month = sdMonth.format(new Date()); + String day = sdDay.format(new Date()); + String filrDir = "wlhy/" + year + "/" + month + "/" + day + "/"; + +// minioClient.putObject(bucket, filrDir+timestamp+fileName, inputStream, putObjectOptions); + minioClient.putObject(bucket, filrDir+timestamp+fileName, inputStream, multipartFile.getContentType()); + // 返回访问路径 + String fileurl = host+ "/"+bucket + "/"+filrDir+timestamp+ UriUtils.encode(fileName, StandardCharsets.UTF_8); + System.out.println("fileurl===="+fileurl); + FILE_URL = fileurl; + return fileurl; + } catch (IOException e) { + log.error(e.getMessage()); + } catch (Exception e) { + log.error(e.getMessage()); + } + return FILE_URL; + } + +} From c6709936f9b6d95df77fd7c346df979fd95ce73f Mon Sep 17 00:00:00 2001 From: hjx <577364224@qq.com> Date: Wed, 10 Dec 2025 14:24:02 +0800 Subject: [PATCH 03/12] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mhd-user-center/src/main/resources/bootstrap.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mhd-user-center/src/main/resources/bootstrap.yml b/mhd-user-center/src/main/resources/bootstrap.yml index a7f140f07..fbb15bbd9 100644 --- a/mhd-user-center/src/main/resources/bootstrap.yml +++ b/mhd-user-center/src/main/resources/bootstrap.yml @@ -20,15 +20,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 From ddd8f7c4d71d9e4cb55769fc7d58fc47f7ece0af Mon Sep 17 00:00:00 2001 From: hjx <577364224@qq.com> Date: Wed, 10 Dec 2025 15:01:31 +0800 Subject: [PATCH 04/12] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mhd-auth/src/main/resources/bootstrap.yml | 8 ++++---- mhd-gateway/src/main/resources/bootstrap.yml | 8 ++++---- mhd-modules/mhd-system/src/main/resources/bootstrap.yml | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/mhd-auth/src/main/resources/bootstrap.yml b/mhd-auth/src/main/resources/bootstrap.yml index 0d77c84d4..0e2deba8b 100644 --- a/mhd-auth/src/main/resources/bootstrap.yml +++ b/mhd-auth/src/main/resources/bootstrap.yml @@ -14,15 +14,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd-gateway/src/main/resources/bootstrap.yml b/mhd-gateway/src/main/resources/bootstrap.yml index 0693f24a5..6fbcae731 100644 --- a/mhd-gateway/src/main/resources/bootstrap.yml +++ b/mhd-gateway/src/main/resources/bootstrap.yml @@ -16,16 +16,16 @@ spring: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 # server-addr: 10.102.192.5:6848 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 # server-addr: 10.102.192.5:6848 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml index df3406e6b..474f6196f 100644 --- a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml +++ b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml @@ -15,15 +15,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 From d58b948c3a4dd030cc612c4a523af028888e97c9 Mon Sep 17 00:00:00 2001 From: hjx <577364224@qq.com> Date: Wed, 10 Dec 2025 15:05:19 +0800 Subject: [PATCH 05/12] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mhd-auth/src/main/resources/bootstrap.yml | 8 ++++---- mhd-gateway/src/main/resources/bootstrap.yml | 8 ++++---- mhd-modules/mhd-system/src/main/resources/bootstrap.yml | 8 ++++---- mhd_finance/src/main/resources/bootstrap.yml | 8 ++++---- mhd_product/src/main/resources/bootstrap.yml | 8 ++++---- mhd_thrid_party/src/main/resources/bootstrap.yml | 8 ++++---- mhd_transport/src/main/resources/bootstrap.yml | 8 ++++---- 7 files changed, 28 insertions(+), 28 deletions(-) diff --git a/mhd-auth/src/main/resources/bootstrap.yml b/mhd-auth/src/main/resources/bootstrap.yml index 0d77c84d4..0e2deba8b 100644 --- a/mhd-auth/src/main/resources/bootstrap.yml +++ b/mhd-auth/src/main/resources/bootstrap.yml @@ -14,15 +14,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd-gateway/src/main/resources/bootstrap.yml b/mhd-gateway/src/main/resources/bootstrap.yml index 0693f24a5..6fbcae731 100644 --- a/mhd-gateway/src/main/resources/bootstrap.yml +++ b/mhd-gateway/src/main/resources/bootstrap.yml @@ -16,16 +16,16 @@ spring: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 # server-addr: 10.102.192.5:6848 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 # server-addr: 10.102.192.5:6848 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml index df3406e6b..474f6196f 100644 --- a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml +++ b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml @@ -15,15 +15,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd_finance/src/main/resources/bootstrap.yml b/mhd_finance/src/main/resources/bootstrap.yml index 9e3cc74ba..3845ee8d6 100644 --- a/mhd_finance/src/main/resources/bootstrap.yml +++ b/mhd_finance/src/main/resources/bootstrap.yml @@ -20,16 +20,16 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # server-addr: 116.204.23.92:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd_product/src/main/resources/bootstrap.yml b/mhd_product/src/main/resources/bootstrap.yml index 83d02b91d..10e613084 100644 --- a/mhd_product/src/main/resources/bootstrap.yml +++ b/mhd_product/src/main/resources/bootstrap.yml @@ -20,15 +20,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd_thrid_party/src/main/resources/bootstrap.yml b/mhd_thrid_party/src/main/resources/bootstrap.yml index d39e02931..a0f470634 100644 --- a/mhd_thrid_party/src/main/resources/bootstrap.yml +++ b/mhd_thrid_party/src/main/resources/bootstrap.yml @@ -20,15 +20,15 @@ spring: discovery: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 diff --git a/mhd_transport/src/main/resources/bootstrap.yml b/mhd_transport/src/main/resources/bootstrap.yml index 7ed80ec33..5dfc4e3aa 100644 --- a/mhd_transport/src/main/resources/bootstrap.yml +++ b/mhd_transport/src/main/resources/bootstrap.yml @@ -21,16 +21,16 @@ spring: # server-addr: 127.0.0.1:8848 # 线上测试环境配置使用ip+端口号 # server-addr: 10.33.0.129:6010r -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置使用ip+端口号 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 # server-addr: 10.33.0.129:6010 #线上正式环境 - server-addr: 10.102.192.105:6848 +# server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 From 71fbf2ad1b630f1dd4bbd1f0049d2aca87aad424 Mon Sep 17 00:00:00 2001 From: hjx <577364224@qq.com> Date: Wed, 10 Dec 2025 22:31:22 +0800 Subject: [PATCH 06/12] =?UTF-8?q?minio=E5=AF=B9=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mhd-common/mhd-common-core/pom.xml | 6 + .../main/java/minio/MinIoUploadService.java | 116 ++++++++++++++++++ .../service/menu/MenuApplicationService.java | 11 ++ mhd_transport/pom.xml | 12 ++ 4 files changed, 145 insertions(+) create mode 100644 mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java diff --git a/mhd-common/mhd-common-core/pom.xml b/mhd-common/mhd-common-core/pom.xml index 20fd35e39..c023cacc6 100644 --- a/mhd-common/mhd-common-core/pom.xml +++ b/mhd-common/mhd-common-core/pom.xml @@ -180,6 +180,12 @@ 3.3.2 compile + + io.minio + minio + 8.5.2 + compile + diff --git a/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java b/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java new file mode 100644 index 000000000..b1960dceb --- /dev/null +++ b/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java @@ -0,0 +1,116 @@ +package minio; + +import com.aliyun.oss.ServiceException; +import io.minio.MinioClient; +import io.minio.PutObjectArgs; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.util.UriUtils; + +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; +import java.util.List; + +public class MinIoUploadService { + @Autowired + private MinioClient minioClient; + private static String bucket="ngwl"; + private static String host="http://10.102.192.5:6001/"; + private static String accessKey="minioadmin"; + private static String secretKey="gmminioadmin"; + /** + * minio 工具客户端 + */ + private static MinioClient minioClient1 = null; + + private static String FILE_URL; + + /** + * 上传到minio + * @param fileName + * @throws Exception + */ + + public boolean uploadFileToMinIo(MultipartFile multipartFile, String fileName) { + try { + initMinio(); + InputStream inputStream = multipartFile.getInputStream(); + PutObjectArgs putObjectArgs = PutObjectArgs.builder() + .object(fileName)//文件名 + .bucket(bucket)//桶名词 与minio创建的名词一致 + // fileInputStream.available() 表示一直有内容就会上传 -1 表示将所有的相关文件的内容都上传 + .stream(inputStream, inputStream.available(), -1) //文件流 + .build(); + minioClient.putObject(putObjectArgs); + return true; + }catch (Exception e){ + //log.error(e.getMessage(),e); + } + return false; + } + private MinioClient initMinio() { + try{ + MinioClient minioClient = MinioClient.builder() + .endpoint(host) + .credentials(accessKey, secretKey) + .build(); + return minioClient; + }catch (Exception e) { + e.printStackTrace(); + } + return minioClient; + } + + /** + * 上传文件 + * 文件上传成功,返回文件完整访问路径 + * 文件上传失败,返回 null + * + * @param multipartFile 待上传文件 + * @param fileDir 文件保存目录 + * @return oss 中的相对文件路径 + */ + /* public static String upload(MultipartFile multipartFile, String fileDir) { + + + try (InputStream inputStream = multipartFile.getInputStream()) { + //初始化minio + initMinio(); + // bucket 不存在,创建 + if (!minioClient1.bucketExists(bucket)) { + minioClient1.makeBucket(bucket); + } + // 上传文件的名称 + String fileName = multipartFile.getOriginalFilename(); + long timestamp = Calendar.getInstance().getTimeInMillis(); + // PutObjectOptions,上传配置(文件大小,内存中文件分片大小) +// PutObjectOptions putObjectOptions = new PutObjectOptions(multipartFile.getSize(), PutObjectOptions.MIN_MULTIPART_SIZE); +// // 文件的ContentType +// putObjectOptions.setContentType(multipartFile.getContentType()); + + SimpleDateFormat sdYear = new SimpleDateFormat("yyyy"); + SimpleDateFormat sdMonth = new SimpleDateFormat("MM"); + SimpleDateFormat sdDay = new SimpleDateFormat("dd"); + String year = sdYear.format(new Date()); + String month = sdMonth.format(new Date()); + String day = sdDay.format(new Date()); + String filrDir = "wlhy/" + year + "/" + month + "/" + day + "/"; + +// minioClient.putObject(bucket, filrDir+timestamp+fileName, inputStream, putObjectOptions); + minioClient1.putObject(bucket, filrDir+timestamp+fileName, inputStream, multipartFile.getContentType()); + // 返回访问路径 + String fileurl = host+ "/"+bucket + "/"+filrDir+timestamp+ UriUtils.encode(fileName, StandardCharsets.UTF_8); + System.out.println("fileurl===="+fileurl); + FILE_URL = fileurl; + return fileurl; + } catch (ServiceException e){ + log.error(e.getErrorMessage()); + } catch (Exception e){ + log.error(e.getMessage()); + } + return FILE_URL; + }*/ +} diff --git a/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java b/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java index 288b097e1..57d6d5b50 100644 --- a/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java +++ b/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java @@ -272,6 +272,17 @@ public class MenuApplicationService { return ossService.uploadOss(file); } + /** + * 上传文件到oss + * + * @param file 文件 + * @return 文件路径 + */ + public String uploadMinio(File file) + { + return ossService.uploadOss(file); + } + /** * 根据组织id查询菜单集合 * diff --git a/mhd_transport/pom.xml b/mhd_transport/pom.xml index 328497119..33822d0e4 100644 --- a/mhd_transport/pom.xml +++ b/mhd_transport/pom.xml @@ -101,6 +101,18 @@ org.springframework.cloud spring-cloud-starter-sleuth + + io.minio + minio + 8.4.3 + + + com.squareup.okhttp3 + okhttp + 4.8.1 + compile + + org.springframework.cloud From e6c9c206b2343be401c1c1135de906cd0fd8f5e2 Mon Sep 17 00:00:00 2001 From: hjx <577364224@qq.com> Date: Thu, 11 Dec 2025 12:36:17 +0800 Subject: [PATCH 07/12] =?UTF-8?q?minio=E5=AF=B9=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/minio/MinIoUploadService.java | 45 ++++++++++++++----- .../service/menu/MenuApplicationService.java | 11 +++-- .../interfaces/facade/menu/MenuApi.java | 3 +- 3 files changed, 44 insertions(+), 15 deletions(-) diff --git a/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java b/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java index b1960dceb..9517886e2 100644 --- a/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java +++ b/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java @@ -13,12 +13,13 @@ import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.List; +import java.util.UUID; public class MinIoUploadService { @Autowired private MinioClient minioClient; private static String bucket="ngwl"; - private static String host="http://10.102.192.5:6001/"; + private static String host="http://10.102.192.5:6000"; private static String accessKey="minioadmin"; private static String secretKey="gmminioadmin"; /** @@ -34,22 +35,43 @@ public class MinIoUploadService { * @throws Exception */ - public boolean uploadFileToMinIo(MultipartFile multipartFile, String fileName) { + public String uploadFileToMinIo(MultipartFile multipartFile) { try { initMinio(); InputStream inputStream = multipartFile.getInputStream(); - PutObjectArgs putObjectArgs = PutObjectArgs.builder() - .object(fileName)//文件名 - .bucket(bucket)//桶名词 与minio创建的名词一致 - // fileInputStream.available() 表示一直有内容就会上传 -1 表示将所有的相关文件的内容都上传 - .stream(inputStream, inputStream.available(), -1) //文件流 - .build(); - minioClient.putObject(putObjectArgs); - return true; + + // 上传文件的名称 + String filename = multipartFile.getOriginalFilename(); + + // PutObjectOptions,上传配置(文件大小,内存中文件分片大小) +// PutObjectOptions putObjectOptions = new PutObjectOptions(multipartFile.getSize(), PutObjectOptions.MIN_MULTIPART_SIZE); +// // 文件的ContentType +// putObjectOptions.setContentType(multipartFile.getContentType()); + + String prefix = filename.substring(filename.lastIndexOf(".") + 1);//后缀 + //根据当前时间生成文件夹 + Calendar calendar = Calendar.getInstance(); + Date time = calendar.getTime(); + // 2. 格式化系统时间--- 这里的时间格式可以根据自己的需要进行改变 + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + String buckfilename = format.format(time); + + String uuid= UUID.randomUUID().toString().replace("-","");//customer_YYYYMMDDHHMM + String fileName = buckfilename+"/"+uuid+"."+prefix; //文件全路径 + + PutObjectArgs objectArgs = PutObjectArgs.builder() + .object(fileName).bucket(bucket) + .stream(inputStream,inputStream.available(),-1).build(); + //文件名称相同会覆盖 + minioClient.putObject(objectArgs); + String url =host+ "/"+bucket + "/"+fileName; + +// + return url; }catch (Exception e){ //log.error(e.getMessage(),e); } - return false; + return ""; } private MinioClient initMinio() { try{ @@ -64,6 +86,7 @@ public class MinIoUploadService { return minioClient; } + /** * 上传文件 * 文件上传成功,返回文件完整访问路径 diff --git a/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java b/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java index 57d6d5b50..4ccea8aeb 100644 --- a/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java +++ b/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java @@ -43,9 +43,11 @@ import com.mhd.common.core.annotation.fieldsetvalue.NeedSetValueField; import com.mhd.common.security.utils.SecurityUtils; import com.mhd.system.api.model.LoginUser; import lombok.extern.slf4j.Slf4j; +import minio.MinIoUploadService; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import java.io.File; @@ -95,7 +97,8 @@ public class MenuApplicationService { private SpecialServiceFeign logisticsServiceFeign; @Resource private MenuUtils menuUtils; - + @Autowired + private MinIoUploadService minIoUploadService; /** * 查询菜单集合 @@ -272,17 +275,19 @@ public class MenuApplicationService { return ossService.uploadOss(file); } + /** * 上传文件到oss * * @param file 文件 * @return 文件路径 */ - public String uploadMinio(File file) + public String uploadMinio(MultipartFile file) { - return ossService.uploadOss(file); + return minIoUploadService.uploadFileToMinIo(file); } + /** * 根据组织id查询菜单集合 * diff --git a/mhd_product/src/main/java/com/linke/product/interfaces/facade/menu/MenuApi.java b/mhd_product/src/main/java/com/linke/product/interfaces/facade/menu/MenuApi.java index 0164ed791..26b266a6d 100644 --- a/mhd_product/src/main/java/com/linke/product/interfaces/facade/menu/MenuApi.java +++ b/mhd_product/src/main/java/com/linke/product/interfaces/facade/menu/MenuApi.java @@ -162,7 +162,8 @@ public class MenuApi extends BaseController { } } - return AjaxResult.success(menuApplicationService.uploadOss(fileUpload)); + //return AjaxResult.success(menuApplicationService.uploadOss(fileUpload)); + return AjaxResult.success(menuApplicationService.uploadMinio(file)); } @PostMapping("/uploadFeign") From f485b040e1ef6a1e182d1a50e48ffd839eade8ed Mon Sep 17 00:00:00 2001 From: hjx <577364224@qq.com> Date: Thu, 11 Dec 2025 14:28:35 +0800 Subject: [PATCH 08/12] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mhd-modules/mhd-system/src/main/resources/bootstrap.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml index 474f6196f..b01b7d280 100644 --- a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml +++ b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml @@ -21,6 +21,8 @@ spring: config: # server-addr: 127.0.0.1:8848 # 线上测试环境配置 容器名+端口号 + + server-addr: 10.33.0.129:6010 #线上正式环境 # server-addr: 10.102.192.105:6848 From 61e52aa744c403d5ff46a19692ce509509721cf5 Mon Sep 17 00:00:00 2001 From: hjx <577364224@qq.com> Date: Thu, 11 Dec 2025 14:42:10 +0800 Subject: [PATCH 09/12] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/minio/MinioBootUtil.java | 240 ------------------ 1 file changed, 240 deletions(-) delete mode 100644 mhd-common/mhd-common-core/src/main/java/minio/MinioBootUtil.java diff --git a/mhd-common/mhd-common-core/src/main/java/minio/MinioBootUtil.java b/mhd-common/mhd-common-core/src/main/java/minio/MinioBootUtil.java deleted file mode 100644 index f0ab2e931..000000000 --- a/mhd-common/mhd-common-core/src/main/java/minio/MinioBootUtil.java +++ /dev/null @@ -1,240 +0,0 @@ -package minio; - -import com.aliyun.oss.ServiceException; -import io.minio.MinioClient; -import io.minio.errors.InvalidEndpointException; -import io.minio.errors.InvalidPortException; -import lombok.extern.slf4j.Slf4j; -import net.coobird.thumbnailator.Thumbnails; -import org.jeecg.modules.oss.dto.WaterMarkDTO; -import org.jeecg.modules.system.entity.SysDepartInterfaceInfo; -import org.springframework.web.multipart.MultipartFile; -import org.springframework.web.util.UriUtils; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.nio.charset.StandardCharsets; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.List; - -/** - * @Description: minio oss 上传工具类 - */ -@Slf4j -public class MinioBootUtil { - - private static String bucket; - private static String host; - private static String accessKey; - private static String secretKey; - /** - * minio 工具客户端 - */ - private static MinioClient minioClient = null; - - private static String FILE_URL; - - /** - * @Description 强制初始化minio - * @Author Alex - * @Date 2023/10/25 11:12 - */ - public static MinioClient forceInitMinio(List sysDepartInterfaceInfoList) throws InvalidPortException, InvalidEndpointException { - for (SysDepartInterfaceInfo sysDepartInterfaceInfo : sysDepartInterfaceInfoList) { - String interfaceTypeKey = sysDepartInterfaceInfo.getInterfaceTypeKey();//接口参数 - String interfaceTypeValue = sysDepartInterfaceInfo.getInterfaceTypeValue();//接口参数值 - switch (interfaceTypeKey) { - case "bucket": - bucket = interfaceTypeValue; - break; - case "host": - host = interfaceTypeValue; - break; - case "accessKey": - accessKey = interfaceTypeValue; - break; - case "secretKey": - secretKey = interfaceTypeValue; - break; - default: - break; - } - } - minioClient = new MinioClient(host, accessKey, secretKey); - return minioClient; - } - private static MinioClient initMinio() throws InvalidPortException, InvalidEndpointException { - if (minioClient == null) { - minioClient = new MinioClient(host, accessKey, secretKey); - } - return minioClient; - } - /** - * 上传文件 - * 文件上传成功,返回文件完整访问路径 - * 文件上传失败,返回 null - * - * @param multipartFile 待上传文件 - * @param fileDir 文件保存目录 - * @return oss 中的相对文件路径 - */ - public static String upload(MultipartFile multipartFile, String fileDir, List sysDepartInterfaceInfoList) { - for (SysDepartInterfaceInfo sysDepartInterfaceInfo : sysDepartInterfaceInfoList) { - String interfaceTypeKey = sysDepartInterfaceInfo.getInterfaceTypeKey();//接口参数 - String interfaceTypeValue = sysDepartInterfaceInfo.getInterfaceTypeValue();//接口参数值 - switch (interfaceTypeKey) { - case "bucket": - bucket = interfaceTypeValue; - break; - case "host": - host = interfaceTypeValue; - break; - case "accessKey": - accessKey = interfaceTypeValue; - break; - case "secretKey": - secretKey = interfaceTypeValue; - break; - default: - break; - } - } - - try (InputStream inputStream = multipartFile.getInputStream()) { - //初始化minio - initMinio(); - // bucket 不存在,创建 - if (!minioClient.bucketExists(bucket)) { - minioClient.makeBucket(bucket); - } - // 上传文件的名称 - String fileName = multipartFile.getOriginalFilename(); - long timestamp = Calendar.getInstance().getTimeInMillis(); - // PutObjectOptions,上传配置(文件大小,内存中文件分片大小) -// PutObjectOptions putObjectOptions = new PutObjectOptions(multipartFile.getSize(), PutObjectOptions.MIN_MULTIPART_SIZE); -// // 文件的ContentType -// putObjectOptions.setContentType(multipartFile.getContentType()); - - SimpleDateFormat sdYear = new SimpleDateFormat("yyyy"); - SimpleDateFormat sdMonth = new SimpleDateFormat("MM"); - SimpleDateFormat sdDay = new SimpleDateFormat("dd"); - String year = sdYear.format(new Date()); - String month = sdMonth.format(new Date()); - String day = sdDay.format(new Date()); - String filrDir = "wlhy/" + year + "/" + month + "/" + day + "/"; - -// minioClient.putObject(bucket, filrDir+timestamp+fileName, inputStream, putObjectOptions); - minioClient.putObject(bucket, filrDir+timestamp+fileName, inputStream, multipartFile.getContentType()); - // 返回访问路径 - String fileurl = host+ "/"+bucket + "/"+filrDir+timestamp+ UriUtils.encode(fileName, StandardCharsets.UTF_8); - System.out.println("fileurl===="+fileurl); - FILE_URL = fileurl; - return fileurl; - } catch (ServiceException e){ - log.error(e.getErrorMessage()); - } catch (Exception e){ - log.error(e.getMessage()); - } - return FILE_URL; - } - - /** - * 上传文件 带时间水印 - * 文件上传成功,返回文件完整访问路径 - * 文件上传失败,返回 null - * - * @param multipartFile 待上传文件 - * @param fileDir 文件保存目录 - * @return oss 中的相对文件路径 - */ - public static String uploadWaterMark(MultipartFile multipartFile, WaterMarkDTO waterMarkDTO, String fileDir, List sysDepartInterfaceInfoList) { - for (SysDepartInterfaceInfo sysDepartInterfaceInfo : sysDepartInterfaceInfoList) { - String interfaceTypeKey = sysDepartInterfaceInfo.getInterfaceTypeKey();//接口参数 - String interfaceTypeValue = sysDepartInterfaceInfo.getInterfaceTypeValue();//接口参数值 - switch (interfaceTypeKey) { - case "bucket": - bucket = interfaceTypeValue; - break; - case "host": - host = interfaceTypeValue; - break; - case "accessKey": - accessKey = interfaceTypeValue; - break; - case "secretKey": - secretKey = interfaceTypeValue; - break; - default: - break; - } - } - - // 压缩代码 - InputStream inputStream = null; - try { - //初始化minio - initMinio(); - // bucket 不存在,创建 - if (!minioClient.bucketExists(bucket)) { - minioClient.makeBucket(bucket); - } - String OriginalFilename = multipartFile.getOriginalFilename(); - inputStream = multipartFile.getInputStream(); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - //水印内容 - String waterMarkContent = sdf.format(new Date()); - //以下两种方法加水印 - //方法1 - if (OriginalFilename.indexOf(".pdf") < 0) { - ByteArrayOutputStream byteArrayOutputStreamut = new ByteArrayOutputStream(); - Thumbnails.of(inputStream).width(1024).keepAspectRatio(true).outputQuality(0.9).toOutputStream(byteArrayOutputStreamut); - inputStream = new ByteArrayInputStream(byteArrayOutputStreamut.toByteArray()); - //添加水印 - inputStream = OssBootUtil.buildWatermarkOfText(inputStream, waterMarkDTO, OssBootUtil.WaterMarkLocation.SOUTH_WEST, null, 0.5f); - } - //方法2 - /*if (ImageUtil.isImage(multipartFile.getOriginalFilename())) { - inputStream = ImageUtil.getInputStream( - ImageUtil.setWatermark( - ImageUtil.compress( - ImageIO.read(inputStream)),waterMarkContent), - ImageUtil.getFileExtention(multipartFile.getOriginalFilename())); - }*/ - StringBuilder fileUrl = new StringBuilder(); - String suffix = multipartFile.getOriginalFilename().substring(multipartFile.getOriginalFilename().lastIndexOf('.')); - // 上传文件的名称 - String fileName = multipartFile.getOriginalFilename(); - long timestamp = Calendar.getInstance().getTimeInMillis(); - // PutObjectOptions,上传配置(文件大小,内存中文件分片大小) -// PutObjectOptions putObjectOptions = new PutObjectOptions(multipartFile.getSize(), PutObjectOptions.MIN_MULTIPART_SIZE); -// // 文件的ContentType -// putObjectOptions.setContentType(multipartFile.getContentType()); - - SimpleDateFormat sdYear = new SimpleDateFormat("yyyy"); - SimpleDateFormat sdMonth = new SimpleDateFormat("MM"); - SimpleDateFormat sdDay = new SimpleDateFormat("dd"); - String year = sdYear.format(new Date()); - String month = sdMonth.format(new Date()); - String day = sdDay.format(new Date()); - String filrDir = "wlhy/" + year + "/" + month + "/" + day + "/"; - -// minioClient.putObject(bucket, filrDir+timestamp+fileName, inputStream, putObjectOptions); - minioClient.putObject(bucket, filrDir+timestamp+fileName, inputStream, multipartFile.getContentType()); - // 返回访问路径 - String fileurl = host+ "/"+bucket + "/"+filrDir+timestamp+ UriUtils.encode(fileName, StandardCharsets.UTF_8); - System.out.println("fileurl===="+fileurl); - FILE_URL = fileurl; - return fileurl; - } catch (IOException e) { - log.error(e.getMessage()); - } catch (Exception e) { - log.error(e.getMessage()); - } - return FILE_URL; - } - -} From a18fd9d59b94bc5c8b0303b262718edfe9fecc2d Mon Sep 17 00:00:00 2001 From: hjx <577364224@qq.com> Date: Sat, 13 Dec 2025 15:04:36 +0800 Subject: [PATCH 10/12] =?UTF-8?q?=E6=BC=8F=E6=B4=9E=E6=89=AB=E6=8F=8F?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/minio/MinIoUploadService.java | 10 ++++------ .../monitor/config/WebSecurityConfigurer.java | 15 ++++++++++++++- .../ApprovalDocumentApplicationService.java | 10 +++++++++- .../approvalDocument/ApprovalDocumentApi.java | 15 +++++++++++++-- mhd_product/pom.xml | 11 +++++++++++ .../service/menu/MenuApplicationService.java | 4 +++- mhd_transport/pom.xml | 11 ----------- 7 files changed, 54 insertions(+), 22 deletions(-) diff --git a/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java b/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java index 9517886e2..02b44f326 100644 --- a/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java +++ b/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java @@ -4,6 +4,7 @@ import com.aliyun.oss.ServiceException; import io.minio.MinioClient; import io.minio.PutObjectArgs; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.util.UriUtils; @@ -15,19 +16,16 @@ import java.util.Date; import java.util.List; import java.util.UUID; +@Service public class MinIoUploadService { - @Autowired + private MinioClient minioClient; + private static String bucket="ngwl"; private static String host="http://10.102.192.5:6000"; private static String accessKey="minioadmin"; private static String secretKey="gmminioadmin"; - /** - * minio 工具客户端 - */ - private static MinioClient minioClient1 = null; - private static String FILE_URL; /** * 上传到minio diff --git a/mhd-visual/mhd-monitor/src/main/java/com/mhd/modules/monitor/config/WebSecurityConfigurer.java b/mhd-visual/mhd-monitor/src/main/java/com/mhd/modules/monitor/config/WebSecurityConfigurer.java index 6c1a72247..27fbabc66 100644 --- a/mhd-visual/mhd-monitor/src/main/java/com/mhd/modules/monitor/config/WebSecurityConfigurer.java +++ b/mhd-visual/mhd-monitor/src/main/java/com/mhd/modules/monitor/config/WebSecurityConfigurer.java @@ -1,6 +1,7 @@ package com.mhd.modules.monitor.config; import de.codecentric.boot.admin.server.config.AdminServerProperties; +import org.springframework.boot.actuate.autoconfigure.security.servlet.EndpointRequest; import org.springframework.context.annotation.Bean; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; @@ -9,7 +10,7 @@ import org.springframework.security.web.authentication.SavedRequestAwareAuthenti /** * 监控权限配置 - * + * * @author mhd */ @EnableWebSecurity @@ -32,11 +33,23 @@ public class WebSecurityConfigurer return httpSecurity .headers().frameOptions().disable() .and().authorizeRequests() + .antMatchers("/actuator/health", "/actuator/info").permitAll() //扫描漏洞添加 + .antMatchers("/actuator/**").authenticated() //扫描漏洞添加 .antMatchers(adminContextPath + "/assets/**" , adminContextPath + "/login" , adminContextPath + "/actuator/**" , adminContextPath + "/instances/**" ).permitAll() + // 管理端点需要认证 + .antMatchers("/actuator/**").hasRole("ADMIN")//扫描漏洞添加 + .antMatchers("/admin/**").hasRole("ADMIN")//扫描漏洞添加 + .antMatchers("/actuator/env").hasRole("plat_admin") // 仅允许ADMIN角色访问/env端点 //扫描漏洞添加 + // 允许公开访问的端点 + .requestMatchers(EndpointRequest.to("health", "info", "prometheus"))//扫描漏洞添加 + .permitAll() + // 敏感端点需要管理员权限 + .requestMatchers(EndpointRequest.to("env", "configprops", "beans", "mappings"))//扫描漏洞添加 + .hasRole("ADMIN") .anyRequest().authenticated() .and() .formLogin().loginPage(adminContextPath + "/login") diff --git a/mhd_finance/src/main/java/com/linke/finance/application/server/approvalDocument/ApprovalDocumentApplicationService.java b/mhd_finance/src/main/java/com/linke/finance/application/server/approvalDocument/ApprovalDocumentApplicationService.java index 3845124ab..d3c528489 100644 --- a/mhd_finance/src/main/java/com/linke/finance/application/server/approvalDocument/ApprovalDocumentApplicationService.java +++ b/mhd_finance/src/main/java/com/linke/finance/application/server/approvalDocument/ApprovalDocumentApplicationService.java @@ -7,11 +7,15 @@ import com.linke.finance.domain.approvalDocument.repository.todo.ApprovalDocumen import com.linke.finance.domain.approvalDocument.repository.todo.WorkflowProcessInstancesByIdDO; import com.linke.finance.domain.approvalDocument.service.ApprovalDocumentDomainService; import com.linke.finance.interfaces.vo.ApprovalStatsVO; +import com.mhd.common.core.domain.po.UserPo; import com.mhd.common.security.utils.SecurityUtils; import com.mhd.system.api.model.LoginUser; import lombok.extern.slf4j.Slf4j; +import org.apache.catalina.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; + +import java.rmi.ServerException; import java.util.List; /** * 审批单据ApplicationService @@ -30,8 +34,12 @@ public class ApprovalDocumentApplicationService { * 分页查询审批单据列表 */ - public List queryList(ApprovalDocumentDO approvalDocumentDO) { + public List queryList(ApprovalDocumentDO approvalDocumentDO) throws Exception{ LoginUser loginUser = SecurityUtils.getLoginUser(); + UserPo userPo=loginUser.getUserPo(); + if(!userPo.getRoleCode().equals("plat_admin")){ + throw new ServerException("您没有权限访问"); + } if (loginUser != null){ Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId(); if (topOrganizationId != null && topOrganizationId != 1){ diff --git a/mhd_finance/src/main/java/com/linke/finance/interfaces/facade/approvalDocument/ApprovalDocumentApi.java b/mhd_finance/src/main/java/com/linke/finance/interfaces/facade/approvalDocument/ApprovalDocumentApi.java index 081beca9c..21cd4481a 100644 --- a/mhd_finance/src/main/java/com/linke/finance/interfaces/facade/approvalDocument/ApprovalDocumentApi.java +++ b/mhd_finance/src/main/java/com/linke/finance/interfaces/facade/approvalDocument/ApprovalDocumentApi.java @@ -7,6 +7,8 @@ import com.linke.finance.interfaces.dto.approvalDocument.DingDingHuiDiaoDTO; import com.linke.finance.interfaces.vo.ApprovalStatsVO; import com.linke.finance.until.DingCallbackCrypto; import com.mhd.common.core.domain.entity.R; + +import java.rmi.ServerException; import java.util.List; import java.util.Map; @@ -56,8 +58,17 @@ public class ApprovalDocumentApi extends BaseController{ //转换实体 ApprovalDocumentDO approvalDocumentDO = approvalDocumentAssembler.toDO(approvalDocumentDTO); startPage(); - List list = approvalDocumentApplicationService.queryList(approvalDocumentDO); - return getDataTable(list); + List list = null; + try { + list = approvalDocumentApplicationService.queryList(approvalDocumentDO); + return getDataTable(list); + } catch (ServerException e) { + e.printStackTrace(); + return null; + } catch (Exception e) { + e.printStackTrace(); + return null; + } } /** diff --git a/mhd_product/pom.xml b/mhd_product/pom.xml index e665e0a44..3363300a9 100644 --- a/mhd_product/pom.xml +++ b/mhd_product/pom.xml @@ -129,6 +129,17 @@ com.mhd mhd-common-log + + io.minio + minio + 8.4.3 + + + com.squareup.okhttp3 + okhttp + 4.8.1 + compile + diff --git a/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java b/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java index 4ccea8aeb..e48ecd148 100644 --- a/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java +++ b/mhd_product/src/main/java/com/linke/product/application/service/menu/MenuApplicationService.java @@ -46,6 +46,7 @@ import lombok.extern.slf4j.Slf4j; import minio.MinIoUploadService; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Repository; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; @@ -97,9 +98,10 @@ public class MenuApplicationService { private SpecialServiceFeign logisticsServiceFeign; @Resource private MenuUtils menuUtils; - @Autowired + @Autowired(required = false) private MinIoUploadService minIoUploadService; + /** * 查询菜单集合 * diff --git a/mhd_transport/pom.xml b/mhd_transport/pom.xml index 33822d0e4..82166bd0b 100644 --- a/mhd_transport/pom.xml +++ b/mhd_transport/pom.xml @@ -101,17 +101,6 @@ org.springframework.cloud spring-cloud-starter-sleuth - - io.minio - minio - 8.4.3 - - - com.squareup.okhttp3 - okhttp - 4.8.1 - compile - From 8affee1409ff68d440ae437b34399209f4a3bbdd Mon Sep 17 00:00:00 2001 From: hjx <577364224@qq.com> Date: Sat, 13 Dec 2025 15:06:42 +0800 Subject: [PATCH 11/12] =?UTF-8?q?=E6=BC=8F=E6=B4=9E=E6=89=AB=E6=8F=8F?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/persistence/ReconciliationImpl.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java index 8884ae06a..c42df3c88 100644 --- a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java +++ b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java @@ -469,9 +469,11 @@ public class ReconciliationImpl extends ServiceImpl Date: Sat, 13 Dec 2025 17:26:17 +0800 Subject: [PATCH 12/12] =?UTF-8?q?nc=E4=B8=8A=E4=BC=A0=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E4=BC=A0=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/domain/entity/TmsOrder.java | 18 +++ .../persistence/ReconciliationImpl.java | 136 ++++++++++-------- 2 files changed, 94 insertions(+), 60 deletions(-) diff --git a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java index c8bcfc4e1..a9f7009b7 100644 --- a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java +++ b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java @@ -522,4 +522,22 @@ public class TmsOrder implements Serializable { @ApiModelProperty(value = "付款方名称") private String payer; + + @ApiModelProperty("客户编码nc") + private String customsCodeNc; + + @ApiModelProperty("制单人编码nc") + private String makerCodeNc; + + @ApiModelProperty("业务员编码nc") + private String salesmanCodeNc; + + @ApiModelProperty("税率") + private BigDecimal taxRate; + + @ApiModelProperty("结算币种") + private String settlementCurrency; + + @ApiModelProperty("合同编号") + private String contractNo; } diff --git a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java index c42df3c88..ab85f2826 100644 --- a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java +++ b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java @@ -404,12 +404,6 @@ public class ReconciliationImpl extends ServiceImpl> result=wlhyServiceFeign.getOrderListByReconciliation(reconciliationDTO); + String makerCodeNc=""; if(result.getCode()==200){ List list=result.getData(); if(ObjectUtil.isNotNull(list)){ @@ -448,38 +443,50 @@ public class ReconciliationImpl extends ServiceImpl ysitemList=new ArrayList(); ReconciliationDTO reconciliationDTO=new ReconciliationDTO(); reconciliationDTO.setInnerNumber(reconciliation.getInnerNumber()); + if(null==reconciliation.getSettlementPartyId()){ + throw new ServiceException("没有结算方,请核对"); + } + String makerCodeNc=""; R> result=wlhyServiceFeign.getOrderListByReconciliation(reconciliationDTO); if(result.getCode()==200){ List list=result.getData(); if(ObjectUtil.isNotNull(list)){ for(TmsOrder tmsOrder:list){ - if(null==reconciliation.getSettlementPartyId()){ - throw new ServiceException("没有结算方,请核对"); + if (org.apache.commons.lang.StringUtils.isBlank(tmsOrder.getSalesmanCodeNc())) { + throw new ServiceException("请先维护业务员编码"); } - AjaxResult ajaxResult=userServiceFeign.getShipperSummaryData(Long.valueOf(reconciliation.getSettlementPartyId())); + if (org.apache.commons.lang.StringUtils.isBlank(tmsOrder.getMakerCodeNc())) { + throw new ServiceException("请先维护制单员编码"); + } + if (org.apache.commons.lang.StringUtils.isBlank(tmsOrder.getCustomsCodeNc())) { + throw new ServiceException("请先维护制单员编码"); + } + + + SKitem item=new SKitem(); + item.setSo_deptid("NG040104"); + item.setPk_deptid("NG040104"); + item.setCheckdirection("ar"); + item.setPk_psndoc(tmsOrder.getSalesmanCodeNc()); + item.setCustomer(tmsOrder.getCustomsCodeNc()); + item.setPurchaseorder(tmsOrder.getGoodsNumber()); + item.setObjtype("0"); + item.setDirection("1"); + item.setScomment(tmsOrder.getAppointShipper()); + item.setPk_currtype(tmsOrder.getSettlementCurrency()); + item.setMoney_cr(String.valueOf(tmsOrder.getCollectedFreight())); + item.setMoney_bal(String.valueOf(tmsOrder.getCollectedFreight())); + ysitemList.add(item); + /* AjaxResult ajaxResult=userServiceFeign.getShipperSummaryData(Long.valueOf(reconciliation.getSettlementPartyId())); if(ajaxResult.get("code").toString().equals("200")){ Object userShipperPo= ajaxResult.get("data"); JSONObject jsonObject = new JSONObject((Map) userShipperPo); if(org.apache.commons.lang.StringUtils.isBlank(jsonObject.get("customerNcCode").toString())){ throw new ServiceException("请先维护客户编码"); } - SKitem item=new SKitem(); - item.setSo_deptid("NG040104"); - item.setPk_deptid("NG040104"); - item.setCheckdirection("ar"); - item.setPk_psndoc(userPo.getSalespersonNcCode()); - item.setCustomer(jsonObject.get("customerNcCode").toString()); - item.setPurchaseorder(tmsOrder.getGoodsNumber()); - item.setObjtype("0"); - item.setDirection("1"); - item.setScomment(jsonObject.get("shipperEnterpriseName").toString()); - item.setPk_currtype("CNY"); - item.setMoney_cr(String.valueOf(tmsOrder.getCollectedFreight())); - item.setMoney_bal(String.valueOf(tmsOrder.getCollectedFreight())); - ysitemList.add(item); - } + + + }*/ } } @@ -670,7 +686,7 @@ public class ReconciliationImpl extends ServiceImpl