From 567a11a82c7168473b75c0d9b82cc56622a61ab6 Mon Sep 17 00:00:00 2001
From: luoyb <412940104@qq.com>
Date: 星期四, 18 三月 2021 07:54:15 +0800
Subject: [PATCH] fix(bug修复): 打开档案时同时写入离职表
---
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpAccidentCasesServiceImpl.java | 42 ++++++++++++++++++++++++++++--------------
1 files changed, 28 insertions(+), 14 deletions(-)
diff --git a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpAccidentCasesServiceImpl.java b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpAccidentCasesServiceImpl.java
index 4a17af4..c00feb9 100644
--- a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpAccidentCasesServiceImpl.java
+++ b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpAccidentCasesServiceImpl.java
@@ -7,11 +7,14 @@
import java.util.List;
import java.util.Optional;
+import cc.mrbird.febs.common.core.entity.constant.FebsConstant;
import cc.mrbird.febs.common.core.entity.system.SystemUser;
import cc.mrbird.febs.common.core.exception.FebsException;
+import cc.mrbird.febs.common.core.utils.SortUtil;
import cc.mrbird.febs.server.hr.constant.MyConstant;
import cc.mrbird.febs.server.hr.entity.EmpBaseInfo;
import cc.mrbird.febs.server.hr.entity.EmpUnemployment;
+import cc.mrbird.febs.server.hr.feign.IRemoteDeptService;
import cc.mrbird.febs.server.hr.service.IEmpBaseInfoService;
import cn.hutool.core.util.StrUtil;
import org.apache.commons.lang3.StringUtils;
@@ -20,12 +23,14 @@
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.entity.system.Dept;
import cc.mrbird.febs.common.core.utils.CastUtil;
import cc.mrbird.febs.common.core.utils.FebsUtil;
@@ -54,44 +59,48 @@
private final RedisService redisService;
private final EmpAccidentCasesMapper empAccidentcasesMapper;
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<EmpAccidentCases> findEmpAccidentcasess(QueryRequest request, EmpAccidentCases empAccidentcases) {
- LambdaQueryWrapper<EmpAccidentCases> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.eq(EmpAccidentCases::getDelFlag, empAccidentcases.getDelFlag());
+ QueryWrapper<EmpAccidentCases> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("a.DelFlag", empAccidentcases.getDelFlag());
if (StringUtils.isNotBlank(empAccidentcases.getEmpNumb())) {
- queryWrapper.like(EmpAccidentCases::getEmpNumb, empAccidentcases.getEmpNumb());
+ queryWrapper.like("a.EmpNumb", empAccidentcases.getEmpNumb());
}
if (StringUtils.isNotBlank(empAccidentcases.getEmpName())) {
- queryWrapper.like(EmpAccidentCases::getEmpName, empAccidentcases.getEmpName());
+ queryWrapper.like("a.EmpName", empAccidentcases.getEmpName());
}
if (StringUtils.isNotBlank(empAccidentcases.getCertificateNumb())) {
- queryWrapper.like(EmpAccidentCases::getCertificateNumb, empAccidentcases.getCertificateNumb());
+ queryWrapper.like("a.CertificateNumb", empAccidentcases.getCertificateNumb());
}
if (StringUtils.isNotBlank(empAccidentcases.getDeptName())) {
- queryWrapper.like(EmpAccidentCases::getDeptName, empAccidentcases.getDeptName());
+ queryWrapper.like("a.DeptName", empAccidentcases.getDeptName());
}
if (StringUtils.isNotBlank(empAccidentcases.getInjuredTimeStr())) {
- queryWrapper.between(EmpAccidentCases::getInjuredTime, empAccidentcases.getInjuredTimeStr().split(",")[0],
+ queryWrapper.between("a.InjuredTime", empAccidentcases.getInjuredTimeStr().split(",")[0],
empAccidentcases.getInjuredTimeStr().split(",")[1]);
}
if (StringUtils.isNotBlank(empAccidentcases.getHrDoDateStr())) {
- queryWrapper.between(EmpAccidentCases::getHrDoDate, empAccidentcases.getHrDoDateStr().split(",")[0],
+ queryWrapper.between("a.HrDoDate", empAccidentcases.getHrDoDateStr().split(",")[0],
empAccidentcases.getHrDoDateStr().split(",")[1]);
}
if (empAccidentcases.getHospitalizatioFlag() != null && empAccidentcases.getHospitalizatioFlag() != 0) {
- queryWrapper.eq(EmpAccidentCases::getHospitalizatioFlag, empAccidentcases.getHospitalizatioFlag());
+ queryWrapper.eq("a.HospitalizatioFlag", empAccidentcases.getHospitalizatioFlag());
}
if (empAccidentcases.getSettleStatus() != null && empAccidentcases.getSettleStatus() != 0) {
- queryWrapper.eq(EmpAccidentCases::getSettleStatus, empAccidentcases.getSettleStatus());
+ queryWrapper.eq("a.SettleStatus", empAccidentcases.getSettleStatus());
}
if (StringUtils.isNotBlank(empAccidentcases.getEmpStatus())) {
- queryWrapper.eq(EmpAccidentCases::getEmpStatus, empAccidentcases.getEmpStatus());
+ queryWrapper.in("a.EmpStatus", empAccidentcases.getEmpStatus().split(","));
}
+ queryWrapper.in("c.dept_Id", remoteDeptService.userRightDepts().split(StringConstant.COMMA));
+
Page<EmpAccidentCases> page = new Page<>(request.getPageNum(), request.getPageSize());
- return this.page(page, queryWrapper);
+ SortUtil.handlePageSort(request, page, "createTime", FebsConstant.ORDER_DESC, true);
+ return empAccidentcasesMapper.selectPageVo(page, queryWrapper);
}
@Override
@@ -106,7 +115,7 @@
public void createEmpAccidentcases(EmpAccidentCases empAccidentcases) throws FebsException {
LambdaQueryWrapper<EmpAccidentCases> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(EmpAccidentCases::getEmpId, empAccidentcases.getEmpId());
- lambdaQueryWrapper.eq(EmpAccidentCases::getHrDoDate, empAccidentcases.getHrDoDate());
+ lambdaQueryWrapper.eq(EmpAccidentCases::getInjuredTime, empAccidentcases.getInjuredTime());
lambdaQueryWrapper.ne(EmpAccidentCases::getDelFlag,1);
if (this.count(lambdaQueryWrapper) > 0) {
throw new FebsException(MyConstant.MESSAGE);
@@ -182,13 +191,16 @@
@Transactional(rollbackFor = Exception.class)
public void importEmpAccidentCases(List<List<Object>> listObject,List<String> returnList) {
for (List<Object> list : listObject) {
- if (list.size()==0){
+ if (list.size()==0||StrUtil.isBlank(list.get(0).toString())){
continue;
}
EmpAccidentCases empAccidentcases=new EmpAccidentCases();
empAccidentcases.setAccidentId(SequenceUtil.generateId(0L, ModuleCode.HR_EMPLOYEE));
empAccidentcases.setEmpNumb(list.get(0).toString());
List<Dept> depts = CastUtil.castList(redisService.get("depts"), Dept.class);
+ if(null == depts){
+ depts =remoteDeptService.setDeptRedis();
+ }
Dept dept = depts.stream().filter(d -> d.getDeptName().equals(list.get(1).toString())).findFirst().orElse(null);
if (null == dept) {
returnList.add(StrUtil.format("导入员工意外险案件异常: 出现位置第{}行, 原因:{}部门不存在",listObject.indexOf(list)+1,list.get(1).toString()));
@@ -248,4 +260,6 @@
this.save(empAccidentcases);
}
}
+
+
}
--
Gitblit v1.8.0