refactor(vo): 重构VO类及相关模型,添加Voable接口实现

feat(constant): 添加WebSocket错误码常量
docs(model): 为模型类添加注释
fix(service): 修复ProductUsageService缓存键问题
refactor(converter): 重构字符串转换器,移除EntityStringConverter依赖
feat(tab): 添加ComboBoxUtils工具类,优化下拉框初始化
style: 移除无用导入和字段
This commit is contained in:
2025-09-22 23:11:21 +08:00
parent 8aac509e51
commit 866e08224a
84 changed files with 1061 additions and 285 deletions

View File

@@ -1,5 +1,8 @@
package com.ecep.contract;
/**
* 供应商类型
*/
public enum VendorType {
/**
* 合格供应商

View File

@@ -13,4 +13,5 @@ public class WebSocketConstant {
public static final String SESSION_ID_FIELD_NAME = "sessionId";
public static final int ERROR_CODE_UNAUTHORIZED = 401;
}

View File

@@ -7,6 +7,7 @@ import java.util.Objects;
import org.hibernate.annotations.ColumnDefault;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CloudRkVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -25,7 +26,7 @@ import lombok.ToString;
@Setter
@Entity
@Table(name = "CLOUD_RK", schema = "supplier_ms")
public class CloudRk implements IdentityEntity, Serializable {
public class CloudRk implements IdentityEntity, Serializable, Voable<CloudRkVo> {
private static final long serialVersionUID = 1L;
/**
@@ -153,4 +154,27 @@ public class CloudRk implements IdentityEntity, Serializable {
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CloudRkVo toVo() {
CloudRkVo vo = new CloudRkVo();
vo.setId(getId());
vo.setCloudId(getCloudId());
vo.setCompanyId(getCompany() != null ? getCompany().getId() : null);
vo.setAutoUpdate(isAutoUpdate());
vo.setUpdateDays(getUpdateDays());
vo.setCustomerGrade(getCustomerGrade());
vo.setCustomerScore(getCustomerScore());
vo.setCustomerDescription(getCustomerDescription());
vo.setVendorGrade(getVendorGrade());
vo.setVendorScore(getVendorScore());
vo.setVendorDescription(getVendorDescription());
vo.setRank(getRank());
vo.setRankDescription(getRankDescription());
vo.setCloudLatest(getCloudLatest());
vo.setCloudBlackListUpdated(getCloudBlackListUpdated());
vo.setCloudEntUpdate(getCloudEntUpdate());
vo.setDescription(getDescription());
return vo;
}
}

View File

@@ -4,6 +4,7 @@ import java.io.Serializable;
import java.util.Objects;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyBankAccountVo;
import jakarta.persistence.Column;
import jakarta.persistence.FetchType;
@@ -21,7 +22,7 @@ import lombok.ToString;
@Setter
@jakarta.persistence.Entity
@Table(name = "COMPANY_BANK_ACCOUNT", schema = "supplier_ms")
public class CompanyBankAccount implements IdentityEntity, BasedEntity, CompanyBasedEntity, Serializable {
public class CompanyBankAccount implements IdentityEntity, BasedEntity, CompanyBasedEntity, Serializable, Voable<CompanyBankAccountVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -72,4 +73,17 @@ public class CompanyBankAccount implements IdentityEntity, BasedEntity, CompanyB
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyBankAccountVo toVo() {
CompanyBankAccountVo vo = new CompanyBankAccountVo();
vo.setId(getId());
vo.setCompanyId(getCompany() != null ? getCompany().getId() : null);
vo.setBankId(getBank() != null ? getBank().getId() : null);
vo.setAccount(getAccount());
vo.setOpeningBank(getOpeningBank());
vo.setDescription(getDescription());
vo.setActive(false); // 默认值
return vo;
}
}

View File

@@ -9,6 +9,7 @@ import org.hibernate.annotations.OnDeleteAction;
import com.ecep.contract.BlackReasonType;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyBlackReasonVo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import jakarta.persistence.Column;
@@ -33,7 +34,7 @@ import lombok.Setter;
})
// @org.springframework.data.relational.core.mapping.Table("COMPANY_BLACK_REASON")
@JsonIgnoreProperties(ignoreUnknown = true)
public class CompanyBlackReason implements IdentityEntity, CompanyBasedEntity, Serializable {
public class CompanyBlackReason implements IdentityEntity, CompanyBasedEntity, Serializable, Voable<CompanyBlackReasonVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -90,4 +91,21 @@ public class CompanyBlackReason implements IdentityEntity, CompanyBasedEntity, S
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyBlackReasonVo toVo() {
CompanyBlackReasonVo vo = new CompanyBlackReasonVo();
vo.setId(getId());
vo.setCompanyId(getCompany() != null ? getCompany().getId() : null);
vo.setType(getType());
vo.setApplyName(getApplyName());
vo.setApplyDate(getApplyDate());
vo.setUpdateTime(getUpdateTime());
vo.setCreateTime(getCreateTime());
vo.setIncludeDate(getIncludeDate());
vo.setBlackReason(getBlackReason());
vo.setDescription(getDescription());
vo.setKey(getKey());
return vo;
}
}

View File

@@ -5,6 +5,7 @@ import java.util.Map;
import java.util.Objects;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyContractVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -31,7 +32,7 @@ import lombok.ToString;
})
@ToString(exclude = { "company", "contract" })
public class CompanyContract implements IdentityEntity, CompanyBasedEntity, Serializable {
public class CompanyContract implements IdentityEntity, CompanyBasedEntity, Serializable, Voable<CompanyContractVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -75,4 +76,15 @@ public class CompanyContract implements IdentityEntity, CompanyBasedEntity, Seri
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyContractVo toVo() {
CompanyContractVo vo = new CompanyContractVo();
vo.setId(getId());
vo.setCompanyId(getCompany() != null ? getCompany().getId() : null);
vo.setContractId(getContract() != null ? getContract().getId() : null);
vo.setContractCode(getContract() != null ? getContract().getCode() : null);
vo.setContractName(getContract() != null ? getContract().getName() : null);
return vo;
}
}

View File

@@ -1,7 +1,6 @@
package com.ecep.contract.model;
import java.io.Serializable;
import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Objects;
@@ -9,6 +8,7 @@ import java.util.Objects;
import org.hibernate.annotations.ColumnDefault;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyCustomerVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -29,7 +29,7 @@ import lombok.ToString;
})
@ToString
public class CompanyCustomer implements IdentityEntity, CompanyBasedEntity, Serializable {
public class CompanyCustomer implements IdentityEntity, CompanyBasedEntity, Serializable, Voable<CompanyCustomerVo> {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "ID", nullable = false)
@@ -91,4 +91,18 @@ public class CompanyCustomer implements IdentityEntity, CompanyBasedEntity, Seri
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyCustomerVo toVo() {
CompanyCustomerVo vo = new CompanyCustomerVo();
vo.setId(id);
vo.setCompanyId(company != null ? company.getId() : null);
vo.setDevelopDate(developDate);
vo.setPath(path);
vo.setContactId(contact != null ? contact.getId() : null);
vo.setDescription(description);
vo.setCreated(created);
vo.setVersion(version);
return vo;
}
}

View File

@@ -4,6 +4,7 @@ import java.io.Serializable;
import java.util.Objects;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyCustomerEvaluationFormFileVo;
import jakarta.persistence.CascadeType;
import jakarta.persistence.Column;
@@ -29,7 +30,7 @@ import lombok.ToString;
@Setter
@ToString
@Table(name = "COMPANY_CUSTOMER_EVALUATION_FORM_FILE")
public class CompanyCustomerEvaluationFormFile implements IdentityEntity, BasedEntity, Serializable {
public class CompanyCustomerEvaluationFormFile implements IdentityEntity, BasedEntity, Serializable, Voable<CompanyCustomerEvaluationFormFileVo> {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "ID", nullable = false)
@@ -85,4 +86,21 @@ public class CompanyCustomerEvaluationFormFile implements IdentityEntity, BasedE
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyCustomerEvaluationFormFileVo toVo() {
CompanyCustomerEvaluationFormFileVo vo = new CompanyCustomerEvaluationFormFileVo();
vo.setId(getId());
vo.setCustomerFile(getCustomerFile() != null ? getCustomerFile().getId() : null);
vo.setCatalog(getCatalog());
vo.setLevel(getLevel());
vo.setCreditLevel(getCreditLevel() != null ? getCreditLevel() : 0);
vo.setScore1(getScore1() != null ? getScore1() : 0);
vo.setScore2(getScore2() != null ? getScore2() : 0);
vo.setScore3(getScore3() != null ? getScore3() : 0);
vo.setScore4(getScore4() != null ? getScore4() : 0);
vo.setScore5(getScore5() != null ? getScore5() : 0);
vo.setScoreTemplateVersion(getScoreTemplateVersion() != null ? getScoreTemplateVersion() : 1);
return vo;
}
}

View File

@@ -6,6 +6,7 @@ import java.util.Objects;
import com.ecep.contract.CustomerFileType;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyCustomerFileVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -27,7 +28,7 @@ import lombok.ToString;
@Entity
@Table(name = "COMPANY_CUSTOMER_FILE")
@ToString
public class CompanyCustomerFile implements CompanyBasicFile<CustomerFileType>, Serializable {
public class CompanyCustomerFile implements CompanyBasicFile<CustomerFileType>, Serializable, Voable<CompanyCustomerFileVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -78,4 +79,17 @@ public class CompanyCustomerFile implements CompanyBasicFile<CustomerFileType>,
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyCustomerFileVo toVo() {
CompanyCustomerFileVo vo = new CompanyCustomerFileVo();
vo.setId(getId());
vo.setCustomer(getCustomer() != null ? getCustomer().getId() : null);
vo.setType(getType());
vo.setFilePath(getFilePath());
vo.setEditFilePath(getEditFilePath());
vo.setSignDate(getSignDate());
vo.setValid(isValid());
return vo;
}
}

View File

@@ -5,6 +5,7 @@ import java.util.Objects;
import com.ecep.contract.CustomerFileType;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyCustomerFileTypeLocalVo;
import jakarta.persistence.Entity;
import jakarta.persistence.Table;
@@ -17,7 +18,7 @@ import lombok.ToString;
@Entity
@Table(name = "COMPANY_CUSTOMER_FILE_TYPE_LOCAL")
@ToString
public class CompanyCustomerFileTypeLocal extends BaseEnumEntity<CustomerFileType> implements Serializable {
public class CompanyCustomerFileTypeLocal extends BaseEnumEntity<CustomerFileType> implements Serializable, Voable<CompanyCustomerFileTypeLocalVo> {
private static final long serialVersionUID = 1L;
@Override
@@ -37,4 +38,14 @@ public class CompanyCustomerFileTypeLocal extends BaseEnumEntity<CustomerFileTyp
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyCustomerFileTypeLocalVo toVo() {
CompanyCustomerFileTypeLocalVo vo = new CompanyCustomerFileTypeLocalVo();
vo.setId(getId());
vo.setType(getType());
vo.setLang(getLang());
vo.setValue(getValue());
return vo;
}
}

View File

@@ -6,6 +6,7 @@ import java.util.Objects;
import org.hibernate.annotations.ColumnDefault;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyExtendInfoVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -26,7 +27,7 @@ import lombok.ToString;
@Entity
@Table(name = "COMPANY_EXTEND_INFO", schema = "supplier_ms")
@ToString
public class CompanyExtendInfo implements IdentityEntity, Serializable {
public class CompanyExtendInfo implements IdentityEntity, Serializable, Voable<CompanyExtendInfoVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -64,4 +65,14 @@ public class CompanyExtendInfo implements IdentityEntity, Serializable {
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyExtendInfoVo toVo() {
CompanyExtendInfoVo vo = new CompanyExtendInfoVo();
vo.setId(getId());
vo.setCompanyId(getCompany() != null ? getCompany().getId() : null);
vo.setDisableVerify(isDisableVerify());
vo.setVersion(getVersion());
return vo;
}
}

View File

@@ -5,6 +5,7 @@ import java.util.Objects;
import com.ecep.contract.CompanyFileType;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyFileTypeLocalVo;
import jakarta.persistence.Entity;
import jakarta.persistence.Table;
@@ -17,7 +18,7 @@ import lombok.ToString;
@Entity
@Table(name = "COMPANY_FILE_TYPE_LOCAL")
@ToString
public class CompanyFileTypeLocal extends BaseEnumEntity<CompanyFileType> implements Serializable {
public class CompanyFileTypeLocal extends BaseEnumEntity<CompanyFileType> implements Serializable, Voable<CompanyFileTypeLocalVo> {
private static final long serialVersionUID = 1L;
@Override
@@ -37,4 +38,15 @@ public class CompanyFileTypeLocal extends BaseEnumEntity<CompanyFileType> implem
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyFileTypeLocalVo toVo() {
CompanyFileTypeLocalVo vo = new CompanyFileTypeLocalVo();
vo.setId(getId());
vo.setType(getType());
vo.setLang(getLang());
vo.setValue(getValue());
vo.setActive(false); // 设置默认值,因为实体中没有这个字段
return vo;
}
}

View File

@@ -5,6 +5,7 @@ import java.time.LocalDate;
import java.util.Objects;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyVendorApprovedFileVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -27,7 +28,7 @@ import lombok.ToString;
@Entity
@Table(name = "COMPANY_VENDOR_APPROVED_FILE")
@ToString
public class CompanyVendorApprovedFile implements IdentityEntity, Serializable {
public class CompanyVendorApprovedFile implements IdentityEntity, Serializable, Voable<CompanyVendorApprovedFileVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -74,4 +75,15 @@ public class CompanyVendorApprovedFile implements IdentityEntity, Serializable {
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyVendorApprovedFileVo toVo() {
CompanyVendorApprovedFileVo vo = new CompanyVendorApprovedFileVo();
vo.setId(getId());
vo.setListId(getList() != null ? getList().getId() : null);
vo.setFileName(getFileName());
vo.setSignDate(getSignDate());
vo.setDescription(getDescription());
return vo;
}
}

View File

@@ -5,6 +5,7 @@ import java.util.Objects;
import com.ecep.contract.VendorType;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyVendorApprovedItemVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -27,7 +28,7 @@ import lombok.ToString;
@Entity
@Table(name = "COMPANY_VENDOR_APPROVED_ITEM")
@ToString
public class CompanyVendorApprovedItem implements IdentityEntity, Serializable {
public class CompanyVendorApprovedItem implements IdentityEntity, Serializable, Voable<CompanyVendorApprovedItemVo> {
private static final long serialVersionUID = 1L;
@Id
@@ -80,4 +81,16 @@ public class CompanyVendorApprovedItem implements IdentityEntity, Serializable {
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyVendorApprovedItemVo toVo() {
CompanyVendorApprovedItemVo vo = new CompanyVendorApprovedItemVo();
vo.setId(getId());
vo.setListId(getList() != null ? getList().getId() : null);
vo.setVendorId(getVendor() != null ? getVendor().getId() : null);
vo.setVendorName(getVendorName());
vo.setType(getType());
vo.setDescription(getDescription());
return vo;
}
}

View File

@@ -5,6 +5,7 @@ import java.time.LocalDate;
import java.util.Objects;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyVendorApprovedListVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -26,7 +27,7 @@ import lombok.ToString;
@Entity
@Table(name = "COMPANY_VENDOR_APPROVED")
@ToString
public class CompanyVendorApprovedList implements IdentityEntity, Serializable {
public class CompanyVendorApprovedList implements IdentityEntity, Serializable, Voable<CompanyVendorApprovedListVo> {
private static final long serialVersionUID = 1L;
@Id
@@ -74,4 +75,15 @@ public class CompanyVendorApprovedList implements IdentityEntity, Serializable {
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyVendorApprovedListVo toVo() {
CompanyVendorApprovedListVo vo = new CompanyVendorApprovedListVo();
vo.setId(getId());
vo.setTitle(getTitle());
vo.setPublishDate(getPublishDate());
vo.setPath(getPath());
vo.setDescription(getDescription());
return vo;
}
}

View File

@@ -6,6 +6,7 @@ import java.util.Objects;
import com.ecep.contract.VendorFileType;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CompanyVendorFileVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -30,7 +31,7 @@ import lombok.ToString;
@Entity
@Table(name = "COMPANY_VENDOR_FILE")
@ToString
public class CompanyVendorFile implements CompanyBasicFile<VendorFileType>, Serializable {
public class CompanyVendorFile implements CompanyBasicFile<VendorFileType>, Serializable, Voable<CompanyVendorFileVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -84,4 +85,19 @@ public class CompanyVendorFile implements CompanyBasicFile<VendorFileType>, Seri
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CompanyVendorFileVo toVo() {
CompanyVendorFileVo vo = new CompanyVendorFileVo();
vo.setId(getId());
if (getVendor() != null) {
vo.setVendorId(getVendor().getId());
}
vo.setType(getType());
vo.setFilePath(getFilePath());
vo.setEditFilePath(getEditFilePath());
vo.setSignDate(getSignDate());
vo.setValid(isValid());
return vo;
}
}

View File

@@ -6,6 +6,7 @@ import java.time.LocalDateTime;
import java.util.Objects;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.CustomerSatisfactionSurveyVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -28,7 +29,7 @@ import lombok.ToString;
@Entity
@Table(name = "PROJECT_CUSTOMER_SATISFACTION_SURVEY", schema = "supplier_ms")
@ToString
public class CustomerSatisfactionSurvey implements IdentityEntity, ProjectBasedEntity, Serializable {
public class CustomerSatisfactionSurvey implements IdentityEntity, ProjectBasedEntity, Serializable, Voable<CustomerSatisfactionSurveyVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -99,4 +100,23 @@ public class CustomerSatisfactionSurvey implements IdentityEntity, ProjectBasedE
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public CustomerSatisfactionSurveyVo toVo() {
CustomerSatisfactionSurveyVo vo = new CustomerSatisfactionSurveyVo();
vo.setId(getId());
if (getProject() != null) {
vo.setProject(getProject().getId());
}
vo.setCode(getCode());
vo.setDate(getDate());
vo.setTotalScore(getTotalScore());
vo.setData(getData());
if (getApplicant() != null) {
vo.setApplicantId(getApplicant().getId());
}
vo.setApplyTime(getApplyTime());
vo.setDescription(getDescription());
return vo;
}
}

View File

@@ -4,6 +4,7 @@ import java.io.Serializable;
import java.util.Objects;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.DeliverySignMethodVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -25,7 +26,7 @@ import lombok.ToString;
@Setter
@Entity
@Table(name = "PRODUCT_DELIVERY_SIGN_METHOD", schema = "supplier_ms")
public class DeliverySignMethod implements BasedEntity, IdentityEntity , Serializable {
public class DeliverySignMethod implements BasedEntity, IdentityEntity , Serializable, Voable<DeliverySignMethodVo> {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "ID", nullable = false)
@@ -68,4 +69,17 @@ public class DeliverySignMethod implements BasedEntity, IdentityEntity , Seriali
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public DeliverySignMethodVo toVo() {
DeliverySignMethodVo vo = new DeliverySignMethodVo();
vo.setId(id);
vo.setName(name);
vo.setCode(code);
vo.setSaleTypeId(saleType != null ? saleType.getId() : null);
vo.setDescription(description);
vo.setActive(false);
vo.setCreated(null);
return vo;
}
}

View File

@@ -1,9 +1,13 @@
package com.ecep.contract.model;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.EmployeeRoleVo;
import com.ecep.contract.vo.FunctionVo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.persistence.CascadeType;
@@ -23,7 +27,7 @@ import lombok.Setter;
@Setter
@jakarta.persistence.Entity
@Table(name = "EMPLOYEE_ROLE", schema = "supplier_ms")
public class EmployeeRole implements IdentityEntity, NamedEntity, Serializable {
public class EmployeeRole implements IdentityEntity, NamedEntity, Serializable, Voable<EmployeeRoleVo> {
private static final long serialVersionUID = 1L;
@Id
@@ -82,4 +86,32 @@ public class EmployeeRole implements IdentityEntity, NamedEntity, Serializable {
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public EmployeeRoleVo toVo() {
EmployeeRoleVo vo = new EmployeeRoleVo();
vo.setId(getId());
vo.setCode(getCode());
vo.setName(getName());
vo.setSystemAdministrator(isSystemAdministrator());
vo.setManager(isManager());
vo.setActive(isActive());
// 转换functions列表
if (getFunctions() != null && !getFunctions().isEmpty()) {
List<FunctionVo> functionVos = new ArrayList<>();
for (Function function : getFunctions()) {
if (function != null) {
FunctionVo functionVo = new FunctionVo();
functionVo.setId(function.getId());
functionVo.setName(function.getName());
functionVo.setKey(function.getKey());
functionVos.add(functionVo);
}
}
vo.setFunctions(functionVos);
}
return vo;
}
}

View File

@@ -1,6 +1,8 @@
package com.ecep.contract.model;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.ExtendVendorInfoVo;
import com.ecep.contract.model.Voable;
import jakarta.persistence.*;
import lombok.Getter;
import lombok.Setter;
@@ -14,7 +16,7 @@ import java.util.Objects;
@Entity
@Table(name = "CONTRACT_EXTEND_VENDOR_INFO", schema = "supplier_ms")
@ToString
public class ExtendVendorInfo implements IdentityEntity, Serializable {
public class ExtendVendorInfo implements IdentityEntity, Serializable, Voable<ExtendVendorInfoVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -66,4 +68,20 @@ public class ExtendVendorInfo implements IdentityEntity, Serializable {
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public ExtendVendorInfoVo toVo() {
ExtendVendorInfoVo vo = new ExtendVendorInfoVo();
vo.setId(id);
if (contract != null) {
vo.setContractId(contract.getId());
}
if (group != null) {
vo.setGroupId(group.getId());
}
vo.setCodeSequenceNumber(codeSequenceNumber);
vo.setAssignedProvider(assignedProvider);
vo.setPrePurchase(prePurchase);
return vo;
}
}

View File

@@ -4,6 +4,7 @@ import java.io.Serializable;
import java.util.Objects;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.ProductTypeVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -21,7 +22,7 @@ import lombok.Setter;
@Setter
@Entity
@Table(name = "PRODUCT_TYPE")
public class ProductType implements BasedEntity, IdentityEntity, Serializable {
public class ProductType implements BasedEntity, IdentityEntity, Serializable, Voable<ProductTypeVo> {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "ID", nullable = false)
@@ -59,4 +60,19 @@ public class ProductType implements BasedEntity, IdentityEntity, Serializable {
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public ProductTypeVo toVo() {
ProductTypeVo vo = new ProductTypeVo();
vo.setId(getId());
vo.setName(getName());
vo.setCode(getCode());
vo.setDescription(getDescription());
// parentId和order字段在ProductType中不存在设置为null
vo.setParentId(null);
vo.setOrder(null);
// active字段设置为默认值false
vo.setActive(false);
return vo;
}
}

View File

@@ -7,6 +7,7 @@ import java.util.Objects;
import org.hibernate.annotations.ColumnDefault;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.ProjectBidVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -31,7 +32,7 @@ import lombok.ToString;
@Entity
@Table(name = "PROJECT_BID")
@ToString
public class ProjectBid implements IdentityEntity, ProjectBasedEntity, Serializable {
public class ProjectBid implements IdentityEntity, ProjectBasedEntity, Serializable, Voable<ProjectBidVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -153,4 +154,40 @@ public class ProjectBid implements IdentityEntity, ProjectBasedEntity, Serializa
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public ProjectBidVo toVo() {
ProjectBidVo vo = new ProjectBidVo();
vo.setId(id);
if (project != null) {
vo.setProject(project.getId());
}
vo.setLevel(level);
vo.setAmount(amount);
if (evaluationFile != null) {
vo.setEvaluationFileId(evaluationFile.getId());
}
if (cost != null) {
vo.setCostId(cost.getId());
}
vo.setStandardPayWay(standardPayWay);
vo.setNoStandardPayWayText(noStandardPayWayText);
vo.setStandardContractText(standardContractText);
vo.setNoStandardContractText(noStandardContractText);
vo.setAuthorizationFile(authorizationFile);
vo.setBidAcceptanceLetterFile(bidAcceptanceLetterFile);
if (applicant != null) {
vo.setApplicantId(applicant.getId());
vo.setApplicantName(applicant.getName());
}
vo.setApplyTime(applyTime);
if (authorizer != null) {
vo.setAuthorizerId(authorizer.getId());
vo.setAuthorizerName(authorizer.getName());
}
vo.setAuthorizationTime(authorizationTime);
vo.setDescription(description);
// active字段默认为false在ProjectBidVo类中已经设置
return vo;
}
}

View File

@@ -7,6 +7,7 @@ import java.util.Objects;
import org.hibernate.annotations.ColumnDefault;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.ProjectCostVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -26,7 +27,7 @@ import lombok.ToString;
@Entity
@Table(name = "PROJECT_COST")
@ToString
public class ProjectCost implements IdentityEntity, ProjectBasedEntity, Serializable {
public class ProjectCost implements IdentityEntity, ProjectBasedEntity, Serializable, Voable<ProjectCostVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -220,4 +221,42 @@ public class ProjectCost implements IdentityEntity, ProjectBasedEntity, Serializ
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public ProjectCostVo toVo() {
ProjectCostVo vo = new ProjectCostVo();
vo.setId(id);
vo.setContractId(contract != null ? contract.getId() : null);
vo.setProject(project != null ? project.getId() : null);
vo.setVersion(version);
vo.setStandardPayWay(standardPayWay);
vo.setNoStandardPayWayText(noStandardPayWayText);
vo.setStandardContractText(standardContractText);
vo.setNoStandardContractText(noStandardContractText);
vo.setStampTax(stampTax);
vo.setStampTaxFee(stampTaxFee);
vo.setOnSiteServiceFee(onSiteServiceFee);
vo.setAssemblyServiceFee(assemblyServiceFee);
vo.setTechnicalServiceFee(technicalServiceFee);
vo.setBidServiceFee(bidServiceFee);
vo.setFreightCost(freightCost);
vo.setGuaranteeLetterFee(guaranteeLetterFee);
vo.setTaxAndSurcharges(taxAndSurcharges);
vo.setTaxAndSurchargesFee(taxAndSurchargesFee);
vo.setInQuantities(inQuantities);
vo.setInTaxAmount(inTaxAmount);
vo.setInExclusiveTaxAmount(inExclusiveTaxAmount);
vo.setOutQuantities(outQuantities);
vo.setOutTaxAmount(outTaxAmount);
vo.setOutExclusiveTaxAmount(outExclusiveTaxAmount);
vo.setGrossProfitMargin(grossProfitMargin);
vo.setApplicantId(applicant != null ? applicant.getId() : null);
vo.setApplyTime(applyTime);
vo.setAuthorizerId(authorizer != null ? authorizer.getId() : null);
vo.setAuthorizationTime(authorizationTime);
vo.setAuthorizationFile(authorizationFile);
vo.setDescription(description);
vo.setImportLock(importLock);
return vo;
}
}

View File

@@ -5,6 +5,7 @@ import java.time.LocalDateTime;
import java.util.Objects;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.ProjectCostItemVo;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -24,7 +25,7 @@ import lombok.ToString;
@Entity
@Table(name = "PROJECT_COST_ITEM")
@ToString
public class ProjectCostItem implements IdentityEntity, BasedEntity, Serializable {
public class ProjectCostItem implements IdentityEntity, BasedEntity, Serializable, Voable<ProjectCostItemVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -155,4 +156,27 @@ public class ProjectCostItem implements IdentityEntity, BasedEntity, Serializabl
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public ProjectCostItemVo toVo() {
ProjectCostItemVo vo = new ProjectCostItemVo();
vo.setId(id);
vo.setCostId(cost != null ? cost.getId() : null);
vo.setTitle(title);
vo.setSpecification(specification);
vo.setUnit(unit);
vo.setInventoryId(inventory != null ? inventory.getId() : null);
vo.setInTaxRate(inTaxRate);
vo.setInExclusiveTaxPrice(inExclusiveTaxPrice);
vo.setInQuantity(inQuantity);
vo.setOutTaxRate(outTaxRate);
vo.setOutExclusiveTaxPrice(outExclusiveTaxPrice);
vo.setOutQuantity(outQuantity);
vo.setRemark(remark);
vo.setCreateDate(createDate);
vo.setCreatorId(creator != null ? creator.getId() : null);
vo.setUpdateDate(updateDate);
vo.setUpdaterId(updater != null ? updater.getId() : null);
return vo;
}
}

View File

@@ -5,6 +5,7 @@ import java.util.Objects;
import com.ecep.contract.ProjectFileType;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.ProjectFileTypeLocalVo;
import jakarta.persistence.Entity;
import jakarta.persistence.Table;
@@ -17,8 +18,10 @@ import lombok.ToString;
@Entity
@Table(name = "PROJECT_FILE_TYPE_LOCAL")
@ToString
public class ProjectFileTypeLocal extends BaseEnumEntity<ProjectFileType> implements java.io.Serializable {
public class ProjectFileTypeLocal extends BaseEnumEntity<ProjectFileType>
implements java.io.Serializable, Voable<ProjectFileTypeLocalVo> {
private static final long serialVersionUID = 1L;
@Override
public final boolean equals(Object object) {
if (this == object) {
@@ -38,4 +41,14 @@ public class ProjectFileTypeLocal extends BaseEnumEntity<ProjectFileType> implem
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public ProjectFileTypeLocalVo toVo() {
ProjectFileTypeLocalVo vo = new ProjectFileTypeLocalVo();
vo.setId(getId());
vo.setLang(getLang());
vo.setValue(getValue());
vo.setType(getType());
return vo;
}
}

View File

@@ -6,6 +6,8 @@ import java.util.Objects;
import org.hibernate.annotations.ColumnDefault;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.ProjectQuotationVo;
import com.ecep.contract.model.Voable;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -30,7 +32,7 @@ import lombok.ToString;
@Entity
@Table(name = "PROJECT_QUOTATION")
@ToString
public class ProjectQuotation implements IdentityEntity, ProjectBasedEntity, java.io.Serializable {
public class ProjectQuotation implements IdentityEntity, ProjectBasedEntity, java.io.Serializable, Voable<ProjectQuotationVo> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -132,4 +134,31 @@ public class ProjectQuotation implements IdentityEntity, ProjectBasedEntity, jav
return HibernateProxyUtils.hashCode(this);
}
@Override
public ProjectQuotationVo toVo() {
ProjectQuotationVo vo = new ProjectQuotationVo();
vo.setId(id);
if (project != null) {
vo.setProject(project.getId());
}
vo.setLevel(level);
vo.setStandardPayWay(standardPayWay);
vo.setNoStandardPayWayText(noStandardPayWayText);
vo.setAmount(amount);
if (applicant != null) {
vo.setApplicantId(applicant.getId());
}
vo.setApplyTime(applyTime);
if (authorizer != null) {
vo.setAuthorizerId(authorizer.getId());
}
vo.setAuthorizationTime(authorizationTime);
vo.setAuthorizationFile(authorizationFile);
vo.setDescription(description);
if (evaluationFile != null) {
vo.setEvaluationFileId(evaluationFile.getId());
}
// active字段默认为false在ProjectQuotationVo类中已经设置
return vo;
}
}

View File

@@ -5,6 +5,7 @@ import java.util.Objects;
import com.ecep.contract.VendorFileType;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.VendorFileTypeLocalVo;
import jakarta.persistence.Entity;
import jakarta.persistence.Table;
@@ -20,8 +21,9 @@ import lombok.ToString;
@Entity
@Table(name = "COMPANY_VENDOR_FILE_TYPE_LOCAL")
@ToString
public class VendorFileTypeLocal extends BaseEnumEntity<VendorFileType> implements Serializable {
public class VendorFileTypeLocal extends BaseEnumEntity<VendorFileType> implements Serializable, Voable<VendorFileTypeLocalVo> {
private static final long serialVersionUID = 1L;
@Override
public final boolean equals(Object object) {
if (this == object)
@@ -39,4 +41,14 @@ public class VendorFileTypeLocal extends BaseEnumEntity<VendorFileType> implemen
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public VendorFileTypeLocalVo toVo() {
VendorFileTypeLocalVo vo = new VendorFileTypeLocalVo();
vo.setId(getId());
vo.setLang(getLang());
vo.setValue(getValue());
vo.setType(getType());
return vo;
}
}

View File

@@ -1,6 +1,8 @@
package com.ecep.contract.model;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.VendorGroupVo;
import com.ecep.contract.model.Voable;
import jakarta.persistence.*;
import lombok.Getter;
import lombok.Setter;
@@ -17,7 +19,7 @@ import java.util.Objects;
@Entity
@Table(name = "VENDOR_GROUP", schema = "supplier_ms")
@ToString
public class VendorGroup implements IdentityEntity, NamedEntity, BasedEntity, Serializable {
public class VendorGroup implements IdentityEntity, NamedEntity, BasedEntity, Serializable, Voable<VendorGroupVo> {
private static final long serialVersionUID = 1L;
@Id
@@ -74,4 +76,22 @@ public class VendorGroup implements IdentityEntity, NamedEntity, BasedEntity, Se
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public VendorGroupVo toVo() {
VendorGroupVo vo = new VendorGroupVo();
vo.setId(id);
vo.setName(name);
vo.setCode(code);
vo.setDescription(description);
vo.setActive(active);
vo.setPriceComparison(priceComparison);
vo.setRequireQuotationSheetForBid(requireQuotationSheetForBid);
vo.setCanPrePurchase(canPrePurchase);
// path字段在VendorGroup中没有对应字段设置为null
vo.setPath(null);
// version字段在VendorGroup中没有对应字段设置为0
vo.setVersion(0);
return vo;
}
}

View File

@@ -5,6 +5,8 @@ import java.util.Objects;
import com.ecep.contract.ContractFileType;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.VendorGroupRequireFileTypeVo;
import com.ecep.contract.model.Voable;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -28,7 +30,7 @@ import lombok.ToString;
@Setter
@Entity
@Table(name = "VENDOR_GROUP_REQ_FILE_TYPE")
public class VendorGroupRequireFileType implements IdentityEntity, BasedEntity, Serializable {
public class VendorGroupRequireFileType implements IdentityEntity, BasedEntity, Serializable, Voable<VendorGroupRequireFileTypeVo> {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "ID", nullable = false)
@@ -73,4 +75,16 @@ public class VendorGroupRequireFileType implements IdentityEntity, BasedEntity,
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public VendorGroupRequireFileTypeVo toVo() {
VendorGroupRequireFileTypeVo vo = new VendorGroupRequireFileTypeVo();
vo.setId(id);
if (group != null) {
vo.setGroupId(group.getId());
}
vo.setFileType(fileType);
vo.setFrequency(frequency);
return vo;
}
}

View File

@@ -5,6 +5,7 @@ import java.util.Objects;
import com.ecep.contract.VendorType;
import com.ecep.contract.util.HibernateProxyUtils;
import com.ecep.contract.vo.VendorTypeLocalVo;
import jakarta.persistence.Entity;
import jakarta.persistence.Table;
@@ -20,7 +21,7 @@ import lombok.ToString;
@Entity
@Table(name = "VENDOR_TYPE_LOCAL")
@ToString(callSuper = true)
public class VendorTypeLocal extends BaseEnumEntity<VendorType> implements Serializable {
public class VendorTypeLocal extends BaseEnumEntity<VendorType> implements Serializable, Voable<VendorTypeLocalVo> {
private static final long serialVersionUID = 1L;
@Override
@@ -42,4 +43,14 @@ public class VendorTypeLocal extends BaseEnumEntity<VendorType> implements Seria
public final int hashCode() {
return HibernateProxyUtils.hashCode(this);
}
@Override
public VendorTypeLocalVo toVo() {
VendorTypeLocalVo vo = new VendorTypeLocalVo();
vo.setId(getId());
vo.setLang(getLang());
vo.setValue(getValue());
vo.setType(getType());
return vo;
}
}

View File

@@ -0,0 +1,12 @@
package com.ecep.contract.vo;
import com.ecep.contract.CustomerFileType;
import com.ecep.contract.model.BaseEnumEntity;
import com.ecep.contract.model.IdentityEntity;
import lombok.Data;
@Data
public class CompanyCustomerFileTypeLocalVo extends BaseEnumEntity<CustomerFileType> implements IdentityEntity {
}

View File

@@ -10,6 +10,9 @@ import lombok.Data;
@Data
public class CompanyCustomerVo implements IdentityEntity, CompanyBasedVo {
private Integer id;
/**
* 公司
*/
private Integer companyId;
private LocalDate developDate;
private String path;

View File

@@ -1,9 +1,9 @@
package com.ecep.contract.vo;
import com.ecep.contract.CompanyFileType;
import com.ecep.contract.VendorType;
import com.ecep.contract.model.BaseEnumEntity;
import com.ecep.contract.model.IdentityEntity;
import lombok.Data;
@Data

View File

@@ -14,7 +14,6 @@ import lombok.Data;
public class CompanyVendorFileVo implements IdentityEntity {
private Integer id;
private Integer vendorId;
private String vendorName;
private VendorFileType type;
private String filePath;
private String editFilePath;

View File

@@ -0,0 +1,12 @@
package com.ecep.contract.vo;
import com.ecep.contract.ProjectFileType;
import com.ecep.contract.model.BaseEnumEntity;
import com.ecep.contract.model.IdentityEntity;
import lombok.Data;
@Data
public class ProjectFileTypeLocalVo extends BaseEnumEntity<ProjectFileType> implements IdentityEntity {
private boolean active = false;
}

View File

@@ -15,13 +15,17 @@ public class ProjectQuotationVo implements IdentityEntity, ProjectBasedVo {
private String noStandardPayWayText;
private double amount;
private Integer applicantId;
private String applicantName;
private LocalDateTime applyTime;
private Integer authorizerId;
private String authorizerName;
private LocalDateTime authorizationTime;
/**
* 审核文件
*/
private String authorizationFile;
private String description;
/**
* 评价表单文件, CompanyCustomerEvaluationFormFile
*/
private Integer evaluationFileId;
private boolean active = false;
}