From d45f521ab36d3c4759fc3ac3a6e0d6548c233567 Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: Tue, 02 Jun 2026 17:25:59 +0800
Subject: [PATCH] 功能修改

---
 expert-system/src/main/java/com/gkhy/system/service/impl/SysExpertClassifyServiceImpl.java |   47 ++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 38 insertions(+), 9 deletions(-)

diff --git a/expert-system/src/main/java/com/gkhy/system/service/impl/SysExpertClassifyServiceImpl.java b/expert-system/src/main/java/com/gkhy/system/service/impl/SysExpertClassifyServiceImpl.java
index 94881e1..ef58bff 100644
--- a/expert-system/src/main/java/com/gkhy/system/service/impl/SysExpertClassifyServiceImpl.java
+++ b/expert-system/src/main/java/com/gkhy/system/service/impl/SysExpertClassifyServiceImpl.java
@@ -1,15 +1,15 @@
 package com.gkhy.system.service.impl;
 
+import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.gkhy.common.enums.DeleteFlagEnum;
 import com.gkhy.common.exception.ServiceException;
 import com.gkhy.common.utils.SecurityUtils;
-import com.gkhy.common.utils.StringUtils;
 import com.gkhy.system.domain.SysExpertClassify;
 import com.gkhy.system.mapper.SysExpertClassifyMapper;
 import com.gkhy.system.service.SysExpertClassifyService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -27,14 +27,17 @@
 @Service
 public class SysExpertClassifyServiceImpl extends ServiceImpl<SysExpertClassifyMapper, SysExpertClassify> implements SysExpertClassifyService {
 
+    @Autowired
+    private SysExpertClassifyMapper sysExpertClassifyMapper;
     @Override
     public List<SysExpertClassify> classifyTree(SysExpertClassify expertClassify) {
-        LambdaQueryWrapper<SysExpertClassify> lambdaQueryWrapper = Wrappers.<SysExpertClassify>lambdaQuery();
-        if(StringUtils.isNotBlank(expertClassify.getClassifyName())){
-            lambdaQueryWrapper.like(SysExpertClassify::getClassifyName,expertClassify.getClassifyName());
-        }
-        lambdaQueryWrapper.eq(SysExpertClassify::getDelFlag, DeleteFlagEnum.UN_DELETE.getCode());
-        List<SysExpertClassify> classifies= list(lambdaQueryWrapper);
+//        LambdaQueryWrapper<SysExpertClassify> lambdaQueryWrapper = Wrappers.<SysExpertClassify>lambdaQuery();
+//        if(StringUtils.isNotBlank(expertClassify.getClassifyName())){
+//            lambdaQueryWrapper.like(SysExpertClassify::getClassifyName,expertClassify.getClassifyName());
+//        }
+//        lambdaQueryWrapper.eq(SysExpertClassify::getDelFlag, DeleteFlagEnum.UN_DELETE.getCode());
+//        List<SysExpertClassify> classifies= list(lambdaQueryWrapper);
+        List<SysExpertClassify> classifies = sysExpertClassifyMapper.classifyList(expertClassify);
         //筛选出所有一级标签
         return classifies.stream()
                 .filter(classifyEntity -> classifyEntity.getParentId()==0L)
@@ -53,6 +56,7 @@
 
     @Override
     public int modClassify(SysExpertClassify expertClassify) {
+        //checkParams(expertClassify);
         expertClassify.setUpdateBy(SecurityUtils.getUsername());
         boolean b=updateById(expertClassify);
         if(!b){
@@ -65,7 +69,7 @@
     public int delClassify(Long classifyId) {
         SysExpertClassify classify = new SysExpertClassify();
         classify.setId(classifyId);
-        classify.setDelFlag(DeleteFlagEnum.DELETED.getCode());
+        classify.setDelFlag(DeleteFlagEnum.DELETED.getCode().intValue());
         classify.setUpdateBy(SecurityUtils.getUsername());
         boolean b=updateById(classify);
         if(!b){
@@ -76,6 +80,7 @@
 
     @Override
     public int addClassify(SysExpertClassify expertClassify) {
+        //checkParams(expertClassify);
         expertClassify.setCreateBy(SecurityUtils.getUsername());
         boolean b=save(expertClassify);
         if(!b){
@@ -83,4 +88,28 @@
         }
         return 1;
     }
+
+    @Override
+    public long countByDeptId(Long deptId) {
+        LambdaQueryWrapper<SysExpertClassify> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(SysExpertClassify::getDeptId,deptId).eq(SysExpertClassify::getDelFlag, DeleteFlagEnum.UN_DELETE.getCode());
+        return baseMapper.selectCount(queryWrapper);
+    }
+
+    private void checkParams(SysExpertClassify expertClassify){
+        if(expertClassify==null){
+            throw new ServiceException("参数错误");
+        }
+        if(expertClassify.getDeptId() != null){
+           LambdaQueryWrapper<SysExpertClassify> queryWrapper = new LambdaQueryWrapper<>();
+           queryWrapper.eq(SysExpertClassify::getDeptId,expertClassify.getDeptId()).eq(SysExpertClassify::getDelFlag, DeleteFlagEnum.UN_DELETE.getCode());
+           if (expertClassify.getId() != null){
+               queryWrapper.ne(SysExpertClassify::getId,expertClassify.getId());
+           }
+            List<SysExpertClassify> sysExpertClassifies = baseMapper.selectList(queryWrapper);
+            if(ObjectUtil.isNotEmpty(sysExpertClassifies)){
+               throw new ServiceException("该处室已被"+sysExpertClassifies.get(0).getClassifyName()+"专业领域选中,请修改或者重新选择!");
+           }
+        }
+    }
 }

--
Gitblit v1.9.2