From 256dec40ff9b2d9c5a1e8d62b2b1f3c5bcf8cac7 Mon Sep 17 00:00:00 2001 From: wuchunlei Date: Fri, 30 Aug 2024 14:08:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A8=A1=E5=9E=8B=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/controller/ClassController.java | 39 ++++++++++++++----- .../common/service/ClassEntityService.java | 4 +- .../service/impl/ClassEntityServiceImpl.java | 18 ++++++++- 3 files changed, 49 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/peanut/modules/common/controller/ClassController.java b/src/main/java/com/peanut/modules/common/controller/ClassController.java index ba7a4917..c0a29ddb 100644 --- a/src/main/java/com/peanut/modules/common/controller/ClassController.java +++ b/src/main/java/com/peanut/modules/common/controller/ClassController.java @@ -2,16 +2,16 @@ package com.peanut.modules.common.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.peanut.common.utils.R; -import com.peanut.modules.common.entity.ClassEntity; -import com.peanut.modules.common.entity.ClassModel; -import com.peanut.modules.common.entity.ClassTask; -import com.peanut.modules.common.entity.ClassTaskAndQuesReply; +import com.peanut.modules.common.entity.*; import com.peanut.modules.common.service.ClassEntityService; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.ArrayUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; + +import java.util.HashSet; import java.util.List; import java.util.Map; @@ -33,6 +33,15 @@ public class ClassController { //新增班级模型 @RequestMapping("/addClassModel") public R addClassModel(@RequestBody ClassModel classModel){ + String[] courseIds = classModel.getCourseIds().split(","); + if(courseIds.length > 0){ + HashSet set = new HashSet<>(); + for (String courseId : courseIds) { + if (!set.add(courseId)){ + return R.error("课程不能重复"); + } + } + } int score = 0; if (classModel.getIsQuestion()==1){ score += classModel.getQuestionScore(); @@ -50,11 +59,7 @@ public class ClassController { score += classModel.getExamScore(); } if (score==100){ - if (classEntityService.addClassModel(classModel)){ - return R.ok(); - }else { - return R.error("保存出错"); - } + return classEntityService.addClassModel(classModel); }else { return R.error("请设置各模块占比总和为100"); } @@ -63,6 +68,15 @@ public class ClassController { //修改班级模型 @RequestMapping("/editClassModel") public R editClassModel(@RequestBody ClassModel classModel){ + String[] courseIds = classModel.getCourseIds().split(","); + if(courseIds.length > 0){ + HashSet set = new HashSet<>(); + for (String courseId : courseIds) { + if (!set.add(courseId)){ + return R.error("课程不能重复"); + } + } + } int score = 0; if (classModel.getIsQuestion()==1){ score += classModel.getQuestionScore(); @@ -86,6 +100,13 @@ public class ClassController { } } + //获取模型可选课程 + @RequestMapping("/getClassModelCourseList") + public R getClassModelCourseList(@RequestBody Map params){ + List courseList = classEntityService.getClassModelCourseList(params); + return R.ok().put("courseList",courseList); + } + //获取主任下的班级模型 @RequestMapping("/getClassModelByUserid") public R getClassModelByUserid(@RequestBody Map params){ diff --git a/src/main/java/com/peanut/modules/common/service/ClassEntityService.java b/src/main/java/com/peanut/modules/common/service/ClassEntityService.java index 643bd46e..84a37ccc 100644 --- a/src/main/java/com/peanut/modules/common/service/ClassEntityService.java +++ b/src/main/java/com/peanut/modules/common/service/ClassEntityService.java @@ -11,10 +11,12 @@ public interface ClassEntityService extends IService { Page getClassModelList(Map params); - boolean addClassModel(ClassModel classModel); + R addClassModel(ClassModel classModel); R editClassModel(ClassModel classModel); + List getClassModelCourseList(Map params); + List getClassModelByUserid(Map params); List> getClassByDirectorid(Map params); diff --git a/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java b/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java index d73ab832..39f5ba08 100644 --- a/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java +++ b/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java @@ -17,6 +17,8 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + import java.math.BigDecimal; import java.math.RoundingMode; import java.util.*; @@ -66,7 +68,8 @@ public class ClassEntityServiceImpl extends ServiceImpl 0){ @@ -77,7 +80,7 @@ public class ClassEntityServiceImpl extends ServiceImpl getClassModelCourseList(Map params) { + MPJLambdaWrapper wrapper = new MPJLambdaWrapper(); + wrapper.exists("select * from course_to_medicine where del_flag = 0 and course_id = t.id"); + wrapper.like(CourseEntity::getTitle,params.get("title")); + wrapper.selectAs(CourseEntity::getId,"id"); + wrapper.selectAs(CourseEntity::getTitle,"title"); + List list = courseDao.selectList(wrapper); + return list; + } + @Override public List getClassModelByUserid(Map params) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();