From 816022de986f97869923dc8024e4985242a9068e Mon Sep 17 00:00:00 2001 From: liufan9527 <937359084@qq.com> Date: 星期三, 27 十一月 2024 09:39:49 +0800 Subject: [PATCH] Merge branch 'master' of http://103.135.160.14:9034/r/se-cloud --- se-modules/se-system/src/main/resources/mapper/system/SysJobLogMapper.xml | 2 se-modules/se-system/src/main/java/com/se/system/mapper/SysJobMapper.java | 5 .gitignore | 1 se-modules/se-system/src/main/java/com/se/system/mapper/SysJobLogMapper.java | 5 se-modules/se-system/src/main/java/com/se/system/service/inte/ISysJobLogService.java | 5 se-modules/se-system/src/main/java/com/se/system/controller/SysJobController.java | 31 +- se-modules/se-system/src/main/java/com/se/system/service/inte/IGenTableService.java | 5 se-modules/se-system/src/main/java/com/se/system/domain/GenTableColumn.java | 6 se-modules/se-system/src/main/java/com/se/system/mapper/GenTableMapper.java | 5 se-modules/se-system/src/main/java/com/se/system/utils/VelocityInitializer.java | 7 se-modules/se-system/src/main/java/com/se/system/service/inte/IGenTableColumnService.java | 5 pom.xml | 2 se-modules/se-system/src/main/java/com/se/system/utils/RyTask.java | 4 se-modules/se-system/src/main/java/com/se/system/utils/JobInvokeUtil.java | 9 se-modules/se-system/src/main/java/com/se/system/controller/GenController.java | 41 +-- se-modules/se-system/src/main/java/com/se/system/domain/GenTable.java | 11 se-modules/se-system/src/main/java/com/se/system/mapper/GenTableColumnMapper.java | 5 se-modules/se-system/src/main/java/com/se/system/utils/QuartzDisallowConcurrentExecution.java | 4 se-modules/se-system/src/main/java/com/se/system/domain/SysJob.java | 15 se-modules/se-system/src/main/resources/mapper/system/GenTableColumnMapper.xml | 2 se-modules/se-system/src/main/resources/mapper/system/GenTableMapper.xml | 2 se-modules/se-system/src/main/java/com/se/system/config/ScheduleConfig.java | 2 se-modules/se-system/src/main/java/com/se/system/service/impl/GenTableServiceImpl.java | 59 ++-- se-modules/pom.xml | 4 se-modules/se-system/src/main/java/com/se/system/service/inte/ISysJobService.java | 9 se-modules/se-system/src/main/java/com/se/system/utils/VelocityUtils.java | 18 se-modules/se-system/src/main/java/com/se/system/controller/SysJobLogController.java | 23 - se-modules/se-system/src/main/java/com/se/system/config/GenConfig.java | 2 se-modules/se-system/src/main/java/com/se/system/controller/IndexController.java | 95 ++++++++ se-modules/se-system/src/main/java/com/se/system/service/impl/GenTableColumnServiceImpl.java | 19 se-modules/se-system/src/main/java/com/se/system/utils/QuartzJobExecution.java | 4 说明.txt | 31 ++ se-modules/se-system/src/main/java/com/se/system/utils/ScheduleUtils.java | 4 se-modules/se-system/src/main/resources/mapper/system/SysJobMapper.xml | 2 se-modules/se-system/src/main/java/com/se/system/service/impl/SysJobServiceImpl.java | 25 +- /dev/null | 74 ------ se-modules/se-system/pom.xml | 36 ++ se-modules/se-system/src/main/java/com/se/system/utils/CronUtils.java | 5 se-modules/se-system/src/main/java/com/se/system/domain/SysJobLog.java | 9 se-modules/se-system/src/main/java/com/se/system/utils/GenUtils.java | 14 se-modules/se-system/src/main/java/com/se/system/service/impl/SysJobLogServiceImpl.java | 14 se-modules/se-system/src/main/java/com/se/system/utils/AbstractQuartzJob.java | 22 +- 42 files changed, 355 insertions(+), 288 deletions(-) diff --git a/.gitignore b/.gitignore index 08a2bba..c350549 100644 --- a/.gitignore +++ b/.gitignore @@ -50,3 +50,4 @@ /docker-compose/mysql/data /docker-compose/nacos/logs/nacos_gc.log.0.current /docker-compose/redis/data/dump.rdb +/bak diff --git "a/504/\345\212\237\350\203\275\345\210\227\350\241\250.xlsx" "b/504/\345\212\237\350\203\275\345\210\227\350\241\250.xlsx" deleted file mode 100644 index 03dd8c2..0000000 --- "a/504/\345\212\237\350\203\275\345\210\227\350\241\250.xlsx" +++ /dev/null Binary files differ diff --git a/docker/copy.sh b/docker/copy.sh deleted file mode 100644 index 16a6645..0000000 --- a/docker/copy.sh +++ /dev/null @@ -1,41 +0,0 @@ -#!/bin/sh - -# 澶嶅埗椤圭洰鐨勬枃浠跺埌瀵瑰簲docker璺緞锛屼究浜庝竴閿敓鎴愰暅鍍忋�� -usage() { - echo "Usage: sh copy.sh" - exit 1 -} - - -# copy sql -echo "begin copy sql " -cp ../sql/ry_20231130.sql ./mysql/db -cp ../sql/ry_config_20231204.sql ./mysql/db - -# copy html -echo "begin copy html " -cp -r ../se-ui/dist/** ./nginx/html/dist - - -# copy jar -echo "begin copy se-gateway " -cp ../se-gateway/target/se-gateway.jar ./se/gateway/jar - -echo "begin copy se-auth " -cp ../se-auth/target/se-auth.jar ./se/auth/jar - -echo "begin copy se-visual " -cp ../se-visual/se-monitor/target/se-visual-monitor.jar ./se/visual/monitor/jar - -echo "begin copy se-modules-system " -cp ../se-modules/se-system/target/se-modules-system.jar ./se/modules/system/jar - -echo "begin copy se-modules-file " -cp ../se-modules/se-file/target/se-modules-file.jar ./se/modules/file/jar - -echo "begin copy se-modules-job " -cp ../se-modules/se-job/target/se-modules-job.jar ./se/modules/job/jar - -echo "begin copy se-modules-gen " -cp ../se-modules/se-gen/target/se-modules-gen.jar ./se/modules/gen/jar - diff --git a/docker/deploy.sh b/docker/deploy.sh deleted file mode 100644 index 4ede910..0000000 --- a/docker/deploy.sh +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/sh - -# 浣跨敤璇存槑锛岀敤鏉ユ彁绀鸿緭鍏ュ弬鏁� -usage() { - echo "Usage: sh 鎵ц鑴氭湰.sh [port|base|modules|stop|rm]" - exit 1 -} - -# 寮�鍚墍闇�绔彛 -port(){ - firewall-cmd --add-port=80/tcp --permanent - firewall-cmd --add-port=8080/tcp --permanent - firewall-cmd --add-port=8848/tcp --permanent - firewall-cmd --add-port=9848/tcp --permanent - firewall-cmd --add-port=9849/tcp --permanent - firewall-cmd --add-port=6379/tcp --permanent - firewall-cmd --add-port=3306/tcp --permanent - firewall-cmd --add-port=9100/tcp --permanent - firewall-cmd --add-port=9200/tcp --permanent - firewall-cmd --add-port=9201/tcp --permanent - firewall-cmd --add-port=9202/tcp --permanent - firewall-cmd --add-port=9203/tcp --permanent - firewall-cmd --add-port=9300/tcp --permanent - service firewalld restart -} - -# 鍚姩鍩虹鐜锛堝繀椤伙級 -base(){ - docker-compose up -d se-mysql se-redis se-nacos -} - -# 鍚姩绋嬪簭妯″潡锛堝繀椤伙級 -modules(){ - docker-compose up -d se-nginx se-gateway se-auth se-modules-system -} - -# 鍏抽棴鎵�鏈夌幆澧�/妯″潡 -stop(){ - docker-compose stop -} - -# 鍒犻櫎鎵�鏈夌幆澧�/妯″潡 -rm(){ - docker-compose rm -} - -# 鏍规嵁杈撳叆鍙傛暟锛岄�夋嫨鎵ц瀵瑰簲鏂规硶锛屼笉杈撳叆鍒欐墽琛屼娇鐢ㄨ鏄� -case "$1" in -"port") - port -;; -"base") - base -;; -"modules") - modules -;; -"stop") - stop -;; -"rm") - rm -;; -*) - usage -;; -esac diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml deleted file mode 100644 index c79f239..0000000 --- a/docker/docker-compose.yml +++ /dev/null @@ -1,140 +0,0 @@ -version : '3.8' -services: - se-nacos: - container_name: se-nacos - image: nacos/nacos-server:2.3.2 - build: - context: ./nacos - environment: - - MODE=standalone - volumes: - - ./nacos/logs/:/home/nacos/logs - - ./nacos/conf/application.properties:/home/nacos/conf/application.properties - ports: - - "8848:8848" - - "9848:9848" - - "9849:9849" - depends_on: - - se-mysql - se-mysql: - container_name: se-mysql - image: mysql:5.7 - build: - context: ./mysql - ports: - - "3306:3306" - volumes: - - ./mysql/conf:/etc/mysql/conf.d - - ./mysql/logs:/logs - - ./mysql/data:/var/lib/mysql - command: [ - 'mysqld', - '--innodb-buffer-pool-size=80M', - '--character-set-server=utf8mb4', - '--collation-server=utf8mb4_unicode_ci', - '--default-time-zone=+8:00', - '--lower-case-table-names=1' - ] - environment: - MYSQL_DATABASE: 'ry-cloud' - MYSQL_ROOT_PASSWORD: password - se-redis: - container_name: se-redis - image: redis:latest - build: - context: ./redis - ports: - - "6379:6379" - volumes: - - ./redis/conf/redis.conf:/home/se/redis/redis.conf - - ./redis/data:/data - command: redis-server /home/se/redis/redis.conf - se-nginx: - container_name: se-nginx - image: nginx:latest - build: - context: ./nginx - ports: - - "80:80" - volumes: - - ./nginx/html/dist:/home/se/projects/se-ui - - ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf - - ./nginx/logs:/var/log/nginx - - ./nginx/conf.d:/etc/nginx/conf.d - depends_on: - - se-gateway - links: - - se-gateway - se-gateway: - container_name: se-gateway - build: - context: ./se/gateway - dockerfile: dockerfile - ports: - - "8080:8080" - depends_on: - - se-redis - links: - - se-redis - se-auth: - container_name: se-auth - build: - context: ./se/auth - dockerfile: dockerfile - ports: - - "9200:9200" - depends_on: - - se-redis - links: - - se-redis - se-modules-system: - container_name: se-modules-system - build: - context: ./se/modules/system - dockerfile: dockerfile - ports: - - "9201:9201" - depends_on: - - se-redis - - se-mysql - links: - - se-redis - - se-mysql - se-modules-gen: - container_name: se-modules-gen - build: - context: ./se/modules/gen - dockerfile: dockerfile - ports: - - "9202:9202" - depends_on: - - se-mysql - links: - - se-mysql - se-modules-job: - container_name: se-modules-job - build: - context: ./se/modules/job - dockerfile: dockerfile - ports: - - "9203:9203" - depends_on: - - se-mysql - links: - - se-mysql - se-modules-file: - container_name: se-modules-file - build: - context: ./se/modules/file - dockerfile: dockerfile - ports: - - "9300:9300" - volumes: - - ./se/uploadPath:/home/se/uploadPath - se-visual-monitor: - container_name: se-visual-monitor - build: - context: ./se/visual/monitor - dockerfile: dockerfile - ports: - - "9100:9100" diff --git a/docker/mysql/db/readme.txt b/docker/mysql/db/readme.txt deleted file mode 100644 index 0b22f3f..0000000 --- a/docker/mysql/db/readme.txt +++ /dev/null @@ -1 +0,0 @@ -存放sql目录下的所有脚本,用于docker自动执行。 \ No newline at end of file diff --git a/docker/mysql/dockerfile b/docker/mysql/dockerfile deleted file mode 100644 index 942fa02..0000000 --- a/docker/mysql/dockerfile +++ /dev/null @@ -1,7 +0,0 @@ -# 鍩虹闀滃儚 -FROM mysql:5.7 -# author -MAINTAINER se - -# 鎵цsql鑴氭湰 -ADD ./db/*.sql /docker-entrypoint-initdb.d/ diff --git a/docker/nacos/conf/application.properties b/docker/nacos/conf/application.properties deleted file mode 100644 index 3be2b39..0000000 --- a/docker/nacos/conf/application.properties +++ /dev/null @@ -1,32 +0,0 @@ -spring.datasource.platform=mysql -db.num=1 -db.url.0=jdbc:mysql://se-mysql:3306/ry-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC -db.user=root -db.password=password - -nacos.naming.empty-service.auto-clean=true -nacos.naming.empty-service.clean.initial-delay-ms=50000 -nacos.naming.empty-service.clean.period-time-ms=30000 - -management.endpoints.web.exposure.include=* - -management.metrics.export.elastic.enabled=false -management.metrics.export.influx.enabled=false - -server.tomcat.accesslog.enabled=true -server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i %{Request-Source}i - -server.tomcat.basedir=/home/se/nacos/tomcat/logs - -nacos.security.ignore.urls=/,/error,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-ui/public/**,/v1/auth/**,/v1/console/health/**,/actuator/**,/v1/console/server/** - -nacos.core.auth.system.type=nacos -nacos.core.auth.enabled=false -nacos.core.auth.default.token.expire.seconds=18000 -nacos.core.auth.default.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789 -nacos.core.auth.caching.enabled=true -nacos.core.auth.enable.userAgentAuthWhite=false -nacos.core.auth.server.identity.key=serverIdentity -nacos.core.auth.server.identity.value=security - -nacos.istio.mcp.server.enabled=false diff --git a/docker/nacos/dockerfile b/docker/nacos/dockerfile deleted file mode 100644 index 6262eca..0000000 --- a/docker/nacos/dockerfile +++ /dev/null @@ -1,7 +0,0 @@ -# 鍩虹闀滃儚 -FROM nacos/nacos-server:2.3.2 -# author -MAINTAINER se - -# 澶嶅埗conf鏂囦欢鍒拌矾寰� -COPY ./conf/application.properties /home/nacos/conf/application.properties diff --git a/docker/nginx/conf/nginx.conf b/docker/nginx/conf/nginx.conf deleted file mode 100644 index 2e46854..0000000 --- a/docker/nginx/conf/nginx.conf +++ /dev/null @@ -1,41 +0,0 @@ -worker_processes 1; - -events { - worker_connections 1024; -} - -http { - include mime.types; - default_type application/octet-stream; - sendfile on; - keepalive_timeout 65; - - server { - listen 80; - server_name localhost; - - location / { - root /home/se/projects/se-ui; - try_files $uri $uri/ /index.html; - index index.html index.htm; - } - - location /prod-api/{ - proxy_set_header Host $http_host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header REMOTE-HOST $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_pass http://se-gateway:8080/; - } - - # 閬垮厤actuator鏆撮湶 - if ($request_uri ~ "/actuator") { - return 403; - } - - error_page 500 502 503 504 /50x.html; - location = /50x.html { - root html; - } - } -} \ No newline at end of file diff --git a/docker/nginx/dockerfile b/docker/nginx/dockerfile deleted file mode 100644 index 1e730cc..0000000 --- a/docker/nginx/dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -# 鍩虹闀滃儚 -FROM nginx:latest -# author -MAINTAINER se - -# 鎸傝浇鐩綍 -VOLUME /home/se/projects/se-ui -# 鍒涘缓鐩綍 -RUN mkdir -p /home/se/projects/se-ui -# 鎸囧畾璺緞 -WORKDIR /home/se/projects/se-ui -# 澶嶅埗conf鏂囦欢鍒拌矾寰� -COPY ./conf/nginx.conf /etc/nginx/nginx.conf -# 澶嶅埗html鏂囦欢鍒拌矾寰� -COPY ./html/dist /home/se/projects/se-ui diff --git a/docker/nginx/html/dist/readme.txt b/docker/nginx/html/dist/readme.txt deleted file mode 100644 index 2538ab0..0000000 --- a/docker/nginx/html/dist/readme.txt +++ /dev/null @@ -1 +0,0 @@ -瀛樻斁鍓嶇se-ui鏋勫缓濂界殑闈欐�佹枃浠讹紝鐢ㄤ簬nginx璇锋眰璁块棶銆� \ No newline at end of file diff --git a/docker/redis/conf/redis.conf b/docker/redis/conf/redis.conf deleted file mode 100644 index d762d65..0000000 --- a/docker/redis/conf/redis.conf +++ /dev/null @@ -1 +0,0 @@ -# requirepass 123456 \ No newline at end of file diff --git a/docker/redis/dockerfile b/docker/redis/dockerfile deleted file mode 100644 index 1e4ac70..0000000 --- a/docker/redis/dockerfile +++ /dev/null @@ -1,13 +0,0 @@ -# 鍩虹闀滃儚 -FROM redis:latest -# author -MAINTAINER se - -# 鎸傝浇鐩綍 -VOLUME /home/se/redis -# 鍒涘缓鐩綍 -RUN mkdir -p /home/se/redis -# 鎸囧畾璺緞 -WORKDIR /home/se/redis -# 澶嶅埗conf鏂囦欢鍒拌矾寰� -COPY ./conf/redis.conf /home/se/redis/redis.conf diff --git a/docker/se/auth/dockerfile b/docker/se/auth/dockerfile deleted file mode 100644 index 6ef216b..0000000 --- a/docker/se/auth/dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -# 鍩虹闀滃儚 -FROM openjdk:8-jre -# author -MAINTAINER se - -# 鎸傝浇鐩綍 -VOLUME /home/se -# 鍒涘缓鐩綍 -RUN mkdir -p /home/se -# 鎸囧畾璺緞 -WORKDIR /home/se -# 澶嶅埗jar鏂囦欢鍒拌矾寰� -COPY ./jar/se-auth.jar /home/se/se-auth.jar -# 鍚姩璁よ瘉鏈嶅姟 -ENTRYPOINT ["java","-jar","se-auth.jar"] \ No newline at end of file diff --git a/docker/se/auth/jar/readme.txt b/docker/se/auth/jar/readme.txt deleted file mode 100644 index c35ba27..0000000 --- a/docker/se/auth/jar/readme.txt +++ /dev/null @@ -1 +0,0 @@ -存放认证中心打包好的jar文件,用于docker启动应用。 \ No newline at end of file diff --git a/docker/se/gateway/dockerfile b/docker/se/gateway/dockerfile deleted file mode 100644 index a6a0b17..0000000 --- a/docker/se/gateway/dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -# 鍩虹闀滃儚 -FROM openjdk:8-jre -# author -MAINTAINER se - -# 鎸傝浇鐩綍 -VOLUME /home/se -# 鍒涘缓鐩綍 -RUN mkdir -p /home/se -# 鎸囧畾璺緞 -WORKDIR /home/se -# 澶嶅埗jar鏂囦欢鍒拌矾寰� -COPY ./jar/se-gateway.jar /home/se/se-gateway.jar -# 鍚姩缃戝叧鏈嶅姟 -ENTRYPOINT ["java","-jar","se-gateway.jar"] \ No newline at end of file diff --git a/docker/se/gateway/jar/readme.txt b/docker/se/gateway/jar/readme.txt deleted file mode 100644 index 5dfbec7..0000000 --- a/docker/se/gateway/jar/readme.txt +++ /dev/null @@ -1 +0,0 @@ -存放网关模块打包好的jar文件,用于docker启动应用。 \ No newline at end of file diff --git a/docker/se/modules/file/dockerfile b/docker/se/modules/file/dockerfile deleted file mode 100644 index 6a69566..0000000 --- a/docker/se/modules/file/dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -# 鍩虹闀滃儚 -FROM openjdk:8-jre -# author -MAINTAINER se - -# 鎸傝浇鐩綍 -VOLUME /home/se -# 鍒涘缓鐩綍 -RUN mkdir -p /home/se -# 鎸囧畾璺緞 -WORKDIR /home/se -# 澶嶅埗jar鏂囦欢鍒拌矾寰� -COPY ./jar/se-modules-file.jar /home/se/se-modules-file.jar -# 鍚姩鏂囦欢鏈嶅姟 -ENTRYPOINT ["java","-jar","se-modules-file.jar"] \ No newline at end of file diff --git a/docker/se/modules/file/jar/readme.txt b/docker/se/modules/file/jar/readme.txt deleted file mode 100644 index bf2b2a7..0000000 --- a/docker/se/modules/file/jar/readme.txt +++ /dev/null @@ -1 +0,0 @@ -存放文件服务打包好的jar文件,用于docker启动应用。 \ No newline at end of file diff --git a/docker/se/modules/gen/dockerfile b/docker/se/modules/gen/dockerfile deleted file mode 100644 index 49e3119..0000000 --- a/docker/se/modules/gen/dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -# 鍩虹闀滃儚 -FROM openjdk:8-jre -# author -MAINTAINER se - -# 鎸傝浇鐩綍 -VOLUME /home/se -# 鍒涘缓鐩綍 -RUN mkdir -p /home/se -# 鎸囧畾璺緞 -WORKDIR /home/se -# 澶嶅埗jar鏂囦欢鍒拌矾寰� -COPY ./jar/se-modules-gen.jar /home/se/se-modules-gen.jar -# 鍚姩浠g爜鐢熸垚鏈嶅姟 -ENTRYPOINT ["java","-jar","se-modules-gen.jar"] \ No newline at end of file diff --git a/docker/se/modules/gen/jar/readme.txt b/docker/se/modules/gen/jar/readme.txt deleted file mode 100644 index 2f25c0a..0000000 --- a/docker/se/modules/gen/jar/readme.txt +++ /dev/null @@ -1 +0,0 @@ -存放代码生成打包好的jar文件,用于docker启动应用。 \ No newline at end of file diff --git a/docker/se/modules/job/dockerfile b/docker/se/modules/job/dockerfile deleted file mode 100644 index fe59bbb..0000000 --- a/docker/se/modules/job/dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -# 鍩虹闀滃儚 -FROM openjdk:8-jre -# author -MAINTAINER se - -# 鎸傝浇鐩綍 -VOLUME /home/se -# 鍒涘缓鐩綍 -RUN mkdir -p /home/se -# 鎸囧畾璺緞 -WORKDIR /home/se -# 澶嶅埗jar鏂囦欢鍒拌矾寰� -COPY ./jar/se-modules-job.jar /home/se/se-modules-job.jar -# 鍚姩瀹氭椂浠诲姟鏈嶅姟 -ENTRYPOINT ["java","-jar","se-modules-job.jar"] \ No newline at end of file diff --git a/docker/se/modules/job/jar/readme.txt b/docker/se/modules/job/jar/readme.txt deleted file mode 100644 index 58aea0b..0000000 --- a/docker/se/modules/job/jar/readme.txt +++ /dev/null @@ -1 +0,0 @@ -存放定时任务打包好的jar文件,用于docker启动应用。 \ No newline at end of file diff --git a/docker/se/modules/system/dockerfile b/docker/se/modules/system/dockerfile deleted file mode 100644 index 49a44da..0000000 --- a/docker/se/modules/system/dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -# 鍩虹闀滃儚 -FROM openjdk:8-jre -# author -MAINTAINER se - -# 鎸傝浇鐩綍 -VOLUME /home/se -# 鍒涘缓鐩綍 -RUN mkdir -p /home/se -# 鎸囧畾璺緞 -WORKDIR /home/se -# 澶嶅埗jar鏂囦欢鍒拌矾寰� -COPY ./jar/se-modules-system.jar /home/se/se-modules-system.jar -# 鍚姩绯荤粺鏈嶅姟 -ENTRYPOINT ["java","-jar","se-modules-system.jar"] \ No newline at end of file diff --git a/docker/se/modules/system/jar/readme.txt b/docker/se/modules/system/jar/readme.txt deleted file mode 100644 index cfc2a92..0000000 --- a/docker/se/modules/system/jar/readme.txt +++ /dev/null @@ -1 +0,0 @@ -存放系统模块打包好的jar文件,用于docker启动应用。 \ No newline at end of file diff --git a/docker/se/visual/monitor/dockerfile b/docker/se/visual/monitor/dockerfile deleted file mode 100644 index 37494ea..0000000 --- a/docker/se/visual/monitor/dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -# 鍩虹闀滃儚 -FROM openjdk:8-jre -# author -MAINTAINER se - -# 鎸傝浇鐩綍 -VOLUME /home/se -# 鍒涘缓鐩綍 -RUN mkdir -p /home/se -# 鎸囧畾璺緞 -WORKDIR /home/se -# 澶嶅埗jar鏂囦欢鍒拌矾寰� -COPY ./jar/se-visual-monitor.jar /home/se/se-visual-monitor.jar -# 鍚姩绯荤粺鏈嶅姟 -ENTRYPOINT ["java","-jar","se-visual-monitor.jar"] \ No newline at end of file diff --git a/docker/se/visual/monitor/jar/readme.txt b/docker/se/visual/monitor/jar/readme.txt deleted file mode 100644 index 62b2841..0000000 --- a/docker/se/visual/monitor/jar/readme.txt +++ /dev/null @@ -1 +0,0 @@ -存放监控中心打包好的jar文件,用于docker启动应用。 \ No newline at end of file diff --git a/pom.xml b/pom.xml index 28981e0..66c72bb 100644 --- a/pom.xml +++ b/pom.xml @@ -226,7 +226,7 @@ </dependencyManagement> <modules> - <module>se-auth</module> + <!--<module>se-auth</module>--> <module>se-gateway</module> <module>se-visual</module> <module>se-modules</module> diff --git a/se-auth/pom.xml b/se-auth/pom.xml deleted file mode 100644 index 6dad247..0000000 --- a/se-auth/pom.xml +++ /dev/null @@ -1,73 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <parent> - <groupId>com.se</groupId> - <artifactId>se</artifactId> - <version>3.6.4</version> - </parent> - <modelVersion>4.0.0</modelVersion> - - <artifactId>se-auth</artifactId> - - <description> - se-auth璁よ瘉鎺堟潈涓績 - </description> - - <dependencies> - - <!-- SpringCloud Alibaba Nacos --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> - </dependency> - - <!-- SpringCloud Alibaba Nacos Config --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> - </dependency> - - <!-- SpringCloud Alibaba Sentinel --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> - </dependency> - - <!-- SpringBoot Web --> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-web</artifactId> - </dependency> - - <!-- SpringBoot Actuator --> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-actuator</artifactId> - </dependency> - - <!-- SE Common Security--> - <dependency> - <groupId>com.se</groupId> - <artifactId>se-common-security</artifactId> - </dependency> - </dependencies> - - <build> - <finalName>${project.artifactId}</finalName> - <plugins> - <plugin> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-maven-plugin</artifactId> - <executions> - <execution> - <goals> - <goal>repackage</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - -</project> diff --git a/se-auth/se-auth.iml b/se-auth/se-auth.iml deleted file mode 100644 index 489f425..0000000 --- a/se-auth/se-auth.iml +++ /dev/null @@ -1,173 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4"> - <component name="FacetManager"> - <facet type="Spring" name="Spring"> - <configuration /> - </facet> - <facet type="web" name="Web"> - <configuration> - <webroots /> - </configuration> - </facet> - </component> - <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8"> - <output url="file://$MODULE_DIR$/target/classes" /> - <output-test url="file://$MODULE_DIR$/target/test-classes" /> - <content url="file://$MODULE_DIR$"> - <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> - <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" /> - <excludeFolder url="file://$MODULE_DIR$/target" /> - </content> - <orderEntry type="jdk" jdkName="jdk-1.8" jdkType="JavaSDK" /> - <orderEntry type="sourceFolder" forTests="false" /> - <orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:2021.0.5.0" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-alibaba-commons:2021.0.5.0" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-client:2.2.0" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-auth-plugin:2.2.0" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-encryption-plugin:2.2.0" level="project" /> - <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.15" level="project" /> - <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.13.5" level="project" /> - <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.13.5" level="project" /> - <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.13.5" level="project" /> - <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpasyncclient:4.1.5" level="project" /> - <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.16" level="project" /> - <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore-nio:4.4.16" level="project" /> - <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.14" level="project" /> - <orderEntry type="library" name="Maven: io.prometheus:simpleclient:0.15.0" level="project" /> - <orderEntry type="library" name="Maven: io.prometheus:simpleclient_tracer_otel:0.15.0" level="project" /> - <orderEntry type="library" name="Maven: io.prometheus:simpleclient_tracer_common:0.15.0" level="project" /> - <orderEntry type="library" name="Maven: io.prometheus:simpleclient_tracer_otel_agent:0.15.0" level="project" /> - <orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.30" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.spring:spring-context-support:1.0.11" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-commons:3.1.7" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.security:spring-security-crypto:5.7.11" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-context:3.1.7" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-config:2021.0.5.0" level="project" /> - <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.36" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-starter-alibaba-sentinel:2021.0.5.0" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-transport-simple-http:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-transport-common:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-datasource-extension:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.83_noneautotype" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-annotation-aspectj:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-core:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.9.7" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-circuitbreaker-sentinel:2021.0.5.0" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-reactor-adapter:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-spring-webflux-adapter:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-spring-webmvc-adapter:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-parameter-flow-control:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru:1.4.2" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-cluster-server-default:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-cluster-common-default:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: io.netty:netty-handler:4.1.101.Final" level="project" /> - <orderEntry type="library" name="Maven: io.netty:netty-common:4.1.101.Final" level="project" /> - <orderEntry type="library" name="Maven: io.netty:netty-resolver:4.1.101.Final" level="project" /> - <orderEntry type="library" name="Maven: io.netty:netty-buffer:4.1.101.Final" level="project" /> - <orderEntry type="library" name="Maven: io.netty:netty-transport:4.1.101.Final" level="project" /> - <orderEntry type="library" name="Maven: io.netty:netty-transport-native-unix-common:4.1.101.Final" level="project" /> - <orderEntry type="library" name="Maven: io.netty:netty-codec:4.1.101.Final" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-cluster-client-default:1.8.6" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-alibaba-sentinel-datasource:2021.0.5.0" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.12" level="project" /> - <orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.12" level="project" /> - <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.17.2" level="project" /> - <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.17.2" level="project" /> - <orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.36" level="project" /> - <orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-core:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.13.5" level="project" /> - <orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.13.5" level="project" /> - <orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.13.5" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.83" level="project" /> - <orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.83" level="project" /> - <orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.83" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-web:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-beans:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-aop:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-context:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-expression:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-actuator:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-actuator-autoconfigure:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-actuator:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: io.micrometer:micrometer-core:1.9.17" level="project" /> - <orderEntry type="library" name="Maven: org.hdrhistogram:HdrHistogram:2.1.12" level="project" /> - <orderEntry type="library" scope="RUNTIME" name="Maven: org.latencyutils:LatencyUtils:2.0.3" level="project" /> - <orderEntry type="module" module-name="se-common-security" /> - <orderEntry type="module" module-name="se-api-system" /> - <orderEntry type="module" module-name="se-common-core" /> - <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-openfeign:3.1.8" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-openfeign-core:3.1.8" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: io.github.openfeign.form:feign-form-spring:3.8.0" level="project" /> - <orderEntry type="library" name="Maven: io.github.openfeign.form:feign-form:3.8.0" level="project" /> - <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.5" level="project" /> - <orderEntry type="library" name="Maven: io.github.openfeign:feign-core:11.10" level="project" /> - <orderEntry type="library" name="Maven: io.github.openfeign:feign-slf4j:11.10" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-loadbalancer:3.1.7" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-loadbalancer:3.1.7" level="project" /> - <orderEntry type="library" name="Maven: io.projectreactor.addons:reactor-extra:3.4.10" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-cache:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: com.stoyanr:evictor:1.0.0" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-context-support:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba:transmittable-thread-local:2.14.4" level="project" /> - <orderEntry type="library" name="Maven: com.github.pagehelper:pagehelper-spring-boot-starter:2.0.0" level="project" /> - <orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-starter:2.3.1" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: com.zaxxer:HikariCP:4.0.3" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-autoconfigure:2.3.1" level="project" /> - <orderEntry type="library" name="Maven: org.mybatis:mybatis:3.5.13" level="project" /> - <orderEntry type="library" name="Maven: org.mybatis:mybatis-spring:2.1.1" level="project" /> - <orderEntry type="library" name="Maven: com.github.pagehelper:pagehelper-spring-boot-autoconfigure:2.0.0" level="project" /> - <orderEntry type="library" name="Maven: com.github.pagehelper:pagehelper:6.0.0" level="project" /> - <orderEntry type="library" name="Maven: com.github.jsqlparser:jsqlparser:4.5" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.hibernate.validator:hibernate-validator:6.2.5.Final" level="project" /> - <orderEntry type="library" name="Maven: jakarta.validation:jakarta.validation-api:2.0.2" level="project" /> - <orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.3.Final" level="project" /> - <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" level="project" /> - <orderEntry type="library" name="Maven: com.alibaba.fastjson2:fastjson2:2.0.43" level="project" /> - <orderEntry type="library" name="Maven: io.jsonwebtoken:jjwt:0.9.1" level="project" /> - <orderEntry type="library" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" /> - <orderEntry type="library" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" /> - <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.12.0" level="project" /> - <orderEntry type="library" name="Maven: commons-io:commons-io:2.13.0" level="project" /> - <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:4.1.2" level="project" /> - <orderEntry type="library" name="Maven: org.apache.poi:poi:4.1.2" level="project" /> - <orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.4" level="project" /> - <orderEntry type="library" name="Maven: org.apache.commons:commons-math3:3.6.1" level="project" /> - <orderEntry type="library" name="Maven: com.zaxxer:SparseBitSet:1.2" level="project" /> - <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:4.1.2" level="project" /> - <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:3.1.0" level="project" /> - <orderEntry type="library" name="Maven: org.apache.commons:commons-compress:1.19" level="project" /> - <orderEntry type="library" name="Maven: com.github.virtuald:curvesapi:1.06" level="project" /> - <orderEntry type="library" name="Maven: javax.servlet:javax.servlet-api:4.0.1" level="project" /> - <orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.6.2" level="project" /> - <orderEntry type="module" module-name="se-common-redis" /> - <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-redis:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.data:spring-data-redis:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.data:spring-data-keyvalue:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.7.18" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-tx:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: org.springframework:spring-oxm:5.3.33" level="project" /> - <orderEntry type="library" name="Maven: io.lettuce:lettuce-core:6.1.10.RELEASE" level="project" /> - <orderEntry type="library" name="Maven: io.projectreactor:reactor-core:3.4.34" level="project" /> - <orderEntry type="library" name="Maven: org.reactivestreams:reactive-streams:1.0.4" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-bootstrap:3.1.7" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter:3.1.7" level="project" /> - <orderEntry type="library" name="Maven: org.springframework.security:spring-security-rsa:1.0.11.RELEASE" level="project" /> - <orderEntry type="library" name="Maven: org.bouncycastle:bcpkix-jdk15on:1.69" level="project" /> - <orderEntry type="library" name="Maven: org.bouncycastle:bcprov-jdk15on:1.69" level="project" /> - <orderEntry type="library" name="Maven: org.bouncycastle:bcutil-jdk15on:1.69" level="project" /> - </component> -</module> \ No newline at end of file diff --git a/se-auth/src/main/java/com/se/auth/SeAuthApplication.java b/se-auth/src/main/java/com/se/auth/SeAuthApplication.java deleted file mode 100644 index a584b9f..0000000 --- a/se-auth/src/main/java/com/se/auth/SeAuthApplication.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.se.auth; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; -import com.se.common.security.annotation.EnableRyFeignClients; - -/** - * 璁よ瘉鎺堟潈涓績 - * - * @author admin - */ -@EnableRyFeignClients -@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class }) -public class SeAuthApplication -{ - public static void main(String[] args) - { - SpringApplication.run(SeAuthApplication.class, args); - System.out.println(" 鎺堟潈涓績鍚姩鎴愬姛 "); - } -} diff --git a/se-auth/src/main/java/com/se/auth/controller/HealthController.java b/se-auth/src/main/java/com/se/auth/controller/HealthController.java deleted file mode 100644 index d032018..0000000 --- a/se-auth/src/main/java/com/se/auth/controller/HealthController.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.se.auth.controller; - -import com.se.common.core.web.controller.BaseController; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -@RestController -@SuppressWarnings("ALL") -public class HealthController extends BaseController { - @GetMapping("/health") - public long test() { - return System.currentTimeMillis(); - } -} diff --git a/se-auth/src/main/java/com/se/auth/controller/TokenController.java b/se-auth/src/main/java/com/se/auth/controller/TokenController.java deleted file mode 100644 index 3f34d1f..0000000 --- a/se-auth/src/main/java/com/se/auth/controller/TokenController.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.se.auth.controller; - -import javax.servlet.http.HttpServletRequest; - -import com.se.auth.form.LoginBody; -import com.se.auth.form.RegisterBody; -import com.se.auth.service.SysLoginService; -import com.se.common.core.utils.AesUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.web.bind.annotation.*; -import com.se.common.core.domain.R; -import com.se.common.core.utils.JwtUtils; -import com.se.common.core.utils.StringUtils; -import com.se.common.security.auth.AuthUtil; -import com.se.common.security.service.TokenService; -import com.se.common.security.utils.SecurityUtils; -import com.se.system.api.model.LoginUser; - -/** - * token 鎺у埗 - * - * @author admin - */ -@RestController -public class TokenController { - @Autowired - private TokenService tokenService; - - @Autowired - private SysLoginService sysLoginService; - - @Value("${enableEncrypt}") - boolean enableEncrypt; - - @PostMapping("login") - public R<?> login(@RequestBody LoginBody form) throws Exception { - if (enableEncrypt && !StringUtils.isEmpty(form.getPassword())) { - form.setPassword(AesUtils.decrypt(form.getPassword())); - } - // 鐢ㄦ埛鐧诲綍 - LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword()); - // 鑾峰彇鐧诲綍token - return R.ok(tokenService.createToken(userInfo)); - } - - @GetMapping("validate") - @PostMapping("validate") - public R<Object> validate(HttpServletRequest request) { - try { - boolean flag = false; - String token = SecurityUtils.getToken(request); - if (!StringUtils.isNotEmpty(token)) { - String userName = JwtUtils.getUserName(token); - flag = !StringUtils.isEmpty(userName); - } - - return R.ok(flag); - } catch (Exception ex) { - return R.fail(ex.getMessage()); - } - } - - @DeleteMapping("logout") - public R<?> logout(HttpServletRequest request) { - String token = SecurityUtils.getToken(request); - if (StringUtils.isNotEmpty(token)) { - String username = JwtUtils.getUserName(token); - // 鍒犻櫎鐢ㄦ埛缂撳瓨璁板綍 - AuthUtil.logoutByToken(token); - // 璁板綍鐢ㄦ埛閫�鍑烘棩蹇� - sysLoginService.logout(username); - } - return R.ok(); - } - - @PostMapping("refresh") - public R<?> refresh(HttpServletRequest request) { - LoginUser loginUser = tokenService.getLoginUser(request); - if (StringUtils.isNotNull(loginUser)) { - // 鍒锋柊浠ょ墝鏈夋晥鏈� - tokenService.refreshToken(loginUser); - return R.ok(); - } - return R.ok(); - } - - /*@PostMapping("register") - public R<?> register(@RequestBody RegisterBody registerBody) - { - // 鐢ㄦ埛娉ㄥ唽 - sysLoginService.register(registerBody.getUsername(), registerBody.getPassword()); - return R.ok(); - }*/ -} diff --git a/se-auth/src/main/java/com/se/auth/form/LoginBody.java b/se-auth/src/main/java/com/se/auth/form/LoginBody.java deleted file mode 100644 index e94dd82..0000000 --- a/se-auth/src/main/java/com/se/auth/form/LoginBody.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.se.auth.form; - -/** - * 鐢ㄦ埛鐧诲綍瀵硅薄 - * - * @author admin - */ -public class LoginBody -{ - /** - * 鐢ㄦ埛鍚� - */ - private String username; - - /** - * 鐢ㄦ埛瀵嗙爜 - */ - private String password; - - public String getUsername() - { - return username; - } - - public void setUsername(String username) - { - this.username = username; - } - - public String getPassword() - { - return password; - } - - public void setPassword(String password) - { - this.password = password; - } -} diff --git a/se-auth/src/main/java/com/se/auth/form/RegisterBody.java b/se-auth/src/main/java/com/se/auth/form/RegisterBody.java deleted file mode 100644 index b0cdbe1..0000000 --- a/se-auth/src/main/java/com/se/auth/form/RegisterBody.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.se.auth.form; - -/** - * 鐢ㄦ埛娉ㄥ唽瀵硅薄 - * - * @author admin - */ -public class RegisterBody extends LoginBody -{ - -} diff --git a/se-auth/src/main/java/com/se/auth/service/SysLoginService.java b/se-auth/src/main/java/com/se/auth/service/SysLoginService.java deleted file mode 100644 index e053531..0000000 --- a/se-auth/src/main/java/com/se/auth/service/SysLoginService.java +++ /dev/null @@ -1,161 +0,0 @@ -package com.se.auth.service; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; -import com.se.common.core.constant.CacheConstants; -import com.se.common.core.constant.Constants; -import com.se.common.core.constant.SecurityConstants; -import com.se.common.core.constant.UserConstants; -import com.se.common.core.domain.R; -import com.se.common.core.enums.UserStatus; -import com.se.common.core.exception.ServiceException; -import com.se.common.core.text.Convert; -import com.se.common.core.utils.DateUtils; -import com.se.common.core.utils.StringUtils; -import com.se.common.core.utils.ip.IpUtils; -import com.se.common.redis.service.RedisService; -import com.se.common.security.utils.SecurityUtils; -import com.se.system.api.RemoteUserService; -import com.se.system.api.domain.SysUser; -import com.se.system.api.model.LoginUser; - -/** - * 鐧诲綍鏍¢獙鏂规硶 - * - * @author admin - */ -@Component -public class SysLoginService -{ - @Autowired - private RemoteUserService remoteUserService; - - @Autowired - private SysPasswordService passwordService; - - @Autowired - private SysRecordLogService recordLogService; - - @Autowired - private RedisService redisService; - - /** - * 鐧诲綍 - */ - public LoginUser login(String username, String password) - { - // 鐢ㄦ埛鍚嶆垨瀵嗙爜涓虹┖ 閿欒 - if (StringUtils.isAnyBlank(username, password)) - { - recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "鐢ㄦ埛/瀵嗙爜蹇呴』濉啓"); - throw new ServiceException("鐢ㄦ埛/瀵嗙爜蹇呴』濉啓"); - } - // 瀵嗙爜濡傛灉涓嶅湪鎸囧畾鑼冨洿鍐� 閿欒 - if (password.length() < UserConstants.PASSWORD_MIN_LENGTH - || password.length() > UserConstants.PASSWORD_MAX_LENGTH) - { - recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "鐢ㄦ埛瀵嗙爜涓嶅湪鎸囧畾鑼冨洿"); - throw new ServiceException("鐢ㄦ埛瀵嗙爜涓嶅湪鎸囧畾鑼冨洿"); - } - // 鐢ㄦ埛鍚嶄笉鍦ㄦ寚瀹氳寖鍥村唴 閿欒 - if (username.length() < UserConstants.USERNAME_MIN_LENGTH - || username.length() > UserConstants.USERNAME_MAX_LENGTH) - { - recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "鐢ㄦ埛鍚嶄笉鍦ㄦ寚瀹氳寖鍥�"); - throw new ServiceException("鐢ㄦ埛鍚嶄笉鍦ㄦ寚瀹氳寖鍥�"); - } - // IP榛戝悕鍗曟牎楠� - String blackStr = Convert.toStr(redisService.getCacheObject(CacheConstants.SYS_LOGIN_BLACKIPLIST)); - if (IpUtils.isMatchedIp(blackStr, IpUtils.getIpAddr())) - { - recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "寰堥仐鎲撅紝璁块棶IP宸茶鍒楀叆绯荤粺榛戝悕鍗�"); - throw new ServiceException("寰堥仐鎲撅紝璁块棶IP宸茶鍒楀叆绯荤粺榛戝悕鍗�"); - } - // 鏌ヨ鐢ㄦ埛淇℃伅 - R<LoginUser> userResult = remoteUserService.getUserInfo(username, SecurityConstants.INNER); - - if (StringUtils.isNull(userResult) || StringUtils.isNull(userResult.getData())) - { - recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "鐧诲綍鐢ㄦ埛涓嶅瓨鍦�"); - throw new ServiceException("鐧诲綍鐢ㄦ埛锛�" + username + " 涓嶅瓨鍦�"); - } - - if (R.FAIL == userResult.getCode()) - { - throw new ServiceException(userResult.getMsg()); - } - - LoginUser userInfo = userResult.getData(); - SysUser user = userResult.getData().getSysUser(); - if (UserStatus.DELETED.getCode().equals(user.getDelFlag())) - { - recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "瀵逛笉璧凤紝鎮ㄧ殑璐﹀彿宸茶鍒犻櫎"); - throw new ServiceException("瀵逛笉璧凤紝鎮ㄧ殑璐﹀彿锛�" + username + " 宸茶鍒犻櫎"); - } - if (UserStatus.DISABLE.getCode().equals(user.getStatus())) - { - recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "鐢ㄦ埛宸插仠鐢紝璇疯仈绯荤鐞嗗憳"); - throw new ServiceException("瀵逛笉璧凤紝鎮ㄧ殑璐﹀彿锛�" + username + " 宸插仠鐢�"); - } - passwordService.validate(user, password); - recordLogService.recordLogininfor(username, Constants.LOGIN_SUCCESS, "鐧诲綍鎴愬姛"); - recordLoginInfo(user.getUserId()); - return userInfo; - } - - /** - * 璁板綍鐧诲綍淇℃伅 - * - * @param userId 鐢ㄦ埛ID - */ - public void recordLoginInfo(Long userId) - { - SysUser sysUser = new SysUser(); - sysUser.setUserId(userId); - // 鏇存柊鐢ㄦ埛鐧诲綍IP - sysUser.setLoginIp(IpUtils.getIpAddr()); - // 鏇存柊鐢ㄦ埛鐧诲綍鏃堕棿 - sysUser.setLoginDate(DateUtils.getNowDate()); - remoteUserService.recordUserLogin(sysUser, SecurityConstants.INNER); - } - - public void logout(String loginName) - { - recordLogService.recordLogininfor(loginName, Constants.LOGOUT, "閫�鍑烘垚鍔�"); - } - - /** - * 娉ㄥ唽 - */ - public void register(String username, String password) - { - // 鐢ㄦ埛鍚嶆垨瀵嗙爜涓虹┖ 閿欒 - if (StringUtils.isAnyBlank(username, password)) - { - throw new ServiceException("鐢ㄦ埛/瀵嗙爜蹇呴』濉啓"); - } - if (username.length() < UserConstants.USERNAME_MIN_LENGTH - || username.length() > UserConstants.USERNAME_MAX_LENGTH) - { - throw new ServiceException("璐︽埛闀垮害蹇呴』鍦�2鍒�20涓瓧绗︿箣闂�"); - } - if (password.length() < UserConstants.PASSWORD_MIN_LENGTH - || password.length() > UserConstants.PASSWORD_MAX_LENGTH) - { - throw new ServiceException("瀵嗙爜闀垮害蹇呴』鍦�5鍒�20涓瓧绗︿箣闂�"); - } - - // 娉ㄥ唽鐢ㄦ埛淇℃伅 - SysUser sysUser = new SysUser(); - sysUser.setUserName(username); - sysUser.setNickName(username); - sysUser.setPassword(SecurityUtils.encryptPassword(password)); - R<?> registerResult = remoteUserService.registerUserInfo(sysUser, SecurityConstants.INNER); - - if (R.FAIL == registerResult.getCode()) - { - throw new ServiceException(registerResult.getMsg()); - } - recordLogService.recordLogininfor(username, Constants.REGISTER, "娉ㄥ唽鎴愬姛"); - } -} diff --git a/se-auth/src/main/java/com/se/auth/service/SysPasswordService.java b/se-auth/src/main/java/com/se/auth/service/SysPasswordService.java deleted file mode 100644 index 8efc6ab..0000000 --- a/se-auth/src/main/java/com/se/auth/service/SysPasswordService.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.se.auth.service; - -import java.util.concurrent.TimeUnit; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; -import com.se.common.core.constant.CacheConstants; -import com.se.common.core.constant.Constants; -import com.se.common.core.exception.ServiceException; -import com.se.common.redis.service.RedisService; -import com.se.common.security.utils.SecurityUtils; -import com.se.system.api.domain.SysUser; - -/** - * 鐧诲綍瀵嗙爜鏂规硶 - * - * @author admin - */ -@Component -@SuppressWarnings("ALL") -public class SysPasswordService -{ - @Autowired - private RedisService redisService; - - private int maxRetryCount = CacheConstants.PASSWORD_MAX_RETRY_COUNT; - - private Long lockTime = CacheConstants.PASSWORD_LOCK_TIME; - - @Autowired - private SysRecordLogService recordLogService; - - /** - * 鐧诲綍璐︽埛瀵嗙爜閿欒娆℃暟缂撳瓨閿悕 - * - * @param username 鐢ㄦ埛鍚� - * @return 缂撳瓨閿甼ey - */ - private String getCacheKey(String username) - { - return CacheConstants.PWD_ERR_CNT_KEY + username; - } - - public void validate(SysUser user, String password) - { - String username = user.getUserName(); - - Integer retryCount = redisService.getCacheObject(getCacheKey(username)); - - if (retryCount == null) - { - retryCount = 0; - } - - /*if (retryCount >= Integer.valueOf(maxRetryCount).intValue()) - { - String errMsg = String.format("瀵嗙爜杈撳叆閿欒%s娆★紝甯愭埛閿佸畾%s鍒嗛挓", maxRetryCount, lockTime); - recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL,errMsg); - throw new ServiceException(errMsg); - }*/ - - if (!matches(user, password)) - { - retryCount = retryCount + 1; - recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, String.format("瀵嗙爜杈撳叆閿欒%s娆�", retryCount)); - redisService.setCacheObject(getCacheKey(username), retryCount, lockTime, TimeUnit.MINUTES); - throw new ServiceException("鐢ㄦ埛涓嶅瓨鍦�/瀵嗙爜閿欒"); - } - else - { - clearLoginRecordCache(username); - } - } - - public boolean matches(SysUser user, String rawPassword) - { - return SecurityUtils.matchesPassword(rawPassword, user.getPassword()); - } - - public void clearLoginRecordCache(String loginName) - { - if (redisService.hasKey(getCacheKey(loginName))) - { - redisService.deleteObject(getCacheKey(loginName)); - } - } -} diff --git a/se-auth/src/main/java/com/se/auth/service/SysRecordLogService.java b/se-auth/src/main/java/com/se/auth/service/SysRecordLogService.java deleted file mode 100644 index 51c1893..0000000 --- a/se-auth/src/main/java/com/se/auth/service/SysRecordLogService.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.se.auth.service; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; -import com.se.common.core.constant.Constants; -import com.se.common.core.constant.SecurityConstants; -import com.se.common.core.utils.StringUtils; -import com.se.common.core.utils.ip.IpUtils; -import com.se.system.api.RemoteLogService; -import com.se.system.api.domain.SysLogininfor; - -/** - * 璁板綍鏃ュ織鏂规硶 - * - * @author admin - */ -@Component -public class SysRecordLogService -{ - @Autowired - private RemoteLogService remoteLogService; - - /** - * 璁板綍鐧诲綍淇℃伅 - * - * @param username 鐢ㄦ埛鍚� - * @param status 鐘舵�� - * @param message 娑堟伅鍐呭 - * @return - */ - public void recordLogininfor(String username, String status, String message) - { - SysLogininfor logininfor = new SysLogininfor(); - logininfor.setUserName(username); - logininfor.setIpaddr(IpUtils.getIpAddr()); - logininfor.setMsg(message); - // 鏃ュ織鐘舵�� - if (StringUtils.equalsAny(status, Constants.LOGIN_SUCCESS, Constants.LOGOUT, Constants.REGISTER)) - { - logininfor.setStatus(Constants.LOGIN_SUCCESS_STATUS); - } - else if (Constants.LOGIN_FAIL.equals(status)) - { - logininfor.setStatus(Constants.LOGIN_FAIL_STATUS); - } - remoteLogService.saveLogininfor(logininfor, SecurityConstants.INNER); - } -} diff --git a/se-auth/src/main/resources/banner.txt b/se-auth/src/main/resources/banner.txt deleted file mode 100644 index 269848e..0000000 --- a/se-auth/src/main/resources/banner.txt +++ /dev/null @@ -1,3 +0,0 @@ -Spring Boot Version: ${spring-boot.version} -Spring Application Name: ${spring.application.name} -SeAuthApplication锛屽凡缁忓惎鍔� \ No newline at end of file diff --git a/se-auth/src/main/resources/bootstrap.yml b/se-auth/src/main/resources/bootstrap.yml deleted file mode 100644 index 71d5269..0000000 --- a/se-auth/src/main/resources/bootstrap.yml +++ /dev/null @@ -1,28 +0,0 @@ -# Tomcat -server: - port: 9200 - -# Spring -spring: - application: - # 搴旂敤鍚嶇О - name: se-auth - profiles: - # 鐜閰嶇疆 - active: dev - cloud: - nacos: - username: nacos - password: nAcos_!9#_admIn - discovery: - # 鏈嶅姟娉ㄥ唽鍦板潃 - server-addr: 127.0.0.1:8848 - config: - # 閰嶇疆涓績鍦板潃 - server-addr: 127.0.0.1:8848 - # 閰嶇疆鏂囦欢鏍煎紡 - file-extension: yml - # 鍏变韩閰嶇疆 - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} -enableEncrypt: true \ No newline at end of file diff --git a/se-auth/src/main/resources/logback.xml b/se-auth/src/main/resources/logback.xml deleted file mode 100644 index f1b8cf8..0000000 --- a/se-auth/src/main/resources/logback.xml +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<configuration scan="true" scanPeriod="60 seconds" debug="false"> - <!-- 鏃ュ織瀛樻斁璺緞 --> - <property name="log.path" value="logs/se-auth" /> - <!-- 鏃ュ織杈撳嚭鏍煎紡 --> - <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" /> - - <!-- 鎺у埗鍙拌緭鍑� --> - <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - </appender> - - <!-- 绯荤粺鏃ュ織杈撳嚭 --> - <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.path}/info.log</file> - <!-- 寰幆鏀跨瓥锛氬熀浜庢椂闂村垱寤烘棩蹇楁枃浠� --> - <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> - <!-- 鏃ュ織鏂囦欢鍚嶆牸寮� --> - <fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern> - <!-- 鏃ュ織鏈�澶х殑鍘嗗彶 60澶� --> - <maxHistory>60</maxHistory> - </rollingPolicy> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - <filter class="ch.qos.logback.classic.filter.LevelFilter"> - <!-- 杩囨护鐨勭骇鍒� --> - <level>INFO</level> - <!-- 鍖归厤鏃剁殑鎿嶄綔锛氭帴鏀讹紙璁板綍锛� --> - <onMatch>ACCEPT</onMatch> - <!-- 涓嶅尮閰嶆椂鐨勬搷浣滐細鎷掔粷锛堜笉璁板綍锛� --> - <onMismatch>DENY</onMismatch> - </filter> - </appender> - - <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.path}/error.log</file> - <!-- 寰幆鏀跨瓥锛氬熀浜庢椂闂村垱寤烘棩蹇楁枃浠� --> - <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> - <!-- 鏃ュ織鏂囦欢鍚嶆牸寮� --> - <fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern> - <!-- 鏃ュ織鏈�澶х殑鍘嗗彶 60澶� --> - <maxHistory>60</maxHistory> - </rollingPolicy> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - <filter class="ch.qos.logback.classic.filter.LevelFilter"> - <!-- 杩囨护鐨勭骇鍒� --> - <level>ERROR</level> - <!-- 鍖归厤鏃剁殑鎿嶄綔锛氭帴鏀讹紙璁板綍锛� --> - <onMatch>ACCEPT</onMatch> - <!-- 涓嶅尮閰嶆椂鐨勬搷浣滐細鎷掔粷锛堜笉璁板綍锛� --> - <onMismatch>DENY</onMismatch> - </filter> - </appender> - - <!-- 绯荤粺妯″潡鏃ュ織绾у埆鎺у埗 --> - <logger name="com.se" level="info" /> - <!-- Spring鏃ュ織绾у埆鎺у埗 --> - <logger name="org.springframework" level="warn" /> - - <root level="info"> - <appender-ref ref="console" /> - </root> - - <!--绯荤粺鎿嶄綔鏃ュ織--> - <root level="info"> - <appender-ref ref="file_info" /> - <appender-ref ref="file_error" /> - </root> -</configuration> \ No newline at end of file diff --git a/se-modules/pom.xml b/se-modules/pom.xml index 09ae2ca..c39c8ee 100644 --- a/se-modules/pom.xml +++ b/se-modules/pom.xml @@ -10,9 +10,9 @@ <modules> <module>se-system</module> - <module>se-gen</module> + <!--<module>se-gen</module> <module>se-job</module> - <module>se-file</module> + <module>se-file</module>--> </modules> <artifactId>se-modules</artifactId> diff --git a/se-modules/se-file/pom.xml b/se-modules/se-file/pom.xml deleted file mode 100644 index 9e3c363..0000000 --- a/se-modules/se-file/pom.xml +++ /dev/null @@ -1,89 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns="http://maven.apache.org/POM/4.0.0" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <parent> - <groupId>com.se</groupId> - <artifactId>se-modules</artifactId> - <version>3.6.4</version> - </parent> - <modelVersion>4.0.0</modelVersion> - - <artifactId>se-modules-file</artifactId> - - <description> - se-modules-file鏂囦欢鏈嶅姟 - </description> - - <dependencies> - - <!-- SpringCloud Alibaba Nacos --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> - </dependency> - - <!-- SpringCloud Alibaba Nacos Config --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> - </dependency> - - <!-- SpringCloud Alibaba Sentinel --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> - </dependency> - - <!-- SpringBoot Actuator --> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-actuator</artifactId> - </dependency> - - <!-- FastDFS --> - <dependency> - <groupId>com.github.tobato</groupId> - <artifactId>fastdfs-client</artifactId> - </dependency> - - <!-- Minio --> - <dependency> - <groupId>io.minio</groupId> - <artifactId>minio</artifactId> - <version>8.2.2</version> -<!-- <version>${minio.version}</version>--> - </dependency> - - <!-- SE Api System --> - <dependency> - <groupId>com.se</groupId> - <artifactId>se-api-system</artifactId> - </dependency> - - <!-- SE Common Swagger --> - <dependency> - <groupId>com.se</groupId> - <artifactId>se-common-swagger</artifactId> - </dependency> - - </dependencies> - - <build> - <finalName>${project.artifactId}</finalName> - <plugins> - <plugin> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-maven-plugin</artifactId> - <executions> - <execution> - <goals> - <goal>repackage</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - -</project> \ No newline at end of file diff --git a/se-modules/se-file/src/main/java/com/se/file/SeFileApplication.java b/se-modules/se-file/src/main/java/com/se/file/SeFileApplication.java deleted file mode 100644 index d853e56..0000000 --- a/se-modules/se-file/src/main/java/com/se/file/SeFileApplication.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.se.file; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; -import com.se.common.swagger.annotation.EnableCustomSwagger2; - -/** - * 鏂囦欢鏈嶅姟 - * - * @author admin - */ -@EnableCustomSwagger2 -@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class }) -public class SeFileApplication -{ - public static void main(String[] args) - { - SpringApplication.run(SeFileApplication.class, args); - System.out.println(" 鏂囦欢妯″潡鍚姩鎴愬姛 "); - } -} diff --git a/se-modules/se-file/src/main/java/com/se/file/config/MinioConfig.java b/se-modules/se-file/src/main/java/com/se/file/config/MinioConfig.java deleted file mode 100644 index bb02876..0000000 --- a/se-modules/se-file/src/main/java/com/se/file/config/MinioConfig.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.se.file.config; - -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import io.minio.MinioClient; - -/** - * Minio 閰嶇疆淇℃伅 - * - * @author admin - */ -@Configuration -@ConfigurationProperties(prefix = "minio") -public class MinioConfig -{ - /** - * 鏈嶅姟鍦板潃 - */ - private String url; - - /** - * 鐢ㄦ埛鍚� - */ - private String accessKey; - - /** - * 瀵嗙爜 - */ - private String secretKey; - - /** - * 瀛樺偍妗跺悕绉� - */ - private String bucketName; - - public String getUrl() - { - return url; - } - - public void setUrl(String url) - { - this.url = url; - } - - public String getAccessKey() - { - return accessKey; - } - - public void setAccessKey(String accessKey) - { - this.accessKey = accessKey; - } - - public String getSecretKey() - { - return secretKey; - } - - public void setSecretKey(String secretKey) - { - this.secretKey = secretKey; - } - - public String getBucketName() - { - return bucketName; - } - - public void setBucketName(String bucketName) - { - this.bucketName = bucketName; - } - - @Bean - public MinioClient getMinioClient() - { - return MinioClient.builder().endpoint(url).credentials(accessKey, secretKey).build(); - } -} diff --git a/se-modules/se-file/src/main/java/com/se/file/config/ResourcesConfig.java b/se-modules/se-file/src/main/java/com/se/file/config/ResourcesConfig.java deleted file mode 100644 index bb0eebe..0000000 --- a/se-modules/se-file/src/main/java/com/se/file/config/ResourcesConfig.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.se.file.config; - -import java.io.File; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Configuration; -import org.springframework.web.servlet.config.annotation.CorsRegistry; -import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; - -/** - * 閫氱敤鏄犲皠閰嶇疆 - * - * @author admin - */ -@Configuration -public class ResourcesConfig implements WebMvcConfigurer -{ - /** - * 涓婁紶鏂囦欢瀛樺偍鍦ㄦ湰鍦扮殑鏍硅矾寰� - */ - @Value("${file.path}") - private String localFilePath; - - /** - * 璧勬簮鏄犲皠璺緞 鍓嶇紑 - */ - @Value("${file.prefix}") - public String localFilePrefix; - - @Override - public void addResourceHandlers(ResourceHandlerRegistry registry) - { - /** 鏈湴鏂囦欢涓婁紶璺緞 */ - registry.addResourceHandler(localFilePrefix + "/**") - .addResourceLocations("file:" + localFilePath + File.separator); - } - - /** - * 寮�鍚法鍩� - */ - @Override - public void addCorsMappings(CorsRegistry registry) { - // 璁剧疆鍏佽璺ㄥ煙鐨勮矾鐢� - registry.addMapping(localFilePrefix + "/**") - // 璁剧疆鍏佽璺ㄥ煙璇锋眰鐨勫煙鍚� - .allowedOrigins("*") - // 璁剧疆鍏佽鐨勬柟娉� - .allowedMethods("GET"); - } -} \ No newline at end of file diff --git a/se-modules/se-file/src/main/java/com/se/file/controller/SysFileController.java b/se-modules/se-file/src/main/java/com/se/file/controller/SysFileController.java deleted file mode 100644 index e87c238..0000000 --- a/se-modules/se-file/src/main/java/com/se/file/controller/SysFileController.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.se.file.controller; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RestController; -import org.springframework.web.multipart.MultipartFile; -import com.se.common.core.domain.R; -import com.se.common.core.utils.file.FileUtils; -import com.se.file.service.ISysFileService; -import com.se.system.api.domain.SysFile; - -/** - * 鏂囦欢璇锋眰澶勭悊 - * - * @author admin - */ -@RestController -public class SysFileController -{ - private static final Logger log = LoggerFactory.getLogger(SysFileController.class); - - @Autowired - private ISysFileService sysFileService; - - /** - * 鏂囦欢涓婁紶璇锋眰 - */ - @PostMapping("upload") - public R<SysFile> upload(MultipartFile file) - { - try - { - // 涓婁紶骞惰繑鍥炶闂湴鍧� - String url = sysFileService.uploadFile(file); - SysFile sysFile = new SysFile(); - sysFile.setName(FileUtils.getName(url)); - sysFile.setUrl(url); - return R.ok(sysFile); - } - catch (Exception e) - { - log.error("涓婁紶鏂囦欢澶辫触", e); - return R.fail(e.getMessage()); - } - } -} \ No newline at end of file diff --git a/se-modules/se-file/src/main/java/com/se/file/service/FastDfsSysFileServiceImpl.java b/se-modules/se-file/src/main/java/com/se/file/service/FastDfsSysFileServiceImpl.java deleted file mode 100644 index fa25b7b..0000000 --- a/se-modules/se-file/src/main/java/com/se/file/service/FastDfsSysFileServiceImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.se.file.service; - -import java.io.InputStream; -import com.alibaba.nacos.common.utils.IoUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Service; -import org.springframework.web.multipart.MultipartFile; -import com.github.tobato.fastdfs.domain.fdfs.StorePath; -import com.github.tobato.fastdfs.service.FastFileStorageClient; -import com.se.common.core.utils.file.FileTypeUtils; - -/** - * FastDFS 鏂囦欢瀛樺偍 - * - * @author admin - */ -@Service -public class FastDfsSysFileServiceImpl implements ISysFileService -{ - /** - * 鍩熷悕鎴栨湰鏈鸿闂湴鍧� - */ - @Value("${fdfs.domain}") - public String domain; - - @Autowired - private FastFileStorageClient storageClient; - - /** - * FastDfs鏂囦欢涓婁紶鎺ュ彛 - * - * @param file 涓婁紶鐨勬枃浠� - * @return 璁块棶鍦板潃 - * @throws Exception - */ - @Override - public String uploadFile(MultipartFile file) throws Exception - { - InputStream inputStream = file.getInputStream(); - StorePath storePath = storageClient.uploadFile(inputStream, file.getSize(), - FileTypeUtils.getExtension(file), null); - IoUtils.closeQuietly(inputStream); - return domain + "/" + storePath.getFullPath(); - } -} diff --git a/se-modules/se-file/src/main/java/com/se/file/service/ISysFileService.java b/se-modules/se-file/src/main/java/com/se/file/service/ISysFileService.java deleted file mode 100644 index 9d4215e..0000000 --- a/se-modules/se-file/src/main/java/com/se/file/service/ISysFileService.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.se.file.service; - -import org.springframework.web.multipart.MultipartFile; - -/** - * 鏂囦欢涓婁紶鎺ュ彛 - * - * @author admin - */ -public interface ISysFileService -{ - /** - * 鏂囦欢涓婁紶鎺ュ彛 - * - * @param file 涓婁紶鐨勬枃浠� - * @return 璁块棶鍦板潃 - * @throws Exception - */ - public String uploadFile(MultipartFile file) throws Exception; -} diff --git a/se-modules/se-file/src/main/java/com/se/file/service/LocalSysFileServiceImpl.java b/se-modules/se-file/src/main/java/com/se/file/service/LocalSysFileServiceImpl.java deleted file mode 100644 index 0ffaf52..0000000 --- a/se-modules/se-file/src/main/java/com/se/file/service/LocalSysFileServiceImpl.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.se.file.service; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Primary; -import org.springframework.stereotype.Service; -import org.springframework.web.multipart.MultipartFile; -import com.se.file.utils.FileUploadUtils; - -/** - * 鏈湴鏂囦欢瀛樺偍 - * - * @author admin - */ -@Primary -@Service -public class LocalSysFileServiceImpl implements ISysFileService -{ - /** - * 璧勬簮鏄犲皠璺緞 鍓嶇紑 - */ - @Value("${file.prefix}") - public String localFilePrefix; - - /** - * 鍩熷悕鎴栨湰鏈鸿闂湴鍧� - */ - @Value("${file.domain}") - public String domain; - - /** - * 涓婁紶鏂囦欢瀛樺偍鍦ㄦ湰鍦扮殑鏍硅矾寰� - */ - @Value("${file.path}") - private String localFilePath; - - /** - * 鏈湴鏂囦欢涓婁紶鎺ュ彛 - * - * @param file 涓婁紶鐨勬枃浠� - * @return 璁块棶鍦板潃 - * @throws Exception - */ - @Override - public String uploadFile(MultipartFile file) throws Exception - { - String name = FileUploadUtils.upload(localFilePath, file); - String url = domain + localFilePrefix + name; - return url; - } -} diff --git a/se-modules/se-file/src/main/java/com/se/file/service/MinioSysFileServiceImpl.java b/se-modules/se-file/src/main/java/com/se/file/service/MinioSysFileServiceImpl.java deleted file mode 100644 index cf7c1a1..0000000 --- a/se-modules/se-file/src/main/java/com/se/file/service/MinioSysFileServiceImpl.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.se.file.service; - -import java.io.InputStream; - -import com.se.file.config.MinioConfig; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.web.multipart.MultipartFile; -import com.alibaba.nacos.common.utils.IoUtils; -import com.se.file.utils.FileUploadUtils; -import io.minio.MinioClient; -import io.minio.PutObjectArgs; - -/** - * Minio 鏂囦欢瀛樺偍 - * - * @author admin - */ -@Service -public class MinioSysFileServiceImpl implements ISysFileService -{ - @Autowired - private MinioConfig minioConfig; - - @Autowired - private MinioClient client; - - /** - * Minio鏂囦欢涓婁紶鎺ュ彛 - * - * @param file 涓婁紶鐨勬枃浠� - * @return 璁块棶鍦板潃 - * @throws Exception - */ - @Override - public String uploadFile(MultipartFile file) throws Exception - { - String fileName = FileUploadUtils.extractFilename(file); - InputStream inputStream = file.getInputStream(); - PutObjectArgs args = PutObjectArgs.builder() - .bucket(minioConfig.getBucketName()) - .object(fileName) - .stream(inputStream, file.getSize(), -1) - .contentType(file.getContentType()) - .build(); - client.putObject(args); - IoUtils.closeQuietly(inputStream); - return minioConfig.getUrl() + "/" + minioConfig.getBucketName() + "/" + fileName; - } -} diff --git a/se-modules/se-file/src/main/java/com/se/file/utils/FileUploadUtils.java b/se-modules/se-file/src/main/java/com/se/file/utils/FileUploadUtils.java deleted file mode 100644 index c51548d..0000000 --- a/se-modules/se-file/src/main/java/com/se/file/utils/FileUploadUtils.java +++ /dev/null @@ -1,185 +0,0 @@ -package com.se.file.utils; - -import java.io.File; -import java.io.IOException; -import java.nio.file.Paths; -import java.util.Objects; -import org.apache.commons.io.FilenameUtils; -import org.springframework.web.multipart.MultipartFile; -import com.se.common.core.exception.file.FileException; -import com.se.common.core.exception.file.FileNameLengthLimitExceededException; -import com.se.common.core.exception.file.FileSizeLimitExceededException; -import com.se.common.core.exception.file.InvalidExtensionException; -import com.se.common.core.utils.DateUtils; -import com.se.common.core.utils.StringUtils; -import com.se.common.core.utils.file.FileTypeUtils; -import com.se.common.core.utils.file.MimeTypeUtils; -import com.se.common.core.utils.uuid.Seq; - -/** - * 鏂囦欢涓婁紶宸ュ叿绫� - * - * @author admin - */ -public class FileUploadUtils -{ - /** - * 榛樿澶у皬 50M - */ - public static final long DEFAULT_MAX_SIZE = 50 * 1024 * 1024L; - - /** - * 榛樿鐨勬枃浠跺悕鏈�澶ч暱搴� 100 - */ - public static final int DEFAULT_FILE_NAME_LENGTH = 100; - - /** - * 鏍规嵁鏂囦欢璺緞涓婁紶 - * - * @param baseDir 鐩稿搴旂敤鐨勫熀鐩綍 - * @param file 涓婁紶鐨勬枃浠� - * @return 鏂囦欢鍚嶇О - * @throws IOException - */ - public static final String upload(String baseDir, MultipartFile file) throws IOException - { - try - { - return upload(baseDir, file, MimeTypeUtils.DEFAULT_ALLOWED_EXTENSION); - } - catch (FileException fe) - { - throw new IOException(fe.getDefaultMessage(), fe); - } - catch (Exception e) - { - throw new IOException(e.getMessage(), e); - } - } - - /** - * 鏂囦欢涓婁紶 - * - * @param baseDir 鐩稿搴旂敤鐨勫熀鐩綍 - * @param file 涓婁紶鐨勬枃浠� - * @param allowedExtension 涓婁紶鏂囦欢绫诲瀷 - * @return 杩斿洖涓婁紶鎴愬姛鐨勬枃浠跺悕 - * @throws FileSizeLimitExceededException 濡傛灉瓒呭嚭鏈�澶уぇ灏� - * @throws FileNameLengthLimitExceededException 鏂囦欢鍚嶅お闀� - * @throws IOException 姣斿璇诲啓鏂囦欢鍑洪敊鏃� - * @throws InvalidExtensionException 鏂囦欢鏍¢獙寮傚父 - */ - public static final String upload(String baseDir, MultipartFile file, String[] allowedExtension) - throws FileSizeLimitExceededException, IOException, FileNameLengthLimitExceededException, - InvalidExtensionException - { - int fileNamelength = Objects.requireNonNull(file.getOriginalFilename()).length(); - if (fileNamelength > FileUploadUtils.DEFAULT_FILE_NAME_LENGTH) - { - throw new FileNameLengthLimitExceededException(FileUploadUtils.DEFAULT_FILE_NAME_LENGTH); - } - - assertAllowed(file, allowedExtension); - - String fileName = extractFilename(file); - - String absPath = getAbsoluteFile(baseDir, fileName).getAbsolutePath(); - file.transferTo(Paths.get(absPath)); - return getPathFileName(fileName); - } - - /** - * 缂栫爜鏂囦欢鍚� - */ - public static final String extractFilename(MultipartFile file) - { - return StringUtils.format("{}/{}_{}.{}", DateUtils.datePath(), - FilenameUtils.getBaseName(file.getOriginalFilename()), Seq.getId(Seq.uploadSeqType), FileTypeUtils.getExtension(file)); - } - - private static final File getAbsoluteFile(String uploadDir, String fileName) throws IOException - { - File desc = new File(uploadDir + File.separator + fileName); - - if (!desc.exists()) - { - if (!desc.getParentFile().exists()) - { - desc.getParentFile().mkdirs(); - } - } - return desc.isAbsolute() ? desc : desc.getAbsoluteFile(); - } - - private static final String getPathFileName(String fileName) throws IOException - { - String pathFileName = "/" + fileName; - return pathFileName; - } - - /** - * 鏂囦欢澶у皬鏍¢獙 - * - * @param file 涓婁紶鐨勬枃浠� - * @throws FileSizeLimitExceededException 濡傛灉瓒呭嚭鏈�澶уぇ灏� - * @throws InvalidExtensionException 鏂囦欢鏍¢獙寮傚父 - */ - public static final void assertAllowed(MultipartFile file, String[] allowedExtension) - throws FileSizeLimitExceededException, InvalidExtensionException - { - long size = file.getSize(); - if (size > DEFAULT_MAX_SIZE) - { - throw new FileSizeLimitExceededException(DEFAULT_MAX_SIZE / 1024 / 1024); - } - - String fileName = file.getOriginalFilename(); - String extension = FileTypeUtils.getExtension(file); - if (allowedExtension != null && !isAllowedExtension(extension, allowedExtension)) - { - if (allowedExtension == MimeTypeUtils.IMAGE_EXTENSION) - { - throw new InvalidExtensionException.InvalidImageExtensionException(allowedExtension, extension, - fileName); - } - else if (allowedExtension == MimeTypeUtils.FLASH_EXTENSION) - { - throw new InvalidExtensionException.InvalidFlashExtensionException(allowedExtension, extension, - fileName); - } - else if (allowedExtension == MimeTypeUtils.MEDIA_EXTENSION) - { - throw new InvalidExtensionException.InvalidMediaExtensionException(allowedExtension, extension, - fileName); - } - else if (allowedExtension == MimeTypeUtils.VIDEO_EXTENSION) - { - throw new InvalidExtensionException.InvalidVideoExtensionException(allowedExtension, extension, - fileName); - } - else - { - throw new InvalidExtensionException(allowedExtension, extension, fileName); - } - } - } - - /** - * 鍒ゆ柇MIME绫诲瀷鏄惁鏄厑璁哥殑MIME绫诲瀷 - * - * @param extension 涓婁紶鏂囦欢绫诲瀷 - * @param allowedExtension 鍏佽涓婁紶鏂囦欢绫诲瀷 - * @return true/false - */ - public static final boolean isAllowedExtension(String extension, String[] allowedExtension) - { - for (String str : allowedExtension) - { - if (str.equalsIgnoreCase(extension)) - { - return true; - } - } - return false; - } -} \ No newline at end of file diff --git a/se-modules/se-file/src/main/resources/banner.txt b/se-modules/se-file/src/main/resources/banner.txt deleted file mode 100644 index 9504136..0000000 --- a/se-modules/se-file/src/main/resources/banner.txt +++ /dev/null @@ -1,3 +0,0 @@ -Spring Boot Version: ${spring-boot.version} -Spring Application Name: ${spring.application.name} -SeFileApplication锛屽凡缁忓惎鍔� \ No newline at end of file diff --git a/se-modules/se-file/src/main/resources/bootstrap.yml b/se-modules/se-file/src/main/resources/bootstrap.yml deleted file mode 100644 index 3204f87..0000000 --- a/se-modules/se-file/src/main/resources/bootstrap.yml +++ /dev/null @@ -1,27 +0,0 @@ -# Tomcat -server: - port: 9300 - -# Spring -spring: - application: - # 搴旂敤鍚嶇О - name: se-file - profiles: - # 鐜閰嶇疆 - active: dev - cloud: - nacos: - username: nacos - password: nAcos_!9#_admIn - discovery: - # 鏈嶅姟娉ㄥ唽鍦板潃 - server-addr: 127.0.0.1:8848 - config: - # 閰嶇疆涓績鍦板潃 - server-addr: 127.0.0.1:8848 - # 閰嶇疆鏂囦欢鏍煎紡 - file-extension: yml - # 鍏变韩閰嶇疆 - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} diff --git a/se-modules/se-file/src/main/resources/logback.xml b/se-modules/se-file/src/main/resources/logback.xml deleted file mode 100644 index 46941d6..0000000 --- a/se-modules/se-file/src/main/resources/logback.xml +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<configuration scan="true" scanPeriod="60 seconds" debug="false"> - <!-- 鏃ュ織瀛樻斁璺緞 --> - <property name="log.path" value="logs/se-file" /> - <!-- 鏃ュ織杈撳嚭鏍煎紡 --> - <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" /> - - <!-- 鎺у埗鍙拌緭鍑� --> - <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - </appender> - - <!-- 绯荤粺鏃ュ織杈撳嚭 --> - <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.path}/info.log</file> - <!-- 寰幆鏀跨瓥锛氬熀浜庢椂闂村垱寤烘棩蹇楁枃浠� --> - <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> - <!-- 鏃ュ織鏂囦欢鍚嶆牸寮� --> - <fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern> - <!-- 鏃ュ織鏈�澶х殑鍘嗗彶 60澶� --> - <maxHistory>60</maxHistory> - </rollingPolicy> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - <filter class="ch.qos.logback.classic.filter.LevelFilter"> - <!-- 杩囨护鐨勭骇鍒� --> - <level>INFO</level> - <!-- 鍖归厤鏃剁殑鎿嶄綔锛氭帴鏀讹紙璁板綍锛� --> - <onMatch>ACCEPT</onMatch> - <!-- 涓嶅尮閰嶆椂鐨勬搷浣滐細鎷掔粷锛堜笉璁板綍锛� --> - <onMismatch>DENY</onMismatch> - </filter> - </appender> - - <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.path}/error.log</file> - <!-- 寰幆鏀跨瓥锛氬熀浜庢椂闂村垱寤烘棩蹇楁枃浠� --> - <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> - <!-- 鏃ュ織鏂囦欢鍚嶆牸寮� --> - <fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern> - <!-- 鏃ュ織鏈�澶х殑鍘嗗彶 60澶� --> - <maxHistory>60</maxHistory> - </rollingPolicy> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - <filter class="ch.qos.logback.classic.filter.LevelFilter"> - <!-- 杩囨护鐨勭骇鍒� --> - <level>ERROR</level> - <!-- 鍖归厤鏃剁殑鎿嶄綔锛氭帴鏀讹紙璁板綍锛� --> - <onMatch>ACCEPT</onMatch> - <!-- 涓嶅尮閰嶆椂鐨勬搷浣滐細鎷掔粷锛堜笉璁板綍锛� --> - <onMismatch>DENY</onMismatch> - </filter> - </appender> - - <!-- 绯荤粺妯″潡鏃ュ織绾у埆鎺у埗 --> - <logger name="com.se" level="info" /> - <!-- Spring鏃ュ織绾у埆鎺у埗 --> - <logger name="org.springframework" level="warn" /> - - <root level="info"> - <appender-ref ref="console" /> - </root> - - <!--绯荤粺鎿嶄綔鏃ュ織--> - <root level="info"> - <appender-ref ref="file_info" /> - <appender-ref ref="file_error" /> - </root> -</configuration> \ No newline at end of file diff --git a/se-modules/se-gen/pom.xml b/se-modules/se-gen/pom.xml deleted file mode 100644 index bf25817..0000000 --- a/se-modules/se-gen/pom.xml +++ /dev/null @@ -1,94 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns="http://maven.apache.org/POM/4.0.0" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <parent> - <groupId>com.se</groupId> - <artifactId>se-modules</artifactId> - <version>3.6.4</version> - </parent> - <modelVersion>4.0.0</modelVersion> - - <artifactId>se-modules-gen</artifactId> - - <description> - se-modules-gen浠g爜鐢熸垚 - </description> - - <dependencies> - - <!-- SpringCloud Alibaba Nacos --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> - </dependency> - - <!-- SpringCloud Alibaba Nacos Config --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> - </dependency> - - <!-- SpringCloud Alibaba Sentinel --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> - </dependency> - - <!-- SpringBoot Actuator --> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-actuator</artifactId> - </dependency> - - <!-- Swagger UI --> - <dependency> - <groupId>io.springfox</groupId> - <artifactId>springfox-swagger-ui</artifactId> - <version>${swagger.fox.version}</version> - </dependency> - - <!-- Apache Velocity --> - <dependency> - <groupId>org.apache.velocity</groupId> - <artifactId>velocity-engine-core</artifactId> - </dependency> - - <!-- Mysql Connector --> - <dependency> - <groupId>com.mysql</groupId> - <artifactId>mysql-connector-j</artifactId> - </dependency> - - <!-- SE Common Log --> - <dependency> - <groupId>com.se</groupId> - <artifactId>se-common-log</artifactId> - </dependency> - - <!-- SE Common Swagger --> - <dependency> - <groupId>com.se</groupId> - <artifactId>se-common-swagger</artifactId> - </dependency> - - </dependencies> - - <build> - <finalName>${project.artifactId}</finalName> - <plugins> - <plugin> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-maven-plugin</artifactId> - <executions> - <execution> - <goals> - <goal>repackage</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - -</project> \ No newline at end of file diff --git a/se-modules/se-gen/src/main/java/com/se/gen/SeGenApplication.java b/se-modules/se-gen/src/main/java/com/se/gen/SeGenApplication.java deleted file mode 100644 index 8094ee0..0000000 --- a/se-modules/se-gen/src/main/java/com/se/gen/SeGenApplication.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.se.gen; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import com.se.common.security.annotation.EnableCustomConfig; -import com.se.common.security.annotation.EnableRyFeignClients; -import com.se.common.swagger.annotation.EnableCustomSwagger2; - -/** - * 浠g爜鐢熸垚 - * - * @author admin - */ -@EnableCustomConfig -@EnableCustomSwagger2 -@EnableRyFeignClients -@SpringBootApplication -public class SeGenApplication -{ - public static void main(String[] args) - { - SpringApplication.run(SeGenApplication.class, args); - System.out.println(" 浠g爜鐢熸垚妯″潡鍚姩鎴愬姛 "); - } -} diff --git a/se-modules/se-gen/src/main/resources/banner.txt b/se-modules/se-gen/src/main/resources/banner.txt deleted file mode 100644 index b951c98..0000000 --- a/se-modules/se-gen/src/main/resources/banner.txt +++ /dev/null @@ -1,3 +0,0 @@ -Spring Boot Version: ${spring-boot.version} -Spring Application Name: ${spring.application.name} -SeGenApplication锛屽凡缁忓惎鍔� \ No newline at end of file diff --git a/se-modules/se-gen/src/main/resources/bootstrap.yml b/se-modules/se-gen/src/main/resources/bootstrap.yml deleted file mode 100644 index d041ebe..0000000 --- a/se-modules/se-gen/src/main/resources/bootstrap.yml +++ /dev/null @@ -1,27 +0,0 @@ -# Tomcat -server: - port: 9202 - -# Spring -spring: - application: - # 搴旂敤鍚嶇О - name: se-gen - profiles: - # 鐜閰嶇疆 - active: dev - cloud: - nacos: - username: nacos - password: nAcos_!9#_admIn - discovery: - # 鏈嶅姟娉ㄥ唽鍦板潃 - server-addr: 127.0.0.1:8848 - config: - # 閰嶇疆涓績鍦板潃 - server-addr: 127.0.0.1:8848 - # 閰嶇疆鏂囦欢鏍煎紡 - file-extension: yml - # 鍏变韩閰嶇疆 - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} diff --git a/se-modules/se-gen/src/main/resources/logback.xml b/se-modules/se-gen/src/main/resources/logback.xml deleted file mode 100644 index eeb9a55..0000000 --- a/se-modules/se-gen/src/main/resources/logback.xml +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<configuration scan="true" scanPeriod="60 seconds" debug="false"> - <!-- 鏃ュ織瀛樻斁璺緞 --> - <property name="log.path" value="logs/se-gen" /> - <!-- 鏃ュ織杈撳嚭鏍煎紡 --> - <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" /> - - <!-- 鎺у埗鍙拌緭鍑� --> - <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - </appender> - - <!-- 绯荤粺鏃ュ織杈撳嚭 --> - <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.path}/info.log</file> - <!-- 寰幆鏀跨瓥锛氬熀浜庢椂闂村垱寤烘棩蹇楁枃浠� --> - <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> - <!-- 鏃ュ織鏂囦欢鍚嶆牸寮� --> - <fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern> - <!-- 鏃ュ織鏈�澶х殑鍘嗗彶 60澶� --> - <maxHistory>60</maxHistory> - </rollingPolicy> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - <filter class="ch.qos.logback.classic.filter.LevelFilter"> - <!-- 杩囨护鐨勭骇鍒� --> - <level>INFO</level> - <!-- 鍖归厤鏃剁殑鎿嶄綔锛氭帴鏀讹紙璁板綍锛� --> - <onMatch>ACCEPT</onMatch> - <!-- 涓嶅尮閰嶆椂鐨勬搷浣滐細鎷掔粷锛堜笉璁板綍锛� --> - <onMismatch>DENY</onMismatch> - </filter> - </appender> - - <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.path}/error.log</file> - <!-- 寰幆鏀跨瓥锛氬熀浜庢椂闂村垱寤烘棩蹇楁枃浠� --> - <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> - <!-- 鏃ュ織鏂囦欢鍚嶆牸寮� --> - <fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern> - <!-- 鏃ュ織鏈�澶х殑鍘嗗彶 60澶� --> - <maxHistory>60</maxHistory> - </rollingPolicy> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - <filter class="ch.qos.logback.classic.filter.LevelFilter"> - <!-- 杩囨护鐨勭骇鍒� --> - <level>ERROR</level> - <!-- 鍖归厤鏃剁殑鎿嶄綔锛氭帴鏀讹紙璁板綍锛� --> - <onMatch>ACCEPT</onMatch> - <!-- 涓嶅尮閰嶆椂鐨勬搷浣滐細鎷掔粷锛堜笉璁板綍锛� --> - <onMismatch>DENY</onMismatch> - </filter> - </appender> - - <!-- 绯荤粺妯″潡鏃ュ織绾у埆鎺у埗 --> - <logger name="com.se" level="info" /> - <!-- Spring鏃ュ織绾у埆鎺у埗 --> - <logger name="org.springframework" level="warn" /> - - <root level="info"> - <appender-ref ref="console" /> - </root> - - <!--绯荤粺鎿嶄綔鏃ュ織--> - <root level="info"> - <appender-ref ref="file_info" /> - <appender-ref ref="file_error" /> - </root> -</configuration> \ No newline at end of file diff --git a/se-modules/se-gen/src/main/resources/vm/java/controller.java.vm b/se-modules/se-gen/src/main/resources/vm/java/controller.java.vm deleted file mode 100644 index 86e7eaf..0000000 --- a/se-modules/se-gen/src/main/resources/vm/java/controller.java.vm +++ /dev/null @@ -1,115 +0,0 @@ -package ${packageName}.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.se.common.log.annotation.Log; -import com.se.common.log.enums.BusinessType; -import com.se.common.security.annotation.RequiresPermissions; -import ${packageName}.domain.${ClassName}; -import ${packageName}.service.I${ClassName}Service; -import com.se.common.core.web.controller.BaseController; -import com.se.common.core.web.domain.AjaxResult; -import com.se.common.core.utils.poi.ExcelUtil; -#if($table.crud || $table.sub) -import com.se.common.core.web.page.TableDataInfo; -#elseif($table.tree) -#end - -/** - * ${functionName}Controller - * - * @author ${author} - * @date ${datetime} - */ -@RestController -@RequestMapping("/${businessName}") -public class ${ClassName}Controller extends BaseController -{ - @Autowired - private I${ClassName}Service ${className}Service; - - /** - * 鏌ヨ${functionName}鍒楄〃 - */ - @RequiresPermissions("${permissionPrefix}:list") - @GetMapping("/list") -#if($table.crud || $table.sub) - public TableDataInfo list(${ClassName} ${className}) - { - startPage(); - List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); - return getDataTable(list); - } -#elseif($table.tree) - public AjaxResult list(${ClassName} ${className}) - { - List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); - return success(list); - } -#end - - /** - * 瀵煎嚭${functionName}鍒楄〃 - */ - @RequiresPermissions("${permissionPrefix}:export") - @Log(title = "${functionName}", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ${ClassName} ${className}) - { - List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); - ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}.class); - util.exportExcel(response, list, "${functionName}鏁版嵁"); - } - - /** - * 鑾峰彇${functionName}璇︾粏淇℃伅 - */ - @RequiresPermissions("${permissionPrefix}:query") - @GetMapping(value = "/{${pkColumn.javaField}}") - public AjaxResult getInfo(@PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField}) - { - return success(${className}Service.select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField})); - } - - /** - * 鏂板${functionName} - */ - @RequiresPermissions("${permissionPrefix}:add") - @Log(title = "${functionName}", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ${ClassName} ${className}) - { - return toAjax(${className}Service.insert${ClassName}(${className})); - } - - /** - * 淇敼${functionName} - */ - @RequiresPermissions("${permissionPrefix}:edit") - @Log(title = "${functionName}", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ${ClassName} ${className}) - { - return toAjax(${className}Service.update${ClassName}(${className})); - } - - /** - * 鍒犻櫎${functionName} - */ - @RequiresPermissions("${permissionPrefix}:remove") - @Log(title = "${functionName}", businessType = BusinessType.DELETE) - @DeleteMapping("/{${pkColumn.javaField}s}") - public AjaxResult remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) - { - return toAjax(${className}Service.delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaField}s)); - } -} diff --git a/se-modules/se-gen/src/main/resources/vm/java/domain.java.vm b/se-modules/se-gen/src/main/resources/vm/java/domain.java.vm deleted file mode 100644 index bb2fa06..0000000 --- a/se-modules/se-gen/src/main/resources/vm/java/domain.java.vm +++ /dev/null @@ -1,101 +0,0 @@ -package ${packageName}.domain; - -#foreach ($import in $importList) -import ${import}; -#end -import com.se.common.core.annotation.Excel; -#if($table.crud || $table.sub) -#elseif($table.tree) -#end - -/** - * ${functionName}瀵硅薄 ${tableName} - * - * @author ${author} - * @date ${datetime} - */ -#if($table.crud || $table.sub) -#set($Entity="BaseEntity") -#elseif($table.tree) -#set($Entity="TreeEntity") -#end -public class ${ClassName} extends ${Entity} -{ - private static final long serialVersionUID = 1L; - -#foreach ($column in $columns) -#if(!$table.isSuperColumn($column.javaField)) - /** $column.columnComment */ -#if($column.list) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($parentheseIndex != -1) - @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") -#elseif($column.javaType == 'Date') - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd") -#else - @Excel(name = "${comment}") -#end -#end - private $column.javaType $column.javaField; - -#end -#end -#if($table.sub) - /** $table.subTable.functionName淇℃伅 */ - private List<${subClassName}> ${subclassName}List; - -#end -#foreach ($column in $columns) -#if(!$table.isSuperColumn($column.javaField)) -#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) -#set($AttrName=$column.javaField) -#else -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#end - public void set${AttrName}($column.javaType $column.javaField) - { - this.$column.javaField = $column.javaField; - } - - public $column.javaType get${AttrName}() - { - return $column.javaField; - } -#end -#end - -#if($table.sub) - public List<${subClassName}> get${subClassName}List() - { - return ${subclassName}List; - } - - public void set${subClassName}List(List<${subClassName}> ${subclassName}List) - { - this.${subclassName}List = ${subclassName}List; - } - -#end - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) -#foreach ($column in $columns) -#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) -#set($AttrName=$column.javaField) -#else -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#end - .append("${column.javaField}", get${AttrName}()) -#end -#if($table.sub) - .append("${subclassName}List", get${subClassName}List()) -#end - .toString(); - } -} diff --git a/se-modules/se-gen/src/main/resources/vm/java/mapper.java.vm b/se-modules/se-gen/src/main/resources/vm/java/mapper.java.vm deleted file mode 100644 index 7e7d7c2..0000000 --- a/se-modules/se-gen/src/main/resources/vm/java/mapper.java.vm +++ /dev/null @@ -1,91 +0,0 @@ -package ${packageName}.mapper; - -import java.util.List; -import ${packageName}.domain.${ClassName}; -#if($table.sub) -import ${packageName}.domain.${subClassName}; -#end - -/** - * ${functionName}Mapper鎺ュ彛 - * - * @author ${author} - * @date ${datetime} - */ -public interface ${ClassName}Mapper -{ - /** - * 鏌ヨ${functionName} - * - * @param ${pkColumn.javaField} ${functionName}涓婚敭 - * @return ${functionName} - */ - public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); - - /** - * 鏌ヨ${functionName}鍒楄〃 - * - * @param ${className} ${functionName} - * @return ${functionName}闆嗗悎 - */ - public List<${ClassName}> select${ClassName}List(${ClassName} ${className}); - - /** - * 鏂板${functionName} - * - * @param ${className} ${functionName} - * @return 缁撴灉 - */ - public int insert${ClassName}(${ClassName} ${className}); - - /** - * 淇敼${functionName} - * - * @param ${className} ${functionName} - * @return 缁撴灉 - */ - public int update${ClassName}(${ClassName} ${className}); - - /** - * 鍒犻櫎${functionName} - * - * @param ${pkColumn.javaField} ${functionName}涓婚敭 - * @return 缁撴灉 - */ - public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); - - /** - * 鎵归噺鍒犻櫎${functionName} - * - * @param ${pkColumn.javaField}s 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎 - * @return 缁撴灉 - */ - public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s); -#if($table.sub) - - /** - * 鎵归噺鍒犻櫎${subTable.functionName} - * - * @param ${pkColumn.javaField}s 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎 - * @return 缁撴灉 - */ - public int delete${subClassName}By${subTableFkClassName}s(${pkColumn.javaType}[] ${pkColumn.javaField}s); - - /** - * 鎵归噺鏂板${subTable.functionName} - * - * @param ${subclassName}List ${subTable.functionName}鍒楄〃 - * @return 缁撴灉 - */ - public int batch${subClassName}(List<${subClassName}> ${subclassName}List); - - - /** - * 閫氳繃${functionName}涓婚敭鍒犻櫎${subTable.functionName}淇℃伅 - * - * @param ${pkColumn.javaField} ${functionName}ID - * @return 缁撴灉 - */ - public int delete${subClassName}By${subTableFkClassName}(${pkColumn.javaType} ${pkColumn.javaField}); -#end -} diff --git a/se-modules/se-gen/src/main/resources/vm/java/service.java.vm b/se-modules/se-gen/src/main/resources/vm/java/service.java.vm deleted file mode 100644 index 264882b..0000000 --- a/se-modules/se-gen/src/main/resources/vm/java/service.java.vm +++ /dev/null @@ -1,61 +0,0 @@ -package ${packageName}.service; - -import java.util.List; -import ${packageName}.domain.${ClassName}; - -/** - * ${functionName}Service鎺ュ彛 - * - * @author ${author} - * @date ${datetime} - */ -public interface I${ClassName}Service -{ - /** - * 鏌ヨ${functionName} - * - * @param ${pkColumn.javaField} ${functionName}涓婚敭 - * @return ${functionName} - */ - public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); - - /** - * 鏌ヨ${functionName}鍒楄〃 - * - * @param ${className} ${functionName} - * @return ${functionName}闆嗗悎 - */ - public List<${ClassName}> select${ClassName}List(${ClassName} ${className}); - - /** - * 鏂板${functionName} - * - * @param ${className} ${functionName} - * @return 缁撴灉 - */ - public int insert${ClassName}(${ClassName} ${className}); - - /** - * 淇敼${functionName} - * - * @param ${className} ${functionName} - * @return 缁撴灉 - */ - public int update${ClassName}(${ClassName} ${className}); - - /** - * 鎵归噺鍒犻櫎${functionName} - * - * @param ${pkColumn.javaField}s 闇�瑕佸垹闄ょ殑${functionName}涓婚敭闆嗗悎 - * @return 缁撴灉 - */ - public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s); - - /** - * 鍒犻櫎${functionName}淇℃伅 - * - * @param ${pkColumn.javaField} ${functionName}涓婚敭 - * @return 缁撴灉 - */ - public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); -} diff --git a/se-modules/se-gen/src/main/resources/vm/java/serviceImpl.java.vm b/se-modules/se-gen/src/main/resources/vm/java/serviceImpl.java.vm deleted file mode 100644 index 81d3764..0000000 --- a/se-modules/se-gen/src/main/resources/vm/java/serviceImpl.java.vm +++ /dev/null @@ -1,169 +0,0 @@ -package ${packageName}.service.impl; - -import java.util.List; -#foreach ($column in $columns) -#if($column.javaField == 'createTime' || $column.javaField == 'updateTime') -import com.se.common.core.utils.DateUtils; -#break -#end -#end -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -#if($table.sub) -import java.util.ArrayList; -import com.se.common.core.utils.StringUtils; -import org.springframework.transaction.annotation.Transactional; -import ${packageName}.domain.${subClassName}; -#end -import ${packageName}.mapper.${ClassName}Mapper; -import ${packageName}.domain.${ClassName}; -import ${packageName}.service.I${ClassName}Service; - -/** - * ${functionName}Service涓氬姟灞傚鐞� - * - * @author ${author} - * @date ${datetime} - */ -@Service -public class ${ClassName}ServiceImpl implements I${ClassName}Service -{ - @Autowired - private ${ClassName}Mapper ${className}Mapper; - - /** - * 鏌ヨ${functionName} - * - * @param ${pkColumn.javaField} ${functionName}涓婚敭 - * @return ${functionName} - */ - @Override - public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}) - { - return ${className}Mapper.select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField}); - } - - /** - * 鏌ヨ${functionName}鍒楄〃 - * - * @param ${className} ${functionName} - * @return ${functionName} - */ - @Override - public List<${ClassName}> select${ClassName}List(${ClassName} ${className}) - { - return ${className}Mapper.select${ClassName}List(${className}); - } - - /** - * 鏂板${functionName} - * - * @param ${className} ${functionName} - * @return 缁撴灉 - */ -#if($table.sub) - @Transactional -#end - @Override - public int insert${ClassName}(${ClassName} ${className}) - { -#foreach ($column in $columns) -#if($column.javaField == 'createTime') - ${className}.setCreateTime(DateUtils.getNowDate()); -#end -#end -#if($table.sub) - int rows = ${className}Mapper.insert${ClassName}(${className}); - insert${subClassName}(${className}); - return rows; -#else - return ${className}Mapper.insert${ClassName}(${className}); -#end - } - - /** - * 淇敼${functionName} - * - * @param ${className} ${functionName} - * @return 缁撴灉 - */ -#if($table.sub) - @Transactional -#end - @Override - public int update${ClassName}(${ClassName} ${className}) - { -#foreach ($column in $columns) -#if($column.javaField == 'updateTime') - ${className}.setUpdateTime(DateUtils.getNowDate()); -#end -#end -#if($table.sub) - ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${className}.get${pkColumn.capJavaField}()); - insert${subClassName}(${className}); -#end - return ${className}Mapper.update${ClassName}(${className}); - } - - /** - * 鎵归噺鍒犻櫎${functionName} - * - * @param ${pkColumn.javaField}s 闇�瑕佸垹闄ょ殑${functionName}涓婚敭 - * @return 缁撴灉 - */ -#if($table.sub) - @Transactional -#end - @Override - public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s) - { -#if($table.sub) - ${className}Mapper.delete${subClassName}By${subTableFkClassName}s(${pkColumn.javaField}s); -#end - return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaField}s); - } - - /** - * 鍒犻櫎${functionName}淇℃伅 - * - * @param ${pkColumn.javaField} ${functionName}涓婚敭 - * @return 缁撴灉 - */ -#if($table.sub) - @Transactional -#end - @Override - public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}) - { -#if($table.sub) - ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${pkColumn.javaField}); -#end - return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField}); - } -#if($table.sub) - - /** - * 鏂板${subTable.functionName}淇℃伅 - * - * @param ${className} ${functionName}瀵硅薄 - */ - public void insert${subClassName}(${ClassName} ${className}) - { - List<${subClassName}> ${subclassName}List = ${className}.get${subClassName}List(); - ${pkColumn.javaType} ${pkColumn.javaField} = ${className}.get${pkColumn.capJavaField}(); - if (StringUtils.isNotNull(${subclassName}List)) - { - List<${subClassName}> list = new ArrayList<${subClassName}>(); - for (${subClassName} ${subclassName} : ${subclassName}List) - { - ${subclassName}.set${subTableFkClassName}(${pkColumn.javaField}); - list.add(${subclassName}); - } - if (list.size() > 0) - { - ${className}Mapper.batch${subClassName}(list); - } - } - } -#end -} diff --git a/se-modules/se-gen/src/main/resources/vm/java/sub-domain.java.vm b/se-modules/se-gen/src/main/resources/vm/java/sub-domain.java.vm deleted file mode 100644 index a517964..0000000 --- a/se-modules/se-gen/src/main/resources/vm/java/sub-domain.java.vm +++ /dev/null @@ -1,73 +0,0 @@ -package ${packageName}.domain; - -#foreach ($import in $subImportList) -import ${import}; -#end -import com.se.common.core.annotation.Excel; - -/** - * ${subTable.functionName}瀵硅薄 ${subTableName} - * - * @author ${author} - * @date ${datetime} - */ -public class ${subClassName} extends BaseEntity -{ - private static final long serialVersionUID = 1L; - -#foreach ($column in $subTable.columns) -#if(!$table.isSuperColumn($column.javaField)) - /** $column.columnComment */ -#if($column.list) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($parentheseIndex != -1) - @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") -#elseif($column.javaType == 'Date') - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd") -#else - @Excel(name = "${comment}") -#end -#end - private $column.javaType $column.javaField; - -#end -#end -#foreach ($column in $subTable.columns) -#if(!$table.isSuperColumn($column.javaField)) -#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) -#set($AttrName=$column.javaField) -#else -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#end - public void set${AttrName}($column.javaType $column.javaField) - { - this.$column.javaField = $column.javaField; - } - - public $column.javaType get${AttrName}() - { - return $column.javaField; - } -#end -#end - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) -#foreach ($column in $subTable.columns) -#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) -#set($AttrName=$column.javaField) -#else -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#end - .append("${column.javaField}", get${AttrName}()) -#end - .toString(); - } -} diff --git a/se-modules/se-gen/src/main/resources/vm/js/api.js.vm b/se-modules/se-gen/src/main/resources/vm/js/api.js.vm deleted file mode 100644 index 9295524..0000000 --- a/se-modules/se-gen/src/main/resources/vm/js/api.js.vm +++ /dev/null @@ -1,44 +0,0 @@ -import request from '@/utils/request' - -// 鏌ヨ${functionName}鍒楄〃 -export function list${BusinessName}(query) { - return request({ - url: '/${moduleName}/${businessName}/list', - method: 'get', - params: query - }) -} - -// 鏌ヨ${functionName}璇︾粏 -export function get${BusinessName}(${pkColumn.javaField}) { - return request({ - url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField}, - method: 'get' - }) -} - -// 鏂板${functionName} -export function add${BusinessName}(data) { - return request({ - url: '/${moduleName}/${businessName}', - method: 'post', - data: data - }) -} - -// 淇敼${functionName} -export function update${BusinessName}(data) { - return request({ - url: '/${moduleName}/${businessName}', - method: 'put', - data: data - }) -} - -// 鍒犻櫎${functionName} -export function del${BusinessName}(${pkColumn.javaField}) { - return request({ - url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField}, - method: 'delete' - }) -} diff --git a/se-modules/se-gen/src/main/resources/vm/sql/sql.vm b/se-modules/se-gen/src/main/resources/vm/sql/sql.vm deleted file mode 100644 index 0575583..0000000 --- a/se-modules/se-gen/src/main/resources/vm/sql/sql.vm +++ /dev/null @@ -1,22 +0,0 @@ --- 鑿滃崟 SQL -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}', '${parentMenuId}', '1', '${businessName}', '${moduleName}/${businessName}/index', 1, 0, 'C', '0', '0', '${permissionPrefix}:list', '#', 'admin', sysdate(), '', null, '${functionName}鑿滃崟'); - --- 鎸夐挳鐖惰彍鍗旾D -SELECT @parentId := LAST_INSERT_ID(); - --- 鎸夐挳 SQL -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}鏌ヨ', @parentId, '1', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:query', '#', 'admin', sysdate(), '', null, ''); - -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}鏂板', @parentId, '2', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:add', '#', 'admin', sysdate(), '', null, ''); - -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}淇敼', @parentId, '3', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:edit', '#', 'admin', sysdate(), '', null, ''); - -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}鍒犻櫎', @parentId, '4', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:remove', '#', 'admin', sysdate(), '', null, ''); - -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}瀵煎嚭', @parentId, '5', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:export', '#', 'admin', sysdate(), '', null, ''); \ No newline at end of file diff --git a/se-modules/se-gen/src/main/resources/vm/vue/index-tree.vue.vm b/se-modules/se-gen/src/main/resources/vm/vue/index-tree.vue.vm deleted file mode 100644 index a4c64a0..0000000 --- a/se-modules/se-gen/src/main/resources/vm/vue/index-tree.vue.vm +++ /dev/null @@ -1,505 +0,0 @@ -<template> - <div class="app-container"> - <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> -#foreach($column in $columns) -#if($column.query) -#set($dictType=$column.dictType) -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($column.htmlType == "input") - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-input - v-model="queryParams.${column.javaField}" - placeholder="璇疯緭鍏�${comment}" - clearable - @keyup.enter.native="handleQuery" - /> - </el-form-item> -#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType) - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-select v-model="queryParams.${column.javaField}" placeholder="璇烽�夋嫨${comment}" clearable> - <el-option - v-for="dict in dict.type.${dictType}" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> - </el-select> - </el-form-item> -#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType) - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-select v-model="queryParams.${column.javaField}" placeholder="璇烽�夋嫨${comment}" clearable> - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </el-form-item> -#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN") - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-date-picker clearable - v-model="queryParams.${column.javaField}" - type="date" - value-format="yyyy-MM-dd" - placeholder="閫夋嫨${comment}"> - </el-date-picker> - </el-form-item> -#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN") - <el-form-item label="${comment}"> - <el-date-picker - v-model="daterange${AttrName}" - style="width: 240px" - value-format="yyyy-MM-dd" - type="daterange" - range-separator="-" - start-placeholder="寮�濮嬫棩鏈�" - end-placeholder="缁撴潫鏃ユ湡" - ></el-date-picker> - </el-form-item> -#end -#end -#end - <el-form-item> - <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button> - <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button> - </el-form-item> - </el-form> - - <el-row :gutter="10" class="mb8"> - <el-col :span="1.5"> - <el-button - type="primary" - plain - icon="el-icon-plus" - size="mini" - @click="handleAdd" - v-hasPermi="['${moduleName}:${businessName}:add']" - >鏂板</el-button> - </el-col> - <el-col :span="1.5"> - <el-button - type="info" - plain - icon="el-icon-sort" - size="mini" - @click="toggleExpandAll" - >灞曞紑/鎶樺彔</el-button> - </el-col> - <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> - </el-row> - - <el-table - v-if="refreshTable" - v-loading="loading" - :data="${businessName}List" - row-key="${treeCode}" - :default-expand-all="isExpandAll" - :tree-props="{children: 'children', hasChildren: 'hasChildren'}" - > -#foreach($column in $columns) -#set($javaField=$column.javaField) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($column.pk) -#elseif($column.list && $column.htmlType == "datetime") - <el-table-column label="${comment}" align="center" prop="${javaField}" width="180"> - <template slot-scope="scope"> - <span>{{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}</span> - </template> - </el-table-column> -#elseif($column.list && $column.htmlType == "imageUpload") - <el-table-column label="${comment}" align="center" prop="${javaField}" width="100"> - <template slot-scope="scope"> - <image-preview :src="scope.row.${javaField}" :width="50" :height="50"/> - </template> - </el-table-column> -#elseif($column.list && "" != $column.dictType) - <el-table-column label="${comment}" align="center" prop="${javaField}"> - <template slot-scope="scope"> -#if($column.htmlType == "checkbox") - <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.${javaField} ? scope.row.${javaField}.split(',') : []"/> -#else - <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.${javaField}"/> -#end - </template> - </el-table-column> -#elseif($column.list && "" != $javaField) -#if(${foreach.index} == 1) - <el-table-column label="${comment}" prop="${javaField}" /> -#else - <el-table-column label="${comment}" align="center" prop="${javaField}" /> -#end -#end -#end - <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> - <template slot-scope="scope"> - <el-button - size="mini" - type="text" - icon="el-icon-edit" - @click="handleUpdate(scope.row)" - v-hasPermi="['${moduleName}:${businessName}:edit']" - >淇敼</el-button> - <el-button - size="mini" - type="text" - icon="el-icon-plus" - @click="handleAdd(scope.row)" - v-hasPermi="['${moduleName}:${businessName}:add']" - >鏂板</el-button> - <el-button - size="mini" - type="text" - icon="el-icon-delete" - @click="handleDelete(scope.row)" - v-hasPermi="['${moduleName}:${businessName}:remove']" - >鍒犻櫎</el-button> - </template> - </el-table-column> - </el-table> - - <!-- 娣诲姞鎴栦慨鏀�${functionName}瀵硅瘽妗� --> - <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> - <el-form ref="form" :model="form" :rules="rules" label-width="80px"> -#foreach($column in $columns) -#set($field=$column.javaField) -#if($column.insert && !$column.pk) -#if(($column.usableColumn) || (!$column.superColumn)) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#set($dictType=$column.dictType) -#if("" != $treeParentCode && $column.javaField == $treeParentCode) - <el-form-item label="${comment}" prop="${treeParentCode}"> - <treeselect v-model="form.${treeParentCode}" :options="${businessName}Options" :normalizer="normalizer" placeholder="璇烽�夋嫨${comment}" /> - </el-form-item> -#elseif($column.htmlType == "input") - <el-form-item label="${comment}" prop="${field}"> - <el-input v-model="form.${field}" placeholder="璇疯緭鍏�${comment}" /> - </el-form-item> -#elseif($column.htmlType == "imageUpload") - <el-form-item label="${comment}" prop="${field}"> - <image-upload v-model="form.${field}"/> - </el-form-item> -#elseif($column.htmlType == "fileUpload") - <el-form-item label="${comment}" prop="${field}"> - <file-upload v-model="form.${field}"/> - </el-form-item> -#elseif($column.htmlType == "editor") - <el-form-item label="${comment}"> - <editor v-model="form.${field}" :min-height="192"/> - </el-form-item> -#elseif($column.htmlType == "select" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-select v-model="form.${field}" placeholder="璇烽�夋嫨${comment}"> - <el-option - v-for="dict in dict.type.${dictType}" - :key="dict.value" - :label="dict.label" -#if($column.javaType == "Integer" || $column.javaType == "Long") - :value="parseInt(dict.value)" -#else - :value="dict.value" -#end - ></el-option> - </el-select> - </el-form-item> -#elseif($column.htmlType == "select" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-select v-model="form.${field}" placeholder="璇烽�夋嫨${comment}"> - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </el-form-item> -#elseif($column.htmlType == "checkbox" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-checkbox-group v-model="form.${field}"> - <el-checkbox - v-for="dict in dict.type.${dictType}" - :key="dict.value" - :label="dict.value"> - {{dict.label}} - </el-checkbox> - </el-checkbox-group> - </el-form-item> -#elseif($column.htmlType == "checkbox" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-checkbox-group v-model="form.${field}"> - <el-checkbox>璇烽�夋嫨瀛楀吀鐢熸垚</el-checkbox> - </el-checkbox-group> - </el-form-item> -#elseif($column.htmlType == "radio" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-radio-group v-model="form.${field}"> - <el-radio - v-for="dict in dict.type.${dictType}" - :key="dict.value" -#if($column.javaType == "Integer" || $column.javaType == "Long") - :label="parseInt(dict.value)" -#else - :label="dict.value" -#end - >{{dict.label}}</el-radio> - </el-radio-group> - </el-form-item> -#elseif($column.htmlType == "radio" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-radio-group v-model="form.${field}"> - <el-radio label="1">璇烽�夋嫨瀛楀吀鐢熸垚</el-radio> - </el-radio-group> - </el-form-item> -#elseif($column.htmlType == "datetime") - <el-form-item label="${comment}" prop="${field}"> - <el-date-picker clearable - v-model="form.${field}" - type="date" - value-format="yyyy-MM-dd" - placeholder="閫夋嫨${comment}"> - </el-date-picker> - </el-form-item> -#elseif($column.htmlType == "textarea") - <el-form-item label="${comment}" prop="${field}"> - <el-input v-model="form.${field}" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" /> - </el-form-item> -#end -#end -#end -#end - </el-form> - <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="submitForm">纭� 瀹�</el-button> - <el-button @click="cancel">鍙� 娑�</el-button> - </div> - </el-dialog> - </div> -</template> - -<script> -import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/${moduleName}/${businessName}"; -import Treeselect from "@riophae/vue-treeselect"; -import "@riophae/vue-treeselect/dist/vue-treeselect.css"; - -export default { - name: "${BusinessName}", -#if(${dicts} != '') - dicts: [${dicts}], -#end - components: { - Treeselect - }, - data() { - return { - // 閬僵灞� - loading: true, - // 鏄剧ず鎼滅储鏉′欢 - showSearch: true, - // ${functionName}琛ㄦ牸鏁版嵁 - ${businessName}List: [], - // ${functionName}鏍戦�夐」 - ${businessName}Options: [], - // 寮瑰嚭灞傛爣棰� - title: "", - // 鏄惁鏄剧ず寮瑰嚭灞� - open: false, - // 鏄惁灞曞紑锛岄粯璁ゅ叏閮ㄥ睍寮� - isExpandAll: true, - // 閲嶆柊娓叉煋琛ㄦ牸鐘舵�� - refreshTable: true, -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) - // $comment鏃堕棿鑼冨洿 - daterange${AttrName}: [], -#end -#end - // 鏌ヨ鍙傛暟 - queryParams: { -#foreach ($column in $columns) -#if($column.query) - $column.javaField: null#if($foreach.count != $columns.size()),#end -#end -#end - }, - // 琛ㄥ崟鍙傛暟 - form: {}, - // 琛ㄥ崟鏍¢獙 - rules: { -#foreach ($column in $columns) -#if($column.required) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end - $column.javaField: [ - { required: true, message: "$comment涓嶈兘涓虹┖", trigger: #if($column.htmlType == "select" || $column.htmlType == "radio")"change"#else"blur"#end } - ]#if($foreach.count != $columns.size()),#end -#end -#end - } - }; - }, - created() { - this.getList(); - }, - methods: { - /** 鏌ヨ${functionName}鍒楄〃 */ - getList() { - this.loading = true; -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") - this.queryParams.params = {}; -#break -#end -#end -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) - if (null != this.daterange${AttrName} && '' != this.daterange${AttrName}) { - this.queryParams.params["begin${AttrName}"] = this.daterange${AttrName}[0]; - this.queryParams.params["end${AttrName}"] = this.daterange${AttrName}[1]; - } -#end -#end - list${BusinessName}(this.queryParams).then(response => { - this.${businessName}List = this.handleTree(response.data, "${treeCode}", "${treeParentCode}"); - this.loading = false; - }); - }, - /** 杞崲${functionName}鏁版嵁缁撴瀯 */ - normalizer(node) { - if (node.children && !node.children.length) { - delete node.children; - } - return { - id: node.${treeCode}, - label: node.${treeName}, - children: node.children - }; - }, - /** 鏌ヨ${functionName}涓嬫媺鏍戠粨鏋� */ - getTreeselect() { - list${BusinessName}().then(response => { - this.${businessName}Options = []; - const data = { ${treeCode}: 0, ${treeName}: '椤剁骇鑺傜偣', children: [] }; - data.children = this.handleTree(response.data, "${treeCode}", "${treeParentCode}"); - this.${businessName}Options.push(data); - }); - }, - // 鍙栨秷鎸夐挳 - cancel() { - this.open = false; - this.reset(); - }, - // 琛ㄥ崟閲嶇疆 - reset() { - this.form = { -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - $column.javaField: []#if($foreach.count != $columns.size()),#end -#else - $column.javaField: null#if($foreach.count != $columns.size()),#end -#end -#end - }; - this.resetForm("form"); - }, - /** 鎼滅储鎸夐挳鎿嶄綔 */ - handleQuery() { - this.getList(); - }, - /** 閲嶇疆鎸夐挳鎿嶄綔 */ - resetQuery() { -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) - this.daterange${AttrName} = []; -#end -#end - this.resetForm("queryForm"); - this.handleQuery(); - }, - /** 鏂板鎸夐挳鎿嶄綔 */ - handleAdd(row) { - this.reset(); - this.getTreeselect(); - if (row != null && row.${treeCode}) { - this.form.${treeParentCode} = row.${treeCode}; - } else { - this.form.${treeParentCode} = 0; - } - this.open = true; - this.title = "娣诲姞${functionName}"; - }, - /** 灞曞紑/鎶樺彔鎿嶄綔 */ - toggleExpandAll() { - this.refreshTable = false; - this.isExpandAll = !this.isExpandAll; - this.$nextTick(() => { - this.refreshTable = true; - }); - }, - /** 淇敼鎸夐挳鎿嶄綔 */ - handleUpdate(row) { - this.reset(); - this.getTreeselect(); - if (row != null) { - this.form.${treeParentCode} = row.${treeCode}; - } - get${BusinessName}(row.${pkColumn.javaField}).then(response => { - this.form = response.data; -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - this.form.$column.javaField = this.form.${column.javaField}.split(","); -#end -#end - this.open = true; - this.title = "淇敼${functionName}"; - }); - }, - /** 鎻愪氦鎸夐挳 */ - submitForm() { - this.#[[$]]#refs["form"].validate(valid => { - if (valid) { -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - this.form.$column.javaField = this.form.${column.javaField}.join(","); -#end -#end - if (this.form.${pkColumn.javaField} != null) { - update${BusinessName}(this.form).then(response => { - this.#[[$modal]]#.msgSuccess("淇敼鎴愬姛"); - this.open = false; - this.getList(); - }); - } else { - add${BusinessName}(this.form).then(response => { - this.#[[$modal]]#.msgSuccess("鏂板鎴愬姛"); - this.open = false; - this.getList(); - }); - } - } - }); - }, - /** 鍒犻櫎鎸夐挳鎿嶄綔 */ - handleDelete(row) { - this.#[[$modal]]#.confirm('鏄惁纭鍒犻櫎${functionName}缂栧彿涓�"' + row.${pkColumn.javaField} + '"鐨勬暟鎹」锛�').then(function() { - return del${BusinessName}(row.${pkColumn.javaField}); - }).then(() => { - this.getList(); - this.#[[$modal]]#.msgSuccess("鍒犻櫎鎴愬姛"); - }).catch(() => {}); - } - } -}; -</script> diff --git a/se-modules/se-gen/src/main/resources/vm/vue/index.vue.vm b/se-modules/se-gen/src/main/resources/vm/vue/index.vue.vm deleted file mode 100644 index 6296014..0000000 --- a/se-modules/se-gen/src/main/resources/vm/vue/index.vue.vm +++ /dev/null @@ -1,602 +0,0 @@ -<template> - <div class="app-container"> - <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> -#foreach($column in $columns) -#if($column.query) -#set($dictType=$column.dictType) -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($column.htmlType == "input") - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-input - v-model="queryParams.${column.javaField}" - placeholder="璇疯緭鍏�${comment}" - clearable - @keyup.enter.native="handleQuery" - /> - </el-form-item> -#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType) - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-select v-model="queryParams.${column.javaField}" placeholder="璇烽�夋嫨${comment}" clearable> - <el-option - v-for="dict in dict.type.${dictType}" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> - </el-select> - </el-form-item> -#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType) - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-select v-model="queryParams.${column.javaField}" placeholder="璇烽�夋嫨${comment}" clearable> - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </el-form-item> -#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN") - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-date-picker clearable - v-model="queryParams.${column.javaField}" - type="date" - value-format="yyyy-MM-dd" - placeholder="璇烽�夋嫨${comment}"> - </el-date-picker> - </el-form-item> -#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN") - <el-form-item label="${comment}"> - <el-date-picker - v-model="daterange${AttrName}" - style="width: 240px" - value-format="yyyy-MM-dd" - type="daterange" - range-separator="-" - start-placeholder="寮�濮嬫棩鏈�" - end-placeholder="缁撴潫鏃ユ湡" - ></el-date-picker> - </el-form-item> -#end -#end -#end - <el-form-item> - <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button> - <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button> - </el-form-item> - </el-form> - - <el-row :gutter="10" class="mb8"> - <el-col :span="1.5"> - <el-button - type="primary" - plain - icon="el-icon-plus" - size="mini" - @click="handleAdd" - v-hasPermi="['${moduleName}:${businessName}:add']" - >鏂板</el-button> - </el-col> - <el-col :span="1.5"> - <el-button - type="success" - plain - icon="el-icon-edit" - size="mini" - :disabled="single" - @click="handleUpdate" - v-hasPermi="['${moduleName}:${businessName}:edit']" - >淇敼</el-button> - </el-col> - <el-col :span="1.5"> - <el-button - type="danger" - plain - icon="el-icon-delete" - size="mini" - :disabled="multiple" - @click="handleDelete" - v-hasPermi="['${moduleName}:${businessName}:remove']" - >鍒犻櫎</el-button> - </el-col> - <el-col :span="1.5"> - <el-button - type="warning" - plain - icon="el-icon-download" - size="mini" - @click="handleExport" - v-hasPermi="['${moduleName}:${businessName}:export']" - >瀵煎嚭</el-button> - </el-col> - <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> - </el-row> - - <el-table v-loading="loading" :data="${businessName}List" @selection-change="handleSelectionChange"> - <el-table-column type="selection" width="55" align="center" /> -#foreach($column in $columns) -#set($javaField=$column.javaField) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($column.pk) - <el-table-column label="${comment}" align="center" prop="${javaField}" /> -#elseif($column.list && $column.htmlType == "datetime") - <el-table-column label="${comment}" align="center" prop="${javaField}" width="180"> - <template slot-scope="scope"> - <span>{{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}</span> - </template> - </el-table-column> -#elseif($column.list && $column.htmlType == "imageUpload") - <el-table-column label="${comment}" align="center" prop="${javaField}" width="100"> - <template slot-scope="scope"> - <image-preview :src="scope.row.${javaField}" :width="50" :height="50"/> - </template> - </el-table-column> -#elseif($column.list && "" != $column.dictType) - <el-table-column label="${comment}" align="center" prop="${javaField}"> - <template slot-scope="scope"> -#if($column.htmlType == "checkbox") - <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.${javaField} ? scope.row.${javaField}.split(',') : []"/> -#else - <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.${javaField}"/> -#end - </template> - </el-table-column> -#elseif($column.list && "" != $javaField) - <el-table-column label="${comment}" align="center" prop="${javaField}" /> -#end -#end - <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> - <template slot-scope="scope"> - <el-button - size="mini" - type="text" - icon="el-icon-edit" - @click="handleUpdate(scope.row)" - v-hasPermi="['${moduleName}:${businessName}:edit']" - >淇敼</el-button> - <el-button - size="mini" - type="text" - icon="el-icon-delete" - @click="handleDelete(scope.row)" - v-hasPermi="['${moduleName}:${businessName}:remove']" - >鍒犻櫎</el-button> - </template> - </el-table-column> - </el-table> - - <pagination - v-show="total>0" - :total="total" - :page.sync="queryParams.pageNum" - :limit.sync="queryParams.pageSize" - @pagination="getList" - /> - - <!-- 娣诲姞鎴栦慨鏀�${functionName}瀵硅瘽妗� --> - <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> - <el-form ref="form" :model="form" :rules="rules" label-width="80px"> -#foreach($column in $columns) -#set($field=$column.javaField) -#if($column.insert && !$column.pk) -#if(($column.usableColumn) || (!$column.superColumn)) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#set($dictType=$column.dictType) -#if($column.htmlType == "input") - <el-form-item label="${comment}" prop="${field}"> - <el-input v-model="form.${field}" placeholder="璇疯緭鍏�${comment}" /> - </el-form-item> -#elseif($column.htmlType == "imageUpload") - <el-form-item label="${comment}" prop="${field}"> - <image-upload v-model="form.${field}"/> - </el-form-item> -#elseif($column.htmlType == "fileUpload") - <el-form-item label="${comment}" prop="${field}"> - <file-upload v-model="form.${field}"/> - </el-form-item> -#elseif($column.htmlType == "editor") - <el-form-item label="${comment}"> - <editor v-model="form.${field}" :min-height="192"/> - </el-form-item> -#elseif($column.htmlType == "select" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-select v-model="form.${field}" placeholder="璇烽�夋嫨${comment}"> - <el-option - v-for="dict in dict.type.${dictType}" - :key="dict.value" - :label="dict.label" -#if($column.javaType == "Integer" || $column.javaType == "Long") - :value="parseInt(dict.value)" -#else - :value="dict.value" -#end - ></el-option> - </el-select> - </el-form-item> -#elseif($column.htmlType == "select" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-select v-model="form.${field}" placeholder="璇烽�夋嫨${comment}"> - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </el-form-item> -#elseif($column.htmlType == "checkbox" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-checkbox-group v-model="form.${field}"> - <el-checkbox - v-for="dict in dict.type.${dictType}" - :key="dict.value" - :label="dict.value"> - {{dict.label}} - </el-checkbox> - </el-checkbox-group> - </el-form-item> -#elseif($column.htmlType == "checkbox" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-checkbox-group v-model="form.${field}"> - <el-checkbox>璇烽�夋嫨瀛楀吀鐢熸垚</el-checkbox> - </el-checkbox-group> - </el-form-item> -#elseif($column.htmlType == "radio" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-radio-group v-model="form.${field}"> - <el-radio - v-for="dict in dict.type.${dictType}" - :key="dict.value" -#if($column.javaType == "Integer" || $column.javaType == "Long") - :label="parseInt(dict.value)" -#else - :label="dict.value" -#end - >{{dict.label}}</el-radio> - </el-radio-group> - </el-form-item> -#elseif($column.htmlType == "radio" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-radio-group v-model="form.${field}"> - <el-radio label="1">璇烽�夋嫨瀛楀吀鐢熸垚</el-radio> - </el-radio-group> - </el-form-item> -#elseif($column.htmlType == "datetime") - <el-form-item label="${comment}" prop="${field}"> - <el-date-picker clearable - v-model="form.${field}" - type="date" - value-format="yyyy-MM-dd" - placeholder="璇烽�夋嫨${comment}"> - </el-date-picker> - </el-form-item> -#elseif($column.htmlType == "textarea") - <el-form-item label="${comment}" prop="${field}"> - <el-input v-model="form.${field}" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" /> - </el-form-item> -#end -#end -#end -#end -#if($table.sub) - <el-divider content-position="center">${subTable.functionName}淇℃伅</el-divider> - <el-row :gutter="10" class="mb8"> - <el-col :span="1.5"> - <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAdd${subClassName}">娣诲姞</el-button> - </el-col> - <el-col :span="1.5"> - <el-button type="danger" icon="el-icon-delete" size="mini" @click="handleDelete${subClassName}">鍒犻櫎</el-button> - </el-col> - </el-row> - <el-table :data="${subclassName}List" :row-class-name="row${subClassName}Index" @selection-change="handle${subClassName}SelectionChange" ref="${subclassName}"> - <el-table-column type="selection" width="50" align="center" /> - <el-table-column label="搴忓彿" align="center" prop="index" width="50"/> -#foreach($column in $subTable.columns) -#set($javaField=$column.javaField) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($column.pk || $javaField == ${subTableFkclassName}) -#elseif($column.list && $column.htmlType == "input") - <el-table-column label="$comment" prop="${javaField}" width="150"> - <template slot-scope="scope"> - <el-input v-model="scope.row.$javaField" placeholder="璇疯緭鍏�$comment" /> - </template> - </el-table-column> -#elseif($column.list && $column.htmlType == "datetime") - <el-table-column label="$comment" prop="${javaField}" width="240"> - <template slot-scope="scope"> - <el-date-picker clearable v-model="scope.row.$javaField" type="date" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨$comment" /> - </template> - </el-table-column> -#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" != $column.dictType) - <el-table-column label="$comment" prop="${javaField}" width="150"> - <template slot-scope="scope"> - <el-select v-model="scope.row.$javaField" placeholder="璇烽�夋嫨$comment"> - <el-option - v-for="dict in dict.type.$column.dictType" - :key="dict.value" - :label="dict.label" - :value="dict.value" - ></el-option> - </el-select> - </template> - </el-table-column> -#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" == $column.dictType) - <el-table-column label="$comment" prop="${javaField}" width="150"> - <template slot-scope="scope"> - <el-select v-model="scope.row.$javaField" placeholder="璇烽�夋嫨$comment"> - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </template> - </el-table-column> -#end -#end - </el-table> -#end - </el-form> - <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="submitForm">纭� 瀹�</el-button> - <el-button @click="cancel">鍙� 娑�</el-button> - </div> - </el-dialog> - </div> -</template> - -<script> -import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/${moduleName}/${businessName}"; - -export default { - name: "${BusinessName}", -#if(${dicts} != '') - dicts: [${dicts}], -#end - data() { - return { - // 閬僵灞� - loading: true, - // 閫変腑鏁扮粍 - ids: [], -#if($table.sub) - // 瀛愯〃閫変腑鏁版嵁 - checked${subClassName}: [], -#end - // 闈炲崟涓鐢� - single: true, - // 闈炲涓鐢� - multiple: true, - // 鏄剧ず鎼滅储鏉′欢 - showSearch: true, - // 鎬绘潯鏁� - total: 0, - // ${functionName}琛ㄦ牸鏁版嵁 - ${businessName}List: [], -#if($table.sub) - // ${subTable.functionName}琛ㄦ牸鏁版嵁 - ${subclassName}List: [], -#end - // 寮瑰嚭灞傛爣棰� - title: "", - // 鏄惁鏄剧ず寮瑰嚭灞� - open: false, -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) - // $comment鏃堕棿鑼冨洿 - daterange${AttrName}: [], -#end -#end - // 鏌ヨ鍙傛暟 - queryParams: { - pageNum: 1, - pageSize: 10, -#foreach ($column in $columns) -#if($column.query) - $column.javaField: null#if($foreach.count != $columns.size()),#end -#end -#end - }, - // 琛ㄥ崟鍙傛暟 - form: {}, - // 琛ㄥ崟鏍¢獙 - rules: { -#foreach ($column in $columns) -#if($column.required) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end - $column.javaField: [ - { required: true, message: "$comment涓嶈兘涓虹┖", trigger: #if($column.htmlType == "select" || $column.htmlType == "radio")"change"#else"blur"#end } - ]#if($foreach.count != $columns.size()),#end -#end -#end - } - }; - }, - created() { - this.getList(); - }, - methods: { - /** 鏌ヨ${functionName}鍒楄〃 */ - getList() { - this.loading = true; -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") - this.queryParams.params = {}; -#break -#end -#end -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) - if (null != this.daterange${AttrName} && '' != this.daterange${AttrName}) { - this.queryParams.params["begin${AttrName}"] = this.daterange${AttrName}[0]; - this.queryParams.params["end${AttrName}"] = this.daterange${AttrName}[1]; - } -#end -#end - list${BusinessName}(this.queryParams).then(response => { - this.${businessName}List = response.rows; - this.total = response.total; - this.loading = false; - }); - }, - // 鍙栨秷鎸夐挳 - cancel() { - this.open = false; - this.reset(); - }, - // 琛ㄥ崟閲嶇疆 - reset() { - this.form = { -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - $column.javaField: []#if($foreach.count != $columns.size()),#end -#else - $column.javaField: null#if($foreach.count != $columns.size()),#end -#end -#end - }; -#if($table.sub) - this.${subclassName}List = []; -#end - this.resetForm("form"); - }, - /** 鎼滅储鎸夐挳鎿嶄綔 */ - handleQuery() { - this.queryParams.pageNum = 1; - this.getList(); - }, - /** 閲嶇疆鎸夐挳鎿嶄綔 */ - resetQuery() { -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) - this.daterange${AttrName} = []; -#end -#end - this.resetForm("queryForm"); - this.handleQuery(); - }, - // 澶氶�夋閫変腑鏁版嵁 - handleSelectionChange(selection) { - this.ids = selection.map(item => item.${pkColumn.javaField}) - this.single = selection.length!==1 - this.multiple = !selection.length - }, - /** 鏂板鎸夐挳鎿嶄綔 */ - handleAdd() { - this.reset(); - this.open = true; - this.title = "娣诲姞${functionName}"; - }, - /** 淇敼鎸夐挳鎿嶄綔 */ - handleUpdate(row) { - this.reset(); - const ${pkColumn.javaField} = row.${pkColumn.javaField} || this.ids - get${BusinessName}(${pkColumn.javaField}).then(response => { - this.form = response.data; -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - this.form.$column.javaField = this.form.${column.javaField}.split(","); -#end -#end -#if($table.sub) - this.${subclassName}List = response.data.${subclassName}List; -#end - this.open = true; - this.title = "淇敼${functionName}"; - }); - }, - /** 鎻愪氦鎸夐挳 */ - submitForm() { - this.#[[$]]#refs["form"].validate(valid => { - if (valid) { -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - this.form.$column.javaField = this.form.${column.javaField}.join(","); -#end -#end -#if($table.sub) - this.form.${subclassName}List = this.${subclassName}List; -#end - if (this.form.${pkColumn.javaField} != null) { - update${BusinessName}(this.form).then(response => { - this.#[[$modal]]#.msgSuccess("淇敼鎴愬姛"); - this.open = false; - this.getList(); - }); - } else { - add${BusinessName}(this.form).then(response => { - this.#[[$modal]]#.msgSuccess("鏂板鎴愬姛"); - this.open = false; - this.getList(); - }); - } - } - }); - }, - /** 鍒犻櫎鎸夐挳鎿嶄綔 */ - handleDelete(row) { - const ${pkColumn.javaField}s = row.${pkColumn.javaField} || this.ids; - this.#[[$modal]]#.confirm('鏄惁纭鍒犻櫎${functionName}缂栧彿涓�"' + ${pkColumn.javaField}s + '"鐨勬暟鎹」锛�').then(function() { - return del${BusinessName}(${pkColumn.javaField}s); - }).then(() => { - this.getList(); - this.#[[$modal]]#.msgSuccess("鍒犻櫎鎴愬姛"); - }).catch(() => {}); - }, -#if($table.sub) - /** ${subTable.functionName}搴忓彿 */ - row${subClassName}Index({ row, rowIndex }) { - row.index = rowIndex + 1; - }, - /** ${subTable.functionName}娣诲姞鎸夐挳鎿嶄綔 */ - handleAdd${subClassName}() { - let obj = {}; -#foreach($column in $subTable.columns) -#if($column.pk || $column.javaField == ${subTableFkclassName}) -#elseif($column.list && "" != $javaField) - obj.$column.javaField = ""; -#end -#end - this.${subclassName}List.push(obj); - }, - /** ${subTable.functionName}鍒犻櫎鎸夐挳鎿嶄綔 */ - handleDelete${subClassName}() { - if (this.checked${subClassName}.length == 0) { - this.#[[$modal]]#.msgError("璇峰厛閫夋嫨瑕佸垹闄ょ殑${subTable.functionName}鏁版嵁"); - } else { - const ${subclassName}List = this.${subclassName}List; - const checked${subClassName} = this.checked${subClassName}; - this.${subclassName}List = ${subclassName}List.filter(function(item) { - return checked${subClassName}.indexOf(item.index) == -1 - }); - } - }, - /** 澶嶉�夋閫変腑鏁版嵁 */ - handle${subClassName}SelectionChange(selection) { - this.checked${subClassName} = selection.map(item => item.index) - }, -#end - /** 瀵煎嚭鎸夐挳鎿嶄綔 */ - handleExport() { - this.download('${moduleName}/${businessName}/export', { - ...this.queryParams - }, `${businessName}_#[[${new Date().getTime()}]]#.xlsx`) - } - } -}; -</script> diff --git a/se-modules/se-gen/src/main/resources/vm/vue/v3/index-tree.vue.vm b/se-modules/se-gen/src/main/resources/vm/vue/v3/index-tree.vue.vm deleted file mode 100644 index 7bbd2fc..0000000 --- a/se-modules/se-gen/src/main/resources/vm/vue/v3/index-tree.vue.vm +++ /dev/null @@ -1,474 +0,0 @@ -<template> - <div class="app-container"> - <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px"> -#foreach($column in $columns) -#if($column.query) -#set($dictType=$column.dictType) -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($column.htmlType == "input") - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-input - v-model="queryParams.${column.javaField}" - placeholder="璇疯緭鍏�${comment}" - clearable - @keyup.enter="handleQuery" - /> - </el-form-item> -#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType) - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-select v-model="queryParams.${column.javaField}" placeholder="璇烽�夋嫨${comment}" clearable> - <el-option - v-for="dict in ${dictType}" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> - </el-select> - </el-form-item> -#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType) - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-select v-model="queryParams.${column.javaField}" placeholder="璇烽�夋嫨${comment}" clearable> - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </el-form-item> -#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN") - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-date-picker clearable - v-model="queryParams.${column.javaField}" - type="date" - value-format="YYYY-MM-DD" - placeholder="閫夋嫨${comment}"> - </el-date-picker> - </el-form-item> -#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN") - <el-form-item label="${comment}" style="width: 308px"> - <el-date-picker - v-model="daterange${AttrName}" - value-format="YYYY-MM-DD" - type="daterange" - range-separator="-" - start-placeholder="寮�濮嬫棩鏈�" - end-placeholder="缁撴潫鏃ユ湡" - ></el-date-picker> - </el-form-item> -#end -#end -#end - <el-form-item> - <el-button type="primary" icon="Search" @click="handleQuery">鎼滅储</el-button> - <el-button icon="Refresh" @click="resetQuery">閲嶇疆</el-button> - </el-form-item> - </el-form> - - <el-row :gutter="10" class="mb8"> - <el-col :span="1.5"> - <el-button - type="primary" - plain - icon="Plus" - @click="handleAdd" - v-hasPermi="['${moduleName}:${businessName}:add']" - >鏂板</el-button> - </el-col> - <el-col :span="1.5"> - <el-button - type="info" - plain - icon="Sort" - @click="toggleExpandAll" - >灞曞紑/鎶樺彔</el-button> - </el-col> - <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> - </el-row> - - <el-table - v-if="refreshTable" - v-loading="loading" - :data="${businessName}List" - row-key="${treeCode}" - :default-expand-all="isExpandAll" - :tree-props="{children: 'children', hasChildren: 'hasChildren'}" - > -#foreach($column in $columns) -#set($javaField=$column.javaField) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($column.pk) -#elseif($column.list && $column.htmlType == "datetime") - <el-table-column label="${comment}" align="center" prop="${javaField}" width="180"> - <template #default="scope"> - <span>{{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}</span> - </template> - </el-table-column> -#elseif($column.list && $column.htmlType == "imageUpload") - <el-table-column label="${comment}" align="center" prop="${javaField}" width="100"> - <template #default="scope"> - <image-preview :src="scope.row.${javaField}" :width="50" :height="50"/> - </template> - </el-table-column> -#elseif($column.list && "" != $column.dictType) - <el-table-column label="${comment}" align="center" prop="${javaField}"> - <template #default="scope"> -#if($column.htmlType == "checkbox") - <dict-tag :options="${column.dictType}" :value="scope.row.${javaField} ? scope.row.${javaField}.split(',') : []"/> -#else - <dict-tag :options="${column.dictType}" :value="scope.row.${javaField}"/> -#end - </template> - </el-table-column> -#elseif($column.list && "" != $javaField) -#if(${foreach.index} == 1) - <el-table-column label="${comment}" prop="${javaField}" /> -#else - <el-table-column label="${comment}" align="center" prop="${javaField}" /> -#end -#end -#end - <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> - <template #default="scope"> - <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['${moduleName}:${businessName}:edit']">淇敼</el-button> - <el-button link type="primary" icon="Plus" @click="handleAdd(scope.row)" v-hasPermi="['${moduleName}:${businessName}:add']">鏂板</el-button> - <el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['${moduleName}:${businessName}:remove']">鍒犻櫎</el-button> - </template> - </el-table-column> - </el-table> - - <!-- 娣诲姞鎴栦慨鏀�${functionName}瀵硅瘽妗� --> - <el-dialog :title="title" v-model="open" width="500px" append-to-body> - <el-form ref="${businessName}Ref" :model="form" :rules="rules" label-width="80px"> -#foreach($column in $columns) -#set($field=$column.javaField) -#if($column.insert && !$column.pk) -#if(($column.usableColumn) || (!$column.superColumn)) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#set($dictType=$column.dictType) -#if("" != $treeParentCode && $column.javaField == $treeParentCode) - <el-form-item label="${comment}" prop="${treeParentCode}"> - <el-tree-select - v-model="form.${treeParentCode}" - :data="${businessName}Options" - :props="{ value: '${treeCode}', label: '${treeName}', children: 'children' }" - value-key="${treeCode}" - placeholder="璇烽�夋嫨${comment}" - check-strictly - /> - </el-form-item> -#elseif($column.htmlType == "input") - <el-form-item label="${comment}" prop="${field}"> - <el-input v-model="form.${field}" placeholder="璇疯緭鍏�${comment}" /> - </el-form-item> -#elseif($column.htmlType == "imageUpload") - <el-form-item label="${comment}" prop="${field}"> - <image-upload v-model="form.${field}"/> - </el-form-item> -#elseif($column.htmlType == "fileUpload") - <el-form-item label="${comment}" prop="${field}"> - <file-upload v-model="form.${field}"/> - </el-form-item> -#elseif($column.htmlType == "editor") - <el-form-item label="${comment}"> - <editor v-model="form.${field}" :min-height="192"/> - </el-form-item> -#elseif($column.htmlType == "select" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-select v-model="form.${field}" placeholder="璇烽�夋嫨${comment}"> - <el-option - v-for="dict in ${dictType}" - :key="dict.value" - :label="dict.label" -#if($column.javaType == "Integer" || $column.javaType == "Long") - :value="parseInt(dict.value)" -#else - :value="dict.value" -#end - ></el-option> - </el-select> - </el-form-item> -#elseif($column.htmlType == "select" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-select v-model="form.${field}" placeholder="璇烽�夋嫨${comment}"> - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </el-form-item> -#elseif($column.htmlType == "checkbox" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-checkbox-group v-model="form.${field}"> - <el-checkbox - v-for="dict in ${dictType}" - :key="dict.value" - :label="dict.value"> - {{dict.label}} - </el-checkbox> - </el-checkbox-group> - </el-form-item> -#elseif($column.htmlType == "checkbox" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-checkbox-group v-model="form.${field}"> - <el-checkbox>璇烽�夋嫨瀛楀吀鐢熸垚</el-checkbox> - </el-checkbox-group> - </el-form-item> -#elseif($column.htmlType == "radio" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-radio-group v-model="form.${field}"> - <el-radio - v-for="dict in ${dictType}" - :key="dict.value" -#if($column.javaType == "Integer" || $column.javaType == "Long") - :label="parseInt(dict.value)" -#else - :label="dict.value" -#end - >{{dict.label}}</el-radio> - </el-radio-group> - </el-form-item> -#elseif($column.htmlType == "radio" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-radio-group v-model="form.${field}"> - <el-radio label="1">璇烽�夋嫨瀛楀吀鐢熸垚</el-radio> - </el-radio-group> - </el-form-item> -#elseif($column.htmlType == "datetime") - <el-form-item label="${comment}" prop="${field}"> - <el-date-picker clearable - v-model="form.${field}" - type="date" - value-format="YYYY-MM-DD" - placeholder="閫夋嫨${comment}"> - </el-date-picker> - </el-form-item> -#elseif($column.htmlType == "textarea") - <el-form-item label="${comment}" prop="${field}"> - <el-input v-model="form.${field}" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" /> - </el-form-item> -#end -#end -#end -#end - </el-form> - <template #footer> - <div class="dialog-footer"> - <el-button type="primary" @click="submitForm">纭� 瀹�</el-button> - <el-button @click="cancel">鍙� 娑�</el-button> - </div> - </template> - </el-dialog> - </div> -</template> - -<script setup name="${BusinessName}"> -import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/${moduleName}/${businessName}"; - -const { proxy } = getCurrentInstance(); -#if(${dicts} != '') -#set($dictsNoSymbol=$dicts.replace("'", "")) -const { ${dictsNoSymbol} } = proxy.useDict(${dicts}); -#end - -const ${businessName}List = ref([]); -const ${businessName}Options = ref([]); -const open = ref(false); -const loading = ref(true); -const showSearch = ref(true); -const title = ref(""); -const isExpandAll = ref(true); -const refreshTable = ref(true); -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -const daterange${AttrName} = ref([]); -#end -#end - -const data = reactive({ - form: {}, - queryParams: { - #foreach ($column in $columns) -#if($column.query) - $column.javaField: null#if($foreach.count != $columns.size()),#end -#end -#end - }, - rules: { - #foreach ($column in $columns) -#if($column.required) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end - $column.javaField: [ - { required: true, message: "$comment涓嶈兘涓虹┖", trigger: #if($column.htmlType == "select" || $column.htmlType == "radio")"change"#else"blur"#end } - ]#if($foreach.count != $columns.size()),#end -#end -#end - } -}); - -const { queryParams, form, rules } = toRefs(data); - -/** 鏌ヨ${functionName}鍒楄〃 */ -function getList() { - loading.value = true; -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") - queryParams.value.params = {}; -#break -#end -#end -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) - if (null != daterange${AttrName} && '' != daterange${AttrName}) { - queryParams.value.params["begin${AttrName}"] = daterange${AttrName}.value[0]; - queryParams.value.params["end${AttrName}"] = daterange${AttrName}.value[1]; - } -#end -#end - list${BusinessName}(queryParams.value).then(response => { - ${businessName}List.value = proxy.handleTree(response.data, "${treeCode}", "${treeParentCode}"); - loading.value = false; - }); -} - -/** 鏌ヨ${functionName}涓嬫媺鏍戠粨鏋� */ -function getTreeselect() { - list${BusinessName}().then(response => { - ${businessName}Options.value = []; - const data = { ${treeCode}: 0, ${treeName}: '椤剁骇鑺傜偣', children: [] }; - data.children = proxy.handleTree(response.data, "${treeCode}", "${treeParentCode}"); - ${businessName}Options.value.push(data); - }); -} - -// 鍙栨秷鎸夐挳 -function cancel() { - open.value = false; - reset(); -} - -// 琛ㄥ崟閲嶇疆 -function reset() { - form.value = { -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - $column.javaField: []#if($foreach.count != $columns.size()),#end -#else - $column.javaField: null#if($foreach.count != $columns.size()),#end -#end -#end - }; - proxy.resetForm("${businessName}Ref"); -} - -/** 鎼滅储鎸夐挳鎿嶄綔 */ -function handleQuery() { - getList(); -} - -/** 閲嶇疆鎸夐挳鎿嶄綔 */ -function resetQuery() { -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) - daterange${AttrName}.value = []; -#end -#end - proxy.resetForm("queryRef"); - handleQuery(); -} - -/** 鏂板鎸夐挳鎿嶄綔 */ -function handleAdd(row) { - reset(); - getTreeselect(); - if (row != null && row.${treeCode}) { - form.value.${treeParentCode} = row.${treeCode}; - } else { - form.value.${treeParentCode} = 0; - } - open.value = true; - title.value = "娣诲姞${functionName}"; -} - -/** 灞曞紑/鎶樺彔鎿嶄綔 */ -function toggleExpandAll() { - refreshTable.value = false; - isExpandAll.value = !isExpandAll.value; - nextTick(() => { - refreshTable.value = true; - }); -} - -/** 淇敼鎸夐挳鎿嶄綔 */ -async function handleUpdate(row) { - reset(); - await getTreeselect(); - if (row != null) { - form.value.${treeParentCode} = row.${treeCode}; - } - get${BusinessName}(row.${pkColumn.javaField}).then(response => { - form.value = response.data; -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - form.value.$column.javaField = form.value.${column.javaField}.split(","); -#end -#end - open.value = true; - title.value = "淇敼${functionName}"; - }); -} - -/** 鎻愪氦鎸夐挳 */ -function submitForm() { - proxy.#[[$]]#refs["${businessName}Ref"].validate(valid => { - if (valid) { -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - form.value.$column.javaField = form.value.${column.javaField}.join(","); -#end -#end - if (form.value.${pkColumn.javaField} != null) { - update${BusinessName}(form.value).then(response => { - proxy.#[[$modal]]#.msgSuccess("淇敼鎴愬姛"); - open.value = false; - getList(); - }); - } else { - add${BusinessName}(form.value).then(response => { - proxy.#[[$modal]]#.msgSuccess("鏂板鎴愬姛"); - open.value = false; - getList(); - }); - } - } - }); -} - -/** 鍒犻櫎鎸夐挳鎿嶄綔 */ -function handleDelete(row) { - proxy.#[[$modal]]#.confirm('鏄惁纭鍒犻櫎${functionName}缂栧彿涓�"' + row.${pkColumn.javaField} + '"鐨勬暟鎹」锛�').then(function() { - return del${BusinessName}(row.${pkColumn.javaField}); - }).then(() => { - getList(); - proxy.#[[$modal]]#.msgSuccess("鍒犻櫎鎴愬姛"); - }).catch(() => {}); -} - -getList(); -</script> diff --git a/se-modules/se-gen/src/main/resources/vm/vue/v3/index.vue.vm b/se-modules/se-gen/src/main/resources/vm/vue/v3/index.vue.vm deleted file mode 100644 index 8b25665..0000000 --- a/se-modules/se-gen/src/main/resources/vm/vue/v3/index.vue.vm +++ /dev/null @@ -1,590 +0,0 @@ -<template> - <div class="app-container"> - <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px"> -#foreach($column in $columns) -#if($column.query) -#set($dictType=$column.dictType) -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($column.htmlType == "input") - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-input - v-model="queryParams.${column.javaField}" - placeholder="璇疯緭鍏�${comment}" - clearable - @keyup.enter="handleQuery" - /> - </el-form-item> -#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType) - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-select v-model="queryParams.${column.javaField}" placeholder="璇烽�夋嫨${comment}" clearable> - <el-option - v-for="dict in ${dictType}" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> - </el-select> - </el-form-item> -#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType) - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-select v-model="queryParams.${column.javaField}" placeholder="璇烽�夋嫨${comment}" clearable> - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </el-form-item> -#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN") - <el-form-item label="${comment}" prop="${column.javaField}"> - <el-date-picker clearable - v-model="queryParams.${column.javaField}" - type="date" - value-format="YYYY-MM-DD" - placeholder="璇烽�夋嫨${comment}"> - </el-date-picker> - </el-form-item> -#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN") - <el-form-item label="${comment}" style="width: 308px"> - <el-date-picker - v-model="daterange${AttrName}" - value-format="YYYY-MM-DD" - type="daterange" - range-separator="-" - start-placeholder="寮�濮嬫棩鏈�" - end-placeholder="缁撴潫鏃ユ湡" - ></el-date-picker> - </el-form-item> -#end -#end -#end - <el-form-item> - <el-button type="primary" icon="Search" @click="handleQuery">鎼滅储</el-button> - <el-button icon="Refresh" @click="resetQuery">閲嶇疆</el-button> - </el-form-item> - </el-form> - - <el-row :gutter="10" class="mb8"> - <el-col :span="1.5"> - <el-button - type="primary" - plain - icon="Plus" - @click="handleAdd" - v-hasPermi="['${moduleName}:${businessName}:add']" - >鏂板</el-button> - </el-col> - <el-col :span="1.5"> - <el-button - type="success" - plain - icon="Edit" - :disabled="single" - @click="handleUpdate" - v-hasPermi="['${moduleName}:${businessName}:edit']" - >淇敼</el-button> - </el-col> - <el-col :span="1.5"> - <el-button - type="danger" - plain - icon="Delete" - :disabled="multiple" - @click="handleDelete" - v-hasPermi="['${moduleName}:${businessName}:remove']" - >鍒犻櫎</el-button> - </el-col> - <el-col :span="1.5"> - <el-button - type="warning" - plain - icon="Download" - @click="handleExport" - v-hasPermi="['${moduleName}:${businessName}:export']" - >瀵煎嚭</el-button> - </el-col> - <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> - </el-row> - - <el-table v-loading="loading" :data="${businessName}List" @selection-change="handleSelectionChange"> - <el-table-column type="selection" width="55" align="center" /> -#foreach($column in $columns) -#set($javaField=$column.javaField) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($column.pk) - <el-table-column label="${comment}" align="center" prop="${javaField}" /> -#elseif($column.list && $column.htmlType == "datetime") - <el-table-column label="${comment}" align="center" prop="${javaField}" width="180"> - <template #default="scope"> - <span>{{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}</span> - </template> - </el-table-column> -#elseif($column.list && $column.htmlType == "imageUpload") - <el-table-column label="${comment}" align="center" prop="${javaField}" width="100"> - <template #default="scope"> - <image-preview :src="scope.row.${javaField}" :width="50" :height="50"/> - </template> - </el-table-column> -#elseif($column.list && "" != $column.dictType) - <el-table-column label="${comment}" align="center" prop="${javaField}"> - <template #default="scope"> -#if($column.htmlType == "checkbox") - <dict-tag :options="${column.dictType}" :value="scope.row.${javaField} ? scope.row.${javaField}.split(',') : []"/> -#else - <dict-tag :options="${column.dictType}" :value="scope.row.${javaField}"/> -#end - </template> - </el-table-column> -#elseif($column.list && "" != $javaField) - <el-table-column label="${comment}" align="center" prop="${javaField}" /> -#end -#end - <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> - <template #default="scope"> - <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['${moduleName}:${businessName}:edit']">淇敼</el-button> - <el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['${moduleName}:${businessName}:remove']">鍒犻櫎</el-button> - </template> - </el-table-column> - </el-table> - - <pagination - v-show="total>0" - :total="total" - v-model:page="queryParams.pageNum" - v-model:limit="queryParams.pageSize" - @pagination="getList" - /> - - <!-- 娣诲姞鎴栦慨鏀�${functionName}瀵硅瘽妗� --> - <el-dialog :title="title" v-model="open" width="500px" append-to-body> - <el-form ref="${businessName}Ref" :model="form" :rules="rules" label-width="80px"> -#foreach($column in $columns) -#set($field=$column.javaField) -#if($column.insert && !$column.pk) -#if(($column.usableColumn) || (!$column.superColumn)) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#set($dictType=$column.dictType) -#if($column.htmlType == "input") - <el-form-item label="${comment}" prop="${field}"> - <el-input v-model="form.${field}" placeholder="璇疯緭鍏�${comment}" /> - </el-form-item> -#elseif($column.htmlType == "imageUpload") - <el-form-item label="${comment}" prop="${field}"> - <image-upload v-model="form.${field}"/> - </el-form-item> -#elseif($column.htmlType == "fileUpload") - <el-form-item label="${comment}" prop="${field}"> - <file-upload v-model="form.${field}"/> - </el-form-item> -#elseif($column.htmlType == "editor") - <el-form-item label="${comment}"> - <editor v-model="form.${field}" :min-height="192"/> - </el-form-item> -#elseif($column.htmlType == "select" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-select v-model="form.${field}" placeholder="璇烽�夋嫨${comment}"> - <el-option - v-for="dict in ${dictType}" - :key="dict.value" - :label="dict.label" -#if($column.javaType == "Integer" || $column.javaType == "Long") - :value="parseInt(dict.value)" -#else - :value="dict.value" -#end - ></el-option> - </el-select> - </el-form-item> -#elseif($column.htmlType == "select" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-select v-model="form.${field}" placeholder="璇烽�夋嫨${comment}"> - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </el-form-item> -#elseif($column.htmlType == "checkbox" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-checkbox-group v-model="form.${field}"> - <el-checkbox - v-for="dict in ${dictType}" - :key="dict.value" - :label="dict.value"> - {{dict.label}} - </el-checkbox> - </el-checkbox-group> - </el-form-item> -#elseif($column.htmlType == "checkbox" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-checkbox-group v-model="form.${field}"> - <el-checkbox>璇烽�夋嫨瀛楀吀鐢熸垚</el-checkbox> - </el-checkbox-group> - </el-form-item> -#elseif($column.htmlType == "radio" && "" != $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-radio-group v-model="form.${field}"> - <el-radio - v-for="dict in ${dictType}" - :key="dict.value" -#if($column.javaType == "Integer" || $column.javaType == "Long") - :label="parseInt(dict.value)" -#else - :label="dict.value" -#end - >{{dict.label}}</el-radio> - </el-radio-group> - </el-form-item> -#elseif($column.htmlType == "radio" && $dictType) - <el-form-item label="${comment}" prop="${field}"> - <el-radio-group v-model="form.${field}"> - <el-radio label="1">璇烽�夋嫨瀛楀吀鐢熸垚</el-radio> - </el-radio-group> - </el-form-item> -#elseif($column.htmlType == "datetime") - <el-form-item label="${comment}" prop="${field}"> - <el-date-picker clearable - v-model="form.${field}" - type="date" - value-format="YYYY-MM-DD" - placeholder="璇烽�夋嫨${comment}"> - </el-date-picker> - </el-form-item> -#elseif($column.htmlType == "textarea") - <el-form-item label="${comment}" prop="${field}"> - <el-input v-model="form.${field}" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" /> - </el-form-item> -#end -#end -#end -#end -#if($table.sub) - <el-divider content-position="center">${subTable.functionName}淇℃伅</el-divider> - <el-row :gutter="10" class="mb8"> - <el-col :span="1.5"> - <el-button type="primary" icon="Plus" @click="handleAdd${subClassName}">娣诲姞</el-button> - </el-col> - <el-col :span="1.5"> - <el-button type="danger" icon="Delete" @click="handleDelete${subClassName}">鍒犻櫎</el-button> - </el-col> - </el-row> - <el-table :data="${subclassName}List" :row-class-name="row${subClassName}Index" @selection-change="handle${subClassName}SelectionChange" ref="${subclassName}"> - <el-table-column type="selection" width="50" align="center" /> - <el-table-column label="搴忓彿" align="center" prop="index" width="50"/> -#foreach($column in $subTable.columns) -#set($javaField=$column.javaField) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($column.pk || $javaField == ${subTableFkclassName}) -#elseif($column.list && $column.htmlType == "input") - <el-table-column label="$comment" prop="${javaField}" width="150"> - <template #default="scope"> - <el-input v-model="scope.row.$javaField" placeholder="璇疯緭鍏�$comment" /> - </template> - </el-table-column> -#elseif($column.list && $column.htmlType == "datetime") - <el-table-column label="$comment" prop="${javaField}" width="240"> - <template #default="scope"> - <el-date-picker clearable - v-model="scope.row.$javaField" - type="date" - value-format="YYYY-MM-DD" - placeholder="璇烽�夋嫨$comment"> - </el-date-picker> - </template> - </el-table-column> -#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" != $column.dictType) - <el-table-column label="$comment" prop="${javaField}" width="150"> - <template #default="scope"> - <el-select v-model="scope.row.$javaField" placeholder="璇烽�夋嫨$comment"> - <el-option - v-for="dict in $column.dictType" - :key="dict.value" - :label="dict.label" - :value="dict.value" - ></el-option> - </el-select> - </template> - </el-table-column> -#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" == $column.dictType) - <el-table-column label="$comment" prop="${javaField}" width="150"> - <template #default="scope"> - <el-select v-model="scope.row.$javaField" placeholder="璇烽�夋嫨$comment"> - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </template> - </el-table-column> -#end -#end - </el-table> -#end - </el-form> - <template #footer> - <div class="dialog-footer"> - <el-button type="primary" @click="submitForm">纭� 瀹�</el-button> - <el-button @click="cancel">鍙� 娑�</el-button> - </div> - </template> - </el-dialog> - </div> -</template> - -<script setup name="${BusinessName}"> -import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/${moduleName}/${businessName}"; - -const { proxy } = getCurrentInstance(); -#if(${dicts} != '') -#set($dictsNoSymbol=$dicts.replace("'", "")) -const { ${dictsNoSymbol} } = proxy.useDict(${dicts}); -#end - -const ${businessName}List = ref([]); -#if($table.sub) -const ${subclassName}List = ref([]); -#end -const open = ref(false); -const loading = ref(true); -const showSearch = ref(true); -const ids = ref([]); -#if($table.sub) -const checked${subClassName} = ref([]); -#end -const single = ref(true); -const multiple = ref(true); -const total = ref(0); -const title = ref(""); -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -const daterange${AttrName} = ref([]); -#end -#end - -const data = reactive({ - form: {}, - queryParams: { - pageNum: 1, - pageSize: 10, - #foreach ($column in $columns) -#if($column.query) - $column.javaField: null#if($foreach.count != $columns.size()),#end -#end -#end - }, - rules: { - #foreach ($column in $columns) -#if($column.required) -#set($parentheseIndex=$column.columnComment.indexOf("锛�")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end - $column.javaField: [ - { required: true, message: "$comment涓嶈兘涓虹┖", trigger: #if($column.htmlType == "select" || $column.htmlType == "radio")"change"#else"blur"#end } - ]#if($foreach.count != $columns.size()),#end -#end -#end - } -}); - -const { queryParams, form, rules } = toRefs(data); - -/** 鏌ヨ${functionName}鍒楄〃 */ -function getList() { - loading.value = true; -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") - queryParams.value.params = {}; -#break -#end -#end -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) - if (null != daterange${AttrName} && '' != daterange${AttrName}) { - queryParams.value.params["begin${AttrName}"] = daterange${AttrName}.value[0]; - queryParams.value.params["end${AttrName}"] = daterange${AttrName}.value[1]; - } -#end -#end - list${BusinessName}(queryParams.value).then(response => { - ${businessName}List.value = response.rows; - total.value = response.total; - loading.value = false; - }); -} - -// 鍙栨秷鎸夐挳 -function cancel() { - open.value = false; - reset(); -} - -// 琛ㄥ崟閲嶇疆 -function reset() { - form.value = { -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - $column.javaField: []#if($foreach.count != $columns.size()),#end -#else - $column.javaField: null#if($foreach.count != $columns.size()),#end -#end -#end - }; -#if($table.sub) - ${subclassName}List.value = []; -#end - proxy.resetForm("${businessName}Ref"); -} - -/** 鎼滅储鎸夐挳鎿嶄綔 */ -function handleQuery() { - queryParams.value.pageNum = 1; - getList(); -} - -/** 閲嶇疆鎸夐挳鎿嶄綔 */ -function resetQuery() { -#foreach ($column in $columns) -#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) - daterange${AttrName}.value = []; -#end -#end - proxy.resetForm("queryRef"); - handleQuery(); -} - -// 澶氶�夋閫変腑鏁版嵁 -function handleSelectionChange(selection) { - ids.value = selection.map(item => item.${pkColumn.javaField}); - single.value = selection.length != 1; - multiple.value = !selection.length; -} - -/** 鏂板鎸夐挳鎿嶄綔 */ -function handleAdd() { - reset(); - open.value = true; - title.value = "娣诲姞${functionName}"; -} - -/** 淇敼鎸夐挳鎿嶄綔 */ -function handleUpdate(row) { - reset(); - const _${pkColumn.javaField} = row.${pkColumn.javaField} || ids.value - get${BusinessName}(_${pkColumn.javaField}).then(response => { - form.value = response.data; -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - form.value.$column.javaField = form.value.${column.javaField}.split(","); -#end -#end -#if($table.sub) - ${subclassName}List.value = response.data.${subclassName}List; -#end - open.value = true; - title.value = "淇敼${functionName}"; - }); -} - -/** 鎻愪氦鎸夐挳 */ -function submitForm() { - proxy.#[[$]]#refs["${businessName}Ref"].validate(valid => { - if (valid) { -#foreach ($column in $columns) -#if($column.htmlType == "checkbox") - form.value.$column.javaField = form.value.${column.javaField}.join(","); -#end -#end -#if($table.sub) - form.value.${subclassName}List = ${subclassName}List.value; -#end - if (form.value.${pkColumn.javaField} != null) { - update${BusinessName}(form.value).then(response => { - proxy.#[[$modal]]#.msgSuccess("淇敼鎴愬姛"); - open.value = false; - getList(); - }); - } else { - add${BusinessName}(form.value).then(response => { - proxy.#[[$modal]]#.msgSuccess("鏂板鎴愬姛"); - open.value = false; - getList(); - }); - } - } - }); -} - -/** 鍒犻櫎鎸夐挳鎿嶄綔 */ -function handleDelete(row) { - const _${pkColumn.javaField}s = row.${pkColumn.javaField} || ids.value; - proxy.#[[$modal]]#.confirm('鏄惁纭鍒犻櫎${functionName}缂栧彿涓�"' + _${pkColumn.javaField}s + '"鐨勬暟鎹」锛�').then(function() { - return del${BusinessName}(_${pkColumn.javaField}s); - }).then(() => { - getList(); - proxy.#[[$modal]]#.msgSuccess("鍒犻櫎鎴愬姛"); - }).catch(() => {}); -} - -#if($table.sub) -/** ${subTable.functionName}搴忓彿 */ -function row${subClassName}Index({ row, rowIndex }) { - row.index = rowIndex + 1; -} - -/** ${subTable.functionName}娣诲姞鎸夐挳鎿嶄綔 */ -function handleAdd${subClassName}() { - let obj = {}; -#foreach($column in $subTable.columns) -#if($column.pk || $column.javaField == ${subTableFkclassName}) -#elseif($column.list && "" != $javaField) - obj.$column.javaField = ""; -#end -#end - ${subclassName}List.value.push(obj); -} - -/** ${subTable.functionName}鍒犻櫎鎸夐挳鎿嶄綔 */ -function handleDelete${subClassName}() { - if (checked${subClassName}.value.length == 0) { - proxy.#[[$modal]]#.msgError("璇峰厛閫夋嫨瑕佸垹闄ょ殑${subTable.functionName}鏁版嵁"); - } else { - const ${subclassName}s = ${subclassName}List.value; - const checked${subClassName}s = checked${subClassName}.value; - ${subclassName}List.value = ${subclassName}s.filter(function(item) { - return checked${subClassName}s.indexOf(item.index) == -1 - }); - } -} - -/** 澶嶉�夋閫変腑鏁版嵁 */ -function handle${subClassName}SelectionChange(selection) { - checked${subClassName}.value = selection.map(item => item.index) -} - -#end -/** 瀵煎嚭鎸夐挳鎿嶄綔 */ -function handleExport() { - proxy.download('${moduleName}/${businessName}/export', { - ...queryParams.value - }, `${businessName}_#[[${new Date().getTime()}]]#.xlsx`) -} - -getList(); -</script> diff --git a/se-modules/se-gen/src/main/resources/vm/xml/mapper.xml.vm b/se-modules/se-gen/src/main/resources/vm/xml/mapper.xml.vm deleted file mode 100644 index 456755b..0000000 --- a/se-modules/se-gen/src/main/resources/vm/xml/mapper.xml.vm +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE mapper -PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" -"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -<mapper namespace="${packageName}.mapper.${ClassName}Mapper"> - - <resultMap type="${ClassName}" id="${ClassName}Result"> -#foreach ($column in $columns) - <result property="${column.javaField}" column="${column.columnName}" /> -#end - </resultMap> -#if($table.sub) - - <resultMap id="${ClassName}${subClassName}Result" type="${ClassName}" extends="${ClassName}Result"> - <collection property="${subclassName}List" ofType="${subClassName}" column="${pkColumn.columnName}" select="select${subClassName}List" /> - </resultMap> - - <resultMap type="${subClassName}" id="${subClassName}Result"> -#foreach ($column in $subTable.columns) - <result property="${column.javaField}" column="${column.columnName}" /> -#end - </resultMap> -#end - - <sql id="select${ClassName}Vo"> - select#foreach($column in $columns) $column.columnName#if($foreach.count != $columns.size()),#end#end from ${tableName} - </sql> - - <select id="select${ClassName}List" parameterType="${ClassName}" resultMap="${ClassName}Result"> - <include refid="select${ClassName}Vo"/> - <where> -#foreach($column in $columns) -#set($queryType=$column.queryType) -#set($javaField=$column.javaField) -#set($javaType=$column.javaType) -#set($columnName=$column.columnName) -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#if($column.query) -#if($column.queryType == "EQ") - <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName = #{$javaField}</if> -#elseif($queryType == "NE") - <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName != #{$javaField}</if> -#elseif($queryType == "GT") - <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName > #{$javaField}</if> -#elseif($queryType == "GTE") - <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName >= #{$javaField}</if> -#elseif($queryType == "LT") - <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName < #{$javaField}</if> -#elseif($queryType == "LTE") - <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName <= #{$javaField}</if> -#elseif($queryType == "LIKE") - <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName like concat('%', #{$javaField}, '%')</if> -#elseif($queryType == "BETWEEN") - <if test="params.begin$AttrName != null and params.begin$AttrName != '' and params.end$AttrName != null and params.end$AttrName != ''"> and $columnName between #{params.begin$AttrName} and #{params.end$AttrName}</if> -#end -#end -#end - </where> - </select> - - <select id="select${ClassName}By${pkColumn.capJavaField}" parameterType="${pkColumn.javaType}" resultMap="#if($table.sub)${ClassName}${subClassName}Result#else${ClassName}Result#end"> -#if($table.crud || $table.tree) - <include refid="select${ClassName}Vo"/> - where ${pkColumn.columnName} = #{${pkColumn.javaField}} -#elseif($table.sub) - select#foreach($column in $columns) $column.columnName#if($foreach.count != $columns.size()),#end#end - from ${tableName} - where ${pkColumn.columnName} = #{${pkColumn.javaField}} -#end - </select> -#if($table.sub) - - <select id="select${subClassName}List" resultMap="${subClassName}Result"> - select#foreach ($column in $subTable.columns) $column.columnName#if($foreach.count != $subTable.columns.size()),#end#end - from ${subTableName} - where ${subTableFkName} = #{${subTableFkName}} - </select> -#end - - <insert id="insert${ClassName}" parameterType="${ClassName}"#if($pkColumn.increment) useGeneratedKeys="true" keyProperty="$pkColumn.javaField"#end> - insert into ${tableName} - <trim prefix="(" suffix=")" suffixOverrides=","> -#foreach($column in $columns) -#if($column.columnName != $pkColumn.columnName || !$pkColumn.increment) - <if test="$column.javaField != null#if($column.javaType == 'String' && $column.required) and $column.javaField != ''#end">$column.columnName,</if> -#end -#end - </trim> - <trim prefix="values (" suffix=")" suffixOverrides=","> -#foreach($column in $columns) -#if($column.columnName != $pkColumn.columnName || !$pkColumn.increment) - <if test="$column.javaField != null#if($column.javaType == 'String' && $column.required) and $column.javaField != ''#end">#{$column.javaField},</if> -#end -#end - </trim> - </insert> - - <update id="update${ClassName}" parameterType="${ClassName}"> - update ${tableName} - <trim prefix="SET" suffixOverrides=","> -#foreach($column in $columns) -#if($column.columnName != $pkColumn.columnName) - <if test="$column.javaField != null#if($column.javaType == 'String' && $column.required) and $column.javaField != ''#end">$column.columnName = #{$column.javaField},</if> -#end -#end - </trim> - where ${pkColumn.columnName} = #{${pkColumn.javaField}} - </update> - - <delete id="delete${ClassName}By${pkColumn.capJavaField}" parameterType="${pkColumn.javaType}"> - delete from ${tableName} where ${pkColumn.columnName} = #{${pkColumn.javaField}} - </delete> - - <delete id="delete${ClassName}By${pkColumn.capJavaField}s" parameterType="String"> - delete from ${tableName} where ${pkColumn.columnName} in - <foreach item="${pkColumn.javaField}" collection="array" open="(" separator="," close=")"> - #{${pkColumn.javaField}} - </foreach> - </delete> -#if($table.sub) - - <delete id="delete${subClassName}By${subTableFkClassName}s" parameterType="String"> - delete from ${subTableName} where ${subTableFkName} in - <foreach item="${subTableFkclassName}" collection="array" open="(" separator="," close=")"> - #{${subTableFkclassName}} - </foreach> - </delete> - - <delete id="delete${subClassName}By${subTableFkClassName}" parameterType="${pkColumn.javaType}"> - delete from ${subTableName} where ${subTableFkName} = #{${subTableFkclassName}} - </delete> - - <insert id="batch${subClassName}"> - insert into ${subTableName}(#foreach($column in $subTable.columns) $column.columnName#if($foreach.count != $subTable.columns.size()),#end#end) values - <foreach item="item" index="index" collection="list" separator=","> - (#foreach($column in $subTable.columns) #{item.$column.javaField}#if($foreach.count != $subTable.columns.size()),#end#end) - </foreach> - </insert> -#end -</mapper> \ No newline at end of file diff --git a/se-modules/se-job/pom.xml b/se-modules/se-job/pom.xml deleted file mode 100644 index 64f6209..0000000 --- a/se-modules/se-job/pom.xml +++ /dev/null @@ -1,101 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns="http://maven.apache.org/POM/4.0.0" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <parent> - <groupId>com.se</groupId> - <artifactId>se-modules</artifactId> - <version>3.6.4</version> - </parent> - <modelVersion>4.0.0</modelVersion> - - <artifactId>se-modules-job</artifactId> - - <description> - se-modules-job瀹氭椂浠诲姟 - </description> - - <dependencies> - - <!-- SpringCloud Alibaba Nacos --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> - </dependency> - - <!-- SpringCloud Alibaba Nacos Config --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> - </dependency> - - <!-- SpringCloud Alibaba Sentinel --> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> - </dependency> - - <!-- SpringBoot Actuator --> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-actuator</artifactId> - </dependency> - - <!-- Swagger UI --> - <dependency> - <groupId>io.springfox</groupId> - <artifactId>springfox-swagger-ui</artifactId> -<!-- <version>${swagger.fox.version}</version>--> - <version>3.0.0</version> - </dependency> - - <!-- Quartz --> - <dependency> - <groupId>org.quartz-scheduler</groupId> - <artifactId>quartz</artifactId> - <exclusions> - <exclusion> - <groupId>com.mchange</groupId> - <artifactId>c3p0</artifactId> - </exclusion> - </exclusions> - </dependency> - - <!-- Mysql Connector --> - <dependency> - <groupId>com.mysql</groupId> - <artifactId>mysql-connector-j</artifactId> - </dependency> - - <!-- SE Common Log --> - <dependency> - <groupId>com.se</groupId> - <artifactId>se-common-log</artifactId> - </dependency> - - <!-- SE Common Swagger --> - <dependency> - <groupId>com.se</groupId> - <artifactId>se-common-swagger</artifactId> - </dependency> - - </dependencies> - - <build> - <finalName>${project.artifactId}</finalName> - <plugins> - <plugin> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-maven-plugin</artifactId> - <executions> - <execution> - <goals> - <goal>repackage</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - -</project> \ No newline at end of file diff --git a/se-modules/se-job/src/main/java/com/se/job/SeJobApplication.java b/se-modules/se-job/src/main/java/com/se/job/SeJobApplication.java deleted file mode 100644 index f5e3d07..0000000 --- a/se-modules/se-job/src/main/java/com/se/job/SeJobApplication.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.se.job; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import com.se.common.security.annotation.EnableCustomConfig; -import com.se.common.security.annotation.EnableRyFeignClients; -import com.se.common.swagger.annotation.EnableCustomSwagger2; - -/** - * 瀹氭椂浠诲姟 - * - * @author admin - */ -@EnableCustomConfig -@EnableCustomSwagger2 -@EnableRyFeignClients -@SpringBootApplication -public class SeJobApplication -{ - public static void main(String[] args) - { - SpringApplication.run(SeJobApplication.class, args); - System.out.println(" 瀹氭椂浠诲姟妯″潡鍚姩鎴愬姛 "); - } -} diff --git a/se-modules/se-job/src/main/resources/banner.txt b/se-modules/se-job/src/main/resources/banner.txt deleted file mode 100644 index 286d7fe..0000000 --- a/se-modules/se-job/src/main/resources/banner.txt +++ /dev/null @@ -1,3 +0,0 @@ -Spring Boot Version: ${spring-boot.version} -Spring Application Name: ${spring.application.name} -SeJobApplication锛屽凡缁忓惎鍔� \ No newline at end of file diff --git a/se-modules/se-job/src/main/resources/bootstrap.yml b/se-modules/se-job/src/main/resources/bootstrap.yml deleted file mode 100644 index 94beb34..0000000 --- a/se-modules/se-job/src/main/resources/bootstrap.yml +++ /dev/null @@ -1,27 +0,0 @@ -# Tomcat -server: - port: 9203 - -# Spring -spring: - application: - # 搴旂敤鍚嶇О - name: se-job - profiles: - # 鐜閰嶇疆 - active: dev - cloud: - nacos: - username: nacos - password: nAcos_!9#_admIn - discovery: - # 鏈嶅姟娉ㄥ唽鍦板潃 - server-addr: 127.0.0.1:8848 - config: - # 閰嶇疆涓績鍦板潃 - server-addr: 127.0.0.1:8848 - # 閰嶇疆鏂囦欢鏍煎紡 - file-extension: yml - # 鍏变韩閰嶇疆 - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} diff --git a/se-modules/se-job/src/main/resources/logback.xml b/se-modules/se-job/src/main/resources/logback.xml deleted file mode 100644 index 5eeb32b..0000000 --- a/se-modules/se-job/src/main/resources/logback.xml +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<configuration scan="true" scanPeriod="60 seconds" debug="false"> - <!-- 鏃ュ織瀛樻斁璺緞 --> - <property name="log.path" value="logs/se-job" /> - <!-- 鏃ュ織杈撳嚭鏍煎紡 --> - <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" /> - - <!-- 鎺у埗鍙拌緭鍑� --> - <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - </appender> - - <!-- 绯荤粺鏃ュ織杈撳嚭 --> - <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.path}/info.log</file> - <!-- 寰幆鏀跨瓥锛氬熀浜庢椂闂村垱寤烘棩蹇楁枃浠� --> - <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> - <!-- 鏃ュ織鏂囦欢鍚嶆牸寮� --> - <fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern> - <!-- 鏃ュ織鏈�澶х殑鍘嗗彶 60澶� --> - <maxHistory>60</maxHistory> - </rollingPolicy> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - <filter class="ch.qos.logback.classic.filter.LevelFilter"> - <!-- 杩囨护鐨勭骇鍒� --> - <level>INFO</level> - <!-- 鍖归厤鏃剁殑鎿嶄綔锛氭帴鏀讹紙璁板綍锛� --> - <onMatch>ACCEPT</onMatch> - <!-- 涓嶅尮閰嶆椂鐨勬搷浣滐細鎷掔粷锛堜笉璁板綍锛� --> - <onMismatch>DENY</onMismatch> - </filter> - </appender> - - <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.path}/error.log</file> - <!-- 寰幆鏀跨瓥锛氬熀浜庢椂闂村垱寤烘棩蹇楁枃浠� --> - <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> - <!-- 鏃ュ織鏂囦欢鍚嶆牸寮� --> - <fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern> - <!-- 鏃ュ織鏈�澶х殑鍘嗗彶 60澶� --> - <maxHistory>60</maxHistory> - </rollingPolicy> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - <filter class="ch.qos.logback.classic.filter.LevelFilter"> - <!-- 杩囨护鐨勭骇鍒� --> - <level>ERROR</level> - <!-- 鍖归厤鏃剁殑鎿嶄綔锛氭帴鏀讹紙璁板綍锛� --> - <onMatch>ACCEPT</onMatch> - <!-- 涓嶅尮閰嶆椂鐨勬搷浣滐細鎷掔粷锛堜笉璁板綍锛� --> - <onMismatch>DENY</onMismatch> - </filter> - </appender> - - <!-- 绯荤粺妯″潡鏃ュ織绾у埆鎺у埗 --> - <logger name="com.se" level="info" /> - <!-- Spring鏃ュ織绾у埆鎺у埗 --> - <logger name="org.springframework" level="warn" /> - - <root level="info"> - <appender-ref ref="console" /> - </root> - - <!--绯荤粺鎿嶄綔鏃ュ織--> - <root level="info"> - <appender-ref ref="file_info" /> - <appender-ref ref="file_error" /> - </root> -</configuration> \ No newline at end of file diff --git a/se-modules/se-system/pom.xml b/se-modules/se-system/pom.xml index d80a606..5a727b5 100644 --- a/se-modules/se-system/pom.xml +++ b/se-modules/se-system/pom.xml @@ -40,14 +40,7 @@ <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> - - <!-- Swagger UI --> - <dependency> - <groupId>io.springfox</groupId> - <artifactId>springfox-swagger-ui</artifactId> - <version>${swagger.fox.version}</version> - </dependency> - + <!-- Mysql Connector --> <dependency> <groupId>com.mysql</groupId> @@ -71,7 +64,14 @@ <groupId>com.se</groupId> <artifactId>se-common-log</artifactId> </dependency> - + + <!-- Swagger UI --> + <dependency> + <groupId>io.springfox</groupId> + <artifactId>springfox-swagger-ui</artifactId> + <version>${swagger.fox.version}</version> + </dependency> + <!-- SE Common Swagger --> <dependency> <groupId>com.se</groupId> @@ -105,6 +105,24 @@ <groupId>com.se</groupId> <artifactId>se-api-system</artifactId> </dependency> + + <!-- Apache Velocity --> + <dependency> + <groupId>org.apache.velocity</groupId> + <artifactId>velocity-engine-core</artifactId> + </dependency> + + <!-- Quartz --> + <dependency> + <groupId>org.quartz-scheduler</groupId> + <artifactId>quartz</artifactId> + <exclusions> + <exclusion> + <groupId>com.mchange</groupId> + <artifactId>c3p0</artifactId> + </exclusion> + </exclusions> + </dependency> </dependencies> <build> diff --git a/se-modules/se-gen/src/main/java/com/se/gen/config/GenConfig.java b/se-modules/se-system/src/main/java/com/se/system/config/GenConfig.java similarity index 97% rename from se-modules/se-gen/src/main/java/com/se/gen/config/GenConfig.java rename to se-modules/se-system/src/main/java/com/se/system/config/GenConfig.java index 28143c1..2cc4260 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/config/GenConfig.java +++ b/se-modules/se-system/src/main/java/com/se/system/config/GenConfig.java @@ -1,4 +1,4 @@ -package com.se.gen.config; +package com.se.system.config; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; diff --git a/se-modules/se-job/src/main/java/com/se/job/config/ScheduleConfig.java b/se-modules/se-system/src/main/java/com/se/system/config/ScheduleConfig.java similarity index 97% rename from se-modules/se-job/src/main/java/com/se/job/config/ScheduleConfig.java rename to se-modules/se-system/src/main/java/com/se/system/config/ScheduleConfig.java index b92a30e..fbe1839 100644 --- a/se-modules/se-job/src/main/java/com/se/job/config/ScheduleConfig.java +++ b/se-modules/se-system/src/main/java/com/se/system/config/ScheduleConfig.java @@ -1,4 +1,4 @@ -//package com.se.job.config; +package com.se.system.config;//package com.se.job.config; // //import java.util.Properties; //import javax.sql.DataSource; diff --git a/se-modules/se-gen/src/main/java/com/se/gen/controller/GenController.java b/se-modules/se-system/src/main/java/com/se/system/controller/GenController.java similarity index 88% rename from se-modules/se-gen/src/main/java/com/se/gen/controller/GenController.java rename to se-modules/se-system/src/main/java/com/se/system/controller/GenController.java index 7a5dc12..48eea6e 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/controller/GenController.java +++ b/se-modules/se-system/src/main/java/com/se/system/controller/GenController.java @@ -1,23 +1,5 @@ -package com.se.gen.controller; +package com.se.system.controller; -import java.io.IOException; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.servlet.http.HttpServletResponse; - -import com.se.gen.domain.GenTableColumn; -import org.apache.commons.io.IOUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; import com.se.common.core.text.Convert; import com.se.common.core.web.controller.BaseController; import com.se.common.core.web.domain.AjaxResult; @@ -25,9 +7,20 @@ import com.se.common.log.annotation.Log; import com.se.common.log.enums.BusinessType; import com.se.common.security.annotation.RequiresPermissions; -import com.se.gen.domain.GenTable; -import com.se.gen.service.IGenTableColumnService; -import com.se.gen.service.IGenTableService; +import com.se.system.domain.GenTable; +import com.se.system.domain.GenTableColumn; +import com.se.system.service.inte.IGenTableColumnService; +import com.se.system.service.inte.IGenTableService; +import org.apache.commons.io.IOUtils; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 浠g爜鐢熸垚 鎿嶄綔澶勭悊 @@ -38,10 +31,10 @@ @RestController public class GenController extends BaseController { - @Autowired + @Resource private IGenTableService genTableService; - @Autowired + @Resource private IGenTableColumnService genTableColumnService; /** diff --git a/se-modules/se-system/src/main/java/com/se/system/controller/IndexController.java b/se-modules/se-system/src/main/java/com/se/system/controller/IndexController.java new file mode 100644 index 0000000..541c9b4 --- /dev/null +++ b/se-modules/se-system/src/main/java/com/se/system/controller/IndexController.java @@ -0,0 +1,95 @@ +package com.se.system.controller; + +import com.alibaba.fastjson2.JSON; +import com.se.common.core.utils.ServletUtils; +import com.se.common.core.utils.StringUtils; +import com.se.common.core.utils.ip.IpUtils; +import com.se.common.core.web.controller.BaseController; +import com.se.common.core.web.domain.AjaxResult; +import com.se.common.log.annotation.Log; +import com.se.common.log.enums.BusinessType; +import com.se.common.security.utils.SecurityUtils; +import com.se.system.api.domain.SysOperLog; +import com.se.system.api.model.LoginUser; +import com.se.system.service.inte.ISysOperLogService; +import org.springframework.http.HttpMethod; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +@RestController +@RequestMapping("/index") +@SuppressWarnings("ALL") +public class IndexController extends BaseController { + @Resource + ISysOperLogService operLogService; + + @GetMapping("/monitor") + public Map<String, Object> monitor() { + Map<String, Object> map = new HashMap<>(); + + return map; + } + + @GetMapping("/userList") + public Map<String, Object> userList() { + Map<String, Object> map = new HashMap<>(); + + return map; + } + + @GetMapping("/uvCount") + public Map<String, Object> uvCount() { + Map<String, Object> map = new HashMap<>(); + + return map; + } + + @GetMapping("/pvCount") + public Map<String, Object> pvCount() { + Map<String, Object> map = new HashMap<>(); + + return map; + } + + //@Log(title = "瑙掕壊绠$悊", businessType = BusinessType.INSERT) + @GetMapping("/addAccessLog") + public AjaxResult addAccessLog(String title, int status) { + long start = System.currentTimeMillis(); + + SysOperLog log = new SysOperLog(); + log.setTitle(title); + // 0=鍏跺畠,1=鏂板,2=淇敼,3=鍒犻櫎,4=鎺堟潈,5=瀵煎嚭,6=瀵煎叆,7=寮洪��,8=鐢熸垚浠g爜,9=娓呯┖鏁版嵁 + log.setBusinessType(0); + // ServletUtils.getRequest().getMethod() + log.setMethod("com.se.system.controller.IndexController.addAccessLog()"); + log.setRequestMethod("GET"); + log.setOperatorType(1); + + LoginUser loginUser = SecurityUtils.getLoginUser(); + if (null != loginUser) { + log.setOperName(loginUser.getUsername()); + log.setDeptName(loginUser.getSysUser().getDept().getDeptName()); + } + // StringUtils.substring(ServletUtils.getRequest().getRequestURI(), 0, 255) + log.setOperUrl("/index/addAccessLog"); + log.setOperIp(IpUtils.getIpAddr()); + log.setOperParam("{\"title\":\"" + title + "\"}"); + + log.setJsonResult(String.format("{\"msg\":\"%s\",\"code\":%d}", 0 == status ? "鎴愬姛" : "澶辫触", 0 == status ? 200 : 400)); + log.setStatus(status); + log.setOperTime(new Date()); + log.setCostTime(System.currentTimeMillis() - start + 10); + + int rows = operLogService.insertOperlog(log); + + return toAjax(rows); + } +} + + diff --git a/se-modules/se-job/src/main/java/com/se/job/controller/SysJobController.java b/se-modules/se-system/src/main/java/com/se/system/controller/SysJobController.java similarity index 89% rename from se-modules/se-job/src/main/java/com/se/job/controller/SysJobController.java rename to se-modules/se-system/src/main/java/com/se/system/controller/SysJobController.java index 0cddec9..1705a01 100644 --- a/se-modules/se-job/src/main/java/com/se/job/controller/SysJobController.java +++ b/se-modules/se-system/src/main/java/com/se/system/controller/SysJobController.java @@ -1,21 +1,5 @@ -package com.se.job.controller; +package com.se.system.controller; -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.se.job.domain.SysJob; -import com.se.job.service.ISysJobService; -import com.se.job.util.ScheduleUtils; -import org.quartz.SchedulerException; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; import com.se.common.core.constant.Constants; import com.se.common.core.exception.job.TaskException; import com.se.common.core.utils.StringUtils; @@ -27,7 +11,16 @@ import com.se.common.log.enums.BusinessType; import com.se.common.security.annotation.RequiresPermissions; import com.se.common.security.utils.SecurityUtils; -import com.se.job.util.CronUtils; +import com.se.system.domain.SysJob; +import com.se.system.service.inte.ISysJobService; +import com.se.system.utils.CronUtils; +import com.se.system.utils.ScheduleUtils; +import org.quartz.SchedulerException; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.util.List; /** * 璋冨害浠诲姟淇℃伅鎿嶄綔澶勭悊 @@ -38,7 +31,7 @@ @RequestMapping("/job") public class SysJobController extends BaseController { - @Autowired + @Resource private ISysJobService jobService; /** diff --git a/se-modules/se-job/src/main/java/com/se/job/controller/SysJobLogController.java b/se-modules/se-system/src/main/java/com/se/system/controller/SysJobLogController.java similarity index 80% rename from se-modules/se-job/src/main/java/com/se/job/controller/SysJobLogController.java rename to se-modules/se-system/src/main/java/com/se/system/controller/SysJobLogController.java index 3ba97de..73224ef 100644 --- a/se-modules/se-job/src/main/java/com/se/job/controller/SysJobLogController.java +++ b/se-modules/se-system/src/main/java/com/se/system/controller/SysJobLogController.java @@ -1,17 +1,5 @@ -package com.se.job.controller; +package com.se.system.controller; -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.se.job.domain.SysJobLog; -import com.se.job.service.ISysJobLogService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; import com.se.common.core.utils.poi.ExcelUtil; import com.se.common.core.web.controller.BaseController; import com.se.common.core.web.domain.AjaxResult; @@ -19,6 +7,13 @@ import com.se.common.log.annotation.Log; import com.se.common.log.enums.BusinessType; import com.se.common.security.annotation.RequiresPermissions; +import com.se.system.domain.SysJobLog; +import com.se.system.service.inte.ISysJobLogService; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.util.List; /** * 璋冨害鏃ュ織鎿嶄綔澶勭悊 @@ -29,7 +24,7 @@ @RequestMapping("/job/log") public class SysJobLogController extends BaseController { - @Autowired + @Resource private ISysJobLogService jobLogService; /** diff --git a/se-modules/se-gen/src/main/java/com/se/gen/domain/GenTable.java b/se-modules/se-system/src/main/java/com/se/system/domain/GenTable.java similarity index 99% rename from se-modules/se-gen/src/main/java/com/se/gen/domain/GenTable.java rename to se-modules/se-system/src/main/java/com/se/system/domain/GenTable.java index 7878289..dd372b4 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/domain/GenTable.java +++ b/se-modules/se-system/src/main/java/com/se/system/domain/GenTable.java @@ -1,12 +1,13 @@ -package com.se.gen.domain; +package com.se.system.domain; -import java.util.List; -import javax.validation.Valid; -import javax.validation.constraints.NotBlank; -import org.apache.commons.lang3.ArrayUtils; import com.se.common.core.constant.GenConstants; import com.se.common.core.utils.StringUtils; import com.se.common.core.web.domain.BaseEntity; +import org.apache.commons.lang3.ArrayUtils; + +import javax.validation.Valid; +import javax.validation.constraints.NotBlank; +import java.util.List; /** * 涓氬姟琛� gen_table diff --git a/se-modules/se-gen/src/main/java/com/se/gen/domain/GenTableColumn.java b/se-modules/se-system/src/main/java/com/se/system/domain/GenTableColumn.java similarity index 99% rename from se-modules/se-gen/src/main/java/com/se/gen/domain/GenTableColumn.java rename to se-modules/se-system/src/main/java/com/se/system/domain/GenTableColumn.java index 36200be..2454b75 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/domain/GenTableColumn.java +++ b/se-modules/se-system/src/main/java/com/se/system/domain/GenTableColumn.java @@ -1,10 +1,10 @@ -package com.se.gen.domain; - -import javax.validation.constraints.NotBlank; +package com.se.system.domain; import com.se.common.core.utils.StringUtils; import com.se.common.core.web.domain.BaseEntity; +import javax.validation.constraints.NotBlank; + /** * 浠g爜鐢熸垚涓氬姟瀛楁琛� gen_table_column * diff --git a/se-modules/se-job/src/main/java/com/se/job/domain/SysJob.java b/se-modules/se-system/src/main/java/com/se/system/domain/SysJob.java similarity index 98% rename from se-modules/se-job/src/main/java/com/se/job/domain/SysJob.java rename to se-modules/se-system/src/main/java/com/se/system/domain/SysJob.java index 9fe5163..ce10907 100644 --- a/se-modules/se-job/src/main/java/com/se/job/domain/SysJob.java +++ b/se-modules/se-system/src/main/java/com/se/system/domain/SysJob.java @@ -1,17 +1,18 @@ -package com.se.job.domain; +package com.se.system.domain; -import java.util.Date; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.Size; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.fasterxml.jackson.annotation.JsonFormat; import com.se.common.core.annotation.Excel; import com.se.common.core.annotation.Excel.ColumnType; import com.se.common.core.constant.ScheduleConstants; import com.se.common.core.utils.StringUtils; import com.se.common.core.web.domain.BaseEntity; -import com.se.job.util.CronUtils; +import com.se.system.utils.CronUtils; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; +import java.util.Date; /** * 瀹氭椂浠诲姟璋冨害琛� sys_job diff --git a/se-modules/se-job/src/main/java/com/se/job/domain/SysJobLog.java b/se-modules/se-system/src/main/java/com/se/system/domain/SysJobLog.java similarity index 98% rename from se-modules/se-job/src/main/java/com/se/job/domain/SysJobLog.java rename to se-modules/se-system/src/main/java/com/se/system/domain/SysJobLog.java index b08cf99..531b469 100644 --- a/se-modules/se-job/src/main/java/com/se/job/domain/SysJobLog.java +++ b/se-modules/se-system/src/main/java/com/se/system/domain/SysJobLog.java @@ -1,10 +1,11 @@ -package com.se.job.domain; +package com.se.system.domain; -import java.util.Date; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.se.common.core.annotation.Excel; import com.se.common.core.web.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; /** * 瀹氭椂浠诲姟璋冨害鏃ュ織琛� sys_job_log diff --git a/se-modules/se-gen/src/main/java/com/se/gen/mapper/GenTableColumnMapper.java b/se-modules/se-system/src/main/java/com/se/system/mapper/GenTableColumnMapper.java similarity index 94% rename from se-modules/se-gen/src/main/java/com/se/gen/mapper/GenTableColumnMapper.java rename to se-modules/se-system/src/main/java/com/se/system/mapper/GenTableColumnMapper.java index 9e8aca2..d095ce8 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/mapper/GenTableColumnMapper.java +++ b/se-modules/se-system/src/main/java/com/se/system/mapper/GenTableColumnMapper.java @@ -1,7 +1,8 @@ -package com.se.gen.mapper; +package com.se.system.mapper; + +import com.se.system.domain.GenTableColumn; import java.util.List; -import com.se.gen.domain.GenTableColumn; /** * 涓氬姟瀛楁 鏁版嵁灞� diff --git a/se-modules/se-gen/src/main/java/com/se/gen/mapper/GenTableMapper.java b/se-modules/se-system/src/main/java/com/se/system/mapper/GenTableMapper.java similarity index 95% rename from se-modules/se-gen/src/main/java/com/se/gen/mapper/GenTableMapper.java rename to se-modules/se-system/src/main/java/com/se/system/mapper/GenTableMapper.java index 0f781b4..80d2250 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/mapper/GenTableMapper.java +++ b/se-modules/se-system/src/main/java/com/se/system/mapper/GenTableMapper.java @@ -1,7 +1,8 @@ -package com.se.gen.mapper; +package com.se.system.mapper; + +import com.se.system.domain.GenTable; import java.util.List; -import com.se.gen.domain.GenTable; /** * 涓氬姟 鏁版嵁灞� diff --git a/se-modules/se-job/src/main/java/com/se/job/mapper/SysJobLogMapper.java b/se-modules/se-system/src/main/java/com/se/system/mapper/SysJobLogMapper.java similarity index 94% rename from se-modules/se-job/src/main/java/com/se/job/mapper/SysJobLogMapper.java rename to se-modules/se-system/src/main/java/com/se/system/mapper/SysJobLogMapper.java index 82cb623..01b5c7e 100644 --- a/se-modules/se-job/src/main/java/com/se/job/mapper/SysJobLogMapper.java +++ b/se-modules/se-system/src/main/java/com/se/system/mapper/SysJobLogMapper.java @@ -1,7 +1,8 @@ -package com.se.job.mapper; +package com.se.system.mapper; + +import com.se.system.domain.SysJobLog; import java.util.List; -import com.se.job.domain.SysJobLog; /** * 璋冨害浠诲姟鏃ュ織淇℃伅 鏁版嵁灞� diff --git a/se-modules/se-job/src/main/java/com/se/job/mapper/SysJobMapper.java b/se-modules/se-system/src/main/java/com/se/system/mapper/SysJobMapper.java similarity index 94% rename from se-modules/se-job/src/main/java/com/se/job/mapper/SysJobMapper.java rename to se-modules/se-system/src/main/java/com/se/system/mapper/SysJobMapper.java index 0f99ed6..af20fb8 100644 --- a/se-modules/se-job/src/main/java/com/se/job/mapper/SysJobMapper.java +++ b/se-modules/se-system/src/main/java/com/se/system/mapper/SysJobMapper.java @@ -1,7 +1,8 @@ -package com.se.job.mapper; +package com.se.system.mapper; + +import com.se.system.domain.SysJob; import java.util.List; -import com.se.job.domain.SysJob; /** * 璋冨害浠诲姟淇℃伅 鏁版嵁灞� diff --git a/se-modules/se-gen/src/main/java/com/se/gen/service/GenTableColumnServiceImpl.java b/se-modules/se-system/src/main/java/com/se/system/service/impl/GenTableColumnServiceImpl.java similarity index 85% rename from se-modules/se-gen/src/main/java/com/se/gen/service/GenTableColumnServiceImpl.java rename to se-modules/se-system/src/main/java/com/se/system/service/impl/GenTableColumnServiceImpl.java index 9eb75e4..ab49f43 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/service/GenTableColumnServiceImpl.java +++ b/se-modules/se-system/src/main/java/com/se/system/service/impl/GenTableColumnServiceImpl.java @@ -1,12 +1,13 @@ -package com.se.gen.service; +package com.se.system.service.impl; -import java.util.List; - -import com.se.gen.domain.GenTableColumn; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; import com.se.common.core.text.Convert; -import com.se.gen.mapper.GenTableColumnMapper; +import com.se.system.domain.GenTableColumn; +import com.se.system.mapper.GenTableColumnMapper; +import com.se.system.service.inte.IGenTableColumnService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; /** * 涓氬姟瀛楁 鏈嶅姟灞傚疄鐜� @@ -14,9 +15,9 @@ * @author admin */ @Service -public class GenTableColumnServiceImpl implements IGenTableColumnService +public class GenTableColumnServiceImpl implements IGenTableColumnService { - @Autowired + @Resource private GenTableColumnMapper genTableColumnMapper; /** diff --git a/se-modules/se-gen/src/main/java/com/se/gen/service/GenTableServiceImpl.java b/se-modules/se-system/src/main/java/com/se/system/service/impl/GenTableServiceImpl.java similarity index 96% rename from se-modules/se-gen/src/main/java/com/se/gen/service/GenTableServiceImpl.java rename to se-modules/se-system/src/main/java/com/se/system/service/impl/GenTableServiceImpl.java index e636ad8..9e8d1e4 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/service/GenTableServiceImpl.java +++ b/se-modules/se-system/src/main/java/com/se/system/service/impl/GenTableServiceImpl.java @@ -1,5 +1,32 @@ -package com.se.gen.service; +package com.se.system.service.impl; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONObject; +import com.se.common.core.constant.Constants; +import com.se.common.core.constant.GenConstants; +import com.se.common.core.exception.ServiceException; +import com.se.common.core.text.CharsetKit; +import com.se.common.core.utils.StringUtils; +import com.se.common.security.utils.SecurityUtils; +import com.se.system.domain.GenTable; +import com.se.system.domain.GenTableColumn; +import com.se.system.mapper.GenTableColumnMapper; +import com.se.system.mapper.GenTableMapper; +import com.se.system.service.inte.IGenTableService; +import com.se.system.utils.GenUtils; +import com.se.system.utils.VelocityInitializer; +import com.se.system.utils.VelocityUtils; +import org.apache.commons.io.FileUtils; +import org.apache.commons.io.IOUtils; +import org.apache.velocity.Template; +import org.apache.velocity.VelocityContext; +import org.apache.velocity.app.Velocity; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; @@ -12,32 +39,6 @@ import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; -import com.se.gen.domain.GenTableColumn; -import com.se.gen.util.GenUtils; -import com.se.gen.util.VelocityInitializer; -import com.se.gen.util.VelocityUtils; -import org.apache.commons.io.FileUtils; -import org.apache.commons.io.IOUtils; -import org.apache.velocity.Template; -import org.apache.velocity.VelocityContext; -import org.apache.velocity.app.Velocity; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import com.alibaba.fastjson2.JSON; -import com.alibaba.fastjson2.JSONObject; -import com.se.common.core.constant.Constants; -import com.se.common.core.constant.GenConstants; -import com.se.common.core.exception.ServiceException; -import com.se.common.core.text.CharsetKit; -import com.se.common.core.utils.StringUtils; -import com.se.common.security.utils.SecurityUtils; -import com.se.gen.domain.GenTable; -import com.se.gen.mapper.GenTableColumnMapper; -import com.se.gen.mapper.GenTableMapper; - /** * 涓氬姟 鏈嶅姟灞傚疄鐜� * @@ -48,10 +49,10 @@ { private static final Logger log = LoggerFactory.getLogger(GenTableServiceImpl.class); - @Autowired + @Resource private GenTableMapper genTableMapper; - @Autowired + @Resource private GenTableColumnMapper genTableColumnMapper; /** diff --git a/se-modules/se-job/src/main/java/com/se/job/service/SysJobLogServiceImpl.java b/se-modules/se-system/src/main/java/com/se/system/service/impl/SysJobLogServiceImpl.java similarity index 87% rename from se-modules/se-job/src/main/java/com/se/job/service/SysJobLogServiceImpl.java rename to se-modules/se-system/src/main/java/com/se/system/service/impl/SysJobLogServiceImpl.java index 1dcbd38..d713e1f 100644 --- a/se-modules/se-job/src/main/java/com/se/job/service/SysJobLogServiceImpl.java +++ b/se-modules/se-system/src/main/java/com/se/system/service/impl/SysJobLogServiceImpl.java @@ -1,10 +1,12 @@ -package com.se.job.service; +package com.se.system.service.impl; -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; +import com.se.system.domain.SysJobLog; +import com.se.system.mapper.SysJobLogMapper; +import com.se.system.service.inte.ISysJobLogService; import org.springframework.stereotype.Service; -import com.se.job.domain.SysJobLog; -import com.se.job.mapper.SysJobLogMapper; + +import javax.annotation.Resource; +import java.util.List; /** * 瀹氭椂浠诲姟璋冨害鏃ュ織淇℃伅 鏈嶅姟灞� @@ -14,7 +16,7 @@ @Service public class SysJobLogServiceImpl implements ISysJobLogService { - @Autowired + @Resource private SysJobLogMapper jobLogMapper; /** diff --git a/se-modules/se-job/src/main/java/com/se/job/service/SysJobServiceImpl.java b/se-modules/se-system/src/main/java/com/se/system/service/impl/SysJobServiceImpl.java similarity index 95% rename from se-modules/se-job/src/main/java/com/se/job/service/SysJobServiceImpl.java rename to se-modules/se-system/src/main/java/com/se/system/service/impl/SysJobServiceImpl.java index 0e303b4..d9ff60c 100644 --- a/se-modules/se-job/src/main/java/com/se/job/service/SysJobServiceImpl.java +++ b/se-modules/se-system/src/main/java/com/se/system/service/impl/SysJobServiceImpl.java @@ -1,7 +1,12 @@ -package com.se.job.service; +package com.se.system.service.impl; -import java.util.List; -import javax.annotation.PostConstruct; +import com.se.common.core.constant.ScheduleConstants; +import com.se.common.core.exception.job.TaskException; +import com.se.system.domain.SysJob; +import com.se.system.mapper.SysJobMapper; +import com.se.system.service.inte.ISysJobService; +import com.se.system.utils.CronUtils; +import com.se.system.utils.ScheduleUtils; import org.quartz.JobDataMap; import org.quartz.JobKey; import org.quartz.Scheduler; @@ -9,12 +14,10 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import com.se.common.core.constant.ScheduleConstants; -import com.se.common.core.exception.job.TaskException; -import com.se.job.domain.SysJob; -import com.se.job.mapper.SysJobMapper; -import com.se.job.util.CronUtils; -import com.se.job.util.ScheduleUtils; + +import javax.annotation.PostConstruct; +import javax.annotation.Resource; +import java.util.List; /** * 瀹氭椂浠诲姟璋冨害淇℃伅 鏈嶅姟灞� @@ -24,10 +27,10 @@ @Service public class SysJobServiceImpl implements ISysJobService { - @Autowired + @Resource private Scheduler scheduler; - @Autowired + @Resource private SysJobMapper jobMapper; /** diff --git a/se-modules/se-gen/src/main/java/com/se/gen/service/IGenTableColumnService.java b/se-modules/se-system/src/main/java/com/se/system/service/inte/IGenTableColumnService.java similarity index 91% rename from se-modules/se-gen/src/main/java/com/se/gen/service/IGenTableColumnService.java rename to se-modules/se-system/src/main/java/com/se/system/service/inte/IGenTableColumnService.java index 0a0c6af..729cd7e 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/service/IGenTableColumnService.java +++ b/se-modules/se-system/src/main/java/com/se/system/service/inte/IGenTableColumnService.java @@ -1,7 +1,8 @@ -package com.se.gen.service; +package com.se.system.service.inte; + +import com.se.system.domain.GenTableColumn; import java.util.List; -import com.se.gen.domain.GenTableColumn; /** * 涓氬姟瀛楁 鏈嶅姟灞� diff --git a/se-modules/se-gen/src/main/java/com/se/gen/service/IGenTableService.java b/se-modules/se-system/src/main/java/com/se/system/service/inte/IGenTableService.java similarity index 96% rename from se-modules/se-gen/src/main/java/com/se/gen/service/IGenTableService.java rename to se-modules/se-system/src/main/java/com/se/system/service/inte/IGenTableService.java index ff8cd09..6c5131d 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/service/IGenTableService.java +++ b/se-modules/se-system/src/main/java/com/se/system/service/inte/IGenTableService.java @@ -1,8 +1,9 @@ -package com.se.gen.service; +package com.se.system.service.inte; + +import com.se.system.domain.GenTable; import java.util.List; import java.util.Map; -import com.se.gen.domain.GenTable; /** * 涓氬姟 鏈嶅姟灞� diff --git a/se-modules/se-job/src/main/java/com/se/job/service/ISysJobLogService.java b/se-modules/se-system/src/main/java/com/se/system/service/inte/ISysJobLogService.java similarity index 93% rename from se-modules/se-job/src/main/java/com/se/job/service/ISysJobLogService.java rename to se-modules/se-system/src/main/java/com/se/system/service/inte/ISysJobLogService.java index 0cb8913..8543a91 100644 --- a/se-modules/se-job/src/main/java/com/se/job/service/ISysJobLogService.java +++ b/se-modules/se-system/src/main/java/com/se/system/service/inte/ISysJobLogService.java @@ -1,7 +1,8 @@ -package com.se.job.service; +package com.se.system.service.inte; + +import com.se.system.domain.SysJobLog; import java.util.List; -import com.se.job.domain.SysJobLog; /** * 瀹氭椂浠诲姟璋冨害鏃ュ織淇℃伅淇℃伅 鏈嶅姟灞� diff --git a/se-modules/se-job/src/main/java/com/se/job/service/ISysJobService.java b/se-modules/se-system/src/main/java/com/se/system/service/inte/ISysJobService.java similarity index 96% rename from se-modules/se-job/src/main/java/com/se/job/service/ISysJobService.java rename to se-modules/se-system/src/main/java/com/se/system/service/inte/ISysJobService.java index 1a5afa9..15447ce 100644 --- a/se-modules/se-job/src/main/java/com/se/job/service/ISysJobService.java +++ b/se-modules/se-system/src/main/java/com/se/system/service/inte/ISysJobService.java @@ -1,9 +1,10 @@ -package com.se.job.service; +package com.se.system.service.inte; + +import com.se.common.core.exception.job.TaskException; +import com.se.system.domain.SysJob; +import org.quartz.SchedulerException; import java.util.List; -import org.quartz.SchedulerException; -import com.se.common.core.exception.job.TaskException; -import com.se.job.domain.SysJob; /** * 瀹氭椂浠诲姟璋冨害淇℃伅淇℃伅 鏈嶅姟灞� diff --git a/se-modules/se-job/src/main/java/com/se/job/util/AbstractQuartzJob.java b/se-modules/se-system/src/main/java/com/se/system/utils/AbstractQuartzJob.java similarity index 94% rename from se-modules/se-job/src/main/java/com/se/job/util/AbstractQuartzJob.java rename to se-modules/se-system/src/main/java/com/se/system/utils/AbstractQuartzJob.java index 39be601..c009ab5 100644 --- a/se-modules/se-job/src/main/java/com/se/job/util/AbstractQuartzJob.java +++ b/se-modules/se-system/src/main/java/com/se/system/utils/AbstractQuartzJob.java @@ -1,20 +1,20 @@ -package com.se.job.util; +package com.se.system.utils; -import java.util.Date; - -import com.se.job.domain.SysJob; -import com.se.job.domain.SysJobLog; -import com.se.job.service.ISysJobLogService; -import org.quartz.Job; -import org.quartz.JobExecutionContext; -import org.quartz.JobExecutionException; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import com.se.common.core.constant.ScheduleConstants; import com.se.common.core.utils.ExceptionUtil; import com.se.common.core.utils.SpringUtils; import com.se.common.core.utils.StringUtils; import com.se.common.core.utils.bean.BeanUtils; +import com.se.system.domain.SysJob; +import com.se.system.domain.SysJobLog; +import com.se.system.service.inte.ISysJobLogService; +import org.quartz.Job; +import org.quartz.JobExecutionContext; +import org.quartz.JobExecutionException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.Date; /** * 鎶借薄quartz璋冪敤 diff --git a/se-modules/se-job/src/main/java/com/se/job/util/CronUtils.java b/se-modules/se-system/src/main/java/com/se/system/utils/CronUtils.java similarity index 97% rename from se-modules/se-job/src/main/java/com/se/job/util/CronUtils.java rename to se-modules/se-system/src/main/java/com/se/system/utils/CronUtils.java index 4590e21..1e23cd6 100644 --- a/se-modules/se-job/src/main/java/com/se/job/util/CronUtils.java +++ b/se-modules/se-system/src/main/java/com/se/system/utils/CronUtils.java @@ -1,8 +1,9 @@ -package com.se.job.util; +package com.se.system.utils; + +import org.quartz.CronExpression; import java.text.ParseException; import java.util.Date; -import org.quartz.CronExpression; /** * cron琛ㄨ揪寮忓伐鍏风被 diff --git a/se-modules/se-gen/src/main/java/com/se/gen/util/GenUtils.java b/se-modules/se-system/src/main/java/com/se/system/utils/GenUtils.java similarity index 97% rename from se-modules/se-gen/src/main/java/com/se/gen/util/GenUtils.java rename to se-modules/se-system/src/main/java/com/se/system/utils/GenUtils.java index 7dd5d14..fb8e954 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/util/GenUtils.java +++ b/se-modules/se-system/src/main/java/com/se/system/utils/GenUtils.java @@ -1,13 +1,13 @@ -package com.se.gen.util; +package com.se.system.utils; -import java.util.Arrays; - -import com.se.gen.config.GenConfig; -import com.se.gen.domain.GenTableColumn; -import org.apache.commons.lang3.RegExUtils; import com.se.common.core.constant.GenConstants; import com.se.common.core.utils.StringUtils; -import com.se.gen.domain.GenTable; +import com.se.system.config.GenConfig; +import com.se.system.domain.GenTable; +import com.se.system.domain.GenTableColumn; +import org.apache.commons.lang3.RegExUtils; + +import java.util.Arrays; /** * 浠g爜鐢熸垚鍣� 宸ュ叿绫� diff --git a/se-modules/se-job/src/main/java/com/se/job/util/JobInvokeUtil.java b/se-modules/se-system/src/main/java/com/se/system/utils/JobInvokeUtil.java similarity index 98% rename from se-modules/se-job/src/main/java/com/se/job/util/JobInvokeUtil.java rename to se-modules/se-system/src/main/java/com/se/system/utils/JobInvokeUtil.java index 6aaab12..1881cd2 100644 --- a/se-modules/se-job/src/main/java/com/se/job/util/JobInvokeUtil.java +++ b/se-modules/se-system/src/main/java/com/se/system/utils/JobInvokeUtil.java @@ -1,12 +1,13 @@ -package com.se.job.util; +package com.se.system.utils; + +import com.se.common.core.utils.SpringUtils; +import com.se.common.core.utils.StringUtils; +import com.se.system.domain.SysJob; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.LinkedList; import java.util.List; -import com.se.common.core.utils.SpringUtils; -import com.se.common.core.utils.StringUtils; -import com.se.job.domain.SysJob; /** * 浠诲姟鎵ц宸ュ叿 diff --git a/se-modules/se-job/src/main/java/com/se/job/util/QuartzDisallowConcurrentExecution.java b/se-modules/se-system/src/main/java/com/se/system/utils/QuartzDisallowConcurrentExecution.java similarity index 86% rename from se-modules/se-job/src/main/java/com/se/job/util/QuartzDisallowConcurrentExecution.java rename to se-modules/se-system/src/main/java/com/se/system/utils/QuartzDisallowConcurrentExecution.java index 8901480..eadbf93 100644 --- a/se-modules/se-job/src/main/java/com/se/job/util/QuartzDisallowConcurrentExecution.java +++ b/se-modules/se-system/src/main/java/com/se/system/utils/QuartzDisallowConcurrentExecution.java @@ -1,6 +1,6 @@ -package com.se.job.util; +package com.se.system.utils; -import com.se.job.domain.SysJob; +import com.se.system.domain.SysJob; import org.quartz.DisallowConcurrentExecution; import org.quartz.JobExecutionContext; diff --git a/se-modules/se-job/src/main/java/com/se/job/util/QuartzJobExecution.java b/se-modules/se-system/src/main/java/com/se/system/utils/QuartzJobExecution.java similarity index 83% rename from se-modules/se-job/src/main/java/com/se/job/util/QuartzJobExecution.java rename to se-modules/se-system/src/main/java/com/se/system/utils/QuartzJobExecution.java index 7529ef2..eea20e0 100644 --- a/se-modules/se-job/src/main/java/com/se/job/util/QuartzJobExecution.java +++ b/se-modules/se-system/src/main/java/com/se/system/utils/QuartzJobExecution.java @@ -1,6 +1,6 @@ -package com.se.job.util; +package com.se.system.utils; -import com.se.job.domain.SysJob; +import com.se.system.domain.SysJob; import org.quartz.JobExecutionContext; /** diff --git a/se-modules/se-job/src/main/java/com/se/job/task/RyTask.java b/se-modules/se-system/src/main/java/com/se/system/utils/RyTask.java similarity index 95% rename from se-modules/se-job/src/main/java/com/se/job/task/RyTask.java rename to se-modules/se-system/src/main/java/com/se/system/utils/RyTask.java index 5293b57..8181c6e 100644 --- a/se-modules/se-job/src/main/java/com/se/job/task/RyTask.java +++ b/se-modules/se-system/src/main/java/com/se/system/utils/RyTask.java @@ -1,7 +1,7 @@ -package com.se.job.task; +package com.se.system.utils; -import org.springframework.stereotype.Component; import com.se.common.core.utils.StringUtils; +import org.springframework.stereotype.Component; /** * 瀹氭椂浠诲姟璋冨害娴嬭瘯 diff --git a/se-modules/se-job/src/main/java/com/se/job/util/ScheduleUtils.java b/se-modules/se-system/src/main/java/com/se/system/utils/ScheduleUtils.java similarity index 98% rename from se-modules/se-job/src/main/java/com/se/job/util/ScheduleUtils.java rename to se-modules/se-system/src/main/java/com/se/system/utils/ScheduleUtils.java index 6a50822..3429718 100644 --- a/se-modules/se-job/src/main/java/com/se/job/util/ScheduleUtils.java +++ b/se-modules/se-system/src/main/java/com/se/system/utils/ScheduleUtils.java @@ -1,6 +1,6 @@ -package com.se.job.util; +package com.se.system.utils; -import com.se.job.domain.SysJob; +import com.se.system.domain.SysJob; import org.quartz.CronScheduleBuilder; import org.quartz.CronTrigger; import org.quartz.Job; diff --git a/se-modules/se-gen/src/main/java/com/se/gen/util/VelocityInitializer.java b/se-modules/se-system/src/main/java/com/se/system/utils/VelocityInitializer.java similarity index 96% rename from se-modules/se-gen/src/main/java/com/se/gen/util/VelocityInitializer.java rename to se-modules/se-system/src/main/java/com/se/system/utils/VelocityInitializer.java index 5301486..e03c0f7 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/util/VelocityInitializer.java +++ b/se-modules/se-system/src/main/java/com/se/system/utils/VelocityInitializer.java @@ -1,8 +1,9 @@ -package com.se.gen.util; +package com.se.system.utils; + +import com.se.common.core.constant.Constants; +import org.apache.velocity.app.Velocity; import java.util.Properties; -import org.apache.velocity.app.Velocity; -import com.se.common.core.constant.Constants; /** * VelocityEngine宸ュ巶 diff --git a/se-modules/se-gen/src/main/java/com/se/gen/util/VelocityUtils.java b/se-modules/se-system/src/main/java/com/se/system/utils/VelocityUtils.java similarity index 98% rename from se-modules/se-gen/src/main/java/com/se/gen/util/VelocityUtils.java rename to se-modules/se-system/src/main/java/com/se/system/utils/VelocityUtils.java index f9de77c..86dd7f0 100644 --- a/se-modules/se-gen/src/main/java/com/se/gen/util/VelocityUtils.java +++ b/se-modules/se-system/src/main/java/com/se/system/utils/VelocityUtils.java @@ -1,18 +1,18 @@ -package com.se.gen.util; +package com.se.system.utils; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -import com.se.gen.domain.GenTableColumn; -import org.apache.velocity.VelocityContext; import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONObject; import com.se.common.core.constant.GenConstants; import com.se.common.core.utils.DateUtils; import com.se.common.core.utils.StringUtils; -import com.se.gen.domain.GenTable; +import com.se.system.domain.GenTable; +import com.se.system.domain.GenTableColumn; +import org.apache.velocity.VelocityContext; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; /** * 妯℃澘宸ュ叿绫� diff --git a/se-modules/se-gen/src/main/resources/mapper/generator/GenTableColumnMapper.xml b/se-modules/se-system/src/main/resources/mapper/system/GenTableColumnMapper.xml similarity index 98% rename from se-modules/se-gen/src/main/resources/mapper/generator/GenTableColumnMapper.xml rename to se-modules/se-system/src/main/resources/mapper/system/GenTableColumnMapper.xml index 57726e8..3e62ea2 100644 --- a/se-modules/se-gen/src/main/resources/mapper/generator/GenTableColumnMapper.xml +++ b/se-modules/se-system/src/main/resources/mapper/system/GenTableColumnMapper.xml @@ -2,7 +2,7 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -<mapper namespace="com.se.gen.mapper.GenTableColumnMapper"> +<mapper namespace="com.se.system.mapper.GenTableColumnMapper"> <resultMap type="GenTableColumn" id="GenTableColumnResult"> <id property="columnId" column="column_id" /> diff --git a/se-modules/se-gen/src/main/resources/mapper/generator/GenTableMapper.xml b/se-modules/se-system/src/main/resources/mapper/system/GenTableMapper.xml similarity index 99% rename from se-modules/se-gen/src/main/resources/mapper/generator/GenTableMapper.xml rename to se-modules/se-system/src/main/resources/mapper/system/GenTableMapper.xml index 074d782..648733a 100644 --- a/se-modules/se-gen/src/main/resources/mapper/generator/GenTableMapper.xml +++ b/se-modules/se-system/src/main/resources/mapper/system/GenTableMapper.xml @@ -2,7 +2,7 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -<mapper namespace="com.se.gen.mapper.GenTableMapper"> +<mapper namespace="com.se.system.mapper.GenTableMapper"> <resultMap type="GenTable" id="GenTableResult"> <id property="tableId" column="table_id" /> diff --git a/se-modules/se-job/src/main/resources/mapper/job/SysJobLogMapper.xml b/se-modules/se-system/src/main/resources/mapper/system/SysJobLogMapper.xml similarity index 98% rename from se-modules/se-job/src/main/resources/mapper/job/SysJobLogMapper.xml rename to se-modules/se-system/src/main/resources/mapper/system/SysJobLogMapper.xml index 41a7d06..47f4989 100644 --- a/se-modules/se-job/src/main/resources/mapper/job/SysJobLogMapper.xml +++ b/se-modules/se-system/src/main/resources/mapper/system/SysJobLogMapper.xml @@ -2,7 +2,7 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -<mapper namespace="com.se.job.mapper.SysJobLogMapper"> +<mapper namespace="com.se.system.mapper.SysJobLogMapper"> <resultMap type="SysJobLog" id="SysJobLogResult"> <id property="jobLogId" column="job_log_id" /> diff --git a/se-modules/se-job/src/main/resources/mapper/job/SysJobMapper.xml b/se-modules/se-system/src/main/resources/mapper/system/SysJobMapper.xml similarity index 98% rename from se-modules/se-job/src/main/resources/mapper/job/SysJobMapper.xml rename to se-modules/se-system/src/main/resources/mapper/system/SysJobMapper.xml index 09f8fc6..74e78ba 100644 --- a/se-modules/se-job/src/main/resources/mapper/job/SysJobMapper.xml +++ b/se-modules/se-system/src/main/resources/mapper/system/SysJobMapper.xml @@ -2,7 +2,7 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -<mapper namespace="com.se.job.mapper.SysJobMapper"> +<mapper namespace="com.se.system.mapper.SysJobMapper"> <resultMap type="SysJob" id="SysJobResult"> <id property="jobId" column="job_id" /> diff --git "a/\350\257\264\346\230\216.txt" "b/\350\257\264\346\230\216.txt" index 7d79468..510fd39 100644 --- "a/\350\257\264\346\230\216.txt" +++ "b/\350\257\264\346\230\216.txt" @@ -1,15 +1,28 @@ -http://192.168.11.203:8090/sso/login + +-------------------------------------------------------- +http://192.168.11.203:8090/sso/login锛宎dmin锛宎dmin123 http://192.168.11.203:8848/nacos锛宯Acos_!9#_admIn +http://103.135.160.14:9029/prod-api/ +103.135.160.14:9029锛屾槧灏勫埌 192.168.11.206:8090 - +-------------------------------------------------------- docker-compose logs -f -n 50 se-system se-gateway-dev.yml锛屼慨鏀� -------------------------------------------------------- uri: lb://se-auth 鈫� uri: lb://se-system -uri: lb://se-file 鈫� uri: lb://se-system +uri: lb://se-file 鈫� uri: lb://se-system + +uri: lb://se-gen 鈫� uri: lb://se-system + +uri: lb://se-job 鈫� uri: lb://se-system + + # 涓嶆牎楠岀櫧鍚嶅崟 + ignore: + whites: + - /system/index/* -------------------------------------------------------- @@ -34,4 +47,16 @@ accessKey: minioadmin secretKey: minioadmin bucketName: test + +# 浠g爜鐢熸垚 +gen: + # 浣滆�� + author: se + # 榛樿鐢熸垚鍖呰矾寰� system 闇�鏀规垚鑷繁鐨勬ā鍧楀悕绉� 濡� system monitor tool + packageName: com.se.system + # 鑷姩鍘婚櫎琛ㄥ墠缂�锛岄粯璁ゆ槸false + autoRemovePre: false + # 琛ㄥ墠缂�锛堢敓鎴愮被鍚嶄笉浼氬寘鍚〃鍓嶇紑锛屽涓敤閫楀彿鍒嗛殧锛� + tablePrefix: sys_ + -------------------------------------------------------- -- Gitblit v1.9.3