完善付款

This commit is contained in:
2026-08-27 18:20:48 +08:00
parent 171887811c
commit cce9ac0f3d
20 changed files with 659 additions and 30 deletions
@@ -29,6 +29,7 @@ public class FormalSettlementSaveRequest implements Serializable {
private String attachmentsJson;
private String remark;
private List<SummaryFee> summaryFees;
private List<Invoice> invoices;
@Data
public static class SummaryFee implements Serializable {
@@ -40,4 +41,17 @@ public class FormalSettlementSaveRequest implements Serializable {
private String remark;
private Integer manualFlag;
}
@Data
public static class Invoice implements Serializable {
@Serial private static final long serialVersionUID = 1L;
private String invoiceNo;
private LocalDate invoiceDate;
private String invoiceType;
private BigDecimal taxRate;
private BigDecimal invoiceAmount;
private BigDecimal availableInvoiceAmount;
private BigDecimal matchedAmount;
private String attachmentJson;
}
}
@@ -0,0 +1,38 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement obtained after purchasing a license from BladeX.
* <p>
* 1. This software is for development use only under a valid license from BladeX.
* <p>
* 2. Redistribution of this software's source code to any third party without a commercial license is strictly prohibited.
* <p>
* 3. Licensees may copyright their own code but cannot use segments from this software for such purposes.
* Copyright of this software remains with BladeX.
* <p>
* Using this software signifies agreement to this License, and the software must not be used for illegal purposes.
* <p>
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is not liable for any claims arising from secondary or illegal development.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.transport.pojo.dto;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
/** 付款申请付款记录请求。 @author Chill */
@Data
public class PaymentApplicationRecordRequest implements Serializable {
@Serial private static final long serialVersionUID = 1L;
private BigDecimal paidAmount;
private LocalDate paidDate;
private String paymentNo;
private String voucherJson;
private String kingdeeBillNo;
}
@@ -58,4 +58,5 @@ public class PaymentApplicationSaveRequest implements Serializable {
private String attachmentsJson;
private String remark;
private List<PaymentApplicationInvoiceRequest> invoices;
private List<PaymentApplicationRecordRequest> paymentRecords;
}
@@ -0,0 +1,31 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.transport.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
import java.io.Serial;
import java.time.LocalDateTime;
/** 正式结算变更记录。 @author Chill */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("blade_formal_settlement_change_record")
public class FormalSettlementChangeRecord extends TenantEntity {
@Serial private static final long serialVersionUID = 1L;
private Long formalSettlementId;
private String changeType;
private Integer lineNo;
private String operationType;
private String changeContent;
private String changeReason;
private String operatorName;
private LocalDateTime changeTime;
}
@@ -0,0 +1,42 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement obtained after purchasing a license from BladeX.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.transport.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
import java.io.Serial;
import java.math.BigDecimal;
import java.time.LocalDate;
/**
* 正式结算发票明细实体类
*
* @author Chill
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("blade_formal_settlement_invoice")
@Schema(description = "正式结算发票明细")
public class FormalSettlementInvoice extends TenantEntity {
@Serial private static final long serialVersionUID = 1L;
private Long formalSettlementId;
private Integer lineNo;
private String invoiceNo;
private LocalDate invoiceDate;
private String invoiceType;
private BigDecimal taxRate;
private BigDecimal invoiceAmount;
private BigDecimal availableInvoiceAmount;
private BigDecimal matchedAmount;
private String attachmentJson;
}
@@ -12,7 +12,9 @@ import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.transport.pojo.entity.FormalSettlement;
import org.springblade.transport.pojo.entity.FormalSettlementChangeRecord;
import org.springblade.transport.pojo.entity.FormalSettlementDetail;
import org.springblade.transport.pojo.entity.FormalSettlementInvoice;
import org.springblade.transport.pojo.entity.FormalSettlementSource;
import org.springblade.transport.pojo.entity.FormalSettlementPayment;
import org.springblade.transport.pojo.entity.FormalSettlementSummaryFee;
@@ -42,4 +44,8 @@ public class FormalSettlementVO extends FormalSettlement {
@TableField(exist = false) private List<FormalSettlementDetail> details;
@TableField(exist = false) private List<FormalSettlementSummaryFee> summaryFees;
@TableField(exist = false) private List<FormalSettlementPayment> payments;
@TableField(exist = false) private List<FormalSettlementInvoice> invoices;
@TableField(exist = false) private List<PaymentApplicationVO> paymentApplications;
@TableField(exist = false) private List<SettlementAdjustmentVO> adjustments;
@TableField(exist = false) private List<FormalSettlementChangeRecord> changeRecords;
}
@@ -0,0 +1,30 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement obtained after purchasing a license from BladeX.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.transport.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 付款申请关联结算单金额视图
*
* @author Chill
*/
@Data
@Schema(description = "付款申请关联结算单金额")
public class PaymentApplicationReferenceAmountVO implements Serializable {
@Serial private static final long serialVersionUID = 1L;
@Schema(description = "结算金额") private BigDecimal settlementAmount;
@Schema(description = "累计申请付款金额") private BigDecimal cumulativeAppliedAmount;
@Schema(description = "可付款金额") private BigDecimal payableAmount;
}
@@ -17,6 +17,7 @@ public class SettlementAdjustmentVO extends SettlementAdjustment {
private String approvalStatusName;
private String settlementTypeName;
private String createUserName;
private String kingdeeBillNo;
private List<SettlementAdjustmentDetail> details;
private List<FormalSettlementDetail> formalDetails;
}