yangys
2024-04-13 0a583efe2ddead0cdd37fd83deff43d43745a05f
smart-man-boot/src/main/java/com/qianwen/smartman/modules/cps/service/impl/EmployeeServiceImpl.java
@@ -1,15 +1,5 @@
package com.qianwen.smartman.modules.cps.service.impl;
import cn.hutool.core.util.StrUtil;
import com.alibaba.excel.write.merge.AbstractMergeStrategy;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
import com.google.common.collect.Lists;
import java.lang.invoke.SerializedLambda;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
@@ -18,10 +8,27 @@
import java.util.Objects;
import java.util.function.Function;
import java.util.stream.Collectors;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import com.alibaba.excel.write.merge.AbstractMergeStrategy;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
import com.google.common.collect.Lists;
import com.qianwen.core.excel.util.ExcelUtil;
import com.qianwen.core.log.exception.ServiceException;
import com.qianwen.core.mp.base.BaseServiceImpl;
import com.qianwen.core.oss.model.BladeFile;
import com.qianwen.core.secure.utils.AuthUtil;
import com.qianwen.core.tool.utils.DateUtil;
import com.qianwen.core.tool.utils.Func;
import com.qianwen.smartman.common.cache.DictCache;
import com.qianwen.smartman.common.cache.RegionCache;
import com.qianwen.smartman.common.cache.SysCache;
import com.qianwen.smartman.common.constant.CommonConstant;
import com.qianwen.smartman.common.constant.CommonGroupConstant;
@@ -30,18 +37,10 @@
import com.qianwen.smartman.common.enums.CommonGroupTypeEnum;
import com.qianwen.smartman.common.enums.DictEnum;
import com.qianwen.smartman.common.enums.StatusType;
import com.qianwen.smartman.common.utils.ExtraLambdaQueryWrapper;
import com.qianwen.smartman.common.utils.Lambda;
import com.qianwen.smartman.common.utils.MessageUtils;
import com.qianwen.smartman.common.utils.TreeUtils;
import com.qianwen.smartman.common.utils.ValidatorUtils;
import com.qianwen.core.excel.util.ExcelUtil;
import com.qianwen.core.log.exception.ServiceException;
import com.qianwen.core.mp.base.BaseServiceImpl;
import com.qianwen.core.oss.model.BladeFile;
import com.qianwen.core.secure.utils.AuthUtil;
import com.qianwen.core.tool.utils.DateUtil;
import com.qianwen.core.tool.utils.Func;
import com.qianwen.smartman.modules.cps.convert.EmployeeConvert;
import com.qianwen.smartman.modules.cps.dto.EmployeeDTO;
import com.qianwen.smartman.modules.cps.dto.EmployeeNameDTO;
@@ -67,12 +66,10 @@
import com.qianwen.smartman.modules.system.entity.Post;
import com.qianwen.smartman.modules.system.service.ICodeGeneratorService;
import com.qianwen.smartman.modules.system.service.IPostService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import cn.hutool.core.util.StrUtil;
@Service
/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/cps/service/impl/EmployeeServiceImpl.class */
public class EmployeeServiceImpl extends BaseServiceImpl<EmployeeMapper, Employee> implements IEmployeeService {
    private static final Logger log = LoggerFactory.getLogger(EmployeeServiceImpl.class);
    private final ICommonGroupService commonGroupService;
@@ -92,7 +89,7 @@
        this.postService = postService;
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    @Transactional(rollbackFor = {Exception.class})
    public EmployeeVO submit(EmployeeSubmitVO employeeSubmitVO) {
        if (Func.isEmpty(employeeSubmitVO.getOrganizationId())) {
@@ -189,13 +186,13 @@
        }
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public IPage<EmployeeDTO> selectEmployeePage(IPage<EmployeeDTO> page, EmployeeSelectVO employeeSelectVO) {
        List<Long> organizationIdList = this.commonGroupService.getCommonGroupChildIds(employeeSelectVO.getOrganizationCode(), CommonGroupTypeEnum.ORGANIZATION.getName(), CommonGroupConstant.DEFAULT_CATEGORY);
        return page.setRecords(((EmployeeMapper) this.baseMapper).selectEmployeePage(page, employeeSelectVO, organizationIdList));
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    @Transactional(rollbackFor = {Exception.class})
    public BladeFile importEmployee(List<EmployeeImport> data, String organizationCode) {
        if (Func.isEmpty(data)) {
@@ -228,7 +225,7 @@
            }
        }
        if (!flag.booleanValue()) {
            MultipartFile multipartFile = ExcelUtil.exportFillTemplateToMultipartFile(ExcelConstant.DIRECTORY + "employeeFailTemplate" + ExcelConstant.SUFFIX, MessageUtils.message("excel.import.failed.report.name", new Object[0]) + ExcelConstant.SUFFIX, "员工信息表", (List) data.stream().filter(x2 -> {
            MultipartFile multipartFile = ExcelUtil.exportFillTemplateToMultipartFile(ExcelConstant.DIRECTORY + "employeeFailTemplate" + ExcelConstant.SUFFIX, MessageUtils.message("excel.import.failed.report.name", new Object[0]) + ExcelConstant.SUFFIX, "员工信息表",data.stream().filter(x2 -> {
                return Func.isNotEmpty(x2.getFailReason());
            }).collect(Collectors.toList()), (Object) null, (AbstractMergeStrategy) null);
            BladeFile bladeFile = this.ossBuilder.tempTemplate().putFile(multipartFile.getOriginalFilename(), multipartFile);
@@ -241,7 +238,7 @@
        return null;
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    @Transactional(rollbackFor = {Exception.class})
    public Boolean changeOrganization(List<Long> employeeIds, Long organizationId) {
        if (Func.isEmpty(organizationId)) {
@@ -270,7 +267,7 @@
        return Boolean.TRUE;
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public Boolean changeUserId(Long employeeId, Long oldEmployeeId, Long userId) {
       update(Wrappers.<Employee>lambdaUpdate().set(Employee::getUserId, null).eq(Employee::getId, oldEmployeeId));
       /*
@@ -291,7 +288,7 @@
        return true;
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public Boolean updateUserIdIsNull(List<String> userIdList) {
       
       return Boolean.valueOf(update(Wrappers.<Employee>lambdaUpdate().set(Employee::getUserId, null).in(Employee::getUserId, userIdList)));
@@ -303,7 +300,7 @@
        }, userIdList)));*/
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public Boolean checkUserIsBindEmployee(String userIds) {
       long count = count(Wrappers.<Employee>query().lambda()
               .in(Employee::getUserId, Func.toLongList(userIds)));
@@ -315,14 +312,14 @@
        return Boolean.valueOf(count > 0);
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public List<GroupTreeVO> getUnbindEmployeeList(String employeeId) {
        CommonGroupTypeVO commonGroupType = new CommonGroupTypeVO().setGroupType(CommonGroupTypeEnum.ORGANIZATION.getName()).setGroupCategory(CommonGroupConstant.DEFAULT_CATEGORY);
        List<GroupTreeVO> list = ((EmployeeMapper) this.baseMapper).getUnbindEmployeeList(employeeId);
        return TreeUtils.allGroupTree(commonGroupType, list);
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public Employee getByUserId(Long userId) {
       return (Employee)getOne(Wrappers.<Employee>query().lambda()
               .eq(Employee::getUserId, userId));
@@ -496,7 +493,7 @@
        }
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public List<NotifyUserDTO> getNotifySubscriberList(List<String> userIds) {
       return (List<NotifyUserDTO>)list(Wrappers.<Employee>lambdaQuery().in(Employee::getId, userIds)
               .select(Employee::getId, Employee::getTel, Employee::getEmail )).stream()
@@ -516,7 +513,7 @@
        }).collect(Collectors.toList());*/
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public Boolean removeEmployee(List<Long> ids, Integer type) {
        if (StatusType.REMOVE.getType().equals(type)) {
            return Boolean.valueOf(removeByIds(ids));
@@ -524,13 +521,13 @@
        return Boolean.valueOf(changeStatus(ids, CommonConstant.DEACTIVATE));
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public List<EmployeeDTO> selectEmployeeList(EmployeeSelectVO employeeSelectVO) {
        List<Long> organizationIdList = this.commonGroupService.getCommonGroupChildIds(employeeSelectVO.getOrganizationCode(), CommonGroupTypeEnum.ORGANIZATION.getName(), CommonGroupConstant.DEFAULT_CATEGORY);
        return ((EmployeeMapper) this.baseMapper).selectEmployeeList(employeeSelectVO, organizationIdList);
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public List<Employee> listByOrgIds(List<Long> orgIds) {
        if (Func.isNotEmpty(orgIds)) {
           List<CommonGroupOfItem> list = this.commonGroupOfItemService.list(Wrappers.<CommonGroupOfItem>lambdaQuery().in(CommonGroupOfItem::getGroupId, orgIds).eq(CommonGroupOfItem::getGroupType, CommonGroupTypeEnum.ORGANIZATION.getName())
@@ -548,10 +545,10 @@
            }).collect(Collectors.toList());
            return listByIds(empIds);
        }
        return new ArrayList();
        return new ArrayList<>();
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public List<GroupTreeVO> tree() {
        List<GroupTreeVO> treeList = Lists.newArrayList();
        CommonGroupTypeVO commonGroupType = new CommonGroupTypeVO().setGroupType(CommonGroupTypeEnum.ORGANIZATION.getName()).setGroupCategory(CommonGroupConstant.DEFAULT_CATEGORY);
@@ -575,7 +572,7 @@
        return TreeUtils.allGroupTree(commonGroupType, treeList);
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public Boolean updatePart(EmployeeUpdatePartVO employeeUpdatePartVO) {
        if (Func.isNotEmpty(employeeUpdatePartVO.getPinCode())) {
            Employee employee = (Employee) getById(employeeUpdatePartVO.getId());
@@ -609,7 +606,7 @@
        }
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public EmployeeNameDTO getEmployeeNameMap() {
        HashMap<String, Long> employeeNameMap = new HashMap<>(16);
        HashMap<String, Long> repeatEmployeeNameMap = new HashMap<>(16);
@@ -629,7 +626,7 @@
        return result;
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public EmployeeVO currentEmployee(Long userId) {
       Employee one = (Employee)getOne(Wrappers.<Employee>lambdaQuery().like(Employee::getUserId, userId));
       /*
@@ -639,7 +636,7 @@
        return EmployeeConvert.INSTANCE.convert(one);
    }
    @Override // org.springblade.modules.cps.service.IEmployeeService
    @Override
    public HierarchyVO getEmployeeHierarchy(Long employeeId) {
        HierarchyVO hierarchy = new HierarchyVO();
        Employee employee = (Employee) getById(employeeId);