xx
孔祥富
2021-03-10 67abd83ce5d31a6dde9d744a80350c9c05fbb6dd
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpDimissionLogServiceImpl.java
@@ -2,10 +2,12 @@
import cc.mrbird.febs.common.core.constant.ModuleCode;
import cc.mrbird.febs.server.hr.entity.EmpDimissionLog;
import cc.mrbird.febs.server.hr.feign.IRemoteDeptService;
import cc.mrbird.febs.server.hr.entity.EmpDimissionLog;
import cc.mrbird.febs.server.hr.mapper.EmpDimissionLogMapper;
import cc.mrbird.febs.server.hr.service.IEmpDimissionLogService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -16,6 +18,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import cc.mrbird.febs.common.core.entity.QueryRequest;
import cc.mrbird.febs.common.core.entity.constant.StringConstant;
import cc.mrbird.febs.common.core.utils.FebsUtil;
import cc.mrbird.febs.common.core.utils.SequenceUtil;
@@ -36,26 +39,32 @@
class EmpDimissionLogServiceImpl extends ServiceImpl<EmpDimissionLogMapper, EmpDimissionLog> implements IEmpDimissionLogService {
    private final EmpDimissionLogMapper empDimissionlogMapper;
    private final IRemoteDeptService remoteDeptService;
    private final String operatorId = Optional.ofNullable(FebsUtil.getCurrentUser())
            .map(u -> u.getUserId().toString())
            .orElse("1");
    @Override
    public IPage<Map<String, Object>> findEmpDimissionLogs(QueryRequest request, EmpDimissionLog empDimissionlog) {
        LambdaQueryWrapper<EmpDimissionLog> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(EmpDimissionLog::getDelFlag, 0);
        QueryWrapper<EmpDimissionLog> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("a.delFlag", 0);
        if (StringUtils.isNotBlank(empDimissionlog.getEntryDateStr())) {
           queryWrapper.between(EmpDimissionLog::getEntryDate, empDimissionlog.getEntryDateStr().split(",")[0],  empDimissionlog.getEntryDateStr().split(",")[1]);
           queryWrapper.between("a.entryDate", empDimissionlog.getEntryDateStr().split(",")[0],  empDimissionlog.getEntryDateStr().split(",")[1]);
        }
        if (StringUtils.isNotBlank(empDimissionlog.getDimissionDateStr())) {
           queryWrapper.between(EmpDimissionLog::getDimissionDate, empDimissionlog.getDimissionDateStr().split(",")[0],  empDimissionlog.getDimissionDateStr().split(",")[1]);
           queryWrapper.between("a.dimissionDate", empDimissionlog.getDimissionDateStr().split(",")[0],  empDimissionlog.getDimissionDateStr().split(",")[1]);
        }
        if (StringUtils.isNotBlank(empDimissionlog.getDimissionType())) {
            queryWrapper.eq(EmpDimissionLog::getDimissionType, empDimissionlog.getDimissionType());
            queryWrapper.eq("a.dimissionType", empDimissionlog.getDimissionType());
        }
        if (StringUtils.isNotBlank(empDimissionlog.getEmpStatus())) {
            queryWrapper.in("b.EmpStatus", empDimissionlog.getEmpStatus().split(","));
        } else {
            queryWrapper.in("b.EmpStatus", 0);
        }
        Page<Map<String, Object>> page = new Page<>(request.getPageNum(), request.getPageSize());
        queryWrapper.in("c.dept_Id", remoteDeptService.userRightDepts().split(StringConstant.COMMA));
        return this.baseMapper.selectPageVo(page,queryWrapper);
    }