From 35cfaa7259f3d494e7bd03aec5c7e035049ee19b Mon Sep 17 00:00:00 2001
From: yubo <autumnal_wind@yeah.net>
Date: 星期三, 24 九月 2025 19:34:09 +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