Bladeren bron

档案bug

jzh 1 jaar geleden
bovenliggende
commit
3a0930ea53

+ 5 - 0
zjugis-module-adm/zjugis-module-adm-biz/src/main/java/com/zjugis/module/adm/dal/dataobject/certificate/CertificateDO.java

@@ -69,5 +69,10 @@ public class CertificateDO extends BaseDO {
      */
     private String certDetail;
 
+    /**
+     * 原件地址
+     */
+    private String filePath;
+
 
 }

+ 13 - 2
zjugis-module-adm/zjugis-module-adm-biz/src/main/java/com/zjugis/module/adm/dal/dataobject/staff/SchoolDetailDO.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
 import com.zjugis.framework.mybatis.core.dataobject.BaseDO;
 import lombok.*;
 
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 
 /**
@@ -18,7 +19,7 @@ import java.time.LocalDateTime;
 @Builder
 @NoArgsConstructor
 @AllArgsConstructor
-public class SchoolDetailDO  {
+public class SchoolDetailDO {
     /**
      * 主键ID
      */
@@ -42,7 +43,17 @@ public class SchoolDetailDO  {
     /**
      * 毕业时间
      */
-    private LocalDateTime bysj;
+    private LocalDate bysj;
+
+    /**
+     * 学历
+     */
+    private String xl;
+
+    /**
+     * 附件地址
+     */
+    private String filePath;
 
 
 }

+ 4 - 0
zjugis-module-adm/zjugis-module-adm-biz/src/main/java/com/zjugis/module/adm/dal/dataobject/staff/StaffRecordSDO.java

@@ -297,6 +297,10 @@ public class StaffRecordSDO extends BaseDO {
      * 毕业学校
      */
     private String byxx;
+    /**
+     * 毕业时间
+     */
+    private LocalDate bysj;
 
 
 //    -------------------------学校信息(预留四个 没有就不填 本人可编辑)--------------------------   做新表

+ 31 - 9
zjugis-module-adm/zjugis-module-adm-biz/src/main/java/com/zjugis/module/adm/service/staff/RecordsServiceImpl.java

@@ -143,13 +143,13 @@ public class RecordsServiceImpl implements RecordsService {
 
 
         //学校信息
-        List<SchoolDetailDO> schoolList=schoolDetailDOMapper.selectList(new LambdaQueryWrapperX<SchoolDetailDO>().eq(SchoolDetailDO::getUserId, userId));
+        List<SchoolDetailDO> schoolList = schoolDetailDOMapper.selectList(new LambdaQueryWrapperX<SchoolDetailDO>().eq(SchoolDetailDO::getUserId, userId));
         if (CollectionUtil.isNotEmpty(schoolList)) {
-           vo.setSchoolList(schoolList);
+            vo.setSchoolList(schoolList);
         }
 
         //工作经历
-        List<WorkDetailDO> workList=workDetailMapper.selectList(new LambdaQueryWrapperX<WorkDetailDO>().eq(WorkDetailDO::getUserId, userId));
+        List<WorkDetailDO> workList = workDetailMapper.selectList(new LambdaQueryWrapperX<WorkDetailDO>().eq(WorkDetailDO::getUserId, userId));
         if (CollectionUtil.isNotEmpty(workList)) {
             vo.setWorkList(workList);
         }
@@ -167,7 +167,7 @@ public class RecordsServiceImpl implements RecordsService {
         }
 
         //绩效考核
-        List<PerformanceDetailDO>performList=performanceDetailDOMapper.selectList(new LambdaQueryWrapperX<PerformanceDetailDO>().eq(PerformanceDetailDO::getUserId, userId));
+        List<PerformanceDetailDO> performList = performanceDetailDOMapper.selectList(new LambdaQueryWrapperX<PerformanceDetailDO>().eq(PerformanceDetailDO::getUserId, userId));
         if (CollectionUtil.isNotEmpty(performList)) {
             vo.setPerformanceList(performList);
         }
@@ -187,25 +187,47 @@ public class RecordsServiceImpl implements RecordsService {
         validExistsByUserId(vo.getUserId());
 
         StaffRecordSDO staffRecordSDO = RecordsConvert.INSTANCE.convertDetail(vo);
-        recordsMapper.update(staffRecordSDO, new LambdaQueryWrapperX<StaffRecordSDO>().eq(StaffRecordSDO::getUserId, vo.getUserId()));
+
 
         //更新学校信息列表
-        updateSchoolList(vo.getUserId(),vo.getSchoolList());
+        updateSchoolList(vo.getUserId(), vo.getSchoolList());
+        if (CollectionUtil.isNotEmpty(vo.getSchoolList())) {
+            //获取最高学历 更新到档案中 用于统计员工学历
+            List<SchoolDetailDO> schools = vo.getSchoolList().stream().filter(v -> StrUtil.isNotEmpty(v.getByxx())).sorted(
+                    (o1, o2) -> {
+                        int b1 = Integer.parseInt(o1.getXl());
+                        int b2 = Integer.parseInt(o2.getXl());
+                        return Integer.compare(b2, b1);
+                    }
+            ).collect(Collectors.toList());
+
+            if (CollectionUtil.isNotEmpty(schools)) {
+                SchoolDetailDO school = schools.get(0);
+                staffRecordSDO.setMajor(school.getMajor());
+                staffRecordSDO.setByxx(school.getByxx());
+                staffRecordSDO.setBysj(school.getBysj());
+            }
+        }
+
 
         //更新工作经历列表
-        updateWorkList(vo.getUserId(),vo.getWorkList());
+        updateWorkList(vo.getUserId(), vo.getWorkList());
 
         //更新绩效考核
-        updatePerformanceList(vo.getUserId(),vo.getPerformanceList());
+        updatePerformanceList(vo.getUserId(), vo.getPerformanceList());
 
         //更新证书
-        updateCertList(vo.getUserId(),vo.getCertList());
+        updateCertList(vo.getUserId(), vo.getCertList());
 
 
         //更新员工家属列表
         List<StaffFamilyDetailDO> detailDOS = vo.getFamilyList();
         updateFamilyDetail(vo.getId(), detailDOS);
 
+
+        //更新档案
+        recordsMapper.update(staffRecordSDO, new LambdaQueryWrapperX<StaffRecordSDO>().eq(StaffRecordSDO::getUserId, vo.getUserId()));
+
         //远程更新部门 若该员工的修改状态为离职则关闭其账号 其余关联关系保持不变
         UserUpdateDTO dto = new UserUpdateDTO();
         dto.setUserId(vo.getUserId());