package cn.superdesk.uniorder.dto.param.thirdpart.jd;

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

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 京东对账单中的订单 算是临时 sheet eg 深圳市侨城汇网络科技有限公司-2021年8月1日集采账单.xlsx
 *
 * @author linjinyu
 * @email linjinyu@avic-s.com
 * @date 2021-10-12 11:29:24
 */
@Data
@ToString
public class AccountingUnifiedSupplierOrderJdParam implements Serializable {

	@ApiModelProperty("Id")
	private Long       id;
	@ApiModelProperty("批次Id")
	private String     batchId;
	@ApiModelProperty("订单编号 215961349611")
	private String     jdOrderSn;
	@ApiModelProperty("原始订单号 215276644920")
	private String     jdOriginalOrderSn;
	@ApiModelProperty("支付号 72927521073111000607247")
	private String     paymentNo;
	@ApiModelProperty("用户名  侨城汇vsp")
	private String     jdAccoumtUserName;
	@ApiModelProperty("产品编号 KA")
	private String     productNumber;
	@ApiModelProperty("业务类型 ")
	private String     bizType;
	@ApiModelProperty("订单时间 eg 2021-02-28 10:25:41")
	private Date       jdCreateTime;
	@ApiModelProperty("支付时间 eg 2021-02-28 10:50:09")
	private Date       jdPayTime;
	@ApiModelProperty("完成时间 eg 2021-02-28 17:32:42")
	private Date       jdFinishTime;
	@ApiModelProperty("订单金额 159.18")
	private BigDecimal jdOrderAmount;
	@ApiModelProperty("还款金额 0.00")
	private BigDecimal jdRepaymentAmount;
	@ApiModelProperty("退款金额 106.12")
	private BigDecimal jdRefundAmount;
	@ApiModelProperty("未结清 53.06")
	private BigDecimal jdOutStandingAmount;
	@ApiModelProperty("京东 订单状态 ++")
	private Integer    jdOrderState;
	@ApiModelProperty("京东 订单状态 已完成 部分退货")
	private String     jdOrderStateName;
	@ApiModelProperty("京东 入账状态 ++")
	private Integer    wereAccountedState;
	@ApiModelProperty("京东 入账状态 已入账")
	private String     wereAccountedStateName;
	@ApiModelProperty("出账时间 2021-08-01 00:00:00")
	private Date       outAccountTime;
	@ApiModelProperty("账单编号 202103010000900180 直接")
	private String     jdAccountingOrderSn;
	@ApiModelProperty("京东 结清状态 ++")
	private Integer    settledState;
	@ApiModelProperty("京东 结清状态 未结清 ")
	private String     settledStateName;
	@ApiModelProperty("结清时间 未结清为 空串")
	private Date       settledTime;
	@ApiModelProperty("合同编号 ACTBO201811130029")
	private String     purchaserContractSn;
	@ApiModelProperty("企业编号 C1004592650")
	private String     purchaserVirtCode;
	@ApiModelProperty("企业名称 深圳市侨城汇网络科技有限公司")
	private String     purchaserVirtName;
	@ApiModelProperty("发票状态")
	private Integer    invoicedState;
	@ApiModelProperty("发票状态 未开")
	private String     invoicedStateName;
	@ApiModelProperty("售后状态")
	private Integer    afterSaleState;
	@ApiModelProperty("售后状态 未进售后 售后完成 已进售后")
	private String     afterSaleStateName;
	@ApiModelProperty("还款编号 目前为空")
	private String     repaymentOrderSn;
	@ApiModelProperty("发票时间 目前为空 大概也会是 2021-04-01 00:00:00")
	private Date       invoicedDate;
	@ApiModelProperty("应还日期 2021-04-01 00:00:00")
	private Date       repaymentTime;
	@ApiModelProperty("逾期天数 0")
	private Integer    overdueDays;
	@ApiModelProperty("京东 订单类型")
	private Integer    jdOrderType;
	@ApiModelProperty("京东 订单类型 原始订单 子订单")
	private String     jdOrderTypeName;
	@ApiModelProperty("京东 支付类型 ++")
	private Integer    jdPayType;
	@ApiModelProperty("京东 支付类型 金采支付")
	private String     jdPayTypeName;
	@ApiModelProperty("京东 发票号(如果开票了会有)")
	private String     invoiceNumber;
	@ApiModelProperty("发票代码(大概是发票种类代码吧)")
	private String     invoiceCategoryCode;
	@ApiModelProperty("发票金额(含税)")
	private BigDecimal totalAmountIncludingTax;
	@ApiModelProperty("发票抬头")
	private String     purchaserCompanyName;
	@ApiModelProperty("发票种类Id 看一下能不能对上统一上的表记录")
	private Integer    invoiceTypeId;
	@ApiModelProperty("发票种类")
	private String     invoiceType;
	@ApiModelProperty("创建时间")
	private Date       createTime;
	@ApiModelProperty("操作人 sysUserId")
	private Long       createUserId;
	@ApiModelProperty("操作人 sysUserName")
	private String     createUserName;
	@ApiModelProperty("最近更新时间")
	private Date       updateTime;
	@ApiModelProperty("操作人 sysUserId")
	private Long       updateUserId;
	@ApiModelProperty("操作人 sysUserName")
	private String     updateUserName;
	@ApiModelProperty("处理结果:-1-正常;2-异常;")
	private Integer    processResult;
	@ApiModelProperty("处理过程报告")
	private String     processReport;


}