拆分模块

This commit is contained in:
2025-09-03 20:56:44 +08:00
parent 08cc2c29a5
commit a2f5e4864b
939 changed files with 14227 additions and 9607 deletions

View File

@@ -0,0 +1,124 @@
package com.ecep.contract.model;
import jakarta.persistence.*;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.hibernate.proxy.HibernateProxy;
import java.io.Serializable;
import java.time.LocalDate;
import java.util.Objects;
@Getter
@Setter
@jakarta.persistence.Entity
@Table(name = "EMPLOYEE", schema = "supplier_ms")
public class Employee implements BasedEntity, IdentityEntity, NamedEntity, Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "ID", nullable = false)
private Integer id;
@Column(name = "ACCOUNT")
private String account;
@Column(name = "NAME")
private String name;
@Column(name = "ALIAS")
private String alias;
@JoinColumn(name = "DEPARTMENT_ID")
@ManyToOne(fetch = FetchType.LAZY)
@ToString.Exclude
private Department department;
/**
* U8系统中的人员代码
*/
@Column(name = "CODE")
private String code;
@Column(name = "EMAIL")
private String email;
@Column(name = "PHONE")
private String phone;
@Column(name = "CREATED")
private LocalDate created;
// 新增的入职日期字段
@Column(name = "ENTRY_DATE")
private LocalDate entryDate;
// 新增的离职日期字段
@Column(name = "LEAVE_DATE")
private LocalDate leaveDate;
@Column(name = "LOCALE")
private String locale;
@Column(name = "DATE_FORMATTER")
private String dateFormatter;
@Column(name = "DATETIME_FORMATTER")
private String dateTimeFormatter;
@Column(name = "TIME_FORMATTER")
private String timeFormatter;
@Column(name = "TIME_ZONE")
private String timeZone;
@Column(name = "NUMBER_FORMATTER")
private String numberFormatter;
@Column(name = "CURRENCY_FORMATTER")
private String currencyFormatter;
/**
* 员工是否活跃的状态
*/
@Column(name = "IS_ACTIVE", nullable = false)
private boolean isActive;
@ManyToMany(fetch = FetchType.LAZY, cascade = { CascadeType.PERSIST, CascadeType.MERGE })
@JoinTable(name = "EMPLOYEE_ROLES", joinColumns = @JoinColumn(name = "EMPLOYEE_ID"), inverseJoinColumns = @JoinColumn(name = "ROLE_ID"))
private java.util.List<EmployeeRole> roles = new java.util.ArrayList<>();
@Override
public String toPrettyString() {
if (code == null) {
return name;
}
return code + " " + name;
}
@Override
public final boolean equals(Object object) {
if (this == object)
return true;
if (object == null)
return false;
Class<?> oEffectiveClass = object instanceof HibernateProxy
? ((HibernateProxy) object).getHibernateLazyInitializer().getPersistentClass()
: object.getClass();
Class<?> thisEffectiveClass = this instanceof HibernateProxy
? ((HibernateProxy) this).getHibernateLazyInitializer().getPersistentClass()
: this.getClass();
if (thisEffectiveClass != oEffectiveClass)
return false;
Employee employee = (Employee) object;
return getId() != null && Objects.equals(getId(), employee.getId());
}
@Override
public final int hashCode() {
return this instanceof HibernateProxy
? ((HibernateProxy) this).getHibernateLazyInitializer().getPersistentClass().hashCode()
: getClass().hashCode();
}
}