package com.jwipc.finance.dto;

import com.alibaba.excel.annotation.ExcelProperty;
import com.jwipc.order.clent.dto.PurchaseDetailDTO;
import com.jwipc.order.clent.dto.PurchaseOrderDTO;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * <p>
 * 对账付款申请主表
 * </p>
 *
 * @author WT
 * @since 2024-03-08
 */
@Data
public class PaymentAdvanceApplyImportDTO implements Serializable {

    /**
     * 采购订单号
     */
    @ExcelProperty("采购订单号")
    private String poCode;

    /**
     * 订单行号
     */
    @ExcelProperty("订单行号")
    private String poItemNo;

    /**
     * 工厂
     */
//    @ExcelProperty("工厂")
    private String factoryCode;

    /**
     * 公司
     */
//    @ExcelProperty("公司")
    private String companyCode;

    /**
     * 供应商编码
     */
//    @ExcelProperty("供应商编码")
    private String supplierCode;
    private String supplierName;

    /**
     * 币种
     */
    @ExcelProperty("币种")
    private String currencyCode;

    /**
     * 付款方式编码
     */
//    @ExcelProperty("付款方式")
    private String paymentWayCode;
    private String ipwCode;
    @ExcelProperty("付款方式")
    private String paymentWayCodeDesc;

    /**
     * 供应商开户行
     */
    @ExcelProperty("供应商开户行名称")
    private String supBankName;
    private String supBankCode;

    /**
     * 开户行账号
     */
    @ExcelProperty("开户行账号")
    private String supBankAccount;

    /**
     * 银行代码
     */
    @ExcelProperty("银行代码")
    private String bankCode;

    /**
     * 预算外金额
     */
    @ExcelProperty("本次申请金额")
    private String budOutMoneyStr;
    private BigDecimal budOutMoney;
    private BigDecimal oaBorrowMoney;
    private BigDecimal oaAleradyPayMoney;

    /**
     * 已冲账金额
     */
    @ExcelProperty("已冲账金额")
    private String reversalMoneyStr;
    private BigDecimal reversalMoney;

    /**
     * 行摘要
     */
    @ExcelProperty("行摘要")
    private String itemRemark;


    private Integer status;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 创建人
     */
    private Long createUserId;
    private String createUserCode;
    private String createUserName;


    private String itemNo;

    private PurchaseDetailDTO purchaseDetailDTO;
    private PurchaseOrderDTO purchaseOrderDTO;
}
