From f513c18d3c57c14ef726e96da85d467d5a2c767a Mon Sep 17 00:00:00 2001 From: "1020109007@qq.com" <1020109007@qq.com> Date: Fri, 1 Oct 2021 22:15:22 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85=E7=95=99=E5=AD=98=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/test#1.run.xml | 5 + pom.xmlbak | 281 ++++++++++++++++++ .../src/main/resources/application-test.yml | 122 ++++++++ .../com/ruoyi/setting/domain/KsdSmsReq.java | 5 + uploadPath/sdf.jpg | Bin 0 -> 21376 bytes 5 files changed, 413 insertions(+) create mode 100644 .run/test#1.run.xml create mode 100644 pom.xmlbak create mode 100644 ruoyi-segchk-web/src/main/resources/application-test.yml create mode 100644 ruoyi-segchk/src/main/java/com/ruoyi/setting/domain/KsdSmsReq.java create mode 100644 uploadPath/sdf.jpg diff --git a/.run/test#1.run.xml b/.run/test#1.run.xml new file mode 100644 index 0000000..67e0c24 --- /dev/null +++ b/.run/test#1.run.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/pom.xmlbak b/pom.xmlbak new file mode 100644 index 0000000..56ac15a --- /dev/null +++ b/pom.xmlbak @@ -0,0 +1,281 @@ + + + 4.0.0 + + com.ruoyi + ruoyi + 3.6.0 + + ruoyi + http://www.ruoyi.vip + 若依管理系统 + + + 3.6.0 + UTF-8 + UTF-8 + 1.8 + 3.1.1 + 1.2.6 + 1.21 + 3.0.0 + 2.3.2 + 2.1.4 + 1.3.1 + 1.2.76 + 5.8.0 + 5.8.0 + 2.11.0 + 1.4 + 3.2.2 + 4.1.2 + 1.7 + 0.9.1 + + + + + + + + + org.springframework.boot + spring-boot-dependencies + 2.2.13.RELEASE + pom + import + + + + + com.alibaba + druid-spring-boot-starter + ${druid.version} + + + + + eu.bitwalker + UserAgentUtils + ${bitwalker.version} + + + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + ${mybatis-spring-boot.version} + + + + + com.github.pagehelper + pagehelper-spring-boot-starter + ${pagehelper.boot.version} + + + + + com.github.oshi + oshi-core + ${oshi.version} + + + + net.java.dev.jna + jna + ${jna.version} + + + + net.java.dev.jna + jna-platform + ${jna.version} + + + + + io.springfox + springfox-boot-starter + ${swagger.version} + + + io.swagger + swagger-models + + + + + + + commons-io + commons-io + ${commons.io.version} + + + + + commons-fileupload + commons-fileupload + ${commons.fileupload.version} + + + + + org.apache.poi + poi-ooxml + ${poi.version} + + + + + org.apache.velocity + velocity + ${velocity.version} + + + commons-collections + commons-collections + + + + + + + commons-collections + commons-collections + ${commons.collections.version} + + + + + com.alibaba + fastjson + ${fastjson.version} + + + + + io.jsonwebtoken + jjwt + ${jwt.version} + + + + + com.github.penggle + kaptcha + ${kaptcha.version} + + + + + com.ruoyi + ruoyi-quartz + ${ruoyi.version} + + + + + com.ruoyi + ruoyi-generator + ${ruoyi.version} + + + + + com.ruoyi + ruoyi-framework + ${ruoyi.version} + + + + + com.ruoyi + ruoyi-system + ${ruoyi.version} + + + + + com.ruoyi + ruoyi-common + ${ruoyi.version} + + + + + com.ruoyi + ruoyi-segchk + ${ruoyi.version} + + + + + com.ruoyi + ruoyi-segchk-web + ${ruoyi.version} + + + + + + ruoyi-segchk + ruoyi-segchk-web + ruoyi-admin + ruoyi-framework + ruoyi-system + ruoyi-quartz + ruoyi-generator + ruoyi-common + + pom + + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.1 + + ${java.version} + ${java.version} + ${project.build.sourceEncoding} + + + + + + + + public + aliyun nexus + http://maven.aliyun.com/nexus/content/groups/public/ + + true + + + + + + + public + aliyun nexus + http://maven.aliyun.com/nexus/content/groups/public/ + + true + + + false + + + + + \ No newline at end of file diff --git a/ruoyi-segchk-web/src/main/resources/application-test.yml b/ruoyi-segchk-web/src/main/resources/application-test.yml new file mode 100644 index 0000000..25df7c3 --- /dev/null +++ b/ruoyi-segchk-web/src/main/resources/application-test.yml @@ -0,0 +1,122 @@ +# 项目相关配置 商城端 +ruoyi: + # 名称 + name: RuoYi + # 版本 + version: 3.0.0 + # 版权年份 + copyrightYear: 2019 + # 实例演示开关 + demoEnabled: true + # 文件路径 示例( Windows配置F:\ideaproj\RuoYi-Vue\uploadPath + #,Linux配置 /root/yzychk_vue/uploadPath) + profile: /root/yzychk_vue/uploadPath + # 获取ip地址开关 + addressEnabled: false + +# 开发环境配置 +server: + # 服务器的HTTP端口,默认为 8091 测试 9092 + port: 8091 + servlet: + # 应用的访问路径 + context-path: / + tomcat: + # tomcat的URI编码 + uri-encoding: UTF-8 + # tomcat最大线程数,默认为200 + max-threads: 800 + # Tomcat启动初始化的线程数,默认值25 + min-spare-threads: 30 + +# 数据源配置 +spring: + datasource: + type: com.alibaba.druid.pool.DruidDataSource + driverClassName: com.mysql.cj.jdbc.Driver + druid: + # 主库数据源 + master: + url: jdbc:mysql://127.0.0.1:8306/segchksaas?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 + username: segchksaas + password: 2wsx@WSX + # 从库数据源 + slave: + # 从数据源开关/默认关闭 + enabled: false + url: + username: + password: + # 初始连接数 + initialSize: 5 + # 最小连接池数量 + minIdle: 10 + # 最大连接池数量 + maxActive: 20 + # 配置获取连接等待超时的时间 + maxWait: 60000 + # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 + timeBetweenEvictionRunsMillis: 60000 + # 配置一个连接在池中最小生存的时间,单位是毫秒 + minEvictableIdleTimeMillis: 300000 + # 配置一个连接在池中最大生存的时间,单位是毫秒 + maxEvictableIdleTimeMillis: 900000 + # 配置检测连接是否有效 + validationQuery: SELECT 1 FROM DUAL + testWhileIdle: true + testOnBorrow: false + testOnReturn: false + webStatFilter: + enabled: true + statViewServlet: + enabled: true + # 设置白名单,不填则允许所有访问 + allow: + url-pattern: /druid/* + # 控制台管理用户名和密码 + login-username: + login-password: + filter: + stat: + enabled: true + # 慢SQL记录 + log-slow-sql: true + slow-sql-millis: 1000 + merge-sql: true + wall: + config: + multi-statement-allow: true + # redis 配置 + redis: + # 地址 + host: 127.0.0.1 + # 端口,默认为6379 + port: 63795 + # 数据库索引 + database: 3 + # 密码 + password: 3edc#EDC + # 连接超时时间 + timeout: 1000 + lettuce: + pool: + # 连接池中的最小空闲连接 + min-idle: 8 + # 连接池中的最大空闲连接 + max-idle: 8 + # 连接池的最大数据库连接数 + max-active: 2 + # #连接池最大阻塞等待时间(使用负值表示没有限制) + max-wait: 300 + + +yzytest: + login: + smshost: http://api.ksd106.com:8088/SMSSend.aspx + smssign: + smstest: false + smsplatid: 3 + +segchk: + qr_path: C:\Users\Public\Desktop\dome.jpg + poster_path: F:\ideaproj\RuoYi-Vue\ruoyi-segchk\src\main\resources\templates\posters\bg.jpg diff --git a/ruoyi-segchk/src/main/java/com/ruoyi/setting/domain/KsdSmsReq.java b/ruoyi-segchk/src/main/java/com/ruoyi/setting/domain/KsdSmsReq.java new file mode 100644 index 0000000..3e68416 --- /dev/null +++ b/ruoyi-segchk/src/main/java/com/ruoyi/setting/domain/KsdSmsReq.java @@ -0,0 +1,5 @@ +package com.ruoyi.setting.domain; + + +public class KsdSmsReq { +} diff --git a/uploadPath/sdf.jpg b/uploadPath/sdf.jpg new file mode 100644 index 0000000000000000000000000000000000000000..76cebd123669dbf8b94a55ad66f2a1ef0ef6d3fc GIT binary patch literal 21376 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 literal 0 HcmV?d00001