陈长荣 8 сар өмнө
parent
commit
603236345d

+ 67 - 71
pom.xml

@@ -11,19 +11,15 @@
     <parent>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-parent</artifactId>
-        <version>2.5.3</version>
+        <version>2.7.16</version>
     </parent>
 
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <java.version>1.8</java.version>
-        <jedis.version>2.9.0</jedis.version>
-        <log4jdbc.version>1.16</log4jdbc.version>
-        <swagger.version>2.9.2</swagger.version>
-        <fastjson.version>1.2.54</fastjson.version>
-        <commons-pool2.version>2.5.0</commons-pool2.version>
-        <mapstruct.version>1.2.0.Final</mapstruct.version>
+        <nacos.version>2021.0.5.0</nacos.version>
+        <mysql.version>8.0.33</mysql.version>
     </properties>
 
     <dependencies>
@@ -36,41 +32,14 @@
             <artifactId>spring-boot-starter-aop</artifactId>
         </dependency>
         <dependency>
-            <groupId>org.projectlombok</groupId>
-            <artifactId>lombok</artifactId>
-            <optional>true</optional>
-        </dependency>
-
-        <!--io常用工具类 -->
-        <dependency>
-            <groupId>commons-io</groupId>
-            <artifactId>commons-io</artifactId>
-            <version>2.2</version>
-        </dependency>
-
-        <!--文件上传工具类 -->
-        <dependency>
-            <groupId>commons-fileupload</groupId>
-            <artifactId>commons-fileupload</artifactId>
-            <version>1.2.1</version>
-        </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-            <version>3.2</version>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-starter-bootstrap</artifactId>
+            <version>3.1.5</version>
         </dependency>
         <dependency>
-            <groupId>com.alibaba</groupId>
-            <artifactId>fastjson</artifactId>
-            <version>1.2.83</version>
-        </dependency>
-
-        <dependency>
-            <groupId>cn.hutool</groupId>
-            <artifactId>hutool-http</artifactId>
-            <version>5.8.28</version>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-thymeleaf</artifactId>
         </dependency>
-
         <dependency>
             <groupId>com.baomidou</groupId>
             <artifactId>mybatis-plus-boot-starter</artifactId>
@@ -82,50 +51,43 @@
             <version>1.2.4</version>
         </dependency>
         <dependency>
-            <groupId>mysql</groupId>
-            <artifactId>mysql-connector-java</artifactId>
+            <groupId>com.alibaba.cloud</groupId>
+            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
+            <version>${nacos.version}</version>
         </dependency>
-
+        <!-- Nacos Discovery -->
         <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-thymeleaf</artifactId>
-            <version>2.1.1.RELEASE</version>
+            <groupId>com.alibaba.cloud</groupId>
+            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
+            <version>${nacos.version}</version>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.commons</groupId>
-            <artifactId>commons-lang3</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>commons-codec</groupId>
-            <artifactId>commons-codec</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.hashids</groupId>
-            <artifactId>hashids</artifactId>
-            <version>1.0.3</version>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+            <optional>true</optional>
         </dependency>
+
         <dependency>
-            <groupId>com.google.code.gson</groupId>
-            <artifactId>gson</artifactId>
+            <groupId>com.alibaba</groupId>
+            <artifactId>fastjson</artifactId>
+            <version>1.2.83</version>
         </dependency>
+
         <dependency>
-            <groupId>com.googlecode.json-simple</groupId>
-            <artifactId>json-simple</artifactId>
-            <version>1.1</version>
+            <groupId>cn.hutool</groupId>
+            <artifactId>hutool-http</artifactId>
+            <version>5.8.28</version>
         </dependency>
 
-        <!-- swagger2 依赖 -->
         <dependency>
-            <groupId>io.springfox</groupId>
-            <artifactId>springfox-swagger2</artifactId>
-            <version>2.7.0</version>
+            <groupId>mysql</groupId>
+            <artifactId>mysql-connector-java</artifactId>
         </dependency>
-        <!-- Swagger第三方ui依赖 -->
+
         <dependency>
-            <groupId>com.github.xiaoymin</groupId>
-            <artifactId>swagger-bootstrap-ui</artifactId>
-            <version>1.9.6</version>
+            <groupId>com.google.code.gson</groupId>
+            <artifactId>gson</artifactId>
         </dependency>
 
         <dependency>
@@ -133,11 +95,14 @@
             <artifactId>aws-java-sdk-s3</artifactId>
             <version>1.11.543</version>
         </dependency>
+
         <dependency>
-            <groupId>org.aspectj</groupId>
-            <artifactId>aspectjrt</artifactId>
+            <groupId>io.swagger</groupId>
+            <artifactId>swagger-annotations</artifactId>
+            <version>1.5.13</version>
         </dependency>
     </dependencies>
+
     <build>
         <plugins>
             <plugin>
@@ -152,6 +117,37 @@
             </plugin>
         </plugins>
 
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+                <filtering>true</filtering>
+            </resource>
+        </resources>
     </build>
 
+    <profiles>
+        <profile>
+            <id>dev</id>
+            <properties>
+                <profiles.active>dev</profiles.active>
+                <nacos.namespace>jfcloud</nacos.namespace>
+                <nacos.username>jfcloud</nacos.username>
+                <nacos.password>jfcloudjfcloud</nacos.password>
+            </properties>
+            <activation>
+                <!-- 默认环境 -->
+                <activeByDefault>true</activeByDefault>
+            </activation>
+        </profile>
+        <profile>
+            <id>prod</id>
+            <properties>
+                <profiles.active>prod</profiles.active>
+                <nacos.namespace>jfcloud</nacos.namespace>
+                <nacos.username>jfcloud</nacos.username>
+                <nacos.password>jfcloudjfcloud</nacos.password>
+            </properties>
+        </profile>
+    </profiles>
+
 </project>

+ 0 - 2
src/main/java/com/github/jfcloud/excel/editor/docdeal/bean/Document.java

@@ -10,8 +10,6 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serializable;
-import java.util.HashMap;
-import java.util.Map;
 
 /**
  * onlyoffice定义的文档对象

+ 2 - 2
src/main/java/com/github/jfcloud/excel/editor/docdeal/config/OssAutoConfiguration.java

@@ -21,7 +21,7 @@ public class OssAutoConfiguration {
     @Bean
     @ConditionalOnMissingBean({OssTemplate.class})
     @ConditionalOnProperty(
-            name = {"oss.enable"},
+            name = {"file.oss.enable"},
             havingValue = "true",
             matchIfMissing = true
     )
@@ -31,7 +31,7 @@ public class OssAutoConfiguration {
 
     @Bean
     @ConditionalOnProperty(
-            name = {"oss.info"},
+            name = {"file.oss.info"},
             havingValue = "true"
     )
     public OssEndpoint ossEndpoint(OssTemplate template) {

+ 1 - 5
src/main/java/com/github/jfcloud/excel/editor/docdeal/constant/ErrorCodeEnum.java

@@ -1,9 +1,5 @@
 package com.github.jfcloud.excel.editor.docdeal.constant;
 
-import org.apache.commons.lang3.StringUtils;
-
-import java.util.Arrays;
-
 /**
  * 错误码枚举
  * 约定 code 为 0 表示操作成功,
@@ -58,7 +54,7 @@ public enum ErrorCodeEnum {
     }
 
     public boolean isSuccessful() {
-        return this.code == ErrorCodeEnum.SUCCESS.getCode();
+        return this.code.equals(ErrorCodeEnum.SUCCESS.getCode());
     }
 
     public boolean isFailed() {

+ 3 - 5
src/main/java/com/github/jfcloud/excel/editor/docdeal/controller/FileController.java

@@ -18,8 +18,6 @@ import com.github.jfcloud.excel.editor.docdeal.oss.OssProperties;
 import com.github.jfcloud.excel.editor.docdeal.oss.service.OssTemplate;
 import com.github.jfcloud.excel.editor.docdeal.service.FileUploadService;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.io.FilenameUtils;
-import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Controller;
@@ -65,7 +63,7 @@ public class FileController {
         String fileName = file.getOriginalFilename();
         log.info("上传文件 {}", fileName);
 
-        if (StringUtils.isBlank(bucket)) {
+        if (StrUtil.isBlank(bucket)) {
             bucket = ossProperties.getBucketName();
         }
         ossTemplate.putObject(bucket, fileName, file.getInputStream());
@@ -146,9 +144,9 @@ public class FileController {
         bucket = StrUtil.isBlank(bucket) ? ossProperties.getBucketName() : bucket;
 
         Document document = Document.builder()
-                .key(FilenameUtils.getBaseName(name))
+                .key(FileNameUtil.getPrefix(name))
                 .title(title)
-                .fileType(FilenameUtils.getExtension(name))
+                .fileType(FileNameUtil.getSuffix(name))
                 .url(downloadUrl)
                 .permissions(new JSONObject()
                         .fluentPut("chat", true)

+ 5 - 2
src/main/java/com/github/jfcloud/excel/editor/docdeal/oss/OssProperties.java

@@ -5,9 +5,10 @@ package com.github.jfcloud.excel.editor.docdeal.oss;
  * @date 2023-4-25
  */
 import lombok.Data;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.boot.context.properties.ConfigurationProperties;
 
-@ConfigurationProperties(prefix = "oss")
+@ConfigurationProperties(prefix = "file.oss")
 @Data
 public class OssProperties {
     private String endpoint;
@@ -17,7 +18,9 @@ public class OssProperties {
     private String region;
     private String accessKey;
     private String secretKey;
-    private String bucketName = "payerp";
+
+    @Value("${file.bucket-name}")
+    private String bucketName = "report";
     private Integer maxConnections = 100;
 
     public String toString() {

+ 0 - 24
src/main/resources/application-dbconfig.yml

@@ -1,24 +0,0 @@
-# 数据源配置
-spring:
-  datasource:
-    type: com.alibaba.druid.pool.DruidDataSource
-    druid:
-      driver-class-name: com.mysql.cj.jdbc.Driver
-      username: gimi
-      password: Gimi!2021
-      url: jdbc:mysql://jfcloud-k6-mysql:3306/lacms_animal?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true
-      stat-view-servlet:
-        enabled: false
-        allow: ""
-        url-pattern: /druid/*
-        #login-username: admin
-        #login-password: admin
-      filter:
-        stat:
-          enabled: true
-          log-slow-sql: true
-          slow-sql-millis: 10000
-          merge-sql: false
-        wall:
-          config:
-            multi-statement-allow: true

+ 0 - 99
src/main/resources/application.yml

@@ -1,99 +0,0 @@
-# 开发环境配置
-server:
-  # 服务器的HTTP端口,默认为8080
-  port: 20054
-  servlet:
-    # 应用的访问路径
-    context-path: /
-  tomcat:
-    # tomcat的URI编码
-    uri-encoding: UTF-8
-    # tomcat最大线程数,默认为200
-    max-threads: 800
-    # Tomcat启动初始化的线程数,默认值25
-    min-spare-threads: 30
-
-# 文件系统 (minio测试环境,不可当生产使用)
-#oss:
-#  endpoint: http://jfcloud-v4-oss:9002
-#  access-key: jfcloud
-#  secret-key: jfcloudjfcloud
-#  bucket-name: jfcloud
-
-#oss:
-#  endpoint: http://10.0.1.200:9090
-#  access-key: jfcloud
-#  secret-key: jfcloudjfcloud
-#  bucket-name: report
-
-oss:
-  endpoint: http://192.168.66.227:9002
-  access-key: jfcloud
-  secret-key: jfcloudjfcloud
-  bucket-name: report
-
-# 日志配置
-logging:
-  level:
-    com.ruoyi: debug
-    org.springframework: warn
-
-# Spring配置
-spring:
-  # 资源信息
-  messages:
-    # 国际化资源文件路径
-    basename: i18n/messages
-  profiles:
-    active: dbconfig
-  # 文件上传
-  servlet:
-     multipart:
-       # 单个文件大小
-       max-file-size:  500MB
-       # 设置总上传的文件大小
-       max-request-size:  500MB
-  thymeleaf:
-    prefix: classpath:/templates
-
-# MyBatisPlus配置
-mybatis-plus:
-  configuration:
-    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
-    map-underscore-to-camel-case: false
-  type-aliases-package: com.github.jfcloud.excel.editor.docdeal.bean
-  global-config:
-    db-config:
-      # 全局默认主键类型
-      id-type: assign_id
-      # 表名、是否使用下划线命名,默认数据库表使用下划线命名
-      table-underline: true
-      # 逻辑已删除值(默认为 1)
-      logic-delete-value: true
-      # 逻辑未删除值(默认为 0)
-      logic-not-delete-value: false
-  mapper-locations:
-    - /mapper/*.xml
-pagehelper:
-  helper-dialect: mysql
-  reasonable: true
-  support-methods-arguments: true
-  params: count=countsql
-
-document:
-  server:
-    url: http://192.168.66.227:${server.port} # 当前程序的服务器地址
-files:
-  #savePath: onlyoffice/
-  docservice:
-    secret: cThavmwXYSEExEtM54hBpqu0vggVv7MP
-    convert-docs: .docm|.dotx|.dotm|.dot|.doc|.odt|.fodt|.ott|.xlsm|.xltx|.xltm|.xlt|.xls|.ods|.fods|.ots|.pptm|.ppt|.ppsx|.ppsm|.pps|.potx|.potm|.pot|.odp|.fodp|.otp|.rtf|.mht|.html|.htm|.xml|.epub|.fb2
-    edited-docs: .docx|.xlsx|.csv|.pptx|.txtls
-    viewed-docs: .pdf|.djvu|.xps
-    url:
-      site: http://192.168.66.227:20053/ # onlyOffice 服务器地址
-      converter: ConvertService.ashx
-      command: coauthoring/CommandService.ashx
-      api: web-apps/apps/api/documents/api.js
-      preloader: web-apps/apps/api/documents/cache-scripts.html
-

+ 20 - 0
src/main/resources/bootstrap-dev.yml

@@ -0,0 +1,20 @@
+spring:
+  application:
+    name: @artifactId@
+  cloud:
+    nacos:
+      username: @nacos.username@
+      password: @nacos.password@
+      discovery:
+        server-addr: ${NACOS-HOST:jfcloud-k6-nacos}:${NACOS-PORT:58848}
+        namespace: @nacos.namespace@
+      config:
+        server-addr: ${spring.cloud.nacos.discovery.server-addr}
+        namespace: @nacos.namespace@
+        file-extension: yml
+        shared-configs:
+          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
+  config:
+    import:
+      - optional:nacos:application-@profiles.active@.yml
+      - optional:nacos:${spring.application.name}-@profiles.active@.yml

+ 8 - 0
src/main/resources/bootstrap.yml

@@ -0,0 +1,8 @@
+server:
+  port: 20054
+
+spring:
+  application:
+    name: @artifactId@
+  profiles:
+    active: dev