package com.muchinfo.mtp3pojos.vo.taaccount;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

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

@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value="TaAccountAmountStreamResult对象", description="资金流水信息列表响应")
public class TaAccountAmountStreamResult {

    @ApiModelProperty(value = "交易日")
    private Date hisTradeDate;

    @ApiModelProperty(value = "操作类型")
    private Integer operateType;

    @ApiModelProperty(value = "商品")
    private String goodsName;

    @ApiModelProperty(value = "期初余额")
    private BigDecimal balance;

    @ApiModelProperty(value = "期末余额")
    private BigDecimal currentBalance;

    @ExcelProperty("账户")
    @ColumnWidth(35)
    @ApiModelProperty(value = "账户")
    private String accountName;

    @ExcelProperty("资金账户")
    @ColumnWidth(20)
    @ApiModelProperty(value = "资金账户")
    private Long accountId;

    @ExcelProperty("所属机构")
    @ColumnWidth(20)
    @ApiModelProperty(value = "所属机构")
    private String memberName;

    @ExcelProperty("金额")
    @ColumnWidth(20)
    @ApiModelProperty(value = "金额")
    private BigDecimal amount;

    @ExcelProperty("业务类型")
    @ColumnWidth(20)
    @ApiModelProperty(value = "业务类型")
    private String businessCodeName;

    @ExcelProperty("操作时间")
    @ColumnWidth(20)
    @ApiModelProperty(value = "记账时间")
    private Date createTime;

    @ExcelProperty("市场")
    @ColumnWidth(20)
    @ApiModelProperty(value = "市场")
    private String marketName;

    @ExcelProperty("关联单号")
    @ColumnWidth(20)
    @ApiModelProperty(value = "关联单号")
    private String relationOrderId;

    @ApiModelProperty(value = "资金调整类型")
    private String amountAdjustTypeName;
}
