Browse Source

添加个人信息审批流程

huangguoce 15 hours ago
parent
commit
ccb3e9b9df
45 changed files with 1310 additions and 66 deletions
  1. 6 0
      jeeplus-api/jeeplus-public-modules-api/src/main/java/com/jeeplus/sys/domain/WorkAttachmentInfo.java
  2. 12 0
      jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/domain/Cert.java
  3. 6 0
      jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/service/dto/CertDTO.java
  4. 82 0
      jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/service/dto/WorkAttachmentInfoDTO.java
  5. 3 0
      jeeplus-modules/jeeplus-flowable/src/main/java/com/jeeplus/flowable/controller/FlowableTaskController.java
  6. 1 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentCertificateInfoController.java
  7. 1 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentEduInfoController.java
  8. 1 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentFamilyInfoController.java
  9. 1 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentLanguageInfoController.java
  10. 71 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentRegistrationController.java
  11. 1 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentRewardInfoController.java
  12. 1 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentSkillInfoController.java
  13. 1 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentTrainingInfoController.java
  14. 1 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentWorkInfoController.java
  15. 51 18
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentCertificateInfo.java
  16. 2 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentEduInfo.java
  17. 3 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentFamilyInfo.java
  18. 2 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentLanguageInfo.java
  19. 6 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentRegistration.java
  20. 4 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentRewardInfo.java
  21. 3 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentSkillInfo.java
  22. 2 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentTrainingInfo.java
  23. 67 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentUserInfoAudit.java
  24. 3 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentWorkInfo.java
  25. 17 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/mapper/EnrollmentUserInfoAuditMapper.java
  26. 11 10
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/mapper/xml/EnrollmentCertificateInfoMapper.xml
  27. 7 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/mapper/xml/EnrollmentEduInfoMapper.xml
  28. 74 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/mapper/xml/EnrollmentUserInfoAuditMapper.xml
  29. 12 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentCertificateInfoService.java
  30. 12 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentEduInfoService.java
  31. 12 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentFamilyInfoService.java
  32. 12 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentLanguageInfoService.java
  33. 362 16
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentRegistrationService.java
  34. 12 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentRewardInfoService.java
  35. 12 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentSkillInfoService.java
  36. 12 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentTrainingInfoService.java
  37. 353 0
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentUserInfoAuditService.java
  38. 12 1
      jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentWorkInfoService.java
  39. 8 0
      jeeplus-modules/jeeplus-public-modules/src/main/java/com/jeeplus/pubmodules/oss/controller/OssFileController.java
  40. 3 0
      jeeplus-modules/jeeplus-public-modules/src/main/java/com/jeeplus/pubmodules/oss/domain/WorkAttachment.java
  41. 4 0
      jeeplus-modules/jeeplus-public-modules/src/main/java/com/jeeplus/pubmodules/oss/mapper/OssServiceMapper.java
  42. 21 2
      jeeplus-modules/jeeplus-public-modules/src/main/java/com/jeeplus/pubmodules/oss/mapper/xml/OssServiceMapper.xml
  43. 12 2
      jeeplus-modules/jeeplus-public-modules/src/main/java/com/jeeplus/pubmodules/oss/service/OssService.java
  44. 5 1
      jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/mapper/xml/UserMapper.xml
  45. 6 0
      jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/service/UserService.java

+ 6 - 0
jeeplus-api/jeeplus-public-modules-api/src/main/java/com/jeeplus/sys/domain/WorkAttachmentInfo.java

@@ -87,4 +87,10 @@ public class WorkAttachmentInfo extends BaseEntity {
      */
     @TableField(exist = false)
     private String temporaryUrl;
+
+    /**
+     * 备注
+     */
+    private String remarks;
+
 }

+ 12 - 0
jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/domain/Cert.java

@@ -1,10 +1,13 @@
 package com.jeeplus.sys.domain;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.jeeplus.core.domain.BaseEntity;
+import com.jeeplus.sys.service.dto.WorkAttachmentInfoDTO;
 import lombok.Data;
 
 import java.util.Date;
+import java.util.List;
 
 /**
  * 组织机构-人员资质-人员职业资格证
@@ -65,9 +68,18 @@ public class Cert extends BaseEntity {
     private String profession;
 
     /**
+     * 资质状态
+     */
+    private String status;
+
+    /**
      * 文件地址
      */
     private String fileUrl;
 
+    //附件
+    @TableField(exist = false)
+    private List<WorkAttachmentInfoDTO> certificateAttachment;
+
     private static final long serialVersionUID = 1L;
 }

+ 6 - 0
jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/service/dto/CertDTO.java

@@ -1,11 +1,13 @@
 package com.jeeplus.sys.service.dto;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.jeeplus.core.service.dto.BaseDTO;
 import lombok.Data;
 import org.springframework.format.annotation.DateTimeFormat;
 
 import java.util.Date;
+import java.util.List;
 
 /**
  * 组织机构-人员资质-人员职业资格证
@@ -83,6 +85,10 @@ public class CertDTO extends BaseDTO {
     private static final long serialVersionUID = 1L;
 
 
+    //附件
+    @TableField(exist = false)
+    private List<WorkAttachmentInfoDTO> certificateAttachment;
+
 
     private String certType;
 }

+ 82 - 0
jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/service/dto/WorkAttachmentInfoDTO.java

@@ -0,0 +1,82 @@
+package com.jeeplus.sys.service.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.jeeplus.core.service.dto.BaseDTO;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author: 徐滕
+ * @version: 2023-07-10 09:20
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class WorkAttachmentInfoDTO extends BaseDTO {
+
+    private String name;
+
+    private String size;
+
+    private String by;
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 附件地址
+     */
+    private String url;
+
+    /**
+     * 文件类型(文件后缀名)
+     */
+    private String type;
+
+    /**
+     * 附件对应父节点id(记录是谁的id)
+     */
+    private String attachmentId;
+
+    /**
+     * 文件名
+     */
+    private String attachmentName;
+
+    /**
+     * 文件所属业务模块(数据字典配置)
+     */
+    private String attachmentFlag;
+
+    /**
+     * 所属模块子模块
+     */
+    private String moduleType;
+
+    /**
+     * 附件类型
+     */
+    private String attachmentType;
+
+    /**
+     * 附件大小
+     */
+    private String fileSize;
+
+    /**
+     * 排序
+     */
+    private Integer sort;
+
+    /**
+     * 文件描述
+     */
+    private String description;
+
+    /**
+     * 附件临时地址
+     *该属性不是实体字段
+     */
+    @TableField(exist = false)
+    private String temporaryUrl;
+
+
+}

+ 3 - 0
jeeplus-modules/jeeplus-flowable/src/main/java/com/jeeplus/flowable/controller/FlowableTaskController.java

@@ -505,6 +505,9 @@ public class FlowableTaskController {
             } else if (key.equals("完善个人信息")) {
                 String procInsId = getProcInsId(entry);
                 map1.put("完善个人信息", procInsId);
+            } else if (key.equals("员工信息审批")) {
+                String procInsId = getProcInsId(entry);
+                map1.put("员工信息审批", procInsId);
             }
         }
         return map1;

+ 1 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentCertificateInfoController.java

@@ -56,7 +56,7 @@ public class EnrollmentCertificateInfoController {
     @ApiLog(value = "资质证书", type = LogTypeEnum.SAVE)
     @GetMapping("list")
     public ResponseEntity<List<EnrollmentCertificateInfo>> findList(EnrollmentCertificateInfo info) throws Exception {
-        List<EnrollmentCertificateInfo> list = service.findByUserId(info.getUserId());
+        List<EnrollmentCertificateInfo> list = service.findByUserId(info.getUserId(),"5");
         return ResponseEntity.ok (list);
     }
 

+ 1 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentEduInfoController.java

@@ -82,7 +82,7 @@ public class EnrollmentEduInfoController {
     @ApiLog(value = "教育经历列表", type = LogTypeEnum.SAVE)
     @GetMapping("list")
     public ResponseEntity<List<EnrollmentEduInfo>> findList(EnrollmentEduInfo eduInfo) throws Exception {
-        List<EnrollmentEduInfo> list = eduInfoService.findByUserId(eduInfo.getUserId());
+        List<EnrollmentEduInfo> list = eduInfoService.findByUserId(eduInfo.getUserId(),"5");
         return ResponseEntity.ok (list);
     }
 

+ 1 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentFamilyInfoController.java

@@ -56,7 +56,7 @@ public class EnrollmentFamilyInfoController {
     @ApiLog(value = "家庭成员", type = LogTypeEnum.SAVE)
     @GetMapping("list")
     public ResponseEntity<List<EnrollmentFamilyInfo>> findList(EnrollmentFamilyInfo info) throws Exception {
-        List<EnrollmentFamilyInfo> list = service.findByUserId(info.getUserId());
+        List<EnrollmentFamilyInfo> list = service.findByUserId(info.getUserId(),"5");
         return ResponseEntity.ok (list);
     }
 

+ 1 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentLanguageInfoController.java

@@ -56,7 +56,7 @@ public class EnrollmentLanguageInfoController {
     @ApiLog(value = "语言能力", type = LogTypeEnum.SAVE)
     @GetMapping("list")
     public ResponseEntity<List<EnrollmentLanguageInfo>> findList(EnrollmentLanguageInfo info) throws Exception {
-        List<EnrollmentLanguageInfo> list = service.findByUserId(info.getUserId());
+        List<EnrollmentLanguageInfo> list = service.findByUserId(info.getUserId(),"5");
         return ResponseEntity.ok (list);
     }
 

+ 71 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentRegistrationController.java

@@ -1,5 +1,6 @@
 package com.jeeplus.human.enrollment.enrollmentRegistration.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.collect.Lists;
@@ -67,6 +68,9 @@ public class EnrollmentRegistrationController {
     @Resource
     private DingTalkSyncUtil dingTalkSyncUtil;
 
+    @Resource
+    private EnrollmentUserInfoAuditService userInfoAuditService;
+
     /**
      * 下载门禁卡开通注意事项
      * @param response
@@ -228,6 +232,61 @@ public class EnrollmentRegistrationController {
         return ResponseUtil.newInstance().ok("操作成功");
     }
 
+
+    /**
+     * 用户修改信息提交审核流程
+     * @param registration
+     * @return
+     */
+    @ApiLog(value = "用户修改信息提交审核流程", type = LogTypeEnum.SAVE)
+    @PostMapping("updateInfoAudit")
+    public ResponseEntity updateInfoAudit(@Valid @RequestBody EnrollmentRegistration registration) throws Exception {
+        service.updateInfoAudit(registration);
+        return ResponseUtil.newInstance().ok("操作成功");
+    }
+
+    /**
+     * 用户信息通过审批
+     * @param registration
+     * @return
+     */
+    @ApiLog(value = "用户信息通过审批", type = LogTypeEnum.SAVE)
+    @PostMapping("updateInfoAgree")
+    public ResponseEntity updateInfoAgree(@Valid @RequestBody EnrollmentUserInfoAudit registration) throws Exception {
+        userInfoAuditService.updateInfoAgree(registration);
+        return ResponseUtil.newInstance().ok("操作成功");
+    }
+
+
+    /**
+     * 用户信息驳回审批
+     * @param registration
+     * @return
+     */
+    @ApiLog(value = "用户信息驳回审批", type = LogTypeEnum.SAVE)
+    @PostMapping("updateInfoReject")
+    public ResponseEntity updateInfoReject(@Valid @RequestBody EnrollmentUserInfoAudit registration) throws Exception {
+        userInfoAuditService.updateInfoReject(registration);
+        return ResponseUtil.newInstance().ok("操作成功");
+    }
+
+    /**
+     * 获取用户信息审核数据
+     * @param enrollmentUserInfoAudit
+     * @return
+     */
+    @ApiLog(value = "获取用户信息审核数据", type = LogTypeEnum.SAVE)
+    @GetMapping("getUserInfoAudit")
+    public ResponseEntity<EnrollmentUserInfoAudit> getUserInfoAudit(EnrollmentUserInfoAudit enrollmentUserInfoAudit) throws Exception {
+
+        EnrollmentUserInfoAudit userInfo = userInfoAuditService.getOne(
+                new LambdaQueryWrapper<EnrollmentUserInfoAudit>()
+                        .eq(EnrollmentUserInfoAudit::getUserId, enrollmentUserInfoAudit.getUserId())
+        );
+        return ResponseEntity.ok(userInfo);
+    }
+
+
     /**
      * 保存社保信息
      * @param securityCard
@@ -283,6 +342,18 @@ public class EnrollmentRegistrationController {
     }
 
     /**
+     * 查询正在审批中的信息
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "查询正在审批中的信息")
+    @GetMapping("/findAuditInfoById")
+    public ResponseEntity<EnrollmentUserInfoAudit> findAuditInfoById(@RequestParam String id) throws Exception{
+        EnrollmentUserInfoAudit dto = service.findAuditInfoById(id);
+        return ResponseEntity.ok(dto);
+    }
+
+    /**
      * 根据人员id查询是否有对应信息
      * @param userId
      * @return

+ 1 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentRewardInfoController.java

@@ -58,7 +58,7 @@ public class EnrollmentRewardInfoController {
     @ApiLog(value = "奖项信息", type = LogTypeEnum.SAVE)
     @GetMapping("list")
     public ResponseEntity<List<EnrollmentRewardInfo>> findList(EnrollmentRewardInfo info) throws Exception {
-        List<EnrollmentRewardInfo> list = service.findByUserId(info.getUserId());
+        List<EnrollmentRewardInfo> list = service.findByUserId(info.getUserId(),"5");
         return ResponseEntity.ok (list);
     }
 

+ 1 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentSkillInfoController.java

@@ -58,7 +58,7 @@ public class EnrollmentSkillInfoController {
     @ApiLog(value = "专业技能", type = LogTypeEnum.SAVE)
     @GetMapping("list")
     public ResponseEntity<List<EnrollmentSkillInfo>> findList(EnrollmentSkillInfo info) throws Exception {
-        List<EnrollmentSkillInfo> list = service.findByUserId(info.getUserId());
+        List<EnrollmentSkillInfo> list = service.findByUserId(info.getUserId(),"5");
         return ResponseEntity.ok (list);
     }
 

+ 1 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentTrainingInfoController.java

@@ -58,7 +58,7 @@ public class EnrollmentTrainingInfoController {
     @ApiLog(value = "教育培训经历", type = LogTypeEnum.SAVE)
     @GetMapping("list")
     public ResponseEntity<List<EnrollmentTrainingInfo>> findList(EnrollmentTrainingInfo info) throws Exception {
-        List<EnrollmentTrainingInfo> list = service.findByUserId(info.getUserId());
+        List<EnrollmentTrainingInfo> list = service.findByUserId(info.getUserId(),"5");
         return ResponseEntity.ok (list);
     }
 

+ 1 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/controller/EnrollmentWorkInfoController.java

@@ -58,7 +58,7 @@ public class EnrollmentWorkInfoController {
     @ApiLog(value = "工作经历列表", type = LogTypeEnum.SAVE)
     @GetMapping("list")
     public ResponseEntity<List<EnrollmentWorkInfo>> findList(EnrollmentWorkInfo info) throws Exception {
-        List<EnrollmentWorkInfo> list = service.findByUserId(info.getUserId());
+        List<EnrollmentWorkInfo> list = service.findByUserId(info.getUserId(),"5");
         return ResponseEntity.ok (list);
     }
 

+ 51 - 18
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentCertificateInfo.java

@@ -2,9 +2,11 @@ package com.jeeplus.human.enrollment.enrollmentRegistration.domain;
 
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.jeeplus.core.domain.BaseEntity;
 import com.jeeplus.sys.service.dto.WorkAttachmentInfoDTO;
 import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
 
 import java.util.Date;
 import java.util.List;
@@ -15,34 +17,65 @@ import java.util.List;
  * @date
  */
 @Data
-@TableName("human_resources_enrollment_certificate_info")
+@TableName("sys_cert")
 public class EnrollmentCertificateInfo extends BaseEntity {
 
-    //证书名称
-    private String certificateName;
+    /**
+     * 人员id
+     */
+    private String userId;
+
+    /**
+     * 证书类型
+     */
+    private String type;
+
+    /**
+     * 证书编号
+     */
+    private String no;
+
+    /**
+     * 发证机关
+     */
+    private String authorities;
 
-    //其他证书名称
-    private String otherCertificateName;
+    /**
+     * 发证日期
+     */
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date issuedDate;
 
-   //证书编号
-    private String certificateNumber;
+    /**
+     * 注册日期
+     */
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date enrollDate;
 
-    //发证机构
-    private String issuingAuthority;
+    /**
+     * 到期日期
+     */
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date expireDate;
 
-    //获得日期
-    private Date issueDate;
+    /**
+     * 注册证书编号
+     */
+    private String enrollCertNo;
+
+    /**
+     * 专业
+     */
+    private String profession;
 
-    //有效期至
-    private Date validUntil;
 
     //证书附件(文件对象列表)
     @TableField(exist = false)
     private List<WorkAttachmentInfoDTO> certificateAttachment;
 
-    /** 关联id */
-    private String enrollmentRegistrationId;
-    /** 用户id */
-    private String userId;
-
+    /** 状态 */
+    private String status;
 }

+ 2 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentEduInfo.java

@@ -76,5 +76,6 @@ public class EnrollmentEduInfo extends BaseEntity {
     @TableField(exist = false)
     private List<WorkAttachmentInfoDTO> degreeFile;
 
-
+    /** 状态 */
+    private String status;
 }

+ 3 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentFamilyInfo.java

@@ -41,4 +41,7 @@ public class EnrollmentFamilyInfo extends BaseEntity {
     private String contactNumber;
     /** 用户id */
     private String userId;
+
+    /** 状态 */
+    private String status;
 }

+ 2 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentLanguageInfo.java

@@ -45,4 +45,6 @@ public class EnrollmentLanguageInfo extends BaseEntity {
     private String userId;
 
 
+    /** 状态 */
+    private String status;
 }

+ 6 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentRegistration.java

@@ -49,6 +49,8 @@ public class EnrollmentRegistration extends BaseEntity {
     private String graduatedOrNot;      //是否毕业
     private String englishLevel;        //英语等级
     private String ncre;                //计算机等级
+    @TableField(exist = false)
+    private String email;                //邮箱
     @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Date joinIndustryDate;   //加入行业日期
     @TableField(updateStrategy = FieldStrategy.IGNORED)
@@ -71,6 +73,10 @@ public class EnrollmentRegistration extends BaseEntity {
     private String ddId;      //关联钉钉id
     private String ddType; //是否已加入钉钉
     @TableField(exist = false)
+    private String registrationId;
+    @TableField(exist = false)
+    private String status; //用户信息审批状态
+    @TableField(exist = false)
     private String socialSecurityNumber;        //社保编号
     @TableField(exist = false)
     private String socialSecurityBankNumber;    //社保银行卡号

+ 4 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentRewardInfo.java

@@ -32,4 +32,8 @@ public class EnrollmentRewardInfo extends BaseEntity {
     /** 用户id */
     private String userId;
 
+
+    /** 状态 */
+    private String status;
+
 }

+ 3 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentSkillInfo.java

@@ -40,4 +40,7 @@ public class EnrollmentSkillInfo extends BaseEntity {
 
     /** 用户id */
     private String userId;
+
+    /** 状态 */
+    private String status;
 }

+ 2 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentTrainingInfo.java

@@ -40,4 +40,6 @@ public class EnrollmentTrainingInfo extends BaseEntity {
     /** 用户id */
     private String userId;
 
+    /** 状态 */
+    private String status;
 }

+ 67 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentUserInfoAudit.java

@@ -0,0 +1,67 @@
+package com.jeeplus.human.enrollment.enrollmentRegistration.domain;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.FieldStrategy;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.jeeplus.core.domain.BaseEntity;
+import com.jeeplus.sys.service.dto.WorkAttachmentInfoDTO;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 用户信息审核
+ * @author 王强
+ * @version 1.0
+ * @date 2023-09-27 14:14
+ */
+@Data
+@TableName("human_resources_enrollment_user_info_audit")
+public class EnrollmentUserInfoAudit extends BaseEntity {
+    private String status;              // 状态
+    private String userId;             // 用户ID
+    private String name;               // 姓名
+    private String sex;                // 性别
+    private String age;                // 年龄
+    private String birthday;             // 生日
+    private Date joinIndustryDate;     // 参加行业日期
+    private Date joinWorkDate;         // 参加工作日期
+    private String politicalOutlook;   // 政治面貌
+    private String nativePlace;        // 籍贯
+    private String nation;             // 民族
+    private String maritalStatus;      // 婚姻
+    private String mobilePhone;        // 联系电话
+    private String idCard;             // 身份证
+    private String homeAddress;        // 家庭住址
+    private String permanentAddress;   // 常驻地址
+    private String email;   // 邮箱
+    private String processDefinitionId;
+    private String procInsId;
+    private String registrationId;
+    @TableField(exist = false)
+    private List<WorkAttachmentInfoDTO> idCardFront; //身份证正面
+    @TableField(exist = false)
+    private List<WorkAttachmentInfoDTO> idCardBack; //身份证反面
+
+    @TableField(exist = false)
+    private List<EnrollmentEduInfo> eduInfoList; //教育经历
+    @TableField(exist = false)
+    private List<EnrollmentWorkInfo> workInfoList; //工作经历
+    @TableField(exist = false)
+    private List<EnrollmentTrainingInfo> trainingInfoList; //培训经历
+    @TableField(exist = false)
+    private List<EnrollmentCertificateInfo> certificateInfoList; //资质证书
+    @TableField(exist = false)
+    private List<EnrollmentSkillInfo> skillInfoList; //专业技能
+    @TableField(exist = false)
+    private List<EnrollmentLanguageInfo> languageInfoList; //语言能力
+    @TableField(exist = false)
+    private List<EnrollmentFamilyInfo> familyInfoList; //家庭成员
+    @TableField(exist = false)
+    private List<EnrollmentRewardInfo> rewardInfoList; //奖项信息
+
+}

+ 3 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/domain/EnrollmentWorkInfo.java

@@ -53,4 +53,7 @@ public class EnrollmentWorkInfo extends BaseEntity {
     private String isCurrentCompanyExperience;
     /** 用户id */
     private String userId;
+
+    /** 状态 */
+    private String status;
 }

+ 17 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/mapper/EnrollmentUserInfoAuditMapper.java

@@ -0,0 +1,17 @@
+package com.jeeplus.human.enrollment.enrollmentRegistration.mapper;
+
+import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jeeplus.human.enrollment.enrollmentRegistration.domain.EnrollmentUserInfoAudit;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @version 1.0
+ * @date
+ */
+@Mapper
+@InterceptorIgnore(tenantLine = "true")
+public interface EnrollmentUserInfoAuditMapper extends BaseMapper<EnrollmentUserInfoAudit> {
+
+
+}

+ 11 - 10
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/mapper/xml/EnrollmentCertificateInfoMapper.xml

@@ -9,13 +9,14 @@
         a.update_by_id,
         a.update_time,
         a.del_flag,
-        a.certificate_name,
-        a.other_certificate_name,
-        a.certificate_number,
-        a.issuing_authority,
-        a.issue_date,
-        a.valid_until,
-        a.enrollment_registration_id,
+        a.type,
+        a.authorities,
+        a.no,
+        a.issued_date,
+        a.enroll_date,
+        a.expire_date,
+        a.enroll_cert_no,
+        a.profession,
         a.user_id,
         a.remarks
     </sql>
@@ -24,7 +25,7 @@
             resultType="com.jeeplus.human.enrollment.enrollmentRegistration.domain.EnrollmentCertificateInfo">
         select
         <include refid="Base_Column_List"/>
-        from human_resources_enrollment_certificate_info a
+        from sys_cert a
         where a.del_flag = '0'
         <if test="userId != null and userId != ''">
             and a.user_id = #{userId}
@@ -36,14 +37,14 @@
         <include refid="Base_Column_List"></include>,
         re.name as userName,
         so.name as departmentName
-        from human_resources_enrollment_certificate_info a
+        from sys_cert a
         left join human_resources_enrollment_registration re on a.user_id = re.user_id
         left join sys_office so on re.department = so.id
         where a.id = #{id} and a.del_flag = '0'
     </select>
 
     <delete id="deleteByRegistrationId" parameterType="String">
-        DELETE FROM human_resources_enrollment_certificate_info
+        DELETE FROM sys_cert
         WHERE enrollment_registration_id = #{enrollmentRegistrationId}
     </delete>
 

+ 7 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/mapper/xml/EnrollmentEduInfoMapper.xml

@@ -69,4 +69,11 @@
             del_flag = 0
           AND attachment_id = #{id}
     </select>
+
+    <update id="updateStatusByRegistrationId" parameterType="map">
+        UPDATE human_resources_enrollment_edu_info
+        SET status = #{status}
+        WHERE enrollment_registration_id = #{enrollmentRegistrationId}
+        AND user_id = #{userId} AND status = #{status}
+    </update>
 </mapper>

+ 74 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/mapper/xml/EnrollmentUserInfoAuditMapper.xml

@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.jeeplus.human.enrollment.enrollmentRegistration.mapper.EnrollmentUserInfoAuditMapper">
+
+    <sql id="Base_Column_List">
+        a.id,
+        a.create_by_id,
+        a.create_time,
+        a.update_by_id,
+        a.update_time,
+        a.del_flag,
+        a.remarks,
+        a.status,
+        a.user_id,
+        a.name,
+        a.sex,
+        a.age,
+        a.birthday,
+        a.join_industry_date,
+        a.join_work_date,
+        a.political_outlook,
+        a.native_place,
+        a.nation,
+        a.marital_status,
+        a.mobile_phone,
+        a.id_card,
+        a.home_address,
+        a.permanent_address,
+        a.registration_id
+    </sql>
+
+    <select id="getByRegistrationId"
+            resultType="com.jeeplus.human.enrollment.enrollmentRegistration.domain.EnrollmentUserInfoAudit">
+        select
+        <include refid="Base_Column_List"></include>
+        from human_resources_enrollment_edu_info a
+        where a.del_flag = '0'
+        <if test="userId != null and userId != ''">
+            and a.user_id = #{userId}
+        </if>
+    </select>
+
+    <select id="getById"
+            resultType="com.jeeplus.human.enrollment.enrollmentRegistration.domain.EnrollmentUserInfoAudit">
+        select
+        <include refid="Base_Column_List"></include>,
+        re.name as userName,
+        so.name as departmentName
+        from human_resources_enrollment_edu_info a
+        left join human_resources_enrollment_registration re on a.user_id = re.user_id
+        left join sys_office so on re.department = so.id
+        where a.id = #{id} and a.del_flag = '0'
+    </select>
+
+    <delete id="deleteByRegistrationId" parameterType="String">
+        DELETE FROM human_resources_enrollment_edu_info
+        WHERE enrollment_registration_id = #{enrollmentRegistrationId}
+    </delete>
+
+    <select id="findDtos" resultType="com.jeeplus.sys.service.dto.WorkAttachmentInfoDTO">
+        SELECT
+            id,
+            url,
+            attachment_name AS `name`,
+            create_by_id AS `by`,
+            create_time,
+            attachment_flag AS attachmentFlag
+        FROM
+            work_attachment
+        WHERE
+            del_flag = 0
+          AND attachment_id = #{id}
+    </select>
+</mapper>

+ 12 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentCertificateInfoService.java

@@ -60,11 +60,22 @@ public class EnrollmentCertificateInfoService extends ServiceImpl<EnrollmentCert
      * 根据关联id查询所有数据
      * @return
      */
-    public List<EnrollmentCertificateInfo> findByUserId(String id)  {
+    public List<EnrollmentCertificateInfo> findByUserId(String id,String status)  {
         QueryWrapper<EnrollmentCertificateInfo> queryWrapper = new QueryWrapper<>();
         if(StringUtils.isNotBlank(id)){
             queryWrapper.eq("user_id",id);
         }
+        if(StringUtils.isNotBlank(status)){
+            if("5".equals(status)){
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "5").or().isNull("status").or().eq("status", "")
+                );
+            }else{
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "2").or().eq("status", "4")
+                );
+            }
+        }
         List<EnrollmentCertificateInfo> infos = mapper.selectList(queryWrapper);
         // 查询附件信息
         for (EnrollmentCertificateInfo eduInfo : infos) {

+ 12 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentEduInfoService.java

@@ -60,11 +60,22 @@ public class EnrollmentEduInfoService extends ServiceImpl<EnrollmentEduInfoMappe
         return info;
     }
 
-    public List<EnrollmentEduInfo> findByUserId(String id) {
+    public List<EnrollmentEduInfo> findByUserId(String id,String status) {
         QueryWrapper<EnrollmentEduInfo> queryWrapper = new QueryWrapper<>();
         if (StringUtils.isNotBlank(id)) {
             queryWrapper.eq("user_id", id);
         }
+        if(StringUtils.isNotBlank(status)){
+            if("5".equals(status)){
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "5").or().isNull("status").or().eq("status", "")
+                );
+            }else{
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "2").or().eq("status", "4")
+                );
+            }
+        }
         List<EnrollmentEduInfo> enrollmentEduInfos = eduInfoMapper.selectList(queryWrapper);
         // 查询附件信息
         for (EnrollmentEduInfo eduInfo : enrollmentEduInfos) {

+ 12 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentFamilyInfoService.java

@@ -42,11 +42,22 @@ public class EnrollmentFamilyInfoService extends ServiceImpl<EnrollmentFamilyInf
      * 根据关联id查询所有数据
      * @return
      */
-    public List<EnrollmentFamilyInfo> findByUserId(String id)  {
+    public List<EnrollmentFamilyInfo> findByUserId(String id,String status)  {
         QueryWrapper<EnrollmentFamilyInfo> queryWrapper = new QueryWrapper<>();
         if (StringUtils.isNotBlank(id)) {
             queryWrapper.eq("user_id", id);
         }
+        if(StringUtils.isNotBlank(status)){
+            if("5".equals(status)){
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "5").or().isNull("status").or().eq("status", "")
+                );
+            }else{
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "2").or().eq("status", "4")
+                );
+            }
+        }
         List<EnrollmentFamilyInfo> infos = mapper.selectList(queryWrapper);
         return infos;
     }

+ 12 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentLanguageInfoService.java

@@ -60,11 +60,22 @@ public class EnrollmentLanguageInfoService extends ServiceImpl<EnrollmentLanguag
      * 根据关联id查询所有数据
      * @return
      */
-    public List<EnrollmentLanguageInfo> findByUserId(String id)  {
+    public List<EnrollmentLanguageInfo> findByUserId(String id,String status)  {
         QueryWrapper<EnrollmentLanguageInfo> queryWrapper = new QueryWrapper<>();
         if (StringUtils.isNotBlank(id)) {
             queryWrapper.eq("user_id", id);
         }
+        if(com.jeeplus.utils.StringUtils.isNotBlank(status)){
+            if("5".equals(status)){
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "5").or().isNull("status").or().eq("status", "")
+                );
+            }else{
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "2").or().eq("status", "4")
+                );
+            }
+        }
         List<EnrollmentLanguageInfo> infos = mapper.selectList(queryWrapper);
         // 查询附件信息
         for (EnrollmentLanguageInfo eduInfo : infos) {

+ 362 - 16
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentRegistrationService.java

@@ -18,6 +18,7 @@ import com.jeeplus.common.SecurityUtils;
 import com.jeeplus.common.TokenProvider;
 import com.jeeplus.core.query.QueryWrapperGenerator;
 import com.jeeplus.flowable.feign.IFlowableApi;
+import com.jeeplus.human.depart.handover.domain.HandoverSocialSecurity;
 import com.jeeplus.human.enrollment.enrollmentRegistration.domain.*;
 import com.jeeplus.human.enrollment.enrollmentRegistration.mapper.EnrollmentRegistrationMapper;
 import com.jeeplus.human.enrollment.enrollmentRegistration.mapper.EnrollmentSocialSecurityCardMapper;
@@ -90,6 +91,9 @@ public class EnrollmentRegistrationService extends ServiceImpl<EnrollmentRegistr
     @Resource
     private EnrollmentRewardInfoService rewardInfoService;
 
+    @Resource
+    private EnrollmentUserInfoAuditService userInfoAuditService;
+
     /**
      * 实习人员登记表信息
      *
@@ -340,6 +344,21 @@ public class EnrollmentRegistrationService extends ServiceImpl<EnrollmentRegistr
     }
 
 
+    public Map<String, String> pingMapUserId(String procDefId, String procDefKey, String businessTable,
+                                             String businessId, String title, String assignee, String recordType, String userId) {
+        Map<String, String> map = new HashMap();
+        map.put("procDefId", procDefId);
+        map.put("procDefKey", procDefKey);
+        map.put("businessTable", businessTable);
+        map.put("businessId", businessId);
+        map.put("title", title);
+        map.put("assignee", assignee);
+        map.put("recordType", recordType);
+        map.put("userId", userId);
+        return map;
+    }
+
+
     /**
      * 修改
      */
@@ -656,41 +675,89 @@ public class EnrollmentRegistrationService extends ServiceImpl<EnrollmentRegistr
 
             String userId = info.getUserId();
             //查询教育经历数据
-            List<EnrollmentEduInfo> eduInfoList = eduInfoService.findByUserId(userId);
+            List<EnrollmentEduInfo> eduInfoList = eduInfoService.findByUserId(userId,"5");
             info.setEduInfoList(eduInfoList);
 
             //查询工作经历数据
-            List<EnrollmentWorkInfo> workInfos = workInfoService.findByUserId(userId);
+            List<EnrollmentWorkInfo> workInfos = workInfoService.findByUserId(userId,"5");
             info.setWorkInfoList(workInfos);
 
             //查询培训经历数据
-            List<EnrollmentTrainingInfo> trainingInfos = trainingInfoService.findByUserId(userId);
+            List<EnrollmentTrainingInfo> trainingInfos = trainingInfoService.findByUserId(userId,"5");
             info.setTrainingInfoList(trainingInfos);
 
             //查询资质证书数据
-            List<EnrollmentCertificateInfo> certificateInfoList = certificateInfoService.findByUserId(userId);
+            List<EnrollmentCertificateInfo> certificateInfoList = certificateInfoService.findByUserId(userId,"5");
             info.setCertificateInfoList(certificateInfoList);
 
             //查询专业技能数据
-            List<EnrollmentSkillInfo> skillInfoList = skillInfoService.findByUserId(userId);
+            List<EnrollmentSkillInfo> skillInfoList = skillInfoService.findByUserId(userId,"5");
             info.setSkillInfoList(skillInfoList);
 
             //查询语言能力数据
-            List<EnrollmentLanguageInfo> languageInfoList = languageInfoService.findByUserId(userId);
+            List<EnrollmentLanguageInfo> languageInfoList = languageInfoService.findByUserId(userId,"5");
             info.setLanguageInfoList(languageInfoList);
 
             //查询家庭成员数据
-            List<EnrollmentFamilyInfo> familyInfoList = familyInfoService.findByUserId(userId);
+            List<EnrollmentFamilyInfo> familyInfoList = familyInfoService.findByUserId(userId,"5");
             info.setFamilyInfoList(familyInfoList);
 
             //查询奖项信息
-            List<EnrollmentRewardInfo> rewardInfoList = rewardInfoService.findByUserId(userId);
+            List<EnrollmentRewardInfo> rewardInfoList = rewardInfoService.findByUserId(userId,"5");
             info.setRewardInfoList(rewardInfoList);
         }
 
         return info;
     }
 
+    public EnrollmentUserInfoAudit findAuditInfoById(String id) {
+        EnrollmentUserInfoAudit info = userInfoAuditService.getById(id);
+
+        if (ObjectUtil.isNotEmpty(info)) {
+            // 查询身份证正反面信息
+            List<WorkAttachmentInfoDTO> idCardFront = mapper.findDtos(info.getId(), "idCardFront");
+            List<WorkAttachmentInfoDTO> idCardBack = mapper.findDtos(info.getId(), "idCardBack");
+            if (CollectionUtils.isNotEmpty(idCardFront)) {
+                info.setIdCardFront(idCardFront);
+            }
+            if (CollectionUtils.isNotEmpty(idCardBack)) {
+                info.setIdCardBack(idCardBack);
+            }
+            String userId = info.getUserId();
+            //查询教育经历数据
+            List<EnrollmentEduInfo> eduInfoList = eduInfoService.findByUserId(userId, "2");
+            info.setEduInfoList(eduInfoList);
+
+            //查询工作经历数据
+            List<EnrollmentWorkInfo> workInfos = workInfoService.findByUserId(userId, "2");
+            info.setWorkInfoList(workInfos);
+
+            //查询培训经历数据
+            List<EnrollmentTrainingInfo> trainingInfos = trainingInfoService.findByUserId(userId, "2");
+            info.setTrainingInfoList(trainingInfos);
+
+            //查询资质证书数据
+            List<EnrollmentCertificateInfo> certificateInfoList = certificateInfoService.findByUserId(userId, "2");
+            info.setCertificateInfoList(certificateInfoList);
+
+            //查询专业技能数据
+            List<EnrollmentSkillInfo> skillInfoList = skillInfoService.findByUserId(userId, "2");
+            info.setSkillInfoList(skillInfoList);
+
+            //查询语言能力数据
+            List<EnrollmentLanguageInfo> languageInfoList = languageInfoService.findByUserId(userId, "2");
+            info.setLanguageInfoList(languageInfoList);
+
+            //查询家庭成员数据
+            List<EnrollmentFamilyInfo> familyInfoList = familyInfoService.findByUserId(userId, "2");
+            info.setFamilyInfoList(familyInfoList);
+
+            //查询奖项信息
+            List<EnrollmentRewardInfo> rewardInfoList = rewardInfoService.findByUserId(userId, "2");
+            info.setRewardInfoList(rewardInfoList);
+        }
+        return info;
+    }
 
     public Integer findByUserId(String userId) throws Exception {
         QueryWrapper<EnrollmentRegistration> queryWrapper = new QueryWrapper<>();
@@ -736,35 +803,35 @@ public class EnrollmentRegistrationService extends ServiceImpl<EnrollmentRegistr
 
             String userId = info.getUserId();
             //查询教育经历数据
-            List<EnrollmentEduInfo> eduInfoList = eduInfoService.findByUserId(userId);
+            List<EnrollmentEduInfo> eduInfoList = eduInfoService.findByUserId(userId, "5");
             info.setEduInfoList(eduInfoList);
 
             //查询工作经历数据
-            List<EnrollmentWorkInfo> workInfos = workInfoService.findByUserId(userId);
+            List<EnrollmentWorkInfo> workInfos = workInfoService.findByUserId(userId, "5");
             info.setWorkInfoList(workInfos);
 
             //查询培训经历数据
-            List<EnrollmentTrainingInfo> trainingInfos = trainingInfoService.findByUserId(userId);
+            List<EnrollmentTrainingInfo> trainingInfos = trainingInfoService.findByUserId(userId, "5");
             info.setTrainingInfoList(trainingInfos);
 
             //查询资质证书数据
-            List<EnrollmentCertificateInfo> certificateInfoList = certificateInfoService.findByUserId(userId);
+            List<EnrollmentCertificateInfo> certificateInfoList = certificateInfoService.findByUserId(userId, "5");
             info.setCertificateInfoList(certificateInfoList);
 
             //查询专业技能数据
-            List<EnrollmentSkillInfo> skillInfoList = skillInfoService.findByUserId(userId);
+            List<EnrollmentSkillInfo> skillInfoList = skillInfoService.findByUserId(userId, "5");
             info.setSkillInfoList(skillInfoList);
 
             //查询语言能力数据
-            List<EnrollmentLanguageInfo> languageInfoList = languageInfoService.findByUserId(userId);
+            List<EnrollmentLanguageInfo> languageInfoList = languageInfoService.findByUserId(userId, "5");
             info.setLanguageInfoList(languageInfoList);
 
             //查询家庭成员数据
-            List<EnrollmentFamilyInfo> familyInfoList = familyInfoService.findByUserId(userId);
+            List<EnrollmentFamilyInfo> familyInfoList = familyInfoService.findByUserId(userId, "5");
             info.setFamilyInfoList(familyInfoList);
 
             //查询奖项信息
-            List<EnrollmentRewardInfo> rewardInfoList = rewardInfoService.findByUserId(id);
+            List<EnrollmentRewardInfo> rewardInfoList = rewardInfoService.findByUserId(id, "5");
             info.setRewardInfoList(rewardInfoList);
         }
 
@@ -870,6 +937,220 @@ public class EnrollmentRegistrationService extends ServiceImpl<EnrollmentRegistr
         }
     }
 
+    /**
+     * 将用户信息备份保存并设为审核状态
+     *
+     * @param registrationData
+     */
+    public void updateInfoAudit(EnrollmentRegistration registrationData) {
+        try {
+            UserDTO userDTO = SpringUtil.getBean(IUserApi.class).getByToken(TokenProvider.getCurrentToken());
+            EnrollmentUserInfoAudit enrollmentUserInfoAudit = new EnrollmentUserInfoAudit();
+            String id = UUID.randomUUID().toString().replace("-", "");
+            BeanUtils.copyProperties(registrationData, enrollmentUserInfoAudit);
+            enrollmentUserInfoAudit.setStatus("2");
+            if(!"4".equals(registrationData.getStatus())){
+                enrollmentUserInfoAudit.setId(id);
+                enrollmentUserInfoAudit.setRegistrationId(registrationData.getId());
+            }else{
+                enrollmentUserInfoAudit.setId(registrationData.getId());
+                enrollmentUserInfoAudit.setRegistrationId(registrationData.getRegistrationId());
+            }
+            //发起员工信息审批流程
+            Map map = SpringUtil.getBean(IFlowableApi.class).getByNameForFen("员工信息审批");
+            String procDefId = map.get("id") + "";
+            enrollmentUserInfoAudit.setProcessDefinitionId(procDefId);
+            userInfoAuditService.saveOrUpdate(enrollmentUserInfoAudit);
+            Map<String, Map<String, String>> allMap = new HashMap<>();
+            String procDefKey = map.get("key") + "";
+            String businessTable = "human_resources_enrollment_user_info_audit";
+            String businessId = enrollmentUserInfoAudit.getId();
+            String title = enrollmentUserInfoAudit.getName() + "发起了- [" + enrollmentUserInfoAudit.getName() + "员工信息完善]";
+            //根据角色查用户信息
+            RoleDTO roleDTO = SpringUtil.getBean(IRoleApi.class).getRoleDTOByName2("实习信息审核员");
+            String assignee = getAssignee(roleDTO.getId());
+            String recordType = "";
+            Map<String, String> newMap = pingMap(procDefId, procDefKey, businessTable, businessId, title, assignee, recordType);
+            allMap.put("员工信息审批", newMap);
+            SpringUtil.getBean(IFlowableApi.class).startForFenNew(allMap);
+
+            if(!"4".equals(registrationData.getStatus())){
+                IWorkAttachmentApi workAttachmentApi = SpringUtil.getBean(IWorkAttachmentApi.class);
+                SpringUtil.getBean(IWorkAttachmentApi.class).deleteByAttachmentId(enrollmentUserInfoAudit.getId());
+                saveAttachments(enrollmentUserInfoAudit.getIdCardFront(), "idCardFront", enrollmentUserInfoAudit.getId(), userDTO, workAttachmentApi);
+                saveAttachments(enrollmentUserInfoAudit.getIdCardBack(), "idCardBack", enrollmentUserInfoAudit.getId(), userDTO, workAttachmentApi);
+                saveEnrollmentDetailInfo(registrationData);
+            }else{
+                updateEnrollmentDetailInfo(registrationData);
+            }
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    public void saveEnrollmentDetailInfo(EnrollmentRegistration dto) {
+        // 教育经历
+        List<EnrollmentEduInfo> eduList = dto.getEduInfoList();
+        if (CollectionUtils.isNotEmpty(eduList)) {
+            eduList.forEach(item -> {
+                item.setId("");
+                item.setStatus("2");
+                eduInfoService.add(item);
+            });
+        }
+
+        // 工作经历
+        List<EnrollmentWorkInfo> workList = dto.getWorkInfoList();
+        if (CollectionUtils.isNotEmpty(workList)) {
+            workList.forEach(item -> {
+                item.setId("");
+                item.setStatus("2");
+                workInfoService.add(item);
+            });
+        }
+
+        // 培训经历
+        List<EnrollmentTrainingInfo> trainingList = dto.getTrainingInfoList();
+        if (CollectionUtils.isNotEmpty(trainingList)) {
+            trainingList.forEach(item -> item.setStatus("2"));
+            trainingList.forEach(item -> {
+                item.setId("");
+                item.setStatus("2");
+                trainingInfoService.add(item);
+            });
+        }
+
+        // 资质证书
+        List<EnrollmentCertificateInfo> certificateList = dto.getCertificateInfoList();
+        if (CollectionUtils.isNotEmpty(certificateList)) {
+            certificateList.forEach(item -> {
+                item.setId("");
+                item.setStatus("2");
+                certificateInfoService.add(item);
+            });
+        }
+
+        // 专业技能
+        List<EnrollmentSkillInfo> skillList = dto.getSkillInfoList();
+        if (CollectionUtils.isNotEmpty(skillList)) {
+            skillList.forEach(item -> {
+                item.setId("");
+                item.setStatus("2");
+                skillInfoService.add(item);
+            });
+        }
+
+        // 语言能力
+        List<EnrollmentLanguageInfo> languageList = dto.getLanguageInfoList();
+        if (CollectionUtils.isNotEmpty(languageList)) {
+            languageList.forEach(item -> {
+                item.setId("");
+                item.setStatus("2");
+                languageInfoService.add(item);
+            });
+
+        }
+
+        // 家庭成员
+        List<EnrollmentFamilyInfo> familyList = dto.getFamilyInfoList();
+        if (CollectionUtils.isNotEmpty(familyList)) {
+            familyList.forEach(item -> {
+                item.setId("");
+                item.setStatus("2");
+                familyInfoService.add(item);
+            });
+        }
+
+        // 奖项信息
+        List<EnrollmentRewardInfo> rewardList = dto.getRewardInfoList();
+        if (CollectionUtils.isNotEmpty(rewardList)) {
+            rewardList.forEach(item -> {
+                item.setId("");
+                item.setStatus("2");
+                rewardInfoService.add(item);
+            });
+
+        }
+    }
+
+    public void updateEnrollmentDetailInfo(EnrollmentRegistration dto) {
+        // 教育经历
+        List<EnrollmentEduInfo> eduList = dto.getEduInfoList();
+        if (CollectionUtils.isNotEmpty(eduList)) {
+            eduList.forEach(item -> {
+                item.setStatus("2");
+                eduInfoService.saveOrUpdate(item);
+            });
+        }
+
+        // 工作经历
+        List<EnrollmentWorkInfo> workList = dto.getWorkInfoList();
+        if (CollectionUtils.isNotEmpty(workList)) {
+            workList.forEach(item -> {
+                item.setStatus("2");
+                workInfoService.saveOrUpdate(item);
+            });
+        }
+
+        // 培训经历
+        List<EnrollmentTrainingInfo> trainingList = dto.getTrainingInfoList();
+        if (CollectionUtils.isNotEmpty(trainingList)) {
+            trainingList.forEach(item -> item.setStatus("2"));
+            trainingList.forEach(item -> {
+                item.setStatus("2");
+                trainingInfoService.saveOrUpdate(item);
+            });
+        }
+
+        // 资质证书
+        List<EnrollmentCertificateInfo> certificateList = dto.getCertificateInfoList();
+        if (CollectionUtils.isNotEmpty(certificateList)) {
+            certificateList.forEach(item -> {
+                item.setStatus("2");
+                certificateInfoService.saveOrUpdate(item);
+            });
+        }
+
+        // 专业技能
+        List<EnrollmentSkillInfo> skillList = dto.getSkillInfoList();
+        if (CollectionUtils.isNotEmpty(skillList)) {
+            skillList.forEach(item -> {
+                item.setStatus("2");
+                skillInfoService.saveOrUpdate(item);
+            });
+        }
+
+        // 语言能力
+        List<EnrollmentLanguageInfo> languageList = dto.getLanguageInfoList();
+        if (CollectionUtils.isNotEmpty(languageList)) {
+            languageList.forEach(item -> {
+                item.setStatus("2");
+                languageInfoService.saveOrUpdate(item);
+            });
+
+        }
+
+        // 家庭成员
+        List<EnrollmentFamilyInfo> familyList = dto.getFamilyInfoList();
+        if (CollectionUtils.isNotEmpty(familyList)) {
+            familyList.forEach(item -> {
+                item.setStatus("2");
+                familyInfoService.saveOrUpdate(item);
+            });
+        }
+
+        // 奖项信息
+        List<EnrollmentRewardInfo> rewardList = dto.getRewardInfoList();
+        if (CollectionUtils.isNotEmpty(rewardList)) {
+            rewardList.forEach(item -> {
+                item.setStatus("2");
+                rewardInfoService.saveOrUpdate(item);
+            });
+
+        }
+    }
+
+
     public void updateRegistration(EnrollmentRegistration reportData) throws ApiException {
 
         //获取当前登录人信息
@@ -1080,6 +1361,71 @@ public class EnrollmentRegistrationService extends ServiceImpl<EnrollmentRegistr
 
     }
 
+
+    public void updateAuditRegistration(EnrollmentRegistration reportData) throws ApiException {
+
+        //获取当前登录人信息
+        UserDTO userDTO = SpringUtil.getBean(IUserApi.class).getByToken(TokenProvider.getCurrentToken());
+
+        EnrollmentRegistration report = new EnrollmentRegistration();
+        BeanUtils.copyProperties(reportData, report);
+        report.setUpdateById(userDTO.getId());
+        report.setUpdateTime(new Date());
+
+        updateIdCard(reportData);
+
+        String dictValue = SpringUtil.getBean(IDictApi.class).getDictValue("dd_status", "dd_status", "0");
+        if ("1".equals(dictValue)) {
+            //钉钉逻辑
+            //获取用户所在部门信息
+            OfficeDTO officeDto = SpringUtil.getBean(IOfficeApi.class).getOfficeById(report.getDepartment());
+            String tenantId = officeDto.getTenantId();
+            //判断用户是否为 评估 或者 会计 的公司
+            if (tenantId.equals("10003") || tenantId.equals("10001")) {
+                //获取钉钉所有部门信息
+                List<OapiV2DepartmentListsubResponse.DeptBaseResponse> deptBaseResponses = dingTalkUtils.deptList(tenantId);
+                for (OapiV2DepartmentListsubResponse.DeptBaseResponse dept : deptBaseResponses) {
+                    //找到用户所在的钉钉部门
+                    if (officeDto.getName().equals(dept.getName())) {
+                        // 相应逻辑
+                        DingTalkUserDTO dingTalkUserDTO = new DingTalkUserDTO();
+                        dingTalkUserDTO.setMobile(report.getMobilePhone());
+                        dingTalkUserDTO.setName(report.getName());
+                        dingTalkUserDTO.setDeptIdList(String.valueOf(dept.getDeptId()));
+                        if (StringUtils.isNotBlank(report.getDdId())) {
+                            dingTalkUserDTO.setUserid(report.getDdId());
+                            dingTalkUtils.updateUser(dingTalkUserDTO, tenantId);
+                        }
+                        break;
+                    }
+                }
+            }
+            //钉钉逻辑
+        }
+
+
+        mapper.updateById(report);
+
+        /**
+         * 修改用户信息
+         */
+        EnrollmentRegistration registration = mapper.getById(reportData.getId());
+        if (StringUtils.isNotBlank(registration.getUserId())) {
+            UserDTO dto = SpringUtil.getBean(IUserApi.class).getById(registration.getUserId());
+            if (dto != null) {
+                //往用户表中新增一条数据
+                UserDTO dto1 = new UserDTO();
+                dto1.setId(dto.getId());
+                dto1.setName(report.getName());
+                dto1.setMobile(report.getMobilePhone());
+                dto1.setNo(report.getMobilePhone());
+                dto1.setPhoto("");
+                SpringUtil.getBean(IUserApi.class).saveOrUpdate(dto1);
+            }
+        }
+
+    }
+
     public void insertIntoEnrollmentRegistrationInfo(String value) {
         EnrollmentRegistration infos = JSON.parseObject(value, new TypeReference<EnrollmentRegistration>() {
         });

+ 12 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentRewardInfoService.java

@@ -60,11 +60,22 @@ public class EnrollmentRewardInfoService extends ServiceImpl<EnrollmentRewardInf
      * 根据关联id查询所有数据
      * @return
      */
-    public List<EnrollmentRewardInfo> findByUserId(String id)  {
+    public List<EnrollmentRewardInfo> findByUserId(String id,String status)  {
         QueryWrapper<EnrollmentRewardInfo> queryWrapper = new QueryWrapper<>();
         if (StringUtils.isNotBlank(id)) {
             queryWrapper.eq("user_id", id);
         }
+        if(com.jeeplus.utils.StringUtils.isNotBlank(status)){
+            if("5".equals(status)){
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "5").or().isNull("status").or().eq("status", "")
+                );
+            }else{
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "2").or().eq("status", "4")
+                );
+            }
+        }
         List<EnrollmentRewardInfo> infos = mapper.selectList(queryWrapper);
         // 查询附件信息
         for (EnrollmentRewardInfo eduInfo : infos) {

+ 12 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentSkillInfoService.java

@@ -60,11 +60,22 @@ public class EnrollmentSkillInfoService extends ServiceImpl<EnrollmentSkillInfoM
      * 根据关联id查询所有数据
      * @return
      */
-    public List<EnrollmentSkillInfo> findByUserId(String id)  {
+    public List<EnrollmentSkillInfo> findByUserId(String id,String status)  {
         QueryWrapper<EnrollmentSkillInfo> queryWrapper = new QueryWrapper<>();
         if (StringUtils.isNotBlank(id)) {
             queryWrapper.eq("user_id", id);
         }
+        if(com.jeeplus.utils.StringUtils.isNotBlank(status)){
+            if("5".equals(status)){
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "5").or().isNull("status").or().eq("status", "")
+                );
+            }else{
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "2").or().eq("status", "4")
+                );
+            }
+        }
         List<EnrollmentSkillInfo> infos = mapper.selectList(queryWrapper);
         // 查询附件信息
         for (EnrollmentSkillInfo eduInfo : infos) {

+ 12 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentTrainingInfoService.java

@@ -58,11 +58,22 @@ public class EnrollmentTrainingInfoService extends ServiceImpl<EnrollmentTrainin
      * 根据关联id查询所有数据
      * @return
      */
-    public List<EnrollmentTrainingInfo> findByUserId(String id)  {
+    public List<EnrollmentTrainingInfo> findByUserId(String id,String status)  {
         QueryWrapper<EnrollmentTrainingInfo> queryWrapper = new QueryWrapper<>();
         if (StringUtils.isNotBlank(id)) {
             queryWrapper.eq("user_id", id);
         }
+        if(com.jeeplus.utils.StringUtils.isNotBlank(status)){
+            if("5".equals(status)){
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "5").or().isNull("status").or().eq("status", "")
+                );
+            }else{
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "2").or().eq("status", "4")
+                );
+            }
+        }
         List<EnrollmentTrainingInfo> infos = mapper.selectList(queryWrapper);
         // 查询附件信息
         for (EnrollmentTrainingInfo eduInfo : infos) {

+ 353 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentUserInfoAuditService.java

@@ -0,0 +1,353 @@
+package com.jeeplus.human.enrollment.enrollmentRegistration.service;
+
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.extra.spring.SpringUtil;
+import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jeeplus.common.TokenProvider;
+import com.jeeplus.flowable.feign.IFlowableApi;
+import com.jeeplus.human.enrollment.enrollmentRegistration.domain.*;
+import com.jeeplus.human.enrollment.enrollmentRegistration.mapper.EnrollmentRegistrationMapper;
+import com.jeeplus.human.enrollment.enrollmentRegistration.mapper.EnrollmentSkillInfoMapper;
+import com.jeeplus.human.enrollment.enrollmentRegistration.mapper.EnrollmentUserInfoAuditMapper;
+import com.jeeplus.sys.domain.WorkAttachmentInfo;
+import com.jeeplus.sys.feign.IUserApi;
+import com.jeeplus.sys.feign.IWorkAttachmentApi;
+import com.jeeplus.sys.service.dto.PostDTO;
+import com.jeeplus.sys.service.dto.RoleDTO;
+import com.jeeplus.sys.service.dto.UserDTO;
+import com.jeeplus.sys.service.dto.WorkAttachmentInfoDTO;
+import com.taobao.api.ApiException;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.concurrent.atomic.AtomicInteger;
+
+/**
+ * @version 1.0
+ * @date 2023-10-17 8:57
+ */
+@Service
+@Transactional
+public class EnrollmentUserInfoAuditService extends ServiceImpl<EnrollmentUserInfoAuditMapper, EnrollmentUserInfoAudit> {
+
+    @Resource
+    private EnrollmentUserInfoAuditMapper mapper;
+    @Resource
+    private EnrollmentRegistrationService enrollmentRegistrationService;
+
+    @Resource
+    private EnrollmentEduInfoService eduInfoService;
+
+    @Resource
+    private EnrollmentWorkInfoService workInfoService;
+    @Resource
+    private EnrollmentTrainingInfoService trainingInfoService;
+
+    @Resource
+    private EnrollmentCertificateInfoService certificateInfoService;
+    @Resource
+    private EnrollmentSkillInfoService skillInfoService;
+
+    @Resource
+    private EnrollmentLanguageInfoService languageInfoService;
+    @Resource
+    private EnrollmentFamilyInfoService familyInfoService;
+    @Resource
+    private EnrollmentRewardInfoService rewardInfoService;
+
+    @Resource
+    private EnrollmentRegistrationMapper registrationMapper;
+
+    @Resource
+    private IFlowableApi flowTaskService;
+
+
+    public void updateInfoAgree(EnrollmentUserInfoAudit registration) throws ApiException {
+        UserDTO userDTO = SpringUtil.getBean(IUserApi.class).getById(registration.getUserId());
+        EnrollmentRegistration enrollmentRegistration = new EnrollmentRegistration();
+        BeanUtils.copyProperties(registration, enrollmentRegistration);
+        enrollmentRegistration.setId(registration.getRegistrationId());
+        ArrayList<String> roles = new ArrayList<>();
+        ArrayList<String> posts = new ArrayList<>();
+        if (userDTO != null) {
+            if (CollectionUtil.isNotEmpty(userDTO.getRoleDTOList())) {
+                for (RoleDTO roleDTO : userDTO.getRoleDTOList()) {
+                    roles.add(roleDTO.getId());
+                }
+            }
+            if (CollectionUtil.isNotEmpty(userDTO.getPostDTOList())) {
+                for (PostDTO postDTO : userDTO.getPostDTOList()) {
+                    posts.add(postDTO.getId());
+                }
+            }
+        }
+        enrollmentRegistration.setRoleIdList(roles);
+        enrollmentRegistration.setPostIdList(posts);
+        //更新到主表
+        enrollmentRegistrationService.updateRegistration(enrollmentRegistration);
+        //删除备份的附件数据
+        SpringUtil.getBean(IWorkAttachmentApi.class).deleteByAttachmentId(registration.getId());
+        IWorkAttachmentApi workAttachmentApi = SpringUtil.getBean(IWorkAttachmentApi.class);
+        //重新保存附件数据作为主数据
+        saveAttachments(registration.getIdCardFront(), "idCardFront", enrollmentRegistration.getId(), userDTO, workAttachmentApi);
+        saveAttachments(registration.getIdCardBack(), "idCardBack", enrollmentRegistration.getId(), userDTO, workAttachmentApi);
+        EnrollmentUserInfoAudit entity = new EnrollmentUserInfoAudit();
+        entity.setId(registration.getId()); // 目标记录ID
+        String status = registration.getStatus();
+        mapper.deleteById(registration.getId());
+        String userId = registration.getUserId();
+        //删除旧数据
+        eduInfoService.remove(
+                new QueryWrapper<EnrollmentEduInfo>()
+                        .eq("user_id", userId)
+                        .and(wrapper ->
+                                wrapper.eq("status", "5")
+                                        .or().isNull("status")
+                                        .or().eq("status", "")
+                        )
+        );
+
+        workInfoService.remove(
+                new QueryWrapper<EnrollmentWorkInfo>()
+                        .eq("user_id", userId)
+                        .and(wrapper ->
+                                wrapper.eq("status", "5")
+                                        .or().isNull("status")
+                                        .or().eq("status", "")
+                        )
+        );
+
+        trainingInfoService.remove(
+                new QueryWrapper<EnrollmentTrainingInfo>()
+                        .eq("user_id", userId)
+                        .and(wrapper ->
+                                wrapper.eq("status", "5")
+                                        .or().isNull("status")
+                                        .or().eq("status", "")
+                        )
+        );
+
+        certificateInfoService.remove(
+                new QueryWrapper<EnrollmentCertificateInfo>()
+                        .eq("user_id", userId)
+                        .and(wrapper ->
+                                wrapper.eq("status", "5")
+                                        .or().isNull("status")
+                                        .or().eq("status", "")
+                        )
+        );
+
+        skillInfoService.remove(
+                new QueryWrapper<EnrollmentSkillInfo>()
+                        .eq("user_id", userId)
+                        .and(wrapper ->
+                                wrapper.eq("status", "5")
+                                        .or().isNull("status")
+                                        .or().eq("status", "")
+                        )
+        );
+
+        languageInfoService.remove(
+                new QueryWrapper<EnrollmentLanguageInfo>()
+                        .eq("user_id", userId)
+                        .and(wrapper ->
+                                wrapper.eq("status", "5")
+                                        .or().isNull("status")
+                                        .or().eq("status", "")
+                        )
+        );
+
+        familyInfoService.remove(
+                new QueryWrapper<EnrollmentFamilyInfo>()
+                        .eq("user_id", userId)
+                        .and(wrapper ->
+                                wrapper.eq("status", "5")
+                                        .or().isNull("status")
+                                        .or().eq("status", "")
+                        )
+        );
+
+        rewardInfoService.remove(
+                new QueryWrapper<EnrollmentRewardInfo>()
+                        .eq("user_id", userId)
+                        .and(wrapper ->
+                                wrapper.eq("status", "5")
+                                        .or().isNull("status")
+                                        .or().eq("status", "")
+                        )
+        );
+        //  修改数据状态
+        eduInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentEduInfo>()
+                        .eq(EnrollmentEduInfo::getUserId, userId)
+                        .eq(EnrollmentEduInfo::getStatus, status)
+                        .set(EnrollmentEduInfo::getStatus, "5")
+        );
+        workInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentWorkInfo>()
+                        .eq(EnrollmentWorkInfo::getUserId, userId)
+                        .eq(EnrollmentWorkInfo::getStatus, status)
+                        .set(EnrollmentWorkInfo::getStatus, "5")
+        );
+
+        trainingInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentTrainingInfo>()
+                        .eq(EnrollmentTrainingInfo::getUserId, userId)
+                        .eq(EnrollmentTrainingInfo::getStatus, status)
+                        .set(EnrollmentTrainingInfo::getStatus, "5")
+        );
+
+        certificateInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentCertificateInfo>()
+                        .eq(EnrollmentCertificateInfo::getUserId, userId)
+                        .eq(EnrollmentCertificateInfo::getStatus, status)
+                        .set(EnrollmentCertificateInfo::getStatus, "5")
+        );
+
+        skillInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentSkillInfo>()
+                        .eq(EnrollmentSkillInfo::getUserId, userId)
+                        .eq(EnrollmentSkillInfo::getStatus, status)
+                        .set(EnrollmentSkillInfo::getStatus, "5")
+        );
+
+        languageInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentLanguageInfo>()
+                        .eq(EnrollmentLanguageInfo::getUserId, userId)
+                        .eq(EnrollmentLanguageInfo::getStatus, status)
+                        .set(EnrollmentLanguageInfo::getStatus, "5")
+        );
+
+        familyInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentFamilyInfo>()
+                        .eq(EnrollmentFamilyInfo::getUserId, userId)
+                        .eq(EnrollmentFamilyInfo::getStatus, status)
+                        .set(EnrollmentFamilyInfo::getStatus, "5")
+        );
+
+        rewardInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentRewardInfo>()
+                        .eq(EnrollmentRewardInfo::getUserId, userId)
+                        .eq(EnrollmentRewardInfo::getStatus, status)
+                        .set(EnrollmentRewardInfo::getStatus, "5")
+        );
+    }
+
+    public void updateInfoReject(EnrollmentUserInfoAudit registration) throws ApiException {
+        UserDTO userDTO = SpringUtil.getBean(IUserApi.class).getById(registration.getUserId());
+        //审批不通过后,删除所有数据,重置状态,恢复审批前的数据
+        EnrollmentUserInfoAudit enrollmentUserInfoAudit = new EnrollmentUserInfoAudit();
+        //mapper.deleteById(registration.getId());
+        enrollmentUserInfoAudit.setId(registration.getId());
+        enrollmentUserInfoAudit.setStatus("4");
+        mapper.updateById(enrollmentUserInfoAudit);
+        //SpringUtil.getBean(IWorkAttachmentApi.class).deleteByAttachmentId(registration.getId());
+        String userId = registration.getUserId();
+        String status = "4";
+        sendNotify(userDTO,registration.getProcessDefinitionId());
+        //  修改数据状态
+        eduInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentEduInfo>()
+                        .eq(EnrollmentEduInfo::getUserId, userId)
+                        .eq(EnrollmentEduInfo::getStatus, "2")
+                        .set(EnrollmentEduInfo::getStatus,status)
+        );
+        workInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentWorkInfo>()
+                        .eq(EnrollmentWorkInfo::getUserId, userId)
+                        .eq(EnrollmentWorkInfo::getStatus, "2")
+                        .set(EnrollmentWorkInfo::getStatus,status)
+        );
+
+        trainingInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentTrainingInfo>()
+                        .eq(EnrollmentTrainingInfo::getUserId, userId)
+                        .eq(EnrollmentTrainingInfo::getStatus, "2")
+                        .set(EnrollmentTrainingInfo::getStatus,status)
+        );
+
+        certificateInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentCertificateInfo>()
+                        .eq(EnrollmentCertificateInfo::getUserId, userId)
+                        .eq(EnrollmentCertificateInfo::getStatus, "2")
+                        .set(EnrollmentCertificateInfo::getStatus, status)
+        );
+
+        skillInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentSkillInfo>()
+                        .eq(EnrollmentSkillInfo::getUserId, userId)
+                        .eq(EnrollmentSkillInfo::getStatus, "2")
+                        .set(EnrollmentSkillInfo::getStatus,status)
+        );
+
+        languageInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentLanguageInfo>()
+                        .eq(EnrollmentLanguageInfo::getUserId, userId)
+                        .eq(EnrollmentLanguageInfo::getStatus, "2")
+                        .set(EnrollmentLanguageInfo::getStatus, status)
+        );
+
+        familyInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentFamilyInfo>()
+                        .eq(EnrollmentFamilyInfo::getUserId, userId)
+                        .eq(EnrollmentFamilyInfo::getStatus, "2")
+                        .set(EnrollmentFamilyInfo::getStatus, status)
+        );
+
+        rewardInfoService.update(
+                new LambdaUpdateWrapper<EnrollmentRewardInfo>()
+                        .eq(EnrollmentRewardInfo::getUserId, userId)
+                        .eq(EnrollmentRewardInfo::getStatus, "2")
+                        .set(EnrollmentRewardInfo::getStatus, status)
+        );
+    }
+
+    private void saveAttachments(List<WorkAttachmentInfoDTO> attachmentList, String flag, String attachmentId, UserDTO userDTO, IWorkAttachmentApi workAttachmentApi) {
+        if (ObjectUtil.isEmpty(attachmentList)) return;
+        AtomicInteger sort = new AtomicInteger(1);
+        for (WorkAttachmentInfoDTO item : attachmentList) {
+            WorkAttachmentInfo workAttachmentDto = new WorkAttachmentInfo();
+            workAttachmentDto.setName(item.getName());
+            workAttachmentDto.setSize(item.getSize());
+            workAttachmentDto.setUrl(item.getUrl());
+            Map<String, String> map = new HashMap<>();
+            map.put("workAttachmentDtoInfo", JSON.toJSONString(workAttachmentDto));
+            map.put("userDTOInfo", JSON.toJSONString(userDTO));
+            map.put("attachmentId", attachmentId);
+            map.put("attachmentFlag", flag);
+            map.put("sortInfo", String.valueOf(sort.getAndIncrement()));
+            workAttachmentApi.saveFile(map);
+        }
+    }
+
+
+    public void sendNotify(UserDTO userDto,String defId){
+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
+        String day = format.format(new Date());
+        String title = "管理员驳回了-[个人信息审批]";
+        Map<String ,String > map = new HashMap<>();
+        String uuid = UUID.randomUUID().toString();
+        map.put("taskId",uuid);
+        map.put("title",title);
+        map.put("defId",defId);
+        map.put("taskName","个人信息审批");
+        map.put("createUser",userDto.getName());
+        map.put("createTime",day);
+        map.put("noticeName",userDto.getLoginName());
+        map.put("noticeId",userDto.getId());
+        map.put("createById",userDto.getId());
+        flowTaskService.add(map);
+    }
+
+
+}

+ 12 - 1
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/enrollment/enrollmentRegistration/service/EnrollmentWorkInfoService.java

@@ -34,11 +34,22 @@ public class EnrollmentWorkInfoService extends ServiceImpl<EnrollmentWorkInfoMap
         return info;
     }
 
-    public List<EnrollmentWorkInfo> findByUserId(String id) {
+    public List<EnrollmentWorkInfo> findByUserId(String id,String status) {
         QueryWrapper<EnrollmentWorkInfo> queryWrapper = new QueryWrapper<>();
         if (StringUtils.isNotBlank(id)) {
             queryWrapper.eq("user_id",id);
         }
+        if(com.jeeplus.utils.StringUtils.isNotBlank(status)){
+            if("5".equals(status)){
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "5").or().isNull("status").or().eq("status", "")
+                );
+            }else{
+                queryWrapper.and(wrapper ->
+                        wrapper.eq("status", "2").or().eq("status", "4")
+                );
+            }
+        }
         List<EnrollmentWorkInfo> workInfos = workInfoMapper.selectList(queryWrapper);
         return workInfos;
     }

+ 8 - 0
jeeplus-modules/jeeplus-public-modules/src/main/java/com/jeeplus/pubmodules/oss/controller/OssFileController.java

@@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.extra.spring.SpringUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.TypeReference;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.jeeplus.aop.demo.annotation.DemoMode;
 import com.jeeplus.common.TokenProvider;
 import com.jeeplus.flowable.feign.IFinanceApi;
@@ -195,6 +196,13 @@ public class OssFileController {
 //            List<CertDTO> certListByUserId = userService.getCertListByUserId();
             userDTO.setCertDTOList(certListByUserId);
         }
+
+        for (CertDTO cert : userDTO.getCertDTOList()) {
+            List<WorkAttachmentInfoDTO> files = ossService.findAttachement(cert.getId(), "certificate");
+            if (CollectionUtils.isNotEmpty(files)) {
+                cert.setCertificateAttachment(files);
+            }
+        }
         if(StringUtils.isNotBlank(userDTO.getManageOfficeIds())){
             //获取当前人管理的部门id
             List<String> manageOfficeIdList= Arrays.asList(userDTO.getManageOfficeIds().split(","));

+ 3 - 0
jeeplus-modules/jeeplus-public-modules/src/main/java/com/jeeplus/pubmodules/oss/domain/WorkAttachment.java

@@ -66,4 +66,7 @@ public class WorkAttachment extends BaseEntity {
      */
     @TableField(exist = false)
     private String temporaryUrl;
+
+
+    private  String remarks;
 }

+ 4 - 0
jeeplus-modules/jeeplus-public-modules/src/main/java/com/jeeplus/pubmodules/oss/mapper/OssServiceMapper.java

@@ -9,6 +9,7 @@ import com.jeeplus.pubmodules.oss.domain.WorkAttachment;
 import com.jeeplus.pubmodules.oss.service.dto.AttachmentDTO;
 import com.jeeplus.sys.domain.WorkAttachmentInfo;
 import com.jeeplus.sys.service.dto.UserDTO;
+import com.jeeplus.sys.service.dto.WorkAttachmentInfoDTO;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -72,4 +73,7 @@ public interface OssServiceMapper extends BaseMapper<WorkAttachment> {
     List<WorkAttachmentInfo> getElectronicEngineeringInvoiceAttachmentList(@Param("attachmentIdList")List<String> attachmentIdList, @Param("attachmentFlag")String attachmentFlag);
 
     Integer isUsedByInvoiceNumber(@Param("invoiceNumber") String invoiceNumber);
+
+    List<WorkAttachmentInfoDTO> findDtos(@Param("id")String id, @Param("attachmentFlag")String attachmentFlag);
+
 }

+ 21 - 2
jeeplus-modules/jeeplus-public-modules/src/main/java/com/jeeplus/pubmodules/oss/mapper/xml/OssServiceMapper.xml

@@ -68,7 +68,8 @@
             attachment_name,
             attachment_flag,
             file_size,
-            sort
+            sort,
+            remarks
             )
         VALUES(
             #{workAttachment.id},
@@ -83,7 +84,8 @@
             #{workAttachment.attachmentName},
             #{workAttachment.attachmentFlag},
             #{workAttachment.fileSize},
-            #{workAttachment.sort}
+            #{workAttachment.sort},
+            #{workAttachment.remarks}
             )
     </insert>
 
@@ -165,4 +167,21 @@
         ) as result
     </select>
 
+
+    <select id="findDtos" resultType="com.jeeplus.sys.service.dto.WorkAttachmentInfoDTO">
+        SELECT
+            id,
+            url,
+            attachment_name AS `name`,
+            create_by_id AS `by`,
+            create_time,
+            attachment_flag AS attachmentFlag
+        FROM
+            work_attachment
+        WHERE
+            del_flag = 0
+          AND attachment_id = #{id}
+          AND attachment_flag = #{attachmentFlag}
+
+    </select>
 </mapper>

+ 12 - 2
jeeplus-modules/jeeplus-public-modules/src/main/java/com/jeeplus/pubmodules/oss/service/OssService.java

@@ -2,11 +2,9 @@ package com.jeeplus.pubmodules.oss.service;
 
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.extra.spring.SpringUtil;
-import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.aliyun.oss.OSSClient;
 import com.aliyun.oss.model.OSSObject;
-import com.aliyun.oss.model.SimplifiedObjectMeta;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.IService;
@@ -779,4 +777,16 @@ public class OssService extends ServiceImpl<OssServiceMapper, WorkAttachment> {
         }
         return false;
     }
+
+    /**
+     * 查询资质附件
+     * @param id
+     * @return
+     */
+    public List<WorkAttachmentInfoDTO> findAttachement(String id, String attachmentFlag) {
+        return ossServiceMapper.findDtos(id, attachmentFlag);
+    }
+
+
+
 }

+ 5 - 1
jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/mapper/xml/UserMapper.xml

@@ -114,12 +114,16 @@
         LEFT JOIN sys_dict_type dt on dv.dict_type_id=dt.id and dt.type='sys_cert_type'
         where dv.dict_type_id=(SELECT id FROM sys_dict_type where type='sys_cert_type')
         and sc.del_flag = '0'
+        and (sc.status = '5' OR sc.status IS NULL)
         and su.id = sc.user_id
         ) as certType
         from sys_cert cert
         left join sys_dict_value dv on cert.type=dv.value and dv.del_flag = '0'
         left join sys_user su on su.id=cert.user_id and cert.del_flag = '0'
-        where cert.del_flag = '0' and cert.user_id = #{id} and dv.dict_type_id=(SELECT id FROM sys_dict_type where type='sys_cert_type')
+        where cert.del_flag = '0'
+        and cert.user_id = #{id}
+        AND (cert.status = '5' OR cert.status IS NULL)
+        and  dv.dict_type_id=(SELECT id FROM sys_dict_type where type='sys_cert_type')
     </select>
 
     <!-- 获得用户 -->

+ 6 - 0
jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/service/UserService.java

@@ -7,6 +7,8 @@ import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.extra.spring.SpringUtil;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.TypeReference;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -28,6 +30,7 @@ import com.jeeplus.sys.service.mapstruct.CertWrapper;
 import com.jeeplus.sys.service.mapstruct.UserWrapper;
 import com.jeeplus.sys.utils.UserUtils;
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.ResponseEntity;
@@ -40,6 +43,7 @@ import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Calendar;
 import java.util.List;
+import java.util.concurrent.atomic.AtomicInteger;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
@@ -126,6 +130,7 @@ public class UserService extends ServiceImpl<UserMapper, User> {
                 userDTO.getCertDTOList().stream().forEach(item -> {
                     Cert cert = CertWrapper.INSTANCE.toEntity(item);
                     cert.setUserId(userDTO.getId());
+                    cert.setStatus("5");//管理员添加资质,状态直接为5
                     certService.saveOrUpdate(cert);
                 });
             } else {
@@ -727,6 +732,7 @@ public class UserService extends ServiceImpl<UserMapper, User> {
 
     public IPage<UserDTO> findCertPage(Page<UserDTO> page, QueryWrapper<UserDTO> queryWrapper) {
         queryWrapper.eq("a.del_flag", CommonConstants.NOT_DELETED); // 排除已经删除
+        //queryWrapper.and(qw -> qw.eq("sc.status", "5").or().isNull("sc.status"));
         return baseMapper.findCertList(page, queryWrapper);
     }