From db6a13645ba212dee0ef46548cc3468d30b76873 Mon Sep 17 00:00:00 2001
From: luoyb <412940104@qq.com>
Date: 星期一, 24 五月 2021 21:29:05 +0800
Subject: [PATCH] feat(定时更新基本信息表的部门名称与全称):

---
 febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpDimissionLogServiceImpl.java |   60 +++++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 47 insertions(+), 13 deletions(-)

diff --git a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpDimissionLogServiceImpl.java b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpDimissionLogServiceImpl.java
index c8760fe..d46cf7a 100644
--- a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpDimissionLogServiceImpl.java
+++ b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpDimissionLogServiceImpl.java
@@ -1,20 +1,26 @@
 package cc.mrbird.febs.server.hr.service.impl;
 
 import cc.mrbird.febs.common.core.constant.ModuleCode;
+import cc.mrbird.febs.common.core.entity.QueryRequest;
+import cc.mrbird.febs.common.core.entity.constant.FebsConstant;
+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.common.core.utils.SortUtil;
 import cc.mrbird.febs.server.hr.entity.EmpDimissionLog;
+import cc.mrbird.febs.server.hr.feign.IRemoteDeptService;
 import cc.mrbird.febs.server.hr.mapper.EmpDimissionLogMapper;
 import cc.mrbird.febs.server.hr.service.IEmpDimissionLogService;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.transaction.annotation.Propagation;
-import lombok.RequiredArgsConstructor;
 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.entity.QueryRequest;
-import cc.mrbird.febs.common.core.utils.FebsUtil;
-import cc.mrbird.febs.common.core.utils.SequenceUtil;
+import lombok.RequiredArgsConstructor;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.*;
 
@@ -33,16 +39,44 @@
 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<EmpDimissionLog> findEmpDimissionLogs(QueryRequest request, EmpDimissionLog empDimissionlog) {
-        LambdaQueryWrapper<EmpDimissionLog> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.eq(EmpDimissionLog::getDelFlag, 0);
-        Page<EmpDimissionLog> page = new Page<>(request.getPageNum(), request.getPageSize());
-        return this.page(page, queryWrapper);
+    public IPage<Map<String, Object>> findEmpDimissionLogs(QueryRequest request, EmpDimissionLog empDimissionlog) {
+        QueryWrapper<EmpDimissionLog> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("a.delFlag", 0);
+
+        if (StringUtils.isNotBlank(empDimissionlog.getEntryDateStr())) {
+        	queryWrapper.between("a.entryDate", empDimissionlog.getEntryDateStr().split(",")[0],  empDimissionlog.getEntryDateStr().split(",")[1]);
+        }
+        if (StringUtils.isNotBlank(empDimissionlog.getDimissionDateStr())) {
+        	queryWrapper.between("a.dimissionDate", empDimissionlog.getDimissionDateStr().split(",")[0],  empDimissionlog.getDimissionDateStr().split(",")[1]);
+        }
+        if (StringUtils.isNotBlank(empDimissionlog.getDimissionType())) {
+            queryWrapper.eq("a.dimissionType", empDimissionlog.getDimissionType());
+        }
+        if (null!=empDimissionlog.getEmpId()&&!empDimissionlog.getEmpId().equals(0L)) {
+            queryWrapper.eq("a.empId", empDimissionlog.getEmpId());
+        }
+        if (StringUtils.isNotBlank(empDimissionlog.getEmpStatus())) {
+            queryWrapper.in("b.EmpStatus", empDimissionlog.getEmpStatus().split(","));
+        }
+        if (StringUtils.isNotBlank(empDimissionlog.getDeptName())) {
+            queryWrapper.like("c.allDeptName", empDimissionlog.getDeptName());
+        }
+        if (StringUtils.isNotBlank(empDimissionlog.getEmpName())) {
+            queryWrapper.like("b.empName", empDimissionlog.getEmpName());
+        }
+        if (StringUtils.isNotBlank(empDimissionlog.getEmpNumb())) {
+            queryWrapper.like("b.empNumb", empDimissionlog.getEmpNumb());
+        }
+        Page<Map<String, Object>> page = new Page<>(request.getPageNum(), request.getPageSize());
+        SortUtil.handlePageSort(request, page, "createTime", FebsConstant.ORDER_DESC, true);
+        queryWrapper.in("c.dept_Id", remoteDeptService.userRightDepts().split(StringConstant.COMMA));
+        return this.baseMapper.selectPageVo(page,queryWrapper);
     }
 
     @Override
@@ -97,4 +131,4 @@
         List<String> list = new ArrayList<>(Arrays.asList(str));
         empDimissionlogMapper.logicDeleteByIds(list, operatorId);
     }
-}
\ No newline at end of file
+}

--
Gitblit v1.8.0