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 1/2] =?UTF-8?q?=E4=BE=9D=E6=8D=AE=E5=AD=A6=E7=94=9Fid?= =?UTF-8?q?=E5=92=8C=E5=A7=93=E5=90=8D=E8=8E=B7=E5=8F=96=E5=9B=9B=E7=BA=A7?= =?UTF-8?q?=E6=88=90=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); + } +} -- 2.41.0 From 018b55434cc9acaf050f8a5ed0daf924e04efd27 Mon Sep 17 00:00:00 2001 From: YuNan <3194726156@qq.com> Date: Mon, 9 Sep 2024 21:37:47 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BE=9D=E6=8D=AE=E5=AD=A6=E7=94=9Fid?= =?UTF-8?q?=E5=92=8C=E5=A7=93=E5=90=8D=E8=8E=B7=E5=8F=96=E5=9B=9B=E7=BA=A7?= =?UTF-8?q?=E6=88=90=E7=BB=A9=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/controller/Cet_4Controller.java | 9 +--- .../jeecg/modules/service/ICet_4Service.java | 2 +- .../service/impl/Cet_4ServiceImpl.java | 41 +++++++------------ .../src/test/java/org/jeecg/modules/text.java | 2 +- 4 files changed, 19 insertions(+), 35 deletions(-) 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 49f23461..c2b483eb 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 @@ -170,13 +170,8 @@ public class Cet_4Controller extends JeecgController { * 依据学生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); + public Result getDataByStudent(@RequestBody JSONObject jsonObject){ + return cet_4Service.getDataByStudent(jsonObject); } } 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 1afafc30..46cf1ff1 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 @@ -23,6 +23,6 @@ public interface ICet_4Service extends IService { Result getRateByMajor(JSONObject webData); - Result getDataByStudent(Integer studentId, String studentName); + Result getDataByStudent(JSONObject jsonObject); boolean cleanData(); } 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 1802b500..d3487f14 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 @@ -48,7 +48,7 @@ public class Cet_4ServiceImpl extends ServiceImpl implements CetCleanService cetCleanService; @Resource - private RedisTemplate redisTemplate; + private RedisTemplate redisTemplate; @Override @@ -544,12 +544,12 @@ public class Cet_4ServiceImpl extends ServiceImpl implements @ApiOperation(value = "仅用作清洗数据") @Override public boolean cleanData() { - LambdaQueryWrapper cleanWrapper=new LambdaQueryWrapper<>(); + LambdaQueryWrapper cleanWrapper = new LambdaQueryWrapper<>(); cleanWrapper.groupBy(CetClean::getCollege); List list = cetCleanService.list(cleanWrapper); Set collegeSet = list.stream().map(CetClean::getCollege).collect(Collectors.toSet()); - LambdaQueryWrapper cet4Wrapper=new LambdaQueryWrapper<>(); - cet4Wrapper.notIn(Cet_4::getCollege,collegeSet); + LambdaQueryWrapper cet4Wrapper = new LambdaQueryWrapper<>(); + cet4Wrapper.notIn(Cet_4::getCollege, collegeSet); return remove(cet4Wrapper); } @@ -557,30 +557,18 @@ public class Cet_4ServiceImpl extends ServiceImpl implements * 依据学生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)); + public Result getDataByStudent(JSONObject jsonObject) { + String name = jsonObject.getString("name"); + Integer id = jsonObject.getInteger("id"); + if (name == null || id == null) { + return Result.error("请填写完整的参数"); } 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); - + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(Cet_4::getName, name) + .eq(Cet_4::getId, id); + List list = list(wrapper); + result.put("results", list); return Result.ok(result); } @@ -590,6 +578,7 @@ public class Cet_4ServiceImpl extends ServiceImpl implements queryWrapper.eq(Cet_4::getBatch, batch); return cet4Mapper.selectCount(queryWrapper); } + //获取学院的人数 private long getNumCollege(String college, 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 index 3e7c5c8f..663575c2 100644 --- 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 @@ -21,7 +21,7 @@ public class text { System.err.println("Cet_4Controller 未正确注入"); return; } - Result result = cet_4Controller.getDataByStudent(2023011559, "余映婵"); +// Result result = cet_4Controller.getDataByStudent(2023011559, "余映婵"); System.out.println(result); } } -- 2.41.0