From 7b720f18f1824a7c9882e2404087cbf3793914e3 Mon Sep 17 00:00:00 2001
From: luoyb <412940104@qq.com>
Date: 星期四, 18 三月 2021 23:42:28 +0800
Subject: [PATCH] fix(bug修复): 在职员工信息录入时,同步增加一条入职记录

---
 febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpBaseInfoServiceImpl.java |   40 +++++++++++++++++++++++++++++++++-------
 1 files changed, 33 insertions(+), 7 deletions(-)

diff --git a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpBaseInfoServiceImpl.java b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpBaseInfoServiceImpl.java
index 14f02f9..fed7122 100644
--- a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpBaseInfoServiceImpl.java
+++ b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpBaseInfoServiceImpl.java
@@ -23,7 +23,6 @@
 import cc.mrbird.febs.server.hr.service.IEmpJobChangeService;
 import cc.mrbird.febs.server.hr.util.PoiExportExcel;
 import cn.hutool.core.collection.CollUtil;
-import cn.hutool.core.collection.ListUtil;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -174,8 +173,11 @@
     public void createEmpBaseInfo(EmpBaseInfo empBaseInfo) {
         String operatorId = Optional.of(FebsUtil.getUserId()).orElse("1");
         EmpBaseInfo dbInfo = this.getEmpBaseInfo(empBaseInfo);
-        if (dbInfo == null) {
-            empBaseInfo.setEmpId(SequenceUtil.generateId(0L, ModuleCode.HR_EMPLOYEE));
+        Long empId = SequenceUtil.generateId(0L, ModuleCode.HR_EMPLOYEE);
+        boolean saveDimissionLog = false;
+         if (dbInfo == null) {
+            empBaseInfo.setEmpId(empId);
+             saveDimissionLog = true;
         } else {
             empBaseInfo.setEmpId(dbInfo.getEmpId());
         }
@@ -189,6 +191,19 @@
         empBaseInfo.setCreator(operatorId);
         empBaseInfo.setModifier(operatorId);
         this.saveOrUpdate(empBaseInfo);
+
+        if(saveDimissionLog) {
+            EmpDimissionLog dimissionLog = new EmpDimissionLog();
+            dimissionLog.setCloseId(SequenceUtil.generateId(0L, ModuleCode.HR_EMPLOYEE));
+            dimissionLog.setEmpId(empId);
+            dimissionLog.setEntryDate(empBaseInfo.getEntryDate());
+            dimissionLog.setDimissionType("20");
+            dimissionLog.setRemark(empBaseInfo.getRemark());
+            dimissionLog.setCreator(operatorId);
+            dimissionLog.setModifier(operatorId);
+
+            dimissionLogService.save(dimissionLog);
+        }
     }
 
     @Override
@@ -599,7 +614,7 @@
         if (StrUtil.isBlank(empBaseInfo.getImagePath())) {
             return;
         }
-        String path = properties.getEmpBaseInfoPath() + empBaseInfo.getEmpId() + ".png";
+        String path = properties.getEmpBaseInfoPath() + empBaseInfo.getImagePath();
         try (InputStream inputStream = new FileInputStream(path); OutputStream out = response.getOutputStream()) {
 
             //byte数组用于存放图片字节数据
@@ -608,9 +623,19 @@
             inputStream.read(buff);
             inputStream.close();
 
-            //设置发送到客户端的响应内容类型
-            response.setContentType("image/png");
-
+            String  contentType = empBaseInfo.getImagePath().substring(empBaseInfo.getImagePath().indexOf(".")+1);
+            if (contentType.equals("tif")){
+                //设置发送到客户端的响应内容类型
+                response.setContentType("image/tiff");
+            }else if (contentType.equals("bmp")){
+                response.setContentType("application/x-bmp");
+            }else if (contentType.equals("jpg")){
+                response.setContentType("image/jpeg");
+            }else if (contentType.equals("gif")){
+                response.setContentType("image/gif");
+            }else{
+                response.setContentType("image/png");
+            }
             out.write(buff);
         }
     }
@@ -1108,6 +1133,7 @@
     public EmpBaseInfo addInEmpBaseInfo(EmpBaseInfo empBaseInfo) {
         EmpBaseInfo dbEmpInfo = this.getEmpBaseInfo(empBaseInfo);
         if (dbEmpInfo == null) {
+            empBaseInfo.setDelFlag(0);
             this.createEmpBaseInfo(empBaseInfo);
             return null;
         } else {

--
Gitblit v1.8.0