feat(vo): 新增并更新多个VO类实现ContractBasedVo接口

新增CloudTycVo、CloudYuVo、ExtendVendorInfoVo等VO类
更新SalesOrderVo、PurchaseOrderVo等实现ContractBasedVo接口
统一布尔类型字段为boolean并设置默认值false
This commit is contained in:
2025-09-18 09:19:45 +08:00
parent f113cd8c48
commit 07c3f39a95
16 changed files with 284 additions and 13 deletions

View File

@@ -0,0 +1,30 @@
package com.ecep.contract.vo;
import java.time.LocalDateTime;
import com.ecep.contract.model.IdentityEntity;
import lombok.Data;
@Data
public class CloudRkVo implements IdentityEntity {
private Integer id;
private String cloudId;
private Integer companyId;
private boolean autoUpdate = false;
private int updateDays;
private String customerGrade;
private Integer customerScore;
private String customerDescription;
private String vendorGrade;
private Integer vendorScore;
private String vendorDescription;
private String rank;
private String rankDescription;
private LocalDateTime cloudLatest;
private LocalDateTime cloudBlackListUpdated;
private LocalDateTime cloudEntUpdate;
private String description;
private LocalDateTime latestUpdate;
private Integer version;
}

View File

@@ -0,0 +1,19 @@
package com.ecep.contract.vo;
import java.time.Instant;
import com.ecep.contract.model.IdentityEntity;
import lombok.Data;
@Data
public class CloudTycVo implements IdentityEntity, CompanyBasedVo {
private Integer id;
private Integer score;
private Instant cloudLatest;
private String cloudId;
private Instant latestUpdate;
private Integer companyId;
private int version;
private boolean active = false;
}

View File

@@ -0,0 +1,20 @@
package com.ecep.contract.vo;
import java.time.Instant;
import java.time.LocalDate;
import com.ecep.contract.model.IdentityEntity;
import lombok.Data;
@Data
public class CloudYuVo implements IdentityEntity {
private Integer id;
private Instant latestUpdate;
private Integer companyId;
private String exceptionMessage;
private LocalDate vendorUpdateDate;
private LocalDate customerUpdateDate;
private Instant cloudLatest;
private boolean active = false;
}

View File

@@ -1,4 +1,7 @@
package com.ecep.contract.vo;
public interface ContractBasedVo {
Integer getContractId();
void setContractId(Integer contractId);
}

View File

@@ -4,11 +4,10 @@ import com.ecep.contract.model.IdentityEntity;
import lombok.Data;
@Data
public class ContractBidVendorVo implements IdentityEntity {
public class ContractBidVendorVo implements IdentityEntity, ContractBasedVo, CompanyBasedVo {
private Integer id;
private Integer contractId;
private Integer companyId;
private String companyName;
private Integer quotationSheetFileId;
private String quotationSheetFileName;
}

View File

@@ -1,12 +1,13 @@
package com.ecep.contract.vo;
import java.time.LocalDate;
import com.ecep.contract.model.IdentityEntity;
import com.ecep.contract.ContractFileType;
import lombok.Data;
@Data
public class ContractFileVo implements IdentityEntity {
public class ContractFileVo implements IdentityEntity, ContractBasedVo {
private Integer id;
private Integer contractId;
private ContractFileType type;

View File

@@ -1,16 +1,16 @@
package com.ecep.contract.vo;
import com.ecep.contract.model.IdentityEntity;
import java.time.LocalDate;
import java.time.LocalDateTime;
import lombok.Data;
@Data
public class ContractItemVo implements IdentityEntity {
public class ContractItemVo implements IdentityEntity, ContractBasedVo {
private Integer id;
private Integer contractId;
private String contractCode;
private String contractName;
private Integer refId;
private String itemCode;
private String title;

View File

@@ -1,11 +1,13 @@
package com.ecep.contract.vo;
import com.ecep.contract.model.IdentityEntity;
import java.time.LocalDate;
import lombok.Data;
@Data
public class ContractPayPlanVo implements IdentityEntity {
public class ContractPayPlanVo implements IdentityEntity, ContractBasedVo {
private Integer id;
private Integer contractId;
private Integer order;

View File

@@ -0,0 +1,26 @@
package com.ecep.contract.vo;
import com.ecep.contract.model.IdentityEntity;
import lombok.Data;
/**
* 扩展供应商信息VO类
*/
@Data
public class ExtendVendorInfoVo implements IdentityEntity, ContractBasedVo {
private Integer id;
private Integer contractId;
private Integer vendorGroupId;
/**
* 合同序号
*/
private int codeSequenceNumber;
/**
* 是否为指定供应商
*/
private boolean assignedProvider = false;
/**
* 是否为预采购
*/
private boolean prePurchase = false;
}

View File

@@ -0,0 +1,29 @@
package com.ecep.contract.vo;
import com.ecep.contract.model.IdentityEntity;
import java.time.LocalDateTime;
import lombok.Data;
@Data
public class ProjectBidVo implements IdentityEntity, ProjectBasedVo {
private Integer id;
private Integer projectId;
private int level;
private double amount;
private Integer evaluationFileId;
private Integer costId;
private boolean standardPayWay = false;
private String noStandardPayWayText;
private boolean standardContractText = false;
private String noStandardContractText;
private String authorizationFile;
private String bidAcceptanceLetterFile;
private Integer applicantId;
private String applicantName;
private LocalDateTime applyTime;
private Integer authorizerId;
private String authorizerName;
private LocalDateTime authorizationTime;
private String description;
private boolean active = false;
}

View File

@@ -5,14 +5,14 @@ import com.ecep.contract.model.IdentityEntity;
import lombok.Data;
@Data
public class ProjectCostVo implements IdentityEntity {
public class ProjectCostVo implements IdentityEntity, ProjectBasedVo {
private Integer id;
private Integer contractId;
private Integer projectId;
private int version;
private boolean standardPayWay;
private boolean standardPayWay = false;
private String noStandardPayWayText;
private boolean standardContractText;
private boolean standardContractText = false;
private String noStandardContractText;
private float stampTax;
private float stampTaxFee;
@@ -37,5 +37,5 @@ public class ProjectCostVo implements IdentityEntity {
private LocalDateTime authorizationTime;
private String authorizationFile;
private String description;
private boolean importLock;
private boolean importLock = false;
}

View File

@@ -0,0 +1,25 @@
package com.ecep.contract.vo;
import com.ecep.contract.model.IdentityEntity;
import java.time.LocalDateTime;
import lombok.Data;
@Data
public class ProjectQuotationVo implements IdentityEntity, ProjectBasedVo {
private Integer id;
private Integer projectId;
private int level;
private boolean standardPayWay = false;
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;
private Integer evaluationFileId;
private boolean active = false;
}

View File

@@ -5,7 +5,7 @@ import java.time.LocalDate;
import lombok.Data;
@Data
public class PurchaseOrderVo implements IdentityEntity {
public class PurchaseOrderVo implements IdentityEntity, ContractBasedVo {
private Integer id;
private Integer contractId;
private String code;

View File

@@ -5,7 +5,7 @@ import java.time.LocalDate;
import lombok.Data;
@Data
public class SalesOrderVo implements IdentityEntity {
public class SalesOrderVo implements IdentityEntity, ContractBasedVo {
private Integer id;
private Integer contractId;
private String code;

View File

@@ -0,0 +1,22 @@
package com.ecep.contract.vo;
import com.ecep.contract.model.IdentityEntity;
import com.ecep.contract.model.NamedEntity;
import lombok.Data;
/**
* 供应商分组VO类
*/
@Data
public class VendorGroupVo implements IdentityEntity, NamedEntity {
private Integer id;
private String name;
private String code;
private String path;
private String description;
private boolean active = false;
private boolean priceComparison = false;
private boolean requireQuotationSheetForBid = false;
private boolean canPrePurchase = false;
private int version;
}

95
docs/create_vo.md Normal file
View File

@@ -0,0 +1,95 @@
更新Vo
# 任务逻辑
根据 model 创建、更新 Vo先检查Vo是否存在如果不存在则创建Vo否则根据要求更新Vo
更新结果保存到 D:\idea-workspace\Contract-Manager\docs\create_vo.md
## model 所在目录
D:\idea-workspace\Contract-Manager\common\src\main\java\com\ecep\contract\model
## vo 目录
D:\idea-workspace\Contract-Manager\common\src\main\java\com\ecep\contract\vo
## 参考
D:\idea-workspace\Contract-Manager\common\src\main\java\com\ecep\contract\model\Bank.java
D:\idea-workspace\Contract-Manager\common\src\main\java\com\ecep\contract\vo\BankVo.java
## 其他要求
- 检索到的Model先记录在 create_vo.md
- 主键名称为id类型都是 Integer
- 布尔类型的属性使用 boolean,不要使用 Boolean初始值为false
- 注解为@Embeddable@MappedSuperclass的Model不需要更新Vo
- 更新结果以 ModelVo (状态) 保存, Model 和 VO 的名称后期后修改,可能会不一一对应
# 结果记录
已创建: CompanyOldNameVo.java
已创建: ContractCatalogVo.java
已创建: CompanyBlackReasonVo.java
已创建: CompanyContractVo.java
已创建: CompanyCustomerVo.java
已创建: CompanyCustomerEntityVo.java
已创建: CompanyCustomerEvaluationFormFileVo.java
已创建: CompanyCustomerFileVo.java
已创建: CompanyCustomerFileTypeLocalVo.java
已创建: CompanyExtendInfoVo.java
已创建: CompanyFileTypeLocalVo.java
已创建: CompanyVendorVo.java
已创建: CompanyVendorApprovedFileVo.java
已创建: CompanyVendorApprovedItemVo.java
已创建: CompanyVendorApprovedListVo.java
已创建: CompanyVendorEntityVo.java
已创建: CompanyVendorFileVo.java
已创建: CustomerSatisfactionSurveyVo.java (包含active字段boolean类型并设置初始值)
已创建: EmployeeRoleVo.java (包含systemAdministrator、manager和active字段boolean类型并设置初始值)
已创建: ProductTypeVo.java (添加boolean类型的active字段并设置初始值false)
已创建: PurchaseOrderVo.java (添加boolean类型的active字段并设置初始值false)
已创建: CloudRkVo.java (添加boolean类型的autoUpdate字段并设置初始值false)
已创建: CloudTycVo.java (添加boolean类型的active字段并设置初始值false)
已创建: CloudYuVo.java (添加boolean类型的active字段并设置初始值false)
已更新: CompanyContactVo.java (将Boolean类型改为boolean并设置初始值)
已更新: ContractTypeVo.java (将Boolean类型改为boolean并设置初始值)
已更新: ContractKindVo.java (将Boolean类型改为boolean并设置初始值)
已更新: ContractPayPlanVo.java (将Boolean类型改为boolean并设置初始值)
已更新: CustomerCatalogVo.java (将Boolean类型改为boolean并设置初始值)
已更新: DepartmentVo.java (将Boolean类型改为boolean并设置初始值)
已更新: FunctionVo.java (将Boolean类型改为boolean并设置初始值)
已更新: ProjectTypeVo.java (将Boolean类型改为boolean并设置初始值)
已更新: ProductTypeVo.java (将Boolean类型改为boolean并设置初始值)
已更新: ProductUsageVo.java (将Boolean类型改为boolean并设置初始值)
已更新: PriceVo.java (将Boolean类型改为boolean并设置初始值)
已更新: ContractGroupVo.java (将Boolean类型改为boolean并设置初始值)
已更新: DeliverySignMethodVo.java (将Boolean类型改为boolean并设置初始值)
已更新: EmployeeVo.java (为boolean类型的active属性设置初始值false)
已更新: InventoryVo.java (将Boolean类型改为boolean并设置初始值)
已更新: InventoryCatalogVo.java (将Boolean类型改为boolean并设置初始值)
已更新: ProjectVo.java (将多个Boolean类型改为boolean并设置初始值)
已更新: ProjectIndustryVo.java (将Boolean类型改为boolean并设置初始值)
已更新: ProjectSaleTypeVo.java (为boolean类型的属性设置初始值false)
已更新: CompanyBankAccountVo.java (为boolean类型的active属性设置初始值false)
已更新: CompanyInvoiceInfoVo.java (将Boolean类型改为boolean并设置初始值)
已更新: CompanyOldNameVo.java (为boolean类型的ambiguity和active属性设置初始值false)
已更新: CompanyVo.java (将Boolean类型改为boolean并设置初始值)
已更新: ContractVo.java (将多个Boolean类型改为boolean并设置初始值)
已更新: PurchaseReceiptVo.java (修正字段名将Boolean类型的active字段改为boolean类型并设置初始值false)
已检查: ContractItemVo.java (已存在且符合要求)
已检查: VolumeSizeVo.java (已存在且符合要求)
已检查: BankVo.java (已存在且符合要求)
已检查: ContractVo.java (已存在且符合要求)
已检查: ContractBidVendorVo.java (已存在且符合要求)
已检查: ContractCatalogVo.java (已存在且符合要求)
已检查: ContractFileVo.java (已存在且符合要求)
已检查: ContractFileTypeLocalVo.java (已存在且符合要求)
已检查: EmployeeVo.java (已存在且符合要求)
已检查: DepartmentVo.java (已存在且符合要求)
已更新: InventoryVo.java (为boolean类型的specificationLock和nameLock字段设置初始值false)
已检查: InventoryCatalogVo.java (已存在且符合要求)
已检查: ProjectVo.java (已存在且符合要求)
已检查: ProjectIndustryVo.java (已存在且符合要求)
已检查: ProjectSaleTypeVo.java (已存在且符合要求)
已检查: CompanyVo.java (已存在且符合要求)
已更新: InvoiceVo.java (为Boolean类型的active字段设置初始值false)
已更新: PurchaseOrderVo.java (为Boolean类型的active字段设置初始值false)
已更新: SalesOrderVo.java (为Boolean类型的active字段设置初始值false)
已创建: ProjectBidVo.java (包含standardPayWay、standardContractText和active字段boolean类型并设置初始值false)
已创建: ProjectQuotationVo.java (包含standardPayWay和active字段boolean类型并设置初始值false)
已检查: CompanyBankAccountVo.java (已存在且符合要求)
已创建: ExtendVendorInfoVo.java (包含assignedProvider和prePurchase字段boolean类型并设置初始值false)
已更新: ProjectCostVo.java (为boolean类型的standardPayWay、standardContractText和importLock字段设置初始值false并实现ProjectBasedVo接口)
已创建: VendorGroupVo.java (包含active、priceComparison、requireQuotationSheetForBid和canPrePurchase字段boolean类型并设置初始值false)