package com.ssm.manage.query;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.ssm.manage.entity.RechargeAccountGive;
import com.ssm.manage.page.BasePage;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Column;
import javax.persistence.Id;
import java.math.BigDecimal;
import java.util.Date;

@ToString
@JsonIgnoreProperties(ignoreUnknown = true)
@Getter
@Setter
public class RechargeAccountOutinRequest extends BasePage {
    @Column(name = "recharge_store_num")
    private String rechargeStoreNum;
    /**
     * id
     */
    @Id
    private Long id;

    /**
     * 单据日期
     */
    @Column(name = "doc_date")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date docDate;

    private String date;

    /**
     * 转出充值账户ID
     */
    @Column(name = "account_id")
    private Long accountId;

    /**
     * 转出会员ID
     */
    @Column(name = "out_member_id")
    private Long outMemberId;

    /**
     * 转出会员名称
     */
    @Column(name = "out_member_name")
    private String outMemberName;



    /**
     * 转出赠送卡金额
     */
    @Column(name = "out_gift_consume_money")
    private BigDecimal outGiftConsumeMoney;




    /**
     * 转出充值类别ID
     */
    @Column(name = "recharge_type_id")
    private Long rechargeTypeId;

    /**
     * 转出充值类别名称
     */
    @Column(name = "recharge_type_name")
    private String rechargeTypeName;


    /**
     * 转出门店编码
     */
    @Column(name = "out_store_num")
    private String outStoreNum;

    /**
     * 转出门店ID
     */
    @Column(name = "out_store_id")
    private Long outStoreId;

    /**
     * 转出门店名称
     */
    @Column(name = "out_store_name")
    private String outStoreName;

    /**
     * 转入门店编码
     */
    @Column(name = "in_store_num")
    private String inStoreNum;

    /**
     * 转入门店ID
     */
    @Column(name = "in_store_id")
    private Long inStoreId;

    /**
     * 转入门店名称
     */
    @Column(name = "in_store_name")
    private String inStoreName;

    /**
     * 0新增/1确定（已审核）
     */
    @Column(name = "state")
    private Integer state;

    /**
     * 转出充值卡编码
     */
    @Column(name = "recharge_num")
    private String rechargeNum;

    /**
     * 转出会员编码
     */
    @Column(name = "out_member_num")
    private String outMemberNum;



    private String phone;

    RechargeAccountGive rechargeAccountGive;

    private String inputBy;



    @Column(name = "input_id")
    @Getter
    @Setter
    private Long inputId;

    @Getter
    @Setter
    @Column(name = "input_name")
    private String inputName;

    @Getter
    @Setter
    @Column(name = "input_num")
    private String inputNum;

    @Getter
    @Setter
    @Column(name = "audit_id")
    private Long auditId;

    @Getter
    @Setter
    @Column(name = "audit_id")
    private String auditName;

    @Getter
    @Setter
    @Column(name = "audit_id")
    private String auditNum;

    @Column(name = "input_date")
    @Getter
    @Setter
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date inputDate;

    @Column(name = "audit_date")
    @Getter
    @Setter
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date auditDate;


}