From 736ba6d3dceb0dd1bd4e7bcdc35e0a13e9f229ae Mon Sep 17 00:00:00 2001 From: yuan <1363654894@qq.com> Date: Fri, 30 Aug 2024 21:57:14 +0800 Subject: [PATCH] =?UTF-8?q?feat():=E5=A2=9E=E5=8A=A0=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=90=8E=E5=B0=86=E7=94=9F=E6=88=90=E7=9A=84?= =?UTF-8?q?.java=E6=96=87=E4=BB=B6=E4=B8=8A=E4=BC=A0OSS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/muyu/common/domain/RuleVersion.java | 3 +- .../common/domain/req/RuleVersionAddReq.java | 7 +- cloud-rule-engine/pom.xml | 23 ++++++ .../com/muyu/constant/GenerateConstant.java | 2 +- .../java/com/muyu/upload/ALiYunUpload.java | 75 +++++++++++++++++++ 5 files changed, 107 insertions(+), 3 deletions(-) create mode 100644 cloud-rule-engine/src/main/java/com/muyu/upload/ALiYunUpload.java diff --git a/cloud-rule-common/src/main/java/com/muyu/common/domain/RuleVersion.java b/cloud-rule-common/src/main/java/com/muyu/common/domain/RuleVersion.java index e779cce..a8befe1 100644 --- a/cloud-rule-common/src/main/java/com/muyu/common/domain/RuleVersion.java +++ b/cloud-rule-common/src/main/java/com/muyu/common/domain/RuleVersion.java @@ -74,8 +74,9 @@ public class RuleVersion extends BaseEntity { .ruleVersionName(ruleVersionAddReq.getRuleVersionName()) .ruleVersionCode(ruleVersionAddReq.getRuleVersionCode()) .ruleVersionActivate(ruleVersionAddReq.getRuleVersionActivate()) + .ruleVersionTest("W") .ruleVersionStatus(ruleVersionAddReq.getRuleVersionStatus()) - .remark(ruleVersionAddReq.getRuleVersionRemark()) + .remark(ruleVersionAddReq.getRemark()) .build(); } diff --git a/cloud-rule-common/src/main/java/com/muyu/common/domain/req/RuleVersionAddReq.java b/cloud-rule-common/src/main/java/com/muyu/common/domain/req/RuleVersionAddReq.java index 19b33ac..5f0b190 100644 --- a/cloud-rule-common/src/main/java/com/muyu/common/domain/req/RuleVersionAddReq.java +++ b/cloud-rule-common/src/main/java/com/muyu/common/domain/req/RuleVersionAddReq.java @@ -56,9 +56,14 @@ public class RuleVersionAddReq { */ @Schema(title = "版本状态",type = "String",description = "I") private String ruleVersionStatus ; + /** + * 代码 + */ + @Schema(title = "代码",type = "String") + private String ruleVersionText ; /** * 版本备注 */ @Schema(title = "版本备注",type = "String") - private String ruleVersionRemark; + private String remark; } diff --git a/cloud-rule-engine/pom.xml b/cloud-rule-engine/pom.xml index bb584a7..b899d8e 100644 --- a/cloud-rule-engine/pom.xml +++ b/cloud-rule-engine/pom.xml @@ -84,6 +84,29 @@ 1.0.0 + + com.aliyun.oss + aliyun-sdk-oss + 3.17.4 + + + + javax.xml.bind + jaxb-api + 2.3.1 + + + javax.activation + activation + 1.1.1 + + + + org.glassfish.jaxb + jaxb-runtime + 2.3.3 + + junit junit diff --git a/cloud-rule-engine/src/main/java/com/muyu/constant/GenerateConstant.java b/cloud-rule-engine/src/main/java/com/muyu/constant/GenerateConstant.java index 63c4f91..e38a3b5 100644 --- a/cloud-rule-engine/src/main/java/com/muyu/constant/GenerateConstant.java +++ b/cloud-rule-engine/src/main/java/com/muyu/constant/GenerateConstant.java @@ -46,7 +46,7 @@ public class GenerateConstant { "/**\n" + " * @Author: "+ SecurityUtils.getUsername() +"\n" + " * @date: "+format+"\n" + - " * @Description: "+ruleVersion.getRuleVersionName()+ruleVersion.getRuleVersionCode()+"\n" + + " * @Description: "+ruleVersion.getRuleVersionName()+"_"+ruleVersion.getRuleVersionCode()+"\n" + " * @Version: 1.0\n" + " */\n" + "public class "+getClassName(ruleVersion.getRuleVersionType()) + " extends "+level+" {\n" + diff --git a/cloud-rule-engine/src/main/java/com/muyu/upload/ALiYunUpload.java b/cloud-rule-engine/src/main/java/com/muyu/upload/ALiYunUpload.java new file mode 100644 index 0000000..7739d52 --- /dev/null +++ b/cloud-rule-engine/src/main/java/com/muyu/upload/ALiYunUpload.java @@ -0,0 +1,75 @@ +package com.muyu.upload; + +import com.aliyun.oss.ClientException; +import com.aliyun.oss.OSS; +import com.aliyun.oss.OSSClientBuilder; +import com.aliyun.oss.OSSException; +import com.aliyun.oss.common.auth.CredentialsProviderFactory; +import com.aliyun.oss.common.auth.EnvironmentVariableCredentialsProvider; +import com.aliyun.oss.model.PutObjectRequest; +import com.aliyun.oss.model.PutObjectResult; +import com.muyu.common.core.domain.Result; +import org.apache.poi.ss.formula.functions.T; + +import java.io.ByteArrayInputStream; +import java.io.FileInputStream; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; + +/** + * @Author:蓬叁 + * @Package:com.muyu.upload + * @Project:cloud-rule + * @name:ALiYunUpload + * @Date:2024/8/30 下午7:05 + */ +public class ALiYunUpload { + + // Endpoint以华东1(杭州)为例,其它Region请按实际情况填写 + private static final String endpoint = "https://oss-cn-shanghai.aliyuncs.com" ; + // AccessKeyID + private static final String accessKeyId = "LTAI5tHKdDATVKeBjFH8mb8D" ; + // AccessKeySecret + private static final String accessKeySecret = "5ejb4gdgukfD1FdM181kdeAkSuURo7" ; + // Bucket名称 + private static final String bucketName = "java-web-generating-class" ; + + public static Result uploadFiles(String content, String fileName) { + + + System.out.println(content); + + System.out.println(fileName); + + + OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); + + // 上传到OSS后文件保存的目录,例如:folder/subfolder/,最后以斜杠结尾 + String objectName = "build/rule/version/"+fileName+".java"; + + try { + // 将内容转换为字节数组输入流 + ByteArrayInputStream inputStream = new ByteArrayInputStream(content.getBytes(StandardCharsets.UTF_8)); + + // 构造上传请求 + PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, objectName, inputStream); + + // 执行上传操作 + ossClient.putObject(putObjectRequest); + + return Result.success(null,"文件"+fileName+".java"+"存储成功"); + + } catch (Exception e) { + e.printStackTrace(); + + return Result.error(null,"文件"+fileName+".java"+"存储失败"); + } finally { + // 关闭OSSClient + if (ossClient != null) { + ossClient.shutdown(); + } + } + + } + +}