luoyb
2021-03-09 1f5fe83df4d02e221fa57dd246a988b32ab02584
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpPhysicalExamServiceImpl.java
@@ -20,15 +20,18 @@
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import cc.mrbird.febs.common.core.constant.ModuleCode;
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;
import cc.mrbird.febs.server.hr.entity.EmpPhysicalExam;
import cc.mrbird.febs.server.hr.feign.IRemoteDeptService;
import cc.mrbird.febs.server.hr.mapper.EmpPhysicalExamMapper;
import cc.mrbird.febs.server.hr.service.IEmpPhysicalExamService;
import cn.hutool.core.date.DateUtil;
@@ -51,43 +54,47 @@
    private final RedisService redisService;
    private final EmpPhysicalExamMapper empPhysicalexamMapper;
    private final IEmpBaseInfoService empBaseInfoService;
    private final IRemoteDeptService remoteDeptService;
    private final String operatorId = Optional.ofNullable(FebsUtil.getCurrentUser())
            .map(u -> u.getUserId().toString())
            .orElse("1");
    @Override
    public IPage<EmpPhysicalExam> findEmpPhysicalExams(QueryRequest request, EmpPhysicalExam empPhysicalexam) {
        LambdaQueryWrapper<EmpPhysicalExam> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(EmpPhysicalExam::getDelFlag, empPhysicalexam.getDelFlag());
       QueryWrapper<EmpPhysicalExam> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("a.DelFlag", empPhysicalexam.getDelFlag());
        if (StringUtils.isNotBlank(empPhysicalexam.getEmpNumb())) {
            queryWrapper.like(EmpPhysicalExam::getEmpNumb, empPhysicalexam.getEmpNumb());
            queryWrapper.like("a.EmpNumb", empPhysicalexam.getEmpNumb());
        }
        if (StringUtils.isNotBlank(empPhysicalexam.getEmpName())) {
            queryWrapper.like(EmpPhysicalExam::getEmpName, empPhysicalexam.getEmpName());
            queryWrapper.like("a.EmpName", empPhysicalexam.getEmpName());
        }
        if (StringUtils.isNotBlank(empPhysicalexam.getCertificateNumb())) {
            queryWrapper.like(EmpPhysicalExam::getCertificateNumb, empPhysicalexam.getCertificateNumb());
            queryWrapper.like("a.CertificateNumb", empPhysicalexam.getCertificateNumb());
        }
        if (StringUtils.isNotBlank(empPhysicalexam.getDeptName())) {
            queryWrapper.like(EmpPhysicalExam::getDeptName, empPhysicalexam.getDeptName());
            queryWrapper.like("a.DeptName", empPhysicalexam.getDeptName());
        }
        if (StringUtils.isNotBlank(empPhysicalexam.getPhysicalExamDateStr())) {
            queryWrapper.between(EmpPhysicalExam::getPhysicalExamDate, empPhysicalexam.getPhysicalExamDateStr().split(",")[0], empPhysicalexam.getPhysicalExamDateStr().split(",")[1]);
            queryWrapper.between("a.PhysicalExamDate", empPhysicalexam.getPhysicalExamDateStr().split(",")[0], empPhysicalexam.getPhysicalExamDateStr().split(",")[1]);
        }
        if (StringUtils.isNotBlank(empPhysicalexam.getPhysicalExamType())) {
            queryWrapper.eq(EmpPhysicalExam::getPhysicalExamType, empPhysicalexam.getPhysicalExamType());
            queryWrapper.eq("a.PhysicalExamType", empPhysicalexam.getPhysicalExamType());
        }
        if (StringUtils.isNotBlank(empPhysicalexam.getEcg())) {
            queryWrapper.eq(EmpPhysicalExam::getEcg, empPhysicalexam.getEcg());
            queryWrapper.eq("a.Ecg", empPhysicalexam.getEcg());
        }
        if (StringUtils.isNotBlank(empPhysicalexam.getConclusion())) {
            queryWrapper.like(EmpPhysicalExam::getConclusion, empPhysicalexam.getConclusion());
            queryWrapper.like("a.Conclusion", empPhysicalexam.getConclusion());
        }
        if (StringUtils.isNotBlank(empPhysicalexam.getEmpStatus())) {
            queryWrapper.eq(EmpPhysicalExam::getEmpStatus, empPhysicalexam.getEmpStatus());
            queryWrapper.in("a.EmpStatus", empPhysicalexam.getEmpStatus().split(","));
        } else {
            queryWrapper.in("a.EmpStatus", 0);
        }
        Page<EmpPhysicalExam> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<EmpPhysicalExam> iPage = this.page(page, queryWrapper);
        queryWrapper.in("c.dept_Id", remoteDeptService.userRightDepts().split(StringConstant.COMMA));
        IPage<EmpPhysicalExam> iPage = empPhysicalexamMapper.selectPageVo(page, queryWrapper);
        List<EmpPhysicalExam> list = iPage.getRecords();
        //设置字典数据
        List<DicItem> dicItems = CastUtil.castList(redisService.get("dicItems"), DicItem.class);