From ffc74e99841e1cd957607a0b0c969150a3ea0c4a Mon Sep 17 00:00:00 2001 From: lihongjie0209 Date: Sun, 18 Aug 2024 16:06:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=B7=A5=E4=BD=9C=E7=BB=8F?= =?UTF-8?q?=E5=8E=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../coal/employee/dto/CreateEmployeeDto.java | 3 + .../coal/employee/dto/EmployeeDto.java | 3 + .../coal/employee/dto/UpdateEmployeeDto.java | 5 ++ .../coal/employee/entity/EmpWorkRecordVO.java | 58 +++++++++++++++++++ .../coal/employee/entity/EmployeeEntity.java | 6 ++ .../employee/service/EmployeeService.java | 9 +++ 6 files changed, 84 insertions(+) create mode 100644 src/main/java/cn/lihongjie/coal/employee/entity/EmpWorkRecordVO.java diff --git a/src/main/java/cn/lihongjie/coal/employee/dto/CreateEmployeeDto.java b/src/main/java/cn/lihongjie/coal/employee/dto/CreateEmployeeDto.java index a2b9aa5e..d7dbd5dc 100644 --- a/src/main/java/cn/lihongjie/coal/employee/dto/CreateEmployeeDto.java +++ b/src/main/java/cn/lihongjie/coal/employee/dto/CreateEmployeeDto.java @@ -4,6 +4,7 @@ import cn.lihongjie.coal.base.dto.OrgCommonDto; import cn.lihongjie.coal.employee.entity.EmpCarVO; import cn.lihongjie.coal.employee.entity.EmpCertVO; import cn.lihongjie.coal.employee.entity.EmpFamilyMemberVO; +import cn.lihongjie.coal.employee.entity.EmpWorkRecordVO; import jakarta.persistence.ElementCollection; @@ -84,6 +85,8 @@ public class CreateEmployeeDto extends OrgCommonDto { @ElementCollection private List cars; + private List workRecords; + @Comment("养老保险基数") private Double insurance1Base; @Comment("养老保险比例") diff --git a/src/main/java/cn/lihongjie/coal/employee/dto/EmployeeDto.java b/src/main/java/cn/lihongjie/coal/employee/dto/EmployeeDto.java index c10a4c45..a70f3e82 100644 --- a/src/main/java/cn/lihongjie/coal/employee/dto/EmployeeDto.java +++ b/src/main/java/cn/lihongjie/coal/employee/dto/EmployeeDto.java @@ -6,6 +6,7 @@ import cn.lihongjie.coal.department.dto.DepartmentDto; import cn.lihongjie.coal.employee.entity.EmpCarVO; import cn.lihongjie.coal.employee.entity.EmpCertVO; import cn.lihongjie.coal.employee.entity.EmpFamilyMemberVO; +import cn.lihongjie.coal.employee.entity.EmpWorkRecordVO; import cn.lihongjie.coal.file.entity.FileEntity; import cn.lihongjie.coal.jobPost.dto.JobPostDto; import cn.lihongjie.coal.pojoProcessor.DictTranslate; @@ -130,6 +131,8 @@ public class EmployeeDto extends OrgCommonDto { @ElementCollection private List cars; + private List workRecords; + @Comment("养老保险基数") private Double insurance1Base; diff --git a/src/main/java/cn/lihongjie/coal/employee/dto/UpdateEmployeeDto.java b/src/main/java/cn/lihongjie/coal/employee/dto/UpdateEmployeeDto.java index fb64b545..3a452a20 100644 --- a/src/main/java/cn/lihongjie/coal/employee/dto/UpdateEmployeeDto.java +++ b/src/main/java/cn/lihongjie/coal/employee/dto/UpdateEmployeeDto.java @@ -4,6 +4,7 @@ import cn.lihongjie.coal.base.dto.OrgCommonDto; import cn.lihongjie.coal.employee.entity.EmpCarVO; import cn.lihongjie.coal.employee.entity.EmpCertVO; import cn.lihongjie.coal.employee.entity.EmpFamilyMemberVO; +import cn.lihongjie.coal.employee.entity.EmpWorkRecordVO; import jakarta.persistence.ElementCollection; import jakarta.persistence.ManyToOne; @@ -89,6 +90,10 @@ public class UpdateEmployeeDto extends OrgCommonDto { @ElementCollection private List cars; + + + private List workRecords; + @Comment("养老保险基数") private Double insurance1Base; @Comment("养老保险比例") diff --git a/src/main/java/cn/lihongjie/coal/employee/entity/EmpWorkRecordVO.java b/src/main/java/cn/lihongjie/coal/employee/entity/EmpWorkRecordVO.java new file mode 100644 index 00000000..d6e18d37 --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/employee/entity/EmpWorkRecordVO.java @@ -0,0 +1,58 @@ +package cn.lihongjie.coal.employee.entity; + +import cn.lihongjie.coal.file.entity.FileEntity; + +import io.hypersistence.utils.hibernate.type.array.ListArrayType; + +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.persistence.Transient; + +import lombok.Data; + +import org.hibernate.annotations.Comment; +import org.hibernate.annotations.Type; + +import java.util.*; + +@Data +@Embeddable +public class EmpWorkRecordVO { + + + @Comment("入职时间") + private Date entryDate; + + @Comment("离职时间") + private Date resignDate; + + + @Comment("工作单位") + private String company; + + @Comment("部门") + private String department; + + @Comment("职务") + private String jobPost; + + + + + + + @Comment("备注") + private String remarks; + + @Comment("关联附件") + @Column(columnDefinition = "text[]") + @Type(ListArrayType.class) + private List fileIds; + + + + @Transient + private List files; + + +} diff --git a/src/main/java/cn/lihongjie/coal/employee/entity/EmployeeEntity.java b/src/main/java/cn/lihongjie/coal/employee/entity/EmployeeEntity.java index 2dae6073..0a0ed2c4 100644 --- a/src/main/java/cn/lihongjie/coal/employee/entity/EmployeeEntity.java +++ b/src/main/java/cn/lihongjie/coal/employee/entity/EmployeeEntity.java @@ -112,6 +112,12 @@ public class EmployeeEntity extends OrgCommonEntity { @Fetch(FetchMode.SUBSELECT) private List cars; + + + @ElementCollection + @Fetch(FetchMode.SUBSELECT) + private List workRecords; + /** * “五险”讲的是五种保险,包括养老保险、医疗保险、失业保险、工伤保险和生育保险。 * diff --git a/src/main/java/cn/lihongjie/coal/employee/service/EmployeeService.java b/src/main/java/cn/lihongjie/coal/employee/service/EmployeeService.java index fb469aa8..b5cc8865 100644 --- a/src/main/java/cn/lihongjie/coal/employee/service/EmployeeService.java +++ b/src/main/java/cn/lihongjie/coal/employee/service/EmployeeService.java @@ -108,6 +108,15 @@ public class EmployeeService extends BaseService { + if (CollectionUtils.isNotEmpty(x.getFileIds())) + x.setFiles(fileService.findAllByIds(x.getFileIds())); + }); + } return dto; }