/**
 * @filename:SeparateAccountsInfo 2024-10-23
 * @project KJT v1.1.0 Copyright(c) 2024 wanglang Co. Ltd. All right reserved.
 */
package com.trade.service.business.separateaccounts.domain;

import java.math.BigDecimal;
import java.time.LocalDate;

import org.springframework.format.annotation.DateTimeFormat;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.trade.common.core.domain.BizBaseEntity;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @Description:分账信息表实体类
 * @version: v1.1.0
 * @author: wanglang
 */
@Data
@EqualsAndHashCode(callSuper = false)
// @Accessors(chain = true)
public class SeparateAccountsInfo extends BizBaseEntity {

    private static final long serialVersionUID = 1729685969698L;
    @ApiModelProperty(name = "separateAccountsId", value = "分账主表id")
    private Long separateAccountsId;
    @ApiModelProperty(name = "tradeParticipantsIdentifier", value = "贸易参与方标识")
    private String tradeParticipantsIdentifier;
    @ApiModelProperty(name = "tradeParticipantsName", value = "贸易参与方名称")
    private String tradeParticipantsName;
    @ApiModelProperty(name = "ledgerType", value = "分账类型1出口退税款2贸易回款3预收货款4贸易融资款5贷款差额6贷款结汇差额")
    private String ledgerType;
    @ApiModelProperty(name = "ledgerRatio", value = "分账比例单位%")
    private Integer ledgerRatio;
    @ApiModelProperty(name = "transactionNumber", value = "交易编号")
    private String transactionNumber;
    @ApiModelProperty(name = "ledgerAmount", value = "分账金额")
    private BigDecimal ledgerAmount;
    @ApiModelProperty(name = "ledgerCurrency", value = "分账金额币种代码")
    private String ledgerCurrency;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty(name = "planEntryDate", value = "付款日期")
    private LocalDate planEntryDate;
    @ApiModelProperty(name = "accountName", value = "账户名称")
    private String accountName;
    @ApiModelProperty(name = "accountNumber", value = "账号")
    private String accountNumber;
    @ApiModelProperty(name = "openingBank", value = "开户行名称")
    private String openingBank;
    @ApiModelProperty(name = "bankName", value = "银行名称")
    private String bankName;
}
