package com.eleadmin.site.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

/**
 * 收银台
 *
 * @author gxwebsoft.com
 * @since 2020-03-14 11:29:04
 */
@Data
@ApiModel(description = "收银台")
@TableName("ws_cashier")
public class Cashier implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty("ID")
    @TableId(type = IdType.AUTO)
    private Integer cashierId;

    @ApiModelProperty("客户ID")
    private String buyerId;

    @ApiModelProperty("设备ID")
    private String merchantCode;

    @ApiModelProperty("支付标识")
    private String code;

    @ApiModelProperty("消息")
    private String msg;

    @ApiModelProperty("客户端交易订单编号")
    private String outTradeNo;

    @ApiModelProperty(value = "数量")
    private Integer amount;

    @ApiModelProperty("支付时间")
    private String payTime;

    @ApiModelProperty("支付方式")
    private String payType;

    @ApiModelProperty("交易金额")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Double totalAmount;

    @ApiModelProperty("实收金额")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Double receiptAmount;

    @ApiModelProperty("第三方交易手续费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Double feeAmount;

    @ApiModelProperty("第三方结算金额")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Double settleAmount;

    @ApiModelProperty("订单备注")
    private String orderRemark;

    @ApiModelProperty("订单状态")
    private String orderStatus;

    @ApiModelProperty("签名")
    @TableField(exist = false)
    private String sign;

    @ApiModelProperty("店铺名称")
    private String merchantName;

    @ApiModelProperty("手机号码")
    private String mobile;

    @ApiModelProperty("租户编号")
    private String tenantId;

    @ApiModelProperty(value = "是否删除, 0否, 1是")
    @TableLogic
    private Integer deleted;

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

    @ApiModelProperty(value = "修改时间")
    private Date updateTime;

}
