Files
contract-manager/client/src/main/java/com/ecep/contract/vm/ContractBalanceViewModel.java
songqq 02afa189f8 feat(contract): 新增合同余额功能及重构文件管理
重构合同文件管理逻辑,增加错误处理和日志记录
新增ContractBalance实体、Repository和VO类
完善Voable接口文档和实现规范
更新项目架构文档和数据库设计
修复SmbFileService的连接问题
移动合同相关TabSkin类到contract包
添加合同文件重建任务的WebSocket支持
2025-11-19 00:50:16 +08:00

180 lines
5.4 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.ecep.contract.vm;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.UUID;
import com.ecep.contract.vo.ContractBalanceVo;
import javafx.beans.property.SimpleObjectProperty;
import javafx.beans.property.SimpleStringProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
@Data
@EqualsAndHashCode(callSuper = false)
public class ContractBalanceViewModel extends IdentityViewModel<ContractBalanceVo> {
/**
* 余额ID (对应cBalanceID)
*/
private SimpleStringProperty refId = new SimpleStringProperty();
/**
* GUID余额在系统中的唯一标识 (对应GUID字段)
*/
private SimpleObjectProperty<UUID> guid = new SimpleObjectProperty<>();
/**
* 关联合同ID (对应cContractID)
*/
private SimpleObjectProperty<Integer> contractId = new SimpleObjectProperty<>();
/**
* 业务员ID (对应cFunctionaryID)
*/
private SimpleObjectProperty<Integer> employeeId = new SimpleObjectProperty<>();
/**
* 余额类型ID (对应cBalancelTypeID)
*/
private SimpleStringProperty balanceTypeId = new SimpleStringProperty();
/**
* 汇率 (对应decExchangeRate)
*/
private SimpleObjectProperty<Double> exchangeRate = new SimpleObjectProperty<>();
/**
* 发票号码 (对应cBalanceDetails)
*/
private SimpleStringProperty invoiceNumber = new SimpleStringProperty();
/**
* 创建人 (对应cProducer)
*/
private SimpleObjectProperty<Integer> setupPersonId = new SimpleObjectProperty<>();
/**
* 创建日期 (对应dtProduceDate)
*/
private SimpleObjectProperty<LocalDate> setupDate = new SimpleObjectProperty<>();
/**
* 审核人 (对应cAuditer)
*/
private SimpleObjectProperty<Integer> auditerId = new SimpleObjectProperty<>();
/**
* 审核日期 (对应dtAuditeDate)
*/
private SimpleObjectProperty<LocalDate> auditeDate = new SimpleObjectProperty<>();
/**
* 管理员 (对应cAdmin)
*/
private SimpleObjectProperty<Integer> adminId = new SimpleObjectProperty<>();
/**
* 管理员日期 (对应dtAdminDate)
*/
private SimpleObjectProperty<LocalDate> adminDate = new SimpleObjectProperty<>();
/**
* 凭证ID (对应cPZID)
*/
private SimpleStringProperty pzId = new SimpleStringProperty();
/**
* 凭证编号 (对应cPZNum)
*/
private SimpleStringProperty pzNum = new SimpleStringProperty();
/**
* JSD类型 (对应cJsdType)
*/
private SimpleStringProperty jsdType = new SimpleStringProperty();
/**
* 源余额ID (对应cSrcBalanceID)
*/
private SimpleStringProperty srcBalanceId = new SimpleStringProperty();
/**
* 创建时间 (对应dtCreateTime)
*/
private SimpleObjectProperty<LocalDateTime> createTime = new SimpleObjectProperty<>();
/**
* 修改时间 (对应dtModifyTime)
*/
private SimpleObjectProperty<LocalDateTime> modifyTime = new SimpleObjectProperty<>();
/**
* 修改人 (对应cModifer)
*/
private SimpleObjectProperty<Integer> modiferId = new SimpleObjectProperty<>();
/**
* 生效时间 (对应dtEffectTime)
*/
private SimpleObjectProperty<LocalDateTime> effectTime = new SimpleObjectProperty<>();
@Override
protected void updateFrom(ContractBalanceVo v) {
super.updateFrom(v);
// 设置各个属性值
refId.set(v.getRefId());
guid.set(v.getGuid());
contractId.set(v.getContractId());
employeeId.set(v.getEmployeeId());
balanceTypeId.set(v.getBalanceTypeId());
exchangeRate.set(v.getExchangeRate());
invoiceNumber.set(v.getInvoiceNumber());
setupPersonId.set(v.getSetupPersonId());
setupDate.set(v.getSetupDate());
auditerId.set(v.getAuditerId());
auditeDate.set(v.getAuditeDate());
adminId.set(v.getAdminId());
adminDate.set(v.getAdminDate());
pzId.set(v.getPzId());
pzNum.set(v.getPzNum());
jsdType.set(v.getJsdType());
srcBalanceId.set(v.getSrcBalanceId());
createTime.set(v.getCreateTime());
modifyTime.set(v.getModifyTime());
modiferId.set(v.getModiferId());
effectTime.set(v.getEffectTime());
}
@Override
public boolean copyTo(ContractBalanceVo v) {
boolean result = super.copyTo(v);
// 从ViewModel复制属性到VO
v.setRefId(refId.get());
v.setGuid(guid.get());
v.setContractId(contractId.get());
v.setEmployeeId(employeeId.get());
v.setBalanceTypeId(balanceTypeId.get());
v.setExchangeRate(exchangeRate.get());
v.setInvoiceNumber(invoiceNumber.get());
v.setSetupPersonId(setupPersonId.get());
v.setSetupDate(setupDate.get());
v.setAuditerId(auditerId.get());
v.setAuditeDate(auditeDate.get());
v.setAdminId(adminId.get());
v.setAdminDate(adminDate.get());
v.setPzId(pzId.get());
v.setPzNum(pzNum.get());
v.setJsdType(jsdType.get());
v.setSrcBalanceId(srcBalanceId.get());
v.setCreateTime(createTime.get());
v.setModifyTime(modifyTime.get());
v.setModiferId(modiferId.get());
v.setEffectTime(effectTime.get());
return result;
}
}