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

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

/**
 * @Description: Java类作用描述
 * @Author: linjinyu
 * @CreateDate: 2021/11/8 下午4:58
 * @UpdateUser: linjinyu
 * @UpdateDate: 2021/11/8 下午4:58
 * @UpdateRemark: 修改内容
 * @Version: 1.0
 */
@ExcelIgnoreUnannotated
@Data
public class AccountingUnifiedSupplierOrderJdCheckUpReportExportExcelRow implements Serializable {


	@ApiModelProperty("Id")
	private Long   id;
	@ApiModelProperty("批次Id")
	private String batchId;
	@ApiModelProperty("京东 账单编号 202103010000900180 直接")
	private String jdAccountingOrderSn;
	@ApiModelProperty("订单编号 215961349611")
	@ExcelProperty(value = "京东订单编号", index = 0)
	private String jdOrderSn;

	@ApiModelProperty("原始订单号 215276644920")
	@ExcelProperty(value = "京东原始订单号", index = 1)
	private String jdOriginalOrderSn;

	@ApiModelProperty("订单金额 159.18")
	@ExcelProperty(value = "京东订单金额", index = 2)
	private BigDecimal jdOrderAmount;

	@ApiModelProperty("还款金额 0.00")
	@ExcelProperty(value = "京东还款金额", index = 3)
	private BigDecimal jdRepaymentAmount;

	@ApiModelProperty("退款金额 106.12")
	@ExcelProperty(value = "京东退款金额", index = 4)
	private BigDecimal jdRefundAmount;

	@ApiModelProperty("未结清 53.06")
	@ExcelProperty(value = "京东结算金额", index = 5)
	private BigDecimal jdOutStandingAmount;

	@ApiModelProperty("京东 订单状态 ++")
	private Integer jdOrderState;

	@ApiModelProperty("京东 订单状态 已完成 部分退货")
	private String jdOrderStateName;

	@ApiModelProperty("京东 入账状态 ++")
	private Integer wereAccountedState;

	@ApiModelProperty("京东 入账状态 已入账")
	private String wereAccountedStateName;

	@ApiModelProperty("售后状态")
	private Integer afterSaleState;

	@ApiModelProperty("售后状态 未进售后 售后完成 已进售后")
	private String afterSaleStateName;

	@ApiModelProperty("统一订单-第三方订单编号")
	@ExcelProperty(value = "结算中心订单编号", index = 6)
	private String orderSn;

	@ApiModelProperty("统一订单-订单-销售金额")
	private BigDecimal orderAmount;

	@ApiModelProperty("统一订单-订单-成本金额")
	@ExcelProperty(value = "订单金额(订单)", index = 7)
	private BigDecimal orderCostAmount;

	@ApiModelProperty("统一订单-订单-销售金额")
	private BigDecimal refundOrderAmount;

	@ApiModelProperty("统一订单-订单-成本金额")
	@ExcelProperty(value = "退款金额(订单)", index = 8)
	private BigDecimal refundOrderCostAmount;

	@ApiModelProperty("统一订单-订单-运费")
	@ExcelProperty(value = "运费金额(订单)", index = 9)
	private BigDecimal transportAmount;


	@ApiModelProperty("统一订单-订单-商户承担运费")
	@ExcelProperty(value = "商户承担运费(订单)", index = 10)
	private BigDecimal transportMerchantAssumeAmount;

	@ApiModelProperty("统一订单-订单-商品销售金额(包含运费)")
	private BigDecimal goodsAmount;

	@ApiModelProperty("统一订单-订单-商品成本金额(包含运费)")
	@ExcelProperty(value = "订单金额(商品)", index = 11)
	private BigDecimal goodsCostAmount;

	@ApiModelProperty("统一订单-订单-退品销售金额(包含运费)")
	private BigDecimal refundGoodsAmount;

	@ApiModelProperty("统一订单-订单-退品成本金额(包含运费)")
	@ExcelProperty(value = "退款金额(商品)", index = 12)
	private BigDecimal refundGoodsCostAmount;

	@ApiModelProperty("统一订单-订单-订单状态")
	private Integer orderState;

	@ApiModelProperty("统一订单-订单-完成状态")
	private Integer completState;

	@ApiModelProperty("创建时间")
	private Date createTime;


	@ApiModelProperty("结算金额(订单)")
	@ExcelProperty(value = "结算金额(订单)-公式", index = 13)
	private BigDecimal formulaOrderAmount;
	@ApiModelProperty("结算金额(商品)")
	@ExcelProperty(value = "结算金额(商品)-公式", index = 14)
	private BigDecimal formulaGoodsAmount;

	@ApiModelProperty("差异金额(订单)")
	@ExcelProperty(value = "差异金额(订单)-公式", index = 15)
	private BigDecimal differOrderAmount;
	@ApiModelProperty("差异金额(商品)")
	@ExcelProperty(value = "差异金额(商品)-公式", index = 16)
	private BigDecimal differGoodsAmount;

	@ApiModelProperty("处理结果:-1-正常;2-异常;")
	private Integer processResult;
	@ApiModelProperty("处理结果:-1-正常;2-异常;")
	@ExcelProperty(value = "比对状态", index = 17)
	private String processResultStr;
	@ApiModelProperty("处理过程报告")
	@ExcelProperty(value = "建议解决方案", index = 18)
	private String  processReport;

	private static final long serialVersionUID = 1L;

}
