From ad3f4c73eb9b630f74d70f050d06d34fa19ea59c Mon Sep 17 00:00:00 2001 From: YuNan <3194726156@qq.com> Date: Mon, 9 Sep 2024 21:06:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BE=9D=E6=8D=AE=E5=AD=A6=E7=94=9Fid=E5=92=8C?= =?UTF-8?q?=E5=A7=93=E5=90=8D=E8=8E=B7=E5=8F=96=E5=9B=9B=E7=BA=A7=E6=88=90?= =?UTF-8?q?=E7=BB=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/controller/Cet_4Controller.java | 19 ++++++++++++ .../jeecg/modules/service/ICet_4Service.java | 2 ++ .../service/impl/Cet_4ServiceImpl.java | 31 +++++++++++++++++++ .../src/test/java/org/jeecg/modules/text.java | 27 ++++++++++++++++ 4 files changed, 79 insertions(+) create mode 100644 jeecg-module-system/jeecg-system-start/src/test/java/org/jeecg/modules/text.java diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/Cet_4Controller.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/Cet_4Controller.java index 6f4b68d0..49f23461 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/Cet_4Controller.java +++ b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/Cet_4Controller.java @@ -3,6 +3,9 @@ package org.jeecg.modules.controller; import java.util.Arrays; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.modules.entity.Cet_4; @@ -35,6 +38,9 @@ import org.apache.shiro.authz.annotation.RequiresPermissions; public class Cet_4Controller extends JeecgController { @Autowired private ICet_4Service cet_4Service; + + + /** * 分页列表查询 @@ -160,4 +166,17 @@ public class Cet_4Controller extends JeecgController { return super.importExcel(request, response, Cet_4.class); } + /** + * 依据学生id和姓名获取四级成绩 + */ + @GetMapping("/getDataByStudent") + public Result getDataByStudent(@RequestParam("id") Integer id, @RequestParam("name") String name){ + // 参数检查 + if (id == null || name == null) { + return Result.error("ID 或姓名不能为空"); + } + + return cet_4Service.getDataByStudent(id , name); + } + } diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/ICet_4Service.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/ICet_4Service.java index 64a1b931..7c470ba4 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/ICet_4Service.java +++ b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/ICet_4Service.java @@ -22,4 +22,6 @@ public interface ICet_4Service extends IService { Result getRateByCollege(JSONObject webData); Result getRateByMajor(JSONObject webData); + + Result getDataByStudent(Integer studentId, String studentName); } diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_4ServiceImpl.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_4ServiceImpl.java index e4b6327a..b474f196 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_4ServiceImpl.java +++ b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_4ServiceImpl.java @@ -536,6 +536,37 @@ public class Cet_4ServiceImpl extends ServiceImpl implements return Result.ok(result); } + /** + * 依据学生id和姓名获取四级数据 + */ + @Override + public Result getDataByStudent(Integer id,String name) { + //判断是否存在缓存 + String key = "getDataByStudent:"+id + name; + if (Boolean.TRUE.equals(redisTemplate.hasKey(key))) { + System.out.println((JSONObject) redisTemplate.opsForValue().get(key)); + return Result.ok((JSONObject) redisTemplate.opsForValue().get(key)); + } + JSONObject result = new JSONObject(); + //收集成绩 + LambdaQueryWrapper Cet_4ResultQW = new LambdaQueryWrapper<>(); + Cet_4ResultQW.select(Cet_4::getResult) + .groupBy(Cet_4::getResult); + + List> Cet_4Result = cet4Mapper.selectMaps(Cet_4ResultQW); + if (Cet_4Result == null) { + return Result.error("查询结果为空"); + } + System.out.println(Cet_4Result); + + result.put("results", Cet_4Result); + + //将数据存入缓存 + redisTemplate.opsForValue().set(key, result); + + return Result.ok(result); + } + //获取全校人数 private long getNumAll(Date batch) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); diff --git a/jeecg-module-system/jeecg-system-start/src/test/java/org/jeecg/modules/text.java b/jeecg-module-system/jeecg-system-start/src/test/java/org/jeecg/modules/text.java new file mode 100644 index 00000000..3e7c5c8f --- /dev/null +++ b/jeecg-module-system/jeecg-system-start/src/test/java/org/jeecg/modules/text.java @@ -0,0 +1,27 @@ +package org.jeecg.modules; + +import com.alibaba.fastjson.JSONObject; +import org.jeecg.JeecgSystemApplication; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.controller.Cet_4Controller; +import org.junit.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest(classes= JeecgSystemApplication.class)//指定要测试的Spring应用程序类 +public class text { + + @Autowired + private Cet_4Controller cet_4Controller; + + @Test + public void T() { + // 检查 cet_4Controller 是否为 null + if (cet_4Controller == null) { + System.err.println("Cet_4Controller 未正确注入"); + return; + } + Result result = cet_4Controller.getDataByStudent(2023011559, "余映婵"); + System.out.println(result); + } +}