diff --git a/backend-main/backend-data/pom.xml b/backend-main/backend-data/pom.xml
index 03ca9a1..8b28686 100644
--- a/backend-main/backend-data/pom.xml
+++ b/backend-main/backend-data/pom.xml
@@ -16,6 +16,26 @@
17
17
UTF-8
+
+ 3.5.3.1
+ 3.0.2
+
+
+ com.baomidou
+ mybatis-plus-boot-starter
+ ${mybatis-plus.version}
+
+
+ org.mybatis.spring.boot
+ mybatis-spring-boot-starter
+ ${mybatis.version}
+
+
+ com.mysql
+ mysql-connector-j
+ runtime
+
+
\ No newline at end of file
diff --git a/backend-main/backend-data/src/main/java/cn/wustlinghang/main/data/Main.java b/backend-main/backend-data/src/main/java/cn/wustlinghang/main/data/Main.java
deleted file mode 100644
index f550351..0000000
--- a/backend-main/backend-data/src/main/java/cn/wustlinghang/main/data/Main.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package cn.wustlinghang.main.data;
-
-public class Main {
- public static void main(String[] args) {
- System.out.println("Hello world!");
- }
-}
\ No newline at end of file
diff --git a/backend-main/backend-data/src/main/java/cn/wustlinghang/wusthelper/data/dao/mapper/StudentMapper.java b/backend-main/backend-data/src/main/java/cn/wustlinghang/wusthelper/data/dao/mapper/StudentMapper.java
new file mode 100644
index 0000000..4752f6b
--- /dev/null
+++ b/backend-main/backend-data/src/main/java/cn/wustlinghang/wusthelper/data/dao/mapper/StudentMapper.java
@@ -0,0 +1,9 @@
+package cn.wustlinghang.wusthelper.data.dao.mapper;
+
+import cn.wustlinghang.wusthelper.data.entity.Student;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface StudentMapper extends BaseMapper {
+}
diff --git a/backend-main/backend-data/src/main/java/cn/wustlinghang/wusthelper/data/entity/Student.java b/backend-main/backend-data/src/main/java/cn/wustlinghang/wusthelper/data/entity/Student.java
new file mode 100644
index 0000000..ea5f7da
--- /dev/null
+++ b/backend-main/backend-data/src/main/java/cn/wustlinghang/wusthelper/data/entity/Student.java
@@ -0,0 +1,96 @@
+package cn.wustlinghang.wusthelper.data.entity;
+
+import lombok.Data;
+
+@Data
+public class Student {
+ /**
+ * 本科生id
+ */
+ private Long id;
+
+ /**
+ * 学号
+ */
+ private String stuNum;
+
+ /**
+ * 姓名
+ */
+ private String stuName;
+
+ /**
+ * 教务处密码
+ */
+ private String jwcPwd;
+
+ /**
+ * 物理实验系统密码
+ */
+ private String wlsyPwd;
+
+ /**
+ * 学院编号
+ */
+ private Long collegeId;
+
+ /**
+ * 专业编号
+ */
+ private Long majorId;
+
+ /**
+ * 班级编号
+ */
+ private Long classId;
+
+ /**
+ * 生日
+ */
+ private String birthday;
+
+ /**
+ * 性别
+ */
+ private String sex;
+
+ /**
+ * 民族
+ */
+ private String nation;
+
+ /**
+ * 籍贯
+ */
+ private String nativePlace;
+
+ /**
+ * 昵称
+ */
+ private String nickName;
+
+ /**
+ * 电话
+ */
+ private String phone;
+
+ /**
+ * 电子邮箱
+ */
+ private String email;
+
+ /**
+ * qq号
+ */
+ private String qqNum;
+
+ /**
+ * 微信号码
+ */
+ private String wechatNum;
+
+ /**
+ * 客户端平台
+ */
+ private String platform;
+}
\ No newline at end of file
diff --git a/backend-main/backend-web/pom.xml b/backend-main/backend-web/pom.xml
index 4620992..f1d5644 100644
--- a/backend-main/backend-web/pom.xml
+++ b/backend-main/backend-web/pom.xml
@@ -16,37 +16,12 @@
17
UTF-8
- 3.1.1
- 2.0
4.0.2
+
4.0.3
-
-
-
-
- org.springframework.boot
- spring-boot-dependencies
- ${springboot.version}
- pom
- import
-
-
-
-
-
-
- org.yaml
- snakeyaml
- ${snakeyaml.version}
-
-
-
- org.springframework.boot
- spring-boot-starter-validation
-
org.springframework.boot
spring-boot-starter-web
@@ -64,20 +39,9 @@
- com.mysql
- mysql-connector-j
- runtime
-
-
- org.projectlombok
- lombok
- true
- provided
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
+ cn.wustlinghang.wusthelper
+ backend-data
+ ${revision}
@@ -91,12 +55,9 @@
org.springframework.boot
spring-boot-maven-plugin
-
-
- org.projectlombok
- lombok
-
-
+
+ UTF-8
+
diff --git a/backend-main/backend-web/src/main/java/cn/wustlinghang/main/web/BackendMain.java b/backend-main/backend-web/src/main/java/cn/wustlinghang/main/web/BackendMain.java
deleted file mode 100644
index c428d72..0000000
--- a/backend-main/backend-web/src/main/java/cn/wustlinghang/main/web/BackendMain.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package cn.wustlinghang.main.web;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.openfeign.EnableFeignClients;
-import org.springframework.scheduling.annotation.EnableAsync;
-import org.springframework.scheduling.annotation.EnableScheduling;
-
-@EnableAsync
-@EnableScheduling
-@EnableFeignClients
-@SpringBootApplication
-public class BackendMain {
- public static void main(String[] args) {
- SpringApplication.run(BackendMain.class);
- }
-}
diff --git a/backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/WebBackendMain.java b/backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/WebBackendMain.java
new file mode 100644
index 0000000..9d08b80
--- /dev/null
+++ b/backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/WebBackendMain.java
@@ -0,0 +1,23 @@
+package cn.wustlinghang.wusthelper;
+
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.openfeign.EnableFeignClients;
+import org.springframework.scheduling.annotation.EnableAsync;
+import org.springframework.scheduling.annotation.EnableScheduling;
+
+@EnableAsync
+@EnableScheduling
+@EnableFeignClients(basePackages = {"cn.wustlinghang.wusthelper.web.rpc"})
+@SpringBootApplication(scanBasePackages = {
+ // 指定springboot的bean扫描路径,有新增请及时更新
+ "cn.wustlinghang.wusthelper.data",
+ "cn.wustlinghang.wusthelper.web",
+})
+@MapperScan("cn.wustlinghang.wusthelper.data.dao.mapper")
+public class WebBackendMain {
+ public static void main(String[] args) {
+ SpringApplication.run(WebBackendMain.class);
+ }
+}
diff --git a/backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/web/api/Health.java b/backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/web/api/Health.java
new file mode 100644
index 0000000..fc811f2
--- /dev/null
+++ b/backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/web/api/Health.java
@@ -0,0 +1,13 @@
+package cn.wustlinghang.wusthelper.web.api;
+
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+
+@Controller
+@RequestMapping("/")
+public class Health {
+ @RequestMapping("/health")
+ public String health() {
+ return "";
+ }
+}
diff --git a/backend-main/backend-web/src/main/java/cn/wustlinghang/main/web/api/v2/undergrade/UndergradController.java b/backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/web/api/v2/undergrade/UndergradController.java
similarity index 77%
rename from backend-main/backend-web/src/main/java/cn/wustlinghang/main/web/api/v2/undergrade/UndergradController.java
rename to backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/web/api/v2/undergrade/UndergradController.java
index 532da83..b8ab30c 100644
--- a/backend-main/backend-web/src/main/java/cn/wustlinghang/main/web/api/v2/undergrade/UndergradController.java
+++ b/backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/web/api/v2/undergrade/UndergradController.java
@@ -1,7 +1,7 @@
-package cn.wustlinghang.main.web.api.v2.undergrade;
+package cn.wustlinghang.wusthelper.web.api.v2.undergrade;
-import cn.wustlinghang.main.web.service.campus.undergrad.UndergradCookieService;
-import cn.wustlinghang.wusthelper.main.response.Response;
+import cn.wustlinghang.wusthelper.web.service.campus.undergrad.UndergradCookieService;
+import cn.wustlinghang.wusthelper.web.response.Response;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
diff --git a/backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/web/configure/CaffeineCacheConfigure.java b/backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/web/configure/CaffeineCacheConfigure.java
new file mode 100644
index 0000000..a514e6c
--- /dev/null
+++ b/backend-main/backend-web/src/main/java/cn/wustlinghang/wusthelper/web/configure/CaffeineCacheConfigure.java
@@ -0,0 +1,34 @@
+package cn.wustlinghang.wusthelper.web.configure;
+
+import com.github.benmanes.caffeine.cache.Cache;
+import com.github.benmanes.caffeine.cache.Caffeine;
+import org.springframework.cache.CacheManager;
+import org.springframework.cache.caffeine.CaffeineCacheManager;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+import java.util.concurrent.TimeUnit;
+
+@Configuration
+public class CaffeineCacheConfigure {
+ @Bean
+ public CacheManager cacheManager() {
+ CaffeineCacheManager cacheManager = new CaffeineCacheManager();
+ cacheManager.setCaffeine(Caffeine.newBuilder()
+ .expireAfterAccess(1, TimeUnit.HOURS)
+ .initialCapacity(100)
+ .maximumSize(1024)
+ );
+
+ return cacheManager;
+ }
+
+ @Bean
+ public Cache