From 3f03de50c5656611652a24dca8b12b37eb055ac3 Mon Sep 17 00:00:00 2001
From: kongzy <kongzy>
Date: 星期六, 12 十月 2024 15:53:36 +0800
Subject: [PATCH] 新增test环境
---
exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/query/ThCertQuery.java | 1
update.sql | 8 +-
exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/req/ThQuestionBankReqDTO.java | 15 +--
ruoyi-admin/ruoyi-admin.iml | 8 ++
ruoyi-admin/pom.xml | 14 +++
ruoyi-admin/src/test/java/com/ruoyi/CertTest.java | 49 ++++++++++++
exam-system/src/main/java/com/gkhy/exam/institutionalaccess/entity/ThCert.java | 2
ruoyi-admin/src/test/java/com/ruoyi/QuestionBankTest.java | 49 ++++++++++++
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/InstitutionUser.java | 2
pom.xml | 21 +++++
exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/req/ThCertReqDTO.java | 6 +
ruoyi-admin/src/main/resources/application-dev.yml | 13 ++
12 files changed, 169 insertions(+), 19 deletions(-)
diff --git a/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/entity/ThCert.java b/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/entity/ThCert.java
index 46740ec..f399365 100644
--- a/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/entity/ThCert.java
+++ b/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/entity/ThCert.java
@@ -39,7 +39,7 @@
@ApiModelProperty("证书生成时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- private LocalTime certTime;
+ private LocalDateTime certTime;
@ApiModelProperty("证书链接")
private String certUrl;
diff --git a/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/query/ThCertQuery.java b/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/query/ThCertQuery.java
index 53a8f87..96f89da 100644
--- a/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/query/ThCertQuery.java
+++ b/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/query/ThCertQuery.java
@@ -6,6 +6,7 @@
@Data
public class ThCertQuery {
+ //机构名称
private String institutionName;
//证书生成开始时间
diff --git a/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/req/ThCertReqDTO.java b/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/req/ThCertReqDTO.java
index 596c32f..73ac867 100644
--- a/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/req/ThCertReqDTO.java
+++ b/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/req/ThCertReqDTO.java
@@ -7,7 +7,9 @@
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
+import java.time.LocalDateTime;
import java.time.LocalTime;
@@ -38,8 +40,8 @@
private String trainOrgName;
@ApiModelProperty("证书生成时间")
- @NotEmpty(message = "证书生成时间不能为空")
- private LocalTime certTime;
+ @NotNull(message = "证书生成时间不能为空")
+ private LocalDateTime certTime;
@ApiModelProperty("证书链接")
@NotBlank(message = "证书链接不能为空")
diff --git a/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/req/ThQuestionBankReqDTO.java b/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/req/ThQuestionBankReqDTO.java
index 9bbeb95..d6baf10 100644
--- a/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/req/ThQuestionBankReqDTO.java
+++ b/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/model/req/ThQuestionBankReqDTO.java
@@ -4,10 +4,7 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotEmpty;
-import javax.validation.constraints.Pattern;
+import javax.validation.constraints.*;
import java.math.BigDecimal;
@Data
@@ -21,27 +18,27 @@
@ApiModelProperty("题库名称")
private String name;
- @NotEmpty(message = "题库题目总数不能为空")
+ @NotNull(message = "题库题目总数不能为空")
@Min(value = 0,message = "题库题目总数格式不正确")
@ApiModelProperty("题库题目总数")
private Integer totalCount;
- @NotEmpty(message = "单选题数量不能为空")
+ @NotNull(message = "单选题数量不能为空")
@Min(value = 0,message = "单选题数量格式不正确")
@ApiModelProperty("单选题数量")
private Integer singleCount;
- @NotEmpty(message = "多选题数量不能为空")
+ @NotNull(message = "多选题数量不能为空")
@Min(value = 0,message = "多选题数量格式不正确")
@ApiModelProperty("多选题数量")
private Integer multiCount;
- @NotEmpty(message = "判断题数量不能为空")
+ @NotNull(message = "判断题数量不能为空")
@Min(value = 0,message = "判读题数量格式不正确")
@ApiModelProperty("判断题数量")
private Integer judgeCount;
- @NotEmpty(message = "简答题数量不能为空")
+ @NotNull(message = "简答题数量不能为空")
@Min(value = 0,message = "简答题数量格式不正确")
@ApiModelProperty("简答题数量")
private Integer easyCount;
diff --git a/pom.xml b/pom.xml
index 04639c3..609489c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -206,9 +206,30 @@
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
+
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <version>8.0.29</version>
+ </dependency>
+ <dependency>
+ <groupId>com.baomidou</groupId>
+ <artifactId>mybatis-plus-boot-starter</artifactId>
+ <version>3.5.1</version>
+ </dependency>
</dependencies>
</dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+
+
<modules>
<module>ruoyi-admin</module>
<module>ruoyi-framework</module>
diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml
index 97f4762..cfe6fc6 100644
--- a/ruoyi-admin/pom.xml
+++ b/ruoyi-admin/pom.xml
@@ -70,6 +70,20 @@
<groupId>com.ruoyi</groupId>
<artifactId>exam-system</artifactId>
</dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-test</artifactId>
+ <scope>test</scope>
+ </dependency>
</dependencies>
<build>
diff --git a/ruoyi-admin/ruoyi-admin.iml b/ruoyi-admin/ruoyi-admin.iml
new file mode 100644
index 0000000..2feb230
--- /dev/null
+++ b/ruoyi-admin/ruoyi-admin.iml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module version="4">
+ <component name="AdditionalModuleElements">
+ <content url="file://$MODULE_DIR$" dumb="true">
+ <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
+ </content>
+ </component>
+</module>
\ No newline at end of file
diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml
index c028c4b..625053a 100644
--- a/ruoyi-admin/src/main/resources/application-dev.yml
+++ b/ruoyi-admin/src/main/resources/application-dev.yml
@@ -81,13 +81,13 @@
# redis 配置
redis:
# 地址
- host: 127.0.0.1
+ host: 192.168.2.16
# 端口,默认为6379
port: 6379
# 数据库索引
database: 5
# 密码
- password: root
+ password: wioowr23923sd3*&
# 连接超时时间
timeout: 10s
lettuce:
@@ -122,4 +122,11 @@
queueCapacity: 10000
scheduling:
#控制线程是否执行 true:执行;false:不执行
- enabled: true
\ No newline at end of file
+ enabled: true
+
+
+# 七牛云相关信息
+safecheckqiniuymes:
+ accesskey: 5YprpjY0BJiyjII2VqlHed7UhBEvvkPZicbwd8Kl
+ secretkey: m3gGQNQ9cLmVBBZwPXZ5-Wzr0duzyAPPmJUx4_ay
+ templateid: 1844221365930962944
\ No newline at end of file
diff --git a/ruoyi-admin/src/test/java/com/ruoyi/CertTest.java b/ruoyi-admin/src/test/java/com/ruoyi/CertTest.java
new file mode 100644
index 0000000..0516153
--- /dev/null
+++ b/ruoyi-admin/src/test/java/com/ruoyi/CertTest.java
@@ -0,0 +1,49 @@
+package com.ruoyi;
+
+import com.alibaba.fastjson2.JSONObject;
+import com.gkhy.exam.institutionalaccess.model.req.ThCertReqDTO;
+import com.gkhy.exam.institutionalaccess.service.TripartiteInterfaceService;
+import com.ruoyi.common.core.domain.model.InstitutionUser;
+import com.ruoyi.common.signature.AESUtils;
+import com.ruoyi.framework.security.context.ThreeInContextHolder;
+import lombok.extern.slf4j.Slf4j;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.ActiveProfiles;
+import org.springframework.test.context.junit4.SpringRunner;
+
+
+import java.time.LocalDateTime;
+import java.util.*;
+
+@RunWith(SpringRunner.class)
+@SpringBootTest(classes = RuoYiApplication.class)
+@ActiveProfiles("dev")
+@Slf4j
+public class CertTest {
+ @Autowired
+ private TripartiteInterfaceService tripartiteInterfaceService;
+
+ @Test
+ public void testCertInsert() throws Exception {
+ ThreeInContextHolder.setContext(new InstitutionUser().setId(1L).setInstitutionalName("test"));
+ List<ThCertReqDTO>thCertDTOs=new ArrayList<>();
+ ThCertReqDTO thCertDTO = new ThCertReqDTO();
+ thCertDTO.setUuid(UUID.randomUUID().toString());
+ thCertDTO.setName("张三");
+ thCertDTO.setIdcard("123456789012345678");
+ thCertDTO.setBatchUuid("1ef0b81f-dcb7-62a9-ad8f-63e252089bc8");
+ thCertDTO.setTrainOrgName("1234567890123");
+ thCertDTO.setCertTime(LocalDateTime.now());
+ thCertDTO.setCertUrl("https://p26.toutiaoimg.com/origin/tos-cn-i-qvj2lq49k0/22f10850c5234b5285350743cfa16357");
+ thCertDTOs.add(thCertDTO);
+ String jsonString = JSONObject.toJSONString(thCertDTOs);
+ JSONObject object=new JSONObject();
+ object.put("data", AESUtils.encrypt(jsonString));
+ tripartiteInterfaceService.receiveCerts(object);
+ }
+
+
+}
diff --git a/ruoyi-admin/src/test/java/com/ruoyi/QuestionBankTest.java b/ruoyi-admin/src/test/java/com/ruoyi/QuestionBankTest.java
new file mode 100644
index 0000000..76b40bb
--- /dev/null
+++ b/ruoyi-admin/src/test/java/com/ruoyi/QuestionBankTest.java
@@ -0,0 +1,49 @@
+package com.ruoyi;
+
+import com.alibaba.fastjson2.JSONObject;
+import com.gkhy.exam.institutionalaccess.entity.ThQuestionBank;
+import com.gkhy.exam.institutionalaccess.model.req.ThCertReqDTO;
+import com.gkhy.exam.institutionalaccess.service.TripartiteInterfaceService;
+import com.ruoyi.common.core.domain.model.InstitutionUser;
+import com.ruoyi.common.signature.AESUtils;
+import com.ruoyi.framework.security.context.ThreeInContextHolder;
+import lombok.extern.slf4j.Slf4j;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.ActiveProfiles;
+import org.springframework.test.context.junit4.SpringRunner;
+
+import java.time.LocalDateTime;
+import java.util.*;
+
+@RunWith(SpringRunner.class)
+@SpringBootTest(classes = RuoYiApplication.class)
+@ActiveProfiles("dev")
+@Slf4j
+public class QuestionBankTest {
+ @Autowired
+ private TripartiteInterfaceService tripartiteInterfaceService;
+
+ @Test
+ public void testQuestionBankInsert() throws Exception {
+ ThreeInContextHolder.setContext(new InstitutionUser().setId(1L).setInstitutionalName("test"));
+ ThQuestionBank questionBank=new ThQuestionBank();
+ questionBank.setUuid(UUID.randomUUID().toString());
+ questionBank.setName("题库1");
+ questionBank.setTotalCount(100);
+ questionBank.setSingleCount(10);
+ questionBank.setMultiCount(10);
+ questionBank.setJudgeCount(10);
+ questionBank.setEasyCount(10);
+ questionBank.setMixCount(10);
+ questionBank.setOtherCount(10);
+ String jsonString = JSONObject.toJSONString(questionBank);
+ JSONObject object=new JSONObject();
+ object.put("data", AESUtils.encrypt(jsonString));
+ tripartiteInterfaceService.receiveQuestionBank(object);
+ }
+
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/InstitutionUser.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/InstitutionUser.java
index 1a0a9ce..c7895ab 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/InstitutionUser.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/InstitutionUser.java
@@ -1,9 +1,11 @@
package com.ruoyi.common.core.domain.model;
import lombok.Data;
+import lombok.experimental.Accessors;
import java.util.Map;
+@Accessors(chain = true)
@Data
public class InstitutionUser {
private Long id;
diff --git a/update.sql b/update.sql
index 0587aa5..9f3584e 100644
--- a/update.sql
+++ b/update.sql
@@ -4,12 +4,12 @@
CREATE TABLE `swspkmas`.`tr_cert` (
`id` bigint NOT NULL AUTO_INCREMENT,
-`uuid` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
-`name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
+`uuid` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
+`name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`idcard` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`institution_id` bigint NOT NULL,
`institution_name` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
-`batch_uuid` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
+`batch_uuid` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`del_flag` tinyint NOT NULL DEFAULT 0,
`train_org_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`cert_url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
@@ -32,7 +32,7 @@
drop table if exists `swspkmas`.`th_question_bank`;
CREATE TABLE `swspkmas`.`th_question_bank` (
`id` bigint NOT NULL AUTO_INCREMENT,
-`uuid` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
+`uuid` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`institution_id` bigint NOT NULL,
`institution_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`total_count` int NOT NULL COMMENT '题库题目总数量',
--
Gitblit v1.9.2