refactor(controller): 重构枚举类型相关代码,优化类型转换和显示逻辑

重构枚举类型的处理逻辑,统一使用Vo对象替代Model对象
- 修改ComboBoxUtils初始化逻辑,支持更多类型转换
- 实现VendorCatalogStringConverter用于类型转换
- 更新ContractFileTypeListCell和ContractFileTypeTableCell显示逻辑
- 调整VendorTabSkinFile和CompanyVendorTabSkinBase使用新的类型转换方式
- 更新相关服务类接口,添加类型转换方法
- 修改FXML文件添加类型选择控件
This commit is contained in:
2025-09-23 18:24:00 +08:00
parent 73cbb4e19e
commit 543311c676
21 changed files with 396 additions and 248 deletions

View File

@@ -5,6 +5,7 @@ import java.util.Objects;
import com.ecep.contract.ContractFileType;
import com.ecep.contract.model.ContractFileTypeLocal;
import com.ecep.contract.vo.ContractFileTypeLocalVo;
import javafx.beans.property.SimpleObjectProperty;
import javafx.beans.property.SimpleStringProperty;
import lombok.Data;
@@ -12,17 +13,17 @@ import lombok.EqualsAndHashCode;
@Data
@EqualsAndHashCode(callSuper = false)
public class ContractFileTypeLocalViewModel extends EnumViewModel<ContractFileType, ContractFileTypeLocal> {
public class ContractFileTypeLocalViewModel extends EnumViewModel<ContractFileType, ContractFileTypeLocalVo> {
private SimpleStringProperty suggestFileName = new SimpleStringProperty();
@Override
protected void updateFrom(ContractFileTypeLocal v) {
protected void updateFrom(ContractFileTypeLocalVo v) {
super.updateFrom(v);
suggestFileName.set(v.getSuggestFileName());
}
@Override
public boolean copyTo(ContractFileTypeLocal v) {
public boolean copyTo(ContractFileTypeLocalVo v) {
boolean ret = super.copyTo(v);
if (!Objects.equals(suggestFileName.get(), v.getSuggestFileName())) {
v.setSuggestFileName(suggestFileName.get());

View File

@@ -1,11 +1,11 @@
package com.ecep.contract.vm;
import com.ecep.contract.VendorFileType;
import com.ecep.contract.model.VendorFileTypeLocal;
import com.ecep.contract.vo.VendorFileTypeLocalVo;
import lombok.Data;
import lombok.EqualsAndHashCode;
@Data
@EqualsAndHashCode(callSuper = true)
public class VendorFileTypeLocalViewModel extends EnumViewModel<VendorFileType, VendorFileTypeLocal> {
public class VendorFileTypeLocalViewModel extends EnumViewModel<VendorFileType, VendorFileTypeLocalVo> {
}