pudongliang 5 лет назад
Родитель
Сommit
cb3533df08
60 измененных файлов с 507 добавлено и 568 удалено
  1. 4 0
      fw-sample-admin/src/main/java/com/mokasz/sample/AdminApplication.java
  2. 1 2
      fw-sample-admin/src/main/java/com/mokasz/sample/admin/controller/AdminLogController.java
  3. 14 0
      fw-sample-admin/src/main/resources/application-dev.properties
  4. 9 0
      fw-sample-admin/src/main/resources/application-prod.properties
  5. 11 0
      fw-sample-admin/src/main/resources/application-qa.properties
  6. 9 0
      fw-sample-admin/src/main/resources/application-stage.properties
  7. 21 0
      fw-sample-admin/src/main/resources/application.properties
  8. 0 131
      fw-sample-admin/src/main/resources/bootstrap.yml
  9. 0 30
      fw-sample-admin/src/main/resources/logback-spring.xml
  10. 36 0
      fw-sample-admin/src/main/resources/logconfig/logback-dev.xml
  11. 63 0
      fw-sample-admin/src/main/resources/logconfig/logback.xml
  12. 7 10
      fw-sample-api/src/main/java/com/mokasz/sample/api/ApiApplication.java
  13. 1 1
      fw-sample-api/src/main/java/com/mokasz/sample/api/controller/LoginApiController.java
  14. 3 3
      fw-sample-api/src/main/resources/application-dev.properties
  15. 5 4
      fw-sample-api/src/main/resources/application-prod.properties
  16. 3 4
      fw-sample-api/src/main/resources/application-qa.properties
  17. 5 4
      fw-sample-api/src/main/resources/application-stage.properties
  18. 3 28
      fw-sample-api/src/main/resources/application.properties
  19. 0 3
      fw-sample-api/src/main/resources/logconfig/logback.xml
  20. 36 0
      fw-sample-api/src/test/java/com/mokasz/sample/test/AplicationTest.java
  21. 4 4
      fw-sample-job/src/main/java/com/mokasz/sample/JobApplication.java
  22. 27 0
      fw-sample-job/src/main/java/com/mokasz/sample/job/controller/SimpleJobController.java
  23. 2 4
      fw-sample-job/src/main/resources/application-dev.properties
  24. 5 8
      fw-sample-job/src/main/resources/application-prod.properties
  25. 3 4
      fw-sample-job/src/main/resources/application-qa.properties
  26. 5 7
      fw-sample-job/src/main/resources/application-stage.properties
  27. 6 25
      fw-sample-job/src/main/resources/application.properties
  28. 2 2
      fw-sample-job/src/main/resources/logconfig/logback-dev.xml
  29. 9 8
      fw-sample-mqc/src/main/java/com/mokasz/sample/MqcApplication.java
  30. 3 6
      fw-sample-mqc/src/main/resources/application-dev.properties
  31. 5 7
      fw-sample-mqc/src/main/resources/application-prod.properties
  32. 3 4
      fw-sample-mqc/src/main/resources/application-qa.properties
  33. 5 7
      fw-sample-mqc/src/main/resources/application-stage.properties
  34. 4 20
      fw-sample-mqc/src/main/resources/application.properties
  35. 2 2
      fw-sample-mqc/src/main/resources/logconfig/logback-dev.xml
  36. 4 0
      fw-sample-mqc/src/test/java/com/mokasz/sample/mqc/test/MqcTest.java
  37. 0 4
      fw-sample-mqc/src/test/java/com/xc/srm/mqc/test/MqcTest.java
  38. 8 0
      fw-sample-rpc/src/main/java/com/mokasz/sample/rpc/SampleRpcService.java
  39. 1 1
      fw-sample-rpc/src/main/java/com/mokasz/sample/rpc/query/SampleRpcQuery.java
  40. 1 1
      fw-sample-rpc/src/main/java/com/mokasz/sample/rpc/vo/SampleRpcVO.java
  41. 0 8
      fw-sample-rpc/src/main/java/com/xc/srm/rpc/SampleRpcService.java
  42. 5 5
      fw-sample-service/pom.xml
  43. 1 1
      fw-sample-service/src/main/java/com/mokasz/sample/admin/query/AdminLogQuery.java
  44. 1 1
      fw-sample-service/src/main/java/com/mokasz/sample/common/aspect/ExceptionControllerAdvice.java
  45. 1 1
      fw-sample-service/src/main/java/com/mokasz/sample/common/aspect/GlobalApiResponseControllerAdvice.java
  46. 1 1
      fw-sample-service/src/main/java/com/mokasz/sample/common/aspect/LogControllerAspect.java
  47. 2 0
      fw-sample-service/src/main/java/com/mokasz/sample/common/config/XxlSsoConfig.java
  48. 0 12
      fw-sample-service/src/main/java/com/mokasz/sample/common/exception/CommonBizRpcException.java
  49. 0 14
      fw-sample-service/src/main/java/com/mokasz/sample/common/exception/SampleRpcException.java
  50. 51 51
      fw-sample-service/src/main/java/com/mokasz/sample/common/filter/LogDubboFilter.java
  51. 0 26
      fw-sample-service/src/main/java/com/mokasz/sample/common/filter/TraceIdConsumerDubboFilter.java
  52. 0 25
      fw-sample-service/src/main/java/com/mokasz/sample/common/filter/TraceIdProviderDubboFilter.java
  53. 55 0
      fw-sample-service/src/main/java/com/mokasz/sample/common/filter/XxlSSOFilter.java
  54. 15 6
      fw-sample-service/src/main/java/com/mokasz/sample/common/filter/ZAdminLogFilter.java
  55. 4 0
      fw-sample-service/src/main/java/com/mokasz/sample/common/model/ApiContextModel.java
  56. 9 9
      fw-sample-service/src/main/java/com/mokasz/sample/mapper/entity/AdminLogENT.java
  57. 5 5
      fw-sample-service/src/main/java/com/mokasz/sample/rpc/impl/SampleRpcServiceImpl.java
  58. 17 0
      fw-sample-service/src/main/java/com/mokasz/sample/service/impl/DictServiceImpl.java
  59. 3 3
      fw-sample-service/src/main/resources/META-INF/dubbo/com.alibaba.dubbo.rpc.Filter
  60. 7 66
      fw-sample-service/src/test/java/com/mokasz/sample/service/test/CodeGenerator.java

+ 4 - 0
fw-sample-admin/src/main/java/com/mokasz/sample/AdminApplication.java

@@ -1,6 +1,8 @@
 package com.mokasz.sample;
 
+import com.alibaba.nacos.api.config.ConfigType;
 import com.alibaba.nacos.spring.context.annotation.config.EnableNacosConfig;
+import com.alibaba.nacos.spring.context.annotation.config.NacosPropertySource;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
@@ -14,6 +16,8 @@ import org.springframework.scheduling.annotation.EnableAsync;
 @Slf4j
 @EnableAsync
 @EnableFeignClients(basePackages = {"com.mokasz.sample.manager"})
+@NacosPropertySource(dataId = "sample-db", groupId = "fw-sample", type = ConfigType.YAML,autoRefreshed = true)
+@NacosPropertySource(dataId = "sample-common", groupId = "fw-sample", type = ConfigType.YAML, autoRefreshed = true)
 public class AdminApplication {
     public static void main(String[] args) {
         SpringApplication.run(AdminApplication.class, args);

+ 1 - 2
fw-sample-admin/src/main/java/com/mokasz/sample/admin/controller/AdminLogController.java

@@ -28,8 +28,7 @@ public class AdminLogController {
     @PostMapping("page")
     public IPage<AdminLogENT> page(@RequestBody AdminLogQuery query) {
         LambdaQueryWrapper<AdminLogENT> pageWrapper = Wrappers.lambdaQuery();
-        pageWrapper.eq(StringUtils.isNotBlank(query.getUserId()), AdminLogENT::getUserId, query.getUserId());
-        pageWrapper.eq(StringUtils.isNotBlank(query.getMethod()), AdminLogENT::getMethod, query.getMethod());
+        pageWrapper.eq(StringUtils.isNotBlank(query.getOperatorId()), AdminLogENT::getOperatorId, query.getOperatorId());
         pageWrapper.like(StringUtils.isNotBlank(query.getPayload()), AdminLogENT::getPayload, query.getPayload());
         pageWrapper.ge(query.getStartTime() != null, AdminLogENT::getCreateTime, query.getStartTime());
         pageWrapper.ge(query.getEndTime() != null, AdminLogENT::getCreateTime, query.getEndTime());

+ 14 - 0
fw-sample-admin/src/main/resources/application-dev.properties

@@ -0,0 +1,14 @@
+#注册中心
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=dev
+#
+#
+#log
+plumelog.appName=${spring.application.name}-${spring.profiles.active}
+plumelog.redisHost=10.100.2.54
+plumelog.redisAuth=
+plumelog.redisPort=6379
+#logback
+logging.config=classpath:logconfig/logback-dev.xml
+#mybatis plus
+mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

+ 9 - 0
fw-sample-admin/src/main/resources/application-prod.properties

@@ -0,0 +1,9 @@
+##nacos配置中心
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=prod
+##plumelog
+plumelog.appName=${spring.application.name}-${spring.profiles.active}
+plumelog.redisHost=
+plumelog.redisAuth=
+plumelog.redisPort=6379
+

+ 11 - 0
fw-sample-admin/src/main/resources/application-qa.properties

@@ -0,0 +1,11 @@
+#注册中心
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=qa
+#
+#
+#log
+plumelog.appName=${spring.application.name}-${spring.profiles.active}
+plumelog.redisHost=10.100.2.54
+plumelog.redisAuth=
+plumelog.redisPort=6379
+

+ 9 - 0
fw-sample-admin/src/main/resources/application-stage.properties

@@ -0,0 +1,9 @@
+##nacos配置中心
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=stage
+#plumelog
+plumelog.appName=${spring.application.name}-${spring.profiles.active}
+plumelog.redisHost=
+plumelog.redisAuth=
+plumelog.redisPort=6379
+

+ 21 - 0
fw-sample-admin/src/main/resources/application.properties

@@ -0,0 +1,21 @@
+server.port=8080
+#健康检查
+management.server.port=18080
+management.endpoint.shutdown.enabled=true
+management.endpoint.health.show-details=always
+management.endpoints.web.exposure.include=*
+#
+spring.application.name=fw-sample-admin
+spring.profiles.active=@spring.profiles.active@
+#
+spring.servlet.multipart.max-request-size=50MB
+spring.servlet.multipart.max-file-size=50MB
+
+
+xxl.sso.server=http://sso.mokamrp.com/sso
+xxl.sso.logout.path=/logout
+xxl.sso.excluded.paths=/actuator/**,/swagger-ui/**,/swagger-resources/**,/v3/api-docs
+xxl.sso.redis.address=redis://xxl-sso:MokaSapce666$%25_RediS@r-uf6727zrr24ioihy72pd.redis.rds.aliyuncs.com:23563/0
+xxl.sso.cookie.domain=mokamrp.com
+
+logging.config=classpath:logconfig/logback.xml

+ 0 - 131
fw-sample-admin/src/main/resources/bootstrap.yml

@@ -1,131 +0,0 @@
-server:
-  port: 8080
-
-spring:
-  application:
-    name: fw-sample-admin
-
-  boot:
-    admin:
-      client:
-        url: http://${hyperion-admin:127.0.0.1}:10401
-        username: ${hyperion-admin.username:hyperion}
-        password: ${hyperion-admin.password:hdzEaHHgHru5}
-        instance:
-          prefer-ip: true
-
-  cloud:
-    nacos:
-      config:
-        namespace: ${nacos.namespace:}
-        server-addr: ${nacos.url:172.18.71.46}:${nacos.port:8848}
-        group: DEFAULT_GROUP
-        prefix: hyperion-free-novel-admin
-        file-extension: yaml
-      discovery:
-        namespace: ${nacos.namespace:}
-        server-addr: ${nacos.url:172.18.71.46}:${nacos.port:8848}
-
-  datasource:
-    dynamic:
-      p6spy: true
-      hikari:
-        connection-timeout: 30000
-        max-lifetime: 1800000
-        max-pool-size: 15
-        min-idle: 5
-        connection-test-query: select 1
-        pool-name: HikariCP
-      primary: base
-      datasource:
-        base:
-          username: ${mysql.base.username:xyb}
-          password: ${mysql.base.password:xyb123}
-          driver-class-name: com.mysql.cj.jdbc.Driver
-          url: jdbc:mysql://${mysql.base.url:172.18.70.27}:${mysql.base.port:3306}/${mysql.base.db:hyperion_free_novel}?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
-
-  elasticsearch:
-    rest:
-      uris: ["http://${es.url:172.18.70.27}:9200"]
-      username: ${es.username:hyperion}
-      password: ${es.password:zsw0M4Ok5nCw}
-
-  rabbitmq:
-    host: ${mq.url:172.18.70.27}
-    username: ${mq.username:xyb}
-    password: ${mq.password:xyb123}
-    virtual-host: ${mq.virtual-host:hyperion_free_novel}
-
-  redis:
-    database: ${redis.database:15}
-    host: ${redis.url:172.18.70.27}
-    port: ${redis.port:6379}
-    password: ${redis.password:123456}
-    lettuce:
-      pool:
-        min-idle: 8
-        max-idle: 500
-        max-active: 2000
-        max-wait: 10000
-    timeout: 5000
-
-  servlet:
-    multipart:
-      max-file-size: 15MB
-      max-request-size: 15MB
-
-mybatis-plus:
-  configuration:
-    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
-
-hyperion:
-  aspect:
-    enable-parameter-log: false
-
-  swagger:
-    enable: false
-
-#  sign-auth:
-#    enable: false
-#    public-server-names:
-#      - test.fn.mokamrp.com
-#      - fn.mokamrp.com
-#    signs:
-#      feeder:
-#        secret-key: msqAnBWYpDiCoBsIE2SvvCDQfHpGqP7Z
-
-#  data-hub:
-#    end-point: https://dh-cn-shanghai.aliyuncs.com
-#    access-id: LTAI5tEWU1j9H2poG4zWgfEP
-#    access-key: p9tVmeDeeEENKhfsBsSeYc0F0ggH5b
-
-#  rabbit-mq:
-#    type: origin
-
-management:
-  endpoints:
-    web:
-      exposure:
-        include: '*'
-  endpoint:
-    auditevents:
-      enable: true
-    health:
-      show-details: ALWAYS
-
-xxl:
-  sso:
-    server: http://sso.mokamrp.com/sso
-    logout:
-      path: /logout
-    excluded:
-      paths: /actuator/**,/swagger-ui/**,/swagger-resources/**,/v3/api-docs
-    redis:
-      # address: redis://xxl-sso:Jch9shshl@r-uf633f3f27aa2174pd.redis.rds.aliyuncs.com:6379/0
-      address: redis://xxl-sso:MokaSapce666$%25_RediS@r-uf6727zrr24ioihy72pd.redis.rds.aliyuncs.com:23563/0
-    cookie:
-      domain: mokamrp.com
-
-logging:
-  level:
-    com.alibaba.nacos.client.config.impl.ClientWorker: WARN

+ 0 - 30
fw-sample-admin/src/main/resources/logback-spring.xml

@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<configuration scan="true" scanPeriod="60 seconds" debug="false">
-    <springProperty scope="context" name="springAppName" source="spring.application.name"/>
-    <property name="log.path" value="log"/>
-    <property name="log.maxHistory" value="1"/>
-    <property name="log.totalSizeCap" value="1GB"/>
-    <property name="log.colorPattern"
-              value="%magenta(%d{yyyy-MM-dd HH:mm:ss}) %highlight(%-5level) %boldCyan(${springAppName:-}) %yellow(%thread) %green(%logger) %msg%n"/>
-    <property name="log.pattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5level ${springAppName:-} %thread %logger %msg%n"/>
-
-    <!--输出到控制台-->
-    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
-        <encoder>
-            <pattern>${log.colorPattern}</pattern>
-        </encoder>
-    </appender>
-
-    <!-- 日志采集服务 -->
-<!--    <appender name="plumelog" class="com.plumelog.logback.appender.RedisAppender">-->
-<!--        <appName>${springAppName}-${plumelog.env}</appName>-->
-<!--        <redisHost>${plumelog.redis.host}:${plumelog.redis.port}</redisHost>-->
-<!--        <redisAuth>${plumelog.redis.auth}</redisAuth>-->
-<!--    </appender>-->
-
-    <root level="info">
-        <appender-ref ref="console"/>
-<!--        <appender-ref ref="plumelog" />-->
-    </root>
-
-</configuration>

+ 36 - 0
fw-sample-admin/src/main/resources/logconfig/logback-dev.xml

@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration debug="false">
+    <!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
+    <!--<property name="LOG_HOME" value="/home" />-->
+    <!-- 控制台输出 -->
+    <!-- 彩色日志 -->
+    <!-- 彩色日志依赖的渲染类 -->
+    <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter"/>
+    <conversionRule conversionWord="wex"
+                    converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter"/>
+    <conversionRule conversionWord="wEx"
+                    converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter"/>
+    <!-- 彩色日志格式 -->
+    <property name="CONSOLE_LOG_PATTERN"
+              value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
+
+
+    <!--输出到控制台-->
+    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
+        <!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息-->
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <level>info</level>
+        </filter>
+        <encoder>
+            <Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
+            <!-- 设置字符集 -->
+            <charset>UTF-8</charset>
+        </encoder>
+    </appender>
+    <!-- 开发期间查看sql输出用 -->
+    <logger name="com.mokasz.sample.mapper" level="DEBUG" />
+    <!-- 日志输出级别 -->
+    <root level="INFO">
+        <appender-ref ref="console"/>
+    </root>
+</configuration>

+ 63 - 0
fw-sample-admin/src/main/resources/logconfig/logback.xml

@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration debug="false">
+    <!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
+    <!--<property name="LOG_HOME" value="/home" />-->
+    <!-- 控制台输出 -->
+    <!-- 彩色日志 -->
+    <!-- 彩色日志依赖的渲染类 -->
+    <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter"/>
+    <conversionRule conversionWord="wex"
+                    converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter"/>
+    <conversionRule conversionWord="wEx"
+                    converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter"/>
+    <!-- 彩色日志格式 -->
+    <property name="CONSOLE_LOG_PATTERN"
+              value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
+
+
+    <!--输出到控制台-->
+    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
+        <!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息-->
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <level>info</level>
+        </filter>
+        <encoder>
+            <Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
+            <!-- 设置字符集 -->
+            <charset>UTF-8</charset>
+        </encoder>
+    </appender>
+
+    <!-- 如果使用kafka作为队列,启用下面配置 -->
+    <!--<appender name="plumelog_demo" class="KafkaAppender">-->
+    <!--<appName>plumelog_demo</appName>-->
+    <!--<kafkaHosts>172.16.247.143:9092,172.16.247.60:9092,172.16.247.64:9092</kafkaHosts>-->
+    <!-- runModel 1,2  1表示最高性能模式,2表示低性能模式 但是2可以获取更多信息 不配置默认为1-->
+    <!--<runModel>2</runModel>-->
+    <!-- 整合其他链路插件,启用下面配置 sleuth表示整合springcloud.sleuth-->
+    <!--<expand>sleuth</expand>-->
+    <!--</appender>-->
+
+    <springProperty scope="context" name="plumelog.appName" source="plumelog.appName"/>
+    <springProperty scope="context" name="plumelog.redisHost" source="plumelog.redisHost"/>
+    <springProperty scope="context" name="plumelog.redisAuth" source="plumelog.redisAuth"/>
+    <springProperty scope="context" name="plumelog.redisPort" source="plumelog.redisPort"/>
+    <!-- 如果使用redis作为队列,启用下面配置 -->
+    <appender name="plumelog" class="com.plumelog.logback.appender.RedisAppender">
+        <appName>${plumelog.appName}</appName>
+        <redisHost>${plumelog.redisHost}</redisHost>
+        <!-- 如果使用redis有密码,启用下面配置 -->
+        <redisAuth>${plumelog.redisAuth}</redisAuth>
+        <!-- redis端口号,不配置默认6379-->
+        <redisPort>${plumelog.redisPort}</redisPort>
+        <!-- runModel 1,2  1表示最高性能模式,2表示低性能模式 但是2可以获取更多信息 不配置默认为1-->
+        <runModel>2</runModel>
+        <!-- 整合其他链路插件,启用下面配置 sleuth表示整合springcloud.sleuth-->
+        <expand>sleuth</expand>
+    </appender>
+
+    <!-- 日志输出级别 -->
+    <root level="INFO">
+        <appender-ref ref="plumelog"/>
+    </root>
+</configuration>

+ 7 - 10
fw-sample-mqc/src/main/java/com/xc/srm/mqc/MqcApplication.java → fw-sample-api/src/main/java/com/mokasz/sample/api/ApiApplication.java

@@ -1,30 +1,27 @@
-package com.xc.srm.mqc;
+package com.mokasz.sample.api;
 
+import com.alibaba.nacos.api.config.ConfigType;
 import com.alibaba.nacos.spring.context.annotation.config.EnableNacosConfig;
 import com.alibaba.nacos.spring.context.annotation.config.NacosPropertySource;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.dubbo.config.spring.context.annotation.EnableDubbo;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration;
-import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
 import org.springframework.cloud.openfeign.EnableFeignClients;
 import org.springframework.context.annotation.ComponentScan;
 import org.springframework.retry.annotation.EnableRetry;
 import org.springframework.scheduling.annotation.EnableAsync;
 
-
 @EnableNacosConfig
 @SpringBootApplication
 @Slf4j
 @ComponentScan(basePackages = {"com.mokasz.sample"})
 @EnableAsync
-@EnableDubbo
-@EnableFeignClients(basePackages = {"com.mokasz.sample.manager"})
-@NacosPropertySource(dataId = "sample-db", groupId = "fw-sample", autoRefreshed = true)
 @EnableRetry
-public class MqcApplication {
+@EnableFeignClients(basePackages = {"com.mokasz.sample.manager"})
+@NacosPropertySource(dataId = "sample-db", groupId = "fw-sample", type = ConfigType.YAML,autoRefreshed = true)
+@NacosPropertySource(dataId = "sample-common", groupId = "fw-sample", type = ConfigType.YAML, autoRefreshed = true)
+public class ApiApplication {
     public static void main(String[] args) {
-        SpringApplication.run(MqcApplication.class, args);
+        SpringApplication.run(ApiApplication.class, args);
     }
 }

+ 1 - 1
fw-sample-api/src/main/java/com/xc/srm/api/controller/LoginApiController.java → fw-sample-api/src/main/java/com/mokasz/sample/api/controller/LoginApiController.java

@@ -1,4 +1,4 @@
-package com.xc.srm.api.controller;
+package com.mokasz.sample.api.controller;
 
 
 import com.mokasz.sample.common.annotation.GlobalApiResponse;

+ 3 - 3
fw-sample-api/src/main/resources/application-dev.properties

@@ -1,12 +1,12 @@
 #注册中心
-nacos.config.server-addr=10.100.2.46:8848
-nacos.config.namespace=qa
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=dev
 #
 #
 #log
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
 plumelog.redisHost=10.100.2.54
-plumelog.redisAuth=plumelogredis
+plumelog.redisAuth=
 plumelog.redisPort=6379
 #logback
 logging.config=classpath:logconfig/logback-dev.xml

+ 5 - 4
fw-sample-api/src/main/resources/application-prod.properties

@@ -1,8 +1,9 @@
 ##nacos配置中心
-nacos.config.server-addr=nacos.xc-inc.cn:8848
-nacos.config.namespace=7671e08b-db1c-4256-8515-b2eaa75634a8
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=prod
 ##plumelog
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
-plumelog.redisHost=r-bp12goy2tc8hlbpi6t.redis.rds.aliyuncs.com
-plumelog.redisAuth=Plumelog666
+plumelog.redisHost=
+plumelog.redisAuth=
 plumelog.redisPort=6379
+

+ 3 - 4
fw-sample-api/src/main/resources/application-qa.properties

@@ -1,12 +1,11 @@
 #注册中心
-nacos.config.server-addr=10.100.2.46:8848
+nacos.config.server-addr=172.18.71.46:8848
 nacos.config.namespace=qa
 #
 #
 #log
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
 plumelog.redisHost=10.100.2.54
-plumelog.redisAuth=plumelogredis
+plumelog.redisAuth=
 plumelog.redisPort=6379
-#port
-dubbo.protocol.port=20888
+

+ 5 - 4
fw-sample-api/src/main/resources/application-stage.properties

@@ -1,8 +1,9 @@
 ##nacos配置中心
-nacos.config.server-addr=nacos.xc-inc.cn:8848
-nacos.config.namespace=de149f1e-f619-460c-9d6c-5721a2da5587
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=stage
 #plumelog
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
-plumelog.redisHost=r-bp12goy2tc8hlbpi6t.redis.rds.aliyuncs.com
-plumelog.redisAuth=Plumelog666
+plumelog.redisHost=
+plumelog.redisAuth=
 plumelog.redisPort=6379
+

+ 3 - 28
fw-sample-api/src/main/resources/application.properties

@@ -1,6 +1,6 @@
-server.port=9090
+server.port=8080
 #健康检查
-management.server.port=19090
+management.server.port=18080
 management.endpoint.shutdown.enabled=true
 management.endpoint.health.show-details=always
 management.endpoints.web.exposure.include=*
@@ -10,30 +10,5 @@ spring.profiles.active=@spring.profiles.active@
 #
 spring.servlet.multipart.max-request-size=50MB
 spring.servlet.multipart.max-file-size=50MB
-#logback
-logging.config=classpath:logconfig/logback.xml
-#解密salt
-jasypt.encryptor.password=tongchengshenghuo
-#nacos-dubbo
-nacos.maxRetry=3
-nacos.configLongPollTimeout=30000
-nacos.configRetryTime=2000
-#spring-boot-admin
-nacos.discovery.auto-register=true
-nacos.discovery.register.group-name=APPLICATION
-spring.boot.admin.client.instance.metadata.user.name=admin
-spring.boot.admin.client.instance.metadata.user.password=admin
-#dubbo provider port
-dubbo.protocol.port=20880
-dubbo.provider.timeout=3000
-dubbo.provider.retries=0
-# 服务提供方版本
-provider.service.version=1.0.0
-# 服务消费方版本
-consumer.service.version=1.0.0
-
 
-aliyun.sms.accessKeyId=LTAIBnJJGLlFrF6o
-aliyun.sms.accessSecret=thMV7ngP9KXtFjbhGlx8Sie08hMO76
-aliyun.sms.regionId=cn-hangzhou
-aliyun.sms.templateId = SMS_183246340
+logging.config=classpath:logconfig/logback.xml

+ 0 - 3
fw-sample-api/src/main/resources/logconfig/logback.xml

@@ -56,9 +56,6 @@
         <expand>sleuth</expand>
     </appender>
 
-    <!-- 打开看debug -->
-    <!--    <logger name="com.xc.srm.mapper" level="debug"></logger>-->
-
     <!-- 日志输出级别 -->
     <root level="INFO">
         <appender-ref ref="plumelog"/>

+ 36 - 0
fw-sample-api/src/test/java/com/mokasz/sample/test/AplicationTest.java

@@ -0,0 +1,36 @@
+package com.mokasz.sample.test;
+
+import com.mokasz.sample.api.ApiApplication;
+import com.mokasz.sample.mapper.entity.DictENT;
+import com.mokasz.sample.service.AdminLogService;
+import com.mokasz.sample.service.DictService;
+import lombok.extern.slf4j.Slf4j;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.test.context.web.WebAppConfiguration;
+
+import java.util.List;
+
+@RunWith(SpringJUnit4ClassRunner.class)
+@SpringBootTest(classes = ApiApplication.class)
+@WebAppConfiguration
+@Slf4j
+public class AplicationTest {
+
+    @Autowired
+    private DictService dictService;
+
+
+    @Test
+    public void getDictByGroupCode() {
+        String groupCode = "GOOD_TAG";
+        List<DictENT> list = dictService.lambdaQuery().eq(DictENT::getGroupCode, groupCode).list();
+        list.forEach(d -> {
+            log.info("{} - {}", d.getKeyCode(), d.getValue());
+        });
+    }
+
+}

+ 4 - 4
fw-sample-job/src/main/java/com/mokasz/sample/job/JobApplication.java → fw-sample-job/src/main/java/com/mokasz/sample/JobApplication.java

@@ -1,5 +1,6 @@
-package com.mokasz.sample.job;
+package com.mokasz.sample;
 
+import com.alibaba.nacos.api.config.ConfigType;
 import com.alibaba.nacos.spring.context.annotation.config.EnableNacosConfig;
 import com.alibaba.nacos.spring.context.annotation.config.NacosPropertySource;
 import lombok.extern.slf4j.Slf4j;
@@ -15,11 +16,10 @@ import org.springframework.scheduling.annotation.EnableAsync;
 @EnableNacosConfig
 @SpringBootApplication
 @Slf4j
-@ComponentScan(basePackages = {"com.mokasz.sample"})
 @EnableAsync
-@EnableDubbo
 @EnableFeignClients(basePackages = {"com.mokasz.sample.manager"})
-@NacosPropertySource(dataId = "fw-sample-db", groupId = "fw-sample", autoRefreshed = true)
+@NacosPropertySource(dataId = "sample-db", groupId = "fw-sample", type = ConfigType.YAML,autoRefreshed = true)
+@NacosPropertySource(dataId = "sample-common", groupId = "fw-sample", type = ConfigType.YAML, autoRefreshed = true)
 public class JobApplication {
     public static void main(String[] args) {
         SpringApplication.run(JobApplication.class, args);

+ 27 - 0
fw-sample-job/src/main/java/com/mokasz/sample/job/controller/SimpleJobController.java

@@ -0,0 +1,27 @@
+package com.mokasz.sample.job.controller;
+
+import com.mokasz.sample.common.model.ApiResponse;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Map;
+
+@RequestMapping(value = "/job/any/{jobName}")
+@Slf4j
+@RestController
+@Api(description = "任意任务", tags = "job")
+public class SimpleJobController {
+
+    @ApiOperation(value = "执行", notes = "执行简单示例任务")
+    @RequestMapping(value = "/execute", method = {RequestMethod.POST, RequestMethod.GET})
+    public ApiResponse execute(
+            @ApiParam("任务名称") @PathVariable("jobName") String jobName,
+            @ApiParam("参数") @RequestParam Map<String, String> args) {
+
+        String realJobName = jobName.concat("JobHandler");
+        return ApiResponse.OK;
+    }
+}

+ 2 - 4
fw-sample-job/src/main/resources/application-dev.properties

@@ -1,16 +1,14 @@
 #注册中心
-nacos.config.server-addr=10.100.2.46:8848
+nacos.config.server-addr=172.18.71.46:8848
 nacos.config.namespace=dev
 #
 #
 #log
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
 plumelog.redisHost=10.100.2.54
-plumelog.redisAuth=plumelogredis
+plumelog.redisAuth=
 plumelog.redisPort=6379
 #logback
 logging.config=classpath:logconfig/logback-dev.xml
-#开启所有端点
-management.endpoints.web.exposure.include=*
 #mybatis plus
 mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

+ 5 - 8
fw-sample-job/src/main/resources/application-prod.properties

@@ -1,12 +1,9 @@
-server.port=9092
-
-
 ##nacos配置中心
-nacos.config.server-addr=nacos.xc-inc.cn:8848
-nacos.config.namespace=7671e08b-db1c-4256-8515-b2eaa75634a8
-
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=prod
 ##plumelog
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
-plumelog.redisHost=r-bp12goy2tc8hlbpi6t.redis.rds.aliyuncs.com
-plumelog.redisAuth=Plumelog666
+plumelog.redisHost=
+plumelog.redisAuth=
 plumelog.redisPort=6379
+

+ 3 - 4
fw-sample-job/src/main/resources/application-qa.properties

@@ -1,12 +1,11 @@
 #注册中心
-nacos.config.server-addr=10.100.2.46:8848
+nacos.config.server-addr=172.18.71.46:8848
 nacos.config.namespace=qa
 #
 #
 #log
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
 plumelog.redisHost=10.100.2.54
-plumelog.redisAuth=plumelogredis
+plumelog.redisAuth=
 plumelog.redisPort=6379
-#开启所有端点
-management.endpoints.web.exposure.include=*
+

+ 5 - 7
fw-sample-job/src/main/resources/application-stage.properties

@@ -1,11 +1,9 @@
-server.port=9092
-
 ##nacos配置中心
-nacos.config.server-addr=nacos.xc-inc.cn:8848
-nacos.config.namespace=de149f1e-f619-460c-9d6c-5721a2da5587
-
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=stage
 #plumelog
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
-plumelog.redisHost=r-bp12goy2tc8hlbpi6t.redis.rds.aliyuncs.com
-plumelog.redisAuth=Plumelog666
+plumelog.redisHost=
+plumelog.redisAuth=
 plumelog.redisPort=6379
+

+ 6 - 25
fw-sample-job/src/main/resources/application.properties

@@ -1,33 +1,14 @@
-server.port=9091
-spring.application.name=fw-sample-job
-spring.profiles.active=@spring.profiles.active@
+server.port=8080
 #健康检查
-management.server.port=19091
+management.server.port=18080
 management.endpoint.shutdown.enabled=true
 management.endpoint.health.show-details=always
 management.endpoints.web.exposure.include=*
 #
+spring.application.name=fw-sample-job
+spring.profiles.active=@spring.profiles.active@
+#
 spring.servlet.multipart.max-request-size=50MB
 spring.servlet.multipart.max-file-size=50MB
-#logback
-logging.config=classpath:logconfig/logback.xml
-#解密salt
-jasypt.encryptor.password=tongchengshenghuo
-#nacos-dubbo
-nacos.maxRetry=3
-nacos.configLongPollTimeout=30000
-nacos.configRetryTime=2000
-#spring-boot-admin
-nacos.discovery.auto-register=true
-nacos.discovery.register.group-name=APPLICATION
-spring.boot.admin.client.instance.metadata.user.name=admin
-spring.boot.admin.client.instance.metadata.user.password=admin
-# 服务提供方版本
-provider.service.version=1.0.0
-# 服务消费方版本
-consumer.service.version=1.0.0
 
-aliyun.sms.accessKeyId=LTAIBnJJGLlFrF6o
-aliyun.sms.accessSecret=thMV7ngP9KXtFjbhGlx8Sie08hMO76
-aliyun.sms.regionId=cn-hangzhou
-aliyun.sms.templateId = SMS_183246340
+logging.config=classpath:logconfig/logback.xml

+ 2 - 2
fw-sample-job/src/main/resources/logconfig/logback-dev.xml

@@ -56,8 +56,8 @@
         <expand>sleuth</expand>
     </appender>
 
-    <!-- 打开看debug -->
-    <logger name="com.xc.srm.mapper" level="debug"></logger>
+    <!-- 开发期间查看sql输出用 -->
+    <logger name="com.mokasz.sample.mapper" level="DEBUG" />
 
     <!-- 日志输出级别 -->
     <root level="INFO">

+ 9 - 8
fw-sample-api/src/main/java/com/xc/srm/api/ApiApplication.java → fw-sample-mqc/src/main/java/com/mokasz/sample/MqcApplication.java

@@ -1,25 +1,26 @@
-package com.xc.srm.api;
+package com.mokasz.sample;
 
+import com.alibaba.nacos.api.config.ConfigType;
 import com.alibaba.nacos.spring.context.annotation.config.EnableNacosConfig;
+import com.alibaba.nacos.spring.context.annotation.config.NacosPropertySource;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.dubbo.config.spring.context.annotation.EnableDubbo;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.cloud.openfeign.EnableFeignClients;
-import org.springframework.context.annotation.ComponentScan;
 import org.springframework.retry.annotation.EnableRetry;
 import org.springframework.scheduling.annotation.EnableAsync;
 
+
 @EnableNacosConfig
 @SpringBootApplication
 @Slf4j
-@ComponentScan(basePackages = {"com.xc.srm"})
 @EnableAsync
+@EnableFeignClients(basePackages = {"com.mokasz.sample.manager"})
+@NacosPropertySource(dataId = "sample-db", groupId = "fw-sample", type = ConfigType.YAML,autoRefreshed = true)
+@NacosPropertySource(dataId = "sample-common", groupId = "fw-sample", type = ConfigType.YAML, autoRefreshed = true)
 @EnableRetry
-@EnableDubbo(scanBasePackages = "com.xc.srm.rpc.impl")
-@EnableFeignClients(basePackages = {"com.xc.srm.manager"})
-public class ApiApplication {
+public class MqcApplication {
     public static void main(String[] args) {
-        SpringApplication.run(ApiApplication.class, args);
+        SpringApplication.run(MqcApplication.class, args);
     }
 }

+ 3 - 6
fw-sample-mqc/src/main/resources/application-dev.properties

@@ -1,17 +1,14 @@
-server.port=9094
 #注册中心
-nacos.config.server-addr=10.100.2.46:8848
-nacos.config.namespace=qa
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=dev
 #
 #
 #log
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
 plumelog.redisHost=10.100.2.54
-plumelog.redisAuth=plumelogredis
+plumelog.redisAuth=
 plumelog.redisPort=6379
 #logback
 logging.config=classpath:logconfig/logback-dev.xml
-#开启所有端点
-management.endpoints.web.exposure.include=*
 #mybatis plus
 mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

+ 5 - 7
fw-sample-mqc/src/main/resources/application-prod.properties

@@ -1,11 +1,9 @@
-server.port=9094
-
 ##nacos配置中心
-nacos.config.server-addr=nacos.xc-inc.cn:8848
-nacos.config.namespace=7671e08b-db1c-4256-8515-b2eaa75634a8
-
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=prod
 ##plumelog
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
-plumelog.redisHost=r-bp12goy2tc8hlbpi6t.redis.rds.aliyuncs.com
-plumelog.redisAuth=Plumelog666
+plumelog.redisHost=
+plumelog.redisAuth=
 plumelog.redisPort=6379
+

+ 3 - 4
fw-sample-mqc/src/main/resources/application-qa.properties

@@ -1,12 +1,11 @@
 #注册中心
-nacos.config.server-addr=10.100.2.46:8848
+nacos.config.server-addr=172.18.71.46:8848
 nacos.config.namespace=qa
 #
 #
 #log
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
 plumelog.redisHost=10.100.2.54
-plumelog.redisAuth=plumelogredis
+plumelog.redisAuth=
 plumelog.redisPort=6379
-#开启所有端点
-management.endpoints.web.exposure.include=*
+

+ 5 - 7
fw-sample-mqc/src/main/resources/application-stage.properties

@@ -1,11 +1,9 @@
-server.port=9094
-
 ##nacos配置中心
-nacos.config.server-addr=nacos.xc-inc.cn:8848
-nacos.config.namespace=de149f1e-f619-460c-9d6c-5721a2da5587
-
+nacos.config.server-addr=172.18.71.46:8848
+nacos.config.namespace=stage
 #plumelog
 plumelog.appName=${spring.application.name}-${spring.profiles.active}
-plumelog.redisHost=r-bp12goy2tc8hlbpi6t.redis.rds.aliyuncs.com
-plumelog.redisAuth=Plumelog666
+plumelog.redisHost=
+plumelog.redisAuth=
 plumelog.redisPort=6379
+

+ 4 - 20
fw-sample-mqc/src/main/resources/application.properties

@@ -1,30 +1,14 @@
-server.port=9094
+server.port=8080
 #健康检查
-management.server.port=19094
+management.server.port=18080
 management.endpoint.shutdown.enabled=true
 management.endpoint.health.show-details=always
 management.endpoints.web.exposure.include=*
 #
-spring.application.name=xc-srm-mqc
+spring.application.name=fw-sample-mqc
 spring.profiles.active=@spring.profiles.active@
 #
 spring.servlet.multipart.max-request-size=50MB
 spring.servlet.multipart.max-file-size=50MB
-#logback
-logging.config=classpath:logconfig/logback.xml
-#解密salt
-jasypt.encryptor.password=tongchengshenghuo
-#nacos-dubbo
-nacos.maxRetry=3
-nacos.configLongPollTimeout=30000
-nacos.configRetryTime=2000
-#spring-boot-admin
-nacos.discovery.auto-register=true
-nacos.discovery.register.group-name=APPLICATION
-spring.boot.admin.client.instance.metadata.user.name=admin
-spring.boot.admin.client.instance.metadata.user.password=admin
 
-aliyun.sms.accessKeyId=LTAIBnJJGLlFrF6o
-aliyun.sms.accessSecret=thMV7ngP9KXtFjbhGlx8Sie08hMO76
-aliyun.sms.regionId=cn-hangzhou
-aliyun.sms.templateId = SMS_183246340
+logging.config=classpath:logconfig/logback.xml

+ 2 - 2
fw-sample-mqc/src/main/resources/logconfig/logback-dev.xml

@@ -56,8 +56,8 @@
         <expand>sleuth</expand>
     </appender>
 
-    <!-- 打开看debug -->
-    <logger name="com.xc.srm.mapper" level="debug"></logger>
+    <!-- 开发期间查看sql输出用 -->
+    <logger name="com.mokasz.sample.mapper" level="DEBUG" />
 
     <!-- 日志输出级别 -->
     <root level="INFO">

+ 4 - 0
fw-sample-mqc/src/test/java/com/mokasz/sample/mqc/test/MqcTest.java

@@ -0,0 +1,4 @@
+package com.mokasz.sample.mqc.test;
+
+public class MqcTest {
+}

+ 0 - 4
fw-sample-mqc/src/test/java/com/xc/srm/mqc/test/MqcTest.java

@@ -1,4 +0,0 @@
-package com.xc.srm.mqc.test;
-
-public class MqcTest {
-}

+ 8 - 0
fw-sample-rpc/src/main/java/com/mokasz/sample/rpc/SampleRpcService.java

@@ -0,0 +1,8 @@
+package com.mokasz.sample.rpc;
+
+import com.mokasz.sample.rpc.query.SampleRpcQuery;
+import com.mokasz.sample.rpc.vo.SampleRpcVO;
+
+public interface SampleRpcService {
+    SampleRpcVO hello(SampleRpcQuery sampleRpcQuery);
+}

+ 1 - 1
fw-sample-rpc/src/main/java/com/xc/srm/rpc/query/SampleRpcQuery.java → fw-sample-rpc/src/main/java/com/mokasz/sample/rpc/query/SampleRpcQuery.java

@@ -1,4 +1,4 @@
-package com.xc.srm.rpc.query;
+package com.mokasz.sample.rpc.query;
 
 import java.io.Serializable;
 

+ 1 - 1
fw-sample-rpc/src/main/java/com/xc/srm/rpc/vo/SampleRpcVO.java → fw-sample-rpc/src/main/java/com/mokasz/sample/rpc/vo/SampleRpcVO.java

@@ -1,4 +1,4 @@
-package com.xc.srm.rpc.vo;
+package com.mokasz.sample.rpc.vo;
 
 import java.io.Serializable;
 

+ 0 - 8
fw-sample-rpc/src/main/java/com/xc/srm/rpc/SampleRpcService.java

@@ -1,8 +0,0 @@
-package com.xc.srm.rpc;
-
-import com.xc.srm.rpc.query.SampleRpcQuery;
-import com.xc.srm.rpc.vo.SampleRpcVO;
-
-public interface SampleRpcService {
-    SampleRpcVO hello(SampleRpcQuery sampleRpcQuery);
-}

+ 5 - 5
fw-sample-service/pom.xml

@@ -271,11 +271,11 @@
             <version>3.0.3</version>
         </dependency>
 
-        <dependency>
-            <groupId>org.apache.dubbo</groupId>
-            <artifactId>dubbo-spring-boot-starter</artifactId>
-            <version>${dubbo.version}</version>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>org.apache.dubbo</groupId>-->
+<!--            <artifactId>dubbo-spring-boot-starter</artifactId>-->
+<!--            <version>${dubbo.version}</version>-->
+<!--        </dependency>-->
 
         <dependency>
             <groupId>de.codecentric</groupId>

+ 1 - 1
fw-sample-service/src/main/java/com/mokasz/sample/admin/query/AdminLogQuery.java

@@ -13,7 +13,7 @@ public class AdminLogQuery extends BasePageQuery {
     private String operator;
 
     /** userId */
-    private String userId;
+    private String operatorId;
 
     /** IP */
     private String ip;

+ 1 - 1
fw-sample-service/src/main/java/com/mokasz/sample/common/aspect/ExceptionControllerAdvice.java

@@ -25,7 +25,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-@RestControllerAdvice(basePackages = {"com.xc.srm.api.controller", "com.xc.srm.admin.controller"})
+@RestControllerAdvice(basePackages = {"com.mokasz.sample.api.controller", "com.mokasz.sample.admin.controller"})
 @Slf4j
 public class ExceptionControllerAdvice {
 

+ 1 - 1
fw-sample-service/src/main/java/com/mokasz/sample/common/aspect/GlobalApiResponseControllerAdvice.java

@@ -14,7 +14,7 @@ import org.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice;
 import com.mokasz.sample.common.model.ApiResponse;
 
 
-@RestControllerAdvice(value = {"com.xc.srm.api.controller", "com.xc.srm.admin.controller"})
+@RestControllerAdvice(value = {"com.mokasz.sample.api.controller", "com.mokasz.sample.admin.controller"})
 @Slf4j
 public class GlobalApiResponseControllerAdvice implements ResponseBodyAdvice<Object> {
 

+ 1 - 1
fw-sample-service/src/main/java/com/mokasz/sample/common/aspect/LogControllerAspect.java

@@ -29,7 +29,7 @@ import java.util.Map;
 @Slf4j
 public class LogControllerAspect {
 
-    @Pointcut("execution(* com.xc.srm.*.controller.*.*(..))")
+    @Pointcut("execution(* com.mokasz.sample.*.controller.*.*(..))")
     private void pointcut() {
     }
 

+ 2 - 0
fw-sample-service/src/main/java/com/mokasz/sample/common/config/XxlSsoConfig.java

@@ -5,12 +5,14 @@ import com.xxl.sso.core.filter.XxlSsoWebVueFilter;
 import com.xxl.sso.core.util.JedisUtil;
 import org.springframework.beans.factory.DisposableBean;
 import org.springframework.beans.factory.annotation.Value;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
 import org.springframework.boot.context.properties.ConfigurationProperties;
 import org.springframework.boot.web.servlet.FilterRegistrationBean;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
 
+@ConditionalOnProperty(prefix = "xxl.sso", name = "server")
 @Configuration
 @ConfigurationProperties(prefix = "xxl.sso")
 public class XxlSsoConfig implements DisposableBean {

+ 0 - 12
fw-sample-service/src/main/java/com/mokasz/sample/common/exception/CommonBizRpcException.java

@@ -1,12 +0,0 @@
-package com.mokasz.sample.common.exception;
-
-import org.apache.dubbo.rpc.RpcException;
-
-public class CommonBizRpcException extends RpcException {
-    private String msg;
-
-    public CommonBizRpcException(String msg) {
-        super(msg);
-        this.msg = msg;
-    }
-}

+ 0 - 14
fw-sample-service/src/main/java/com/mokasz/sample/common/exception/SampleRpcException.java

@@ -1,14 +0,0 @@
-package com.mokasz.sample.common.exception;
-
-import org.apache.dubbo.rpc.RpcException;
-
-public class SampleRpcException extends RpcException {
-    private Integer code;
-    private String msg;
-
-    public SampleRpcException(Integer code, String msg) {
-        super(msg);
-        this.code = code;
-        this.msg = msg;
-    }
-}

+ 51 - 51
fw-sample-service/src/main/java/com/mokasz/sample/common/filter/LogDubboFilter.java

@@ -1,51 +1,51 @@
-package com.mokasz.sample.common.filter;
-
-import cn.hutool.core.exceptions.ExceptionUtil;
-import com.alibaba.fastjson.JSON;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.dubbo.common.extension.Activate;
-import org.apache.dubbo.rpc.*;
-
-import java.time.Duration;
-import java.time.Instant;
-import java.util.Date;
-
-import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER;
-import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER;
-
-@Activate(group = {CONSUMER, PROVIDER})
-@Slf4j
-public class LogDubboFilter implements Filter {
-    @Override
-    public Result invoke(Invoker<?> invoker, Invocation invocation) throws RpcException {
-        Instant begin = new Date().toInstant();
-        log.debug("[LogDubboFilter]开始:InterfaceName={},MethodName={},Parameter={}",
-                invocation.getInvoker().getInterface().getName(),
-                invocation.getMethodName(),
-                invocation.getArguments());
-
-        Result result = invoker.invoke(invocation);
-        Instant end = new Date().toInstant();
-
-        if (result.hasException()) {
-            log.error("[LogDubboFilter]异常:InterfaceName={},MethodName={},Parameter={},ex:{}"
-                    , invocation.getInvoker().getInterface().getName()
-                    , invocation.getMethodName()
-                    , invocation.getArguments()
-                    , ExceptionUtil.stacktraceToString(result.getException()));
-            return result;
-        }
-
-        log.info("[LogDubboFilter]结束:InterfaceName={},MethodName={},Parameter={},response:{},cost:{},speed:{}"
-                , invocation.getInvoker().getInterface().getName()
-                , invocation.getMethodName()
-                , invocation.getArguments()
-                , JSON.toJSONString(result.getValue())
-                , Duration.between(begin, end).toMillis()
-                , Duration.between(begin, end).toMillis() > 500 ? "<<slow>>" : "<<fast>>");
-
-        return result;
-    }
-}
-
-
+//package com.mokasz.sample.common.filter;
+//
+//import cn.hutool.core.exceptions.ExceptionUtil;
+//import com.alibaba.fastjson.JSON;
+//import lombok.extern.slf4j.Slf4j;
+//import org.apache.dubbo.common.extension.Activate;
+//import org.apache.dubbo.rpc.*;
+//
+//import java.time.Duration;
+//import java.time.Instant;
+//import java.util.Date;
+//
+//import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER;
+//import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER;
+//
+//@Activate(group = {CONSUMER, PROVIDER})
+//@Slf4j
+//public class LogDubboFilter implements Filter {
+//    @Override
+//    public Result invoke(Invoker<?> invoker, Invocation invocation) throws RpcException {
+//        Instant begin = new Date().toInstant();
+//        log.debug("[LogDubboFilter]开始:InterfaceName={},MethodName={},Parameter={}",
+//                invocation.getInvoker().getInterface().getName(),
+//                invocation.getMethodName(),
+//                invocation.getArguments());
+//
+//        Result result = invoker.invoke(invocation);
+//        Instant end = new Date().toInstant();
+//
+//        if (result.hasException()) {
+//            log.error("[LogDubboFilter]异常:InterfaceName={},MethodName={},Parameter={},ex:{}"
+//                    , invocation.getInvoker().getInterface().getName()
+//                    , invocation.getMethodName()
+//                    , invocation.getArguments()
+//                    , ExceptionUtil.stacktraceToString(result.getException()));
+//            return result;
+//        }
+//
+//        log.info("[LogDubboFilter]结束:InterfaceName={},MethodName={},Parameter={},response:{},cost:{},speed:{}"
+//                , invocation.getInvoker().getInterface().getName()
+//                , invocation.getMethodName()
+//                , invocation.getArguments()
+//                , JSON.toJSONString(result.getValue())
+//                , Duration.between(begin, end).toMillis()
+//                , Duration.between(begin, end).toMillis() > 500 ? "<<slow>>" : "<<fast>>");
+//
+//        return result;
+//    }
+//}
+//
+//

+ 0 - 26
fw-sample-service/src/main/java/com/mokasz/sample/common/filter/TraceIdConsumerDubboFilter.java

@@ -1,26 +0,0 @@
-package com.mokasz.sample.common.filter;
-
-import com.plumelog.core.TraceId;
-import com.plumelog.core.util.IdWorker;
-import org.apache.dubbo.common.extension.Activate;
-import org.apache.dubbo.rpc.*;
-import org.springframework.util.StringUtils;
-
-import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER;
-
-@Activate(group = CONSUMER)
-public class TraceIdConsumerDubboFilter implements Filter {
-    private static final String TRACE_ID = "trace_id";
-
-    @Override
-    public Result invoke(Invoker<?> invoker, Invocation invocation) throws RpcException {
-        String traceId = TraceId.logTraceID.get();
-        if (StringUtils.isEmpty(traceId)) {
-            IdWorker worker = new IdWorker(1, 1, 1);
-            traceId = String.valueOf(worker.nextId());
-            TraceId.logTraceID.set(traceId);
-        }
-        invocation.setAttachment(TRACE_ID, traceId);
-        return invoker.invoke(invocation);
-    }
-}

+ 0 - 25
fw-sample-service/src/main/java/com/mokasz/sample/common/filter/TraceIdProviderDubboFilter.java

@@ -1,25 +0,0 @@
-package com.mokasz.sample.common.filter;
-
-import com.plumelog.core.TraceId;
-import com.plumelog.core.util.IdWorker;
-import org.apache.dubbo.common.extension.Activate;
-import org.apache.dubbo.rpc.*;
-import org.springframework.util.StringUtils;
-
-import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER;
-
-@Activate(group = PROVIDER)
-public class TraceIdProviderDubboFilter implements Filter {
-    private static final String TRACE_ID = "trace_id";
-
-    @Override
-    public Result invoke(Invoker<?> invoker, Invocation invocation) throws RpcException {
-        String traceId = invocation.getAttachment(TRACE_ID);
-        if (StringUtils.isEmpty(traceId)) {
-            IdWorker worker = new IdWorker(1, 1, 1);
-            traceId = String.valueOf(worker.nextId());
-        }
-        TraceId.logTraceID.set(traceId);
-        return invoker.invoke(invocation);
-    }
-}

+ 55 - 0
fw-sample-service/src/main/java/com/mokasz/sample/common/filter/XxlSSOFilter.java

@@ -0,0 +1,55 @@
+package com.mokasz.sample.common.filter;
+
+import com.mokasz.sample.common.context.ApiContext;
+import com.mokasz.sample.common.model.ApiContextModel;
+import com.plumelog.core.util.LogExceptionStackTrace;
+import com.xxl.sso.core.conf.Conf;
+import com.xxl.sso.core.user.XxlSsoUser;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.core.annotation.Order;
+import org.springframework.http.HttpMethod;
+
+import javax.servlet.*;
+import javax.servlet.annotation.WebFilter;
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+
+/**
+ * @author pdl
+ **/
+@WebFilter(urlPatterns = "/admin/*", filterName = "ssoFilter")
+public class XxlSSOFilter implements Filter {
+
+    private static final Logger logger = LoggerFactory.getLogger(XxlSSOFilter.class);
+
+    @Override
+    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
+        try {
+            HttpServletRequest hreq = (HttpServletRequest) servletRequest;
+
+            if (hreq.getMethod().equalsIgnoreCase(HttpMethod.OPTIONS.name())) {
+                filterChain.doFilter(servletRequest, servletResponse);
+                return;
+            }
+
+            XxlSsoUser xxlSsoUser = (XxlSsoUser) hreq.getAttribute(Conf.SSO_USER);
+            if (null != xxlSsoUser) {
+                ApiContextModel adminContextModel = new ApiContextModel(xxlSsoUser.getUserid(), xxlSsoUser.getUsername());
+                ApiContext.setApiContextModel(adminContextModel);
+            }
+            filterChain.doFilter(servletRequest, servletResponse);
+        } catch (Exception e) {
+            logger.error("系统操作日志过滤器发生异常:{}", LogExceptionStackTrace.erroStackTrace(e));
+            filterChain.doFilter(servletRequest, servletResponse);
+        }
+    }
+
+
+    @Override
+    public void destroy() {
+        ApiContext.removeApiContextModel();
+    }
+
+}
+

+ 15 - 6
fw-sample-service/src/main/java/com/mokasz/sample/common/filter/AdminLogFilter.java → fw-sample-service/src/main/java/com/mokasz/sample/common/filter/ZAdminLogFilter.java

@@ -1,5 +1,7 @@
 package com.mokasz.sample.common.filter;
 
+import cn.hutool.core.date.DatePattern;
+import cn.hutool.core.date.DateUtil;
 import com.alibaba.fastjson.JSON;
 import com.mokasz.sample.common.context.ApiContext;
 import com.mokasz.sample.common.model.ApiContextModel;
@@ -20,11 +22,17 @@ import javax.servlet.http.HttpServletRequest;
 import java.io.IOException;
 import java.util.Date;
 
-@WebFilter(urlPatterns = "/admin/*", filterName = "adminLog")
-public class AdminLogFilter implements Filter {
+/**
+ * ZadminLogFilter 为什么要取这个名字;
+ * 针对WebFilter(servlet api)的Order(spring)是无效的,是按照文件名字进行排序的;
+ *
+ * 或者改成通过FilterRegistrationBean进行注入
+ */
+@WebFilter(urlPatterns = "/admin/*", filterName = "zAdminLog")
+public class ZAdminLogFilter implements Filter {
 
     private AdminLogMapper adminLogMapper;
-    private static final Logger logger = LoggerFactory.getLogger(AdminLogFilter.class);
+    private static final Logger logger = LoggerFactory.getLogger(ZAdminLogFilter.class);
 
     @Override
     public void init(FilterConfig filterConfig) throws ServletException {
@@ -58,15 +66,16 @@ public class AdminLogFilter implements Filter {
             filterChain.doFilter(requestWrapper, servletResponse);
 
             AdminLogENT ent = new AdminLogENT();
+            Date now =new Date();
             ent.setParameter(JSON.toJSONString(servletRequest.getParameterMap()));
-            ent.setCreateTime(new Date());
-            ent.setMethod(hreq.getMethod());
+            ent.setCreateTime(now);
             String body = IOUtils.toString(requestWrapper.getBody(), requestWrapper.getCharacterEncoding());
             ent.setPayload(body);
             ent.setUri(uri);
             ent.setIp(CommonUtil.getClientIp(hreq));
             ent.setOperator(user.getUserName());
-            ent.setUserId(user.getUserId());
+            ent.setOperatorId(user.getUserId());
+            ent.setPartitionField(DateUtil.format(now, DatePattern.PURE_DATE_FORMAT));
             adminLogMapper.insert(ent);
         } catch (Exception e) {
             logger.error("系统操作日志过滤器发生异常:{}", LogExceptionStackTrace.erroStackTrace(e));

+ 4 - 0
fw-sample-service/src/main/java/com/mokasz/sample/common/model/ApiContextModel.java

@@ -22,4 +22,8 @@ public class ApiContextModel {
      */
     private String userName;
 
+    public ApiContextModel(String userId, String userName) {
+        this.userId = userId;
+        this.userName = userName;
+    }
 }

+ 9 - 9
fw-sample-service/src/main/java/com/mokasz/sample/mapper/entity/AdminLogENT.java

@@ -11,7 +11,7 @@ import java.io.Serializable;
 
 import java.util.Date;
 
-@TableName("fw_admin_log")
+@TableName("fn_admin_log")
 @Data
 public class AdminLogENT implements Serializable {
 
@@ -30,8 +30,8 @@ public class AdminLogENT implements Serializable {
     /**
      * 工号
      */
-    @TableField(value = "user_id")
-    private String userId;
+    @TableField(value = "operator_id")
+    private String operatorId;
 
     /**
      * IP
@@ -46,12 +46,6 @@ public class AdminLogENT implements Serializable {
     private String uri;
 
     /**
-     * 请求方法
-     */
-    @TableField(value = "method")
-    private String method;
-
-    /**
      * 请求参数
      */
     @TableField(value = "parameter")
@@ -64,6 +58,12 @@ public class AdminLogENT implements Serializable {
     private String payload;
 
     /**
+     * columnName:partition_field
+     * comment:日期分片字段
+     */
+    private String partitionField;
+
+    /**
      * 操作时间
      */
     @TableField(value = "create_time")

+ 5 - 5
fw-sample-service/src/main/java/com/mokasz/sample/rpc/impl/SampleRpcServiceImpl.java

@@ -1,11 +1,11 @@
 package com.mokasz.sample.rpc.impl;
 
-import com.xc.srm.rpc.SampleRpcService;
-import com.xc.srm.rpc.query.SampleRpcQuery;
-import com.xc.srm.rpc.vo.SampleRpcVO;
-import org.apache.dubbo.config.annotation.DubboService;
+import com.mokasz.sample.rpc.SampleRpcService;
+import com.mokasz.sample.rpc.query.SampleRpcQuery;
+import com.mokasz.sample.rpc.vo.SampleRpcVO;
+//import org.apache.dubbo.config.annotation.DubboService;
 
-@DubboService
+//@DubboService
 public class SampleRpcServiceImpl implements SampleRpcService {
 
     @Override

+ 17 - 0
fw-sample-service/src/main/java/com/mokasz/sample/service/impl/DictServiceImpl.java

@@ -0,0 +1,17 @@
+package com.mokasz.sample.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.mokasz.sample.mapper.AdminLogMapper;
+import com.mokasz.sample.mapper.DictMapper;
+import com.mokasz.sample.mapper.entity.AdminLogENT;
+import com.mokasz.sample.mapper.entity.DictENT;
+import com.mokasz.sample.service.AdminLogService;
+import com.mokasz.sample.service.DictService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+@Slf4j
+@Service
+public class DictServiceImpl extends ServiceImpl<DictMapper, DictENT> implements DictService {
+
+}

+ 3 - 3
fw-sample-service/src/main/resources/META-INF/dubbo/com.alibaba.dubbo.rpc.Filter

@@ -1,3 +1,3 @@
-traceIdProviderFilter=com.xc.srm.common.filter.TraceIdProviderDubboFilter
-traceIdConsumerFilter=com.xc.srm.common.filter.TraceIdConsumerDubboFilter
-logDubboFilter=com.xc.srm.common.filter.LogDubboFilter
+traceIdProviderFilter=com.mokasz.sample.common.filter.TraceIdProviderDubboFilter
+traceIdConsumerFilter=com.mokasz.sample.common.filter.TraceIdConsumerDubboFilter
+logDubboFilter=com.mokasz.sample.common.filter.LogDubboFilter

+ 7 - 66
fw-sample-service/src/test/java/com/mokasz/sample/service/test/CodeGenerator.java

@@ -9,77 +9,18 @@ import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 
+/**
+ * mybatisplus.generator
+ */
 public class CodeGenerator {
-    static final String dbName = "tcpoi";
-    static final String table_prefix = "xc_";
+    static final String dbName = "hyperion_free_novel";
+    static final String table_prefix = "fn_";
     static List<String> tableList = new ArrayList<>();
 
     static {
-        tableList.addAll(Arrays.asList("xc_crm_protect_white_poi"));
+        tableList.addAll(Arrays.asList("fn_admin_log"));
     }
 
-//    static {
-//        tableList.addAll(Arrays.asList(
-//                "xc_crm_customer",
-//                "xc_crm_call_customer",
-//                "xc_crm_call_record",
-//                "xc_crm_distribute_invite_record",
-//                "xc_crm_distribute_count",
-//                "xc_crm_distribute_report",
-//                "xc_crm_distribute_rescind",
-//                "xc_distribute_transfer",
-//                "xc_distribute_transfer_detail",
-//                "xc_crm_poi",
-//                "xc_crm_poi_change",
-//                "xc_crm_poi_review",
-//                "xc_crm_poi_review_record",
-//                "xc_crm_protect_config",
-//                "xc_crm_protect_region",
-//                "xc_gaode_category",
-//                "xc_crm_gaode_poi",
-//                "xc_crm_area_grid",
-//                "xc_crm_area_grid_relation",
-//                "xc_warehouse_region",
-//                "xc_crm_performance",
-//                "xc_crm_performance_admin",
-//                "xc_crm_performance_export_record",
-//                "xc_crm_performance_month",
-//                "xc_crm_group_open",
-//                "xc_crm_group_open_ext",
-//                "xc_crm_pickup_sale",
-//                "xc_crm_admin",
-//                "xc_crm_admin_ext",
-//                "xc_crm_admin_level",
-//                "xc_department",
-//                "xc_crm_region",
-//                "xc_crm_qrcode",
-//                "xc_crm_message",
-//                "xc_crm_message_user",
-//                "xc_crm_checkin",
-//                "xc_crm_checkin_statistics",
-//                "xc_crm_follow",
-//                "xc_crm_feedback",
-//                "xc_crm_feedback_log",
-//                "xc_crm_area_open",
-//                "xc_crm_board",
-//                "xc_crm_open_area",
-//                "xc_crm_report_area",
-//                "xc_crm_report_area_total",
-//                "xc_crm_report_town",
-//                "xc_crm_follow_by_admin_report",
-//                "xc_crm_distribute_undelivery_report",
-//                "xc_crm_distribute_undelivery_log",
-//                "xc_report_config",
-//                "xc_crm_business_data_record",
-//                "xc_crm_business_log",
-//                "xc_crm_common_log",
-//                "xc_crm_config",
-//                "xc_crm_crawl_pickup",
-//                "xc_crm_data_view_log",
-//                "xc_crm_system_permission",
-//                "xc_region"
-//        ));
-//    }
 
     public static void main(String[] args) {
         // 代码生成器
@@ -88,7 +29,7 @@ public class CodeGenerator {
         // 全局配置
         GlobalConfig gc = new GlobalConfig();
         String projectPath = System.getProperty("user.dir");
-        gc.setOutputDir(projectPath + "/tclife_crm_service/src/main/java");
+        gc.setOutputDir(projectPath + "/fw-sample-admin/src/main/java");
         gc.setAuthor("code generator");
         gc.setServiceName("%sService");
         gc.setEntityName("%sENT");