package com.jeeplus.business.payment.service.dto;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jeeplus.business.project.domain.JyProject;
import com.jeeplus.core.domain.BaseEntity;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

@Data
public class PaymentDTO extends BaseEntity {

    //付款编号（字典值）
    public static final String BIZ_CODE = "39";

    /**
     * 项目id
     */
    private String projectId;

    /**
     * 付款编号
     */
    @Excel(name = "付款编号",width = 25)
    private String no;

    /**
     * 收款类别
     */
    private String proceedType;

    //税号
    private String dutyNumber;

    //累计已支付金额
    private String amountPaid;

    //付款理由或用途
    private String reason;

    //付款金额(小写)
    @Excel(name = "付款金额",width = 25)
    private String paymentLower;

    //付款金额(大写)
    private String payment;

    //付款方式
    private String paymentType;

    //付款摘要
    private String remarks;

    //状态
    private String status;

    //流程
    private String procInsId;
    private String processDefinitionId;
    private String taskId;

    //对冲金额
    @Excel(name = "对冲金额",width = 25)
    private String refund;

    //剩余付款额度
    @Excel(name = "剩余付款额度",width = 25)
    private String finalMoney;

    //收款单位
    private String proceedOfficeId;

    /**
     * 部门名称
     */

    private String officeName;
    private String officeId;

    //付款人

    private String createName;

    //付款时间
    private String[] createDates;

    //付款金额
    private String[] paymentAmounts;

    //关联项目
    private List<JyProject> projectDTOList;

    //付款人
    @Excel(name = "付款人",width = 25)
    private String paymentUser;

    //付款时间
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "付款时间",width = 16,exportFormat = "yyyy-MM-dd")
    private Date paymentTime;

    //付款人部门
    @Excel(name = "付款人部门",width = 25)
    private String paymentOffice;

    /**
     * 开户银行及银行账号
     */
    private String ourBank;
    private String bankNumber;
    @Excel(name = "付款状态",width = 25)
    private String paymentStatus;



}
