From 56b70d5fb9d518e27e240056c0316c8e3a798f48 Mon Sep 17 00:00:00 2001 From: yaodan <1421553879@qq.com> Date: Sat, 6 May 2023 02:57:18 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E5=88=86=E7=B1=BB=E6=97=B6=EF=BC=8C=E9=AA=8C?= =?UTF-8?q?=E8=AF=81=E6=98=AF=E5=90=A6=E6=9C=89=E5=85=B3=E8=81=94=E7=9A=84?= =?UTF-8?q?=E8=AF=BE=E7=A8=8B=EF=BC=8C=E6=9C=89=E5=B0=B1=E4=B8=8D=E8=AE=A9?= =?UTF-8?q?=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jlw/service/CourseLabelService.java | 40 +++++++++++++++++++ .../ibeetl/jlw/web/CourseLabelController.java | 12 +----- 2 files changed, 41 insertions(+), 11 deletions(-) diff --git a/web/src/main/java/com/ibeetl/jlw/service/CourseLabelService.java b/web/src/main/java/com/ibeetl/jlw/service/CourseLabelService.java index 2cdfaaae..29004de6 100644 --- a/web/src/main/java/com/ibeetl/jlw/service/CourseLabelService.java +++ b/web/src/main/java/com/ibeetl/jlw/service/CourseLabelService.java @@ -1,9 +1,14 @@ package com.ibeetl.jlw.service; +import cn.hutool.core.lang.Assert; +import com.ibeetl.admin.core.entity.CoreUser; import com.ibeetl.admin.core.service.CoreBaseService; import com.ibeetl.admin.core.util.PlatformException; +import com.ibeetl.admin.core.web.JsonResult; +import com.ibeetl.jlw.dao.CourseInfoDao; import com.ibeetl.jlw.dao.CourseLabelDao; +import com.ibeetl.jlw.entity.CourseInfo; import com.ibeetl.jlw.entity.CourseLabel; import com.ibeetl.jlw.web.query.CourseLabelQuery; import org.apache.commons.collections4.CollectionUtils; @@ -13,8 +18,11 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.Arrays; import java.util.List; +import static com.ibeetl.jlw.enums.AddTypeEnum.ADMIN_ADD; + /** * CourseLabel Service @@ -27,6 +35,10 @@ public class CourseLabelService extends CoreBaseService { @Autowired private CourseLabelDao courseLabelDao; + @Autowired + private CourseInfoDao courseInfoDao; + + public PageQuery queryByCondition(PageQuery query) { PageQuery ret = courseLabelDao.queryByCondition(query); queryListAfter(ret.getList()); @@ -66,4 +78,32 @@ public class CourseLabelService extends CoreBaseService { List list = courseLabelDao.template(courseLabel); return CollectionUtils.isEmpty(list) ? null : list.get(0); } + + public JsonResult delCourseLabelHandler(CourseLabel courseLabel, CoreUser coreUser) { + Assert.isTrue(coreUser.isUniAdmin() || coreUser.isAdmin(), "只允许学校管理员和超管访问该接口!"); + CourseLabel cl = queryById(courseLabel.getCourseLabelId()); + // 只有超管才能修改系统分配的数据 + Assert.isFalse(ADMIN_ADD.equals(cl.getAddType()) && coreUser.isUniAdmin(), "用户无法修改系统分配的数据!"); + + CourseInfo courseInfo = new CourseInfo(); + courseInfo.setCourseLabelId(courseLabel.getCourseLabelId()); + courseInfo.setCourseInfoType(1); + + long count = courseInfoDao.createLambdaQuery() + .andEq(CourseInfo::getCourseLabelId, courseLabel.getCourseLabelId()) + .andEq(CourseInfo::getCourseInfoType, 1) + .andIn(CourseInfo::getCourseInfoStatus, Arrays.asList(1, 2)) + .count(); + + if (count>0){ + return JsonResult.failMessage("该标签下有课程,无法删除!"); + } + + boolean success = updateTemplate(courseLabel); + if (success) { + return JsonResult.success(); + } else { + return JsonResult.failMessage("更新失败"); + } + } } \ No newline at end of file diff --git a/web/src/main/java/com/ibeetl/jlw/web/CourseLabelController.java b/web/src/main/java/com/ibeetl/jlw/web/CourseLabelController.java index db29c67f..c63d5aca 100644 --- a/web/src/main/java/com/ibeetl/jlw/web/CourseLabelController.java +++ b/web/src/main/java/com/ibeetl/jlw/web/CourseLabelController.java @@ -125,17 +125,7 @@ public class CourseLabelController{ if(result.hasErrors()){ return JsonResult.failMessage(result); }else { - Assert.isTrue(coreUser.isUniAdmin() || coreUser.isAdmin(), "只允许学校管理员和超管访问该接口!"); - CourseLabel cl = courseLabelService.queryById(courseLabel.getCourseLabelId()); - // 只有超管才能修改系统分配的数据 - Assert.isFalse(ADMIN_ADD.equals(cl.getAddType()) && coreUser.isUniAdmin(), "用户无法修改系统分配的数据!"); - - boolean success = courseLabelService.updateTemplate(courseLabel); - if (success) { - return JsonResult.success(); - } else { - return JsonResult.failMessage("更新失败"); - } + return courseLabelService.delCourseLabelHandler(courseLabel,coreUser); } }