| | |
| | | package com.gkhy.assess.system.service.impl; |
| | | 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.assess.common.enums.DeleteFlagEnum; |
| | | import com.gkhy.assess.common.exception.ApiException; |
| | | import com.gkhy.assess.common.utils.StringUtils; |
| | | import com.gkhy.assess.system.domain.SysExpertClassify; |
| | | import com.gkhy.assess.system.mapper.SysExpertClassifyMapper; |
| | | import com.gkhy.assess.system.service.SysExpertClassifyService; |
| | | import com.gkhy.assess.system.utils.ShiroUtils; |
| | | import com.gkhy.common.enums.DeleteFlagEnum; |
| | | import com.gkhy.common.exception.ServiceException; |
| | | import com.gkhy.common.utils.SecurityUtils; |
| | | 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; |
| | |
| | | @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) |
| | |
| | | |
| | | @Override |
| | | public int modClassify(SysExpertClassify expertClassify) { |
| | | expertClassify.setUpdateBy(ShiroUtils.getSysUser().getUsername()); |
| | | //checkParams(expertClassify); |
| | | expertClassify.setUpdateBy(SecurityUtils.getUsername()); |
| | | boolean b=updateById(expertClassify); |
| | | if(!b){ |
| | | throw new ApiException("修改专家分类失败"); |
| | | throw new ServiceException("修改专家分类失败"); |
| | | } |
| | | return 1; |
| | | } |
| | |
| | | public int delClassify(Long classifyId) { |
| | | SysExpertClassify classify = new SysExpertClassify(); |
| | | classify.setId(classifyId); |
| | | classify.setDelFlag(DeleteFlagEnum.DELETED.getCode()); |
| | | classify.setUpdateBy(ShiroUtils.getSysUser().getUsername()); |
| | | classify.setDelFlag(DeleteFlagEnum.DELETED.getCode().intValue()); |
| | | classify.setUpdateBy(SecurityUtils.getUsername()); |
| | | boolean b=updateById(classify); |
| | | if(!b){ |
| | | throw new ApiException("删除专家分类失败"); |
| | | throw new ServiceException("删除专家分类失败"); |
| | | } |
| | | return 1; |
| | | } |
| | | |
| | | @Override |
| | | public int addClassify(SysExpertClassify expertClassify) { |
| | | expertClassify.setCreateBy(ShiroUtils.getSysUser().getUsername()); |
| | | //checkParams(expertClassify); |
| | | expertClassify.setCreateBy(SecurityUtils.getUsername()); |
| | | boolean b=save(expertClassify); |
| | | if(!b){ |
| | | throw new ApiException("新增专家分类失败"); |
| | | throw new ServiceException("新增专家分类失败"); |
| | | } |
| | | 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()+"专业领域选中,请修改或者重新选择!"); |
| | | } |
| | | } |
| | | } |
| | | } |