package com.qs.mp.channel.domain;

import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.*;
import com.qs.mp.common.enums.ChannelGoodsOrderSettleEnum;
import lombok.Data;

/**
 * @describe 经销商商品结算订单实体类
 * @auther quanshu
 * @create 2023-06-08 18:20:12
 */
@TableName("mp_channel_goods_settle_order")
@Data
public class ChannelGoodsSettleOrder implements Serializable {
    private static final long serialVersionUID = 1L;

        /**
     * 主键
     */
         @TableId(value = "order_id", type = IdType.INPUT)
    private String orderId;

        /**
     * 渠道ID
     */
         @TableField("channel_id")
    private Long channelId;

        /**
     * 标题
     */
         @TableField("title")
    private String title;

        /**
     * 结算数量
     */
         @TableField("settle_num")
    private Integer settleNum;

        /**
     * 应付金额
     */
         @TableField("order_amt")
    private Integer orderAmt;

        /**
     * 结算金额
     */
         @TableField("settle_amt")
    private Integer settleAmt;

        /**
     * 订单类型1采购商品
     */
         @TableField("type")
    private Integer type;

        /**
     * 支付类型1支付宝,2微信,10支付宝直连
     */
         @TableField("pay_type")
    private String payType;

        /**
     * 订单状态，1待支付 2已完成
     */
         @TableField("status")
         @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
         private ChannelGoodsOrderSettleEnum status;

        /**
     * 结算门店
     */
         @TableField("settle_channel")
    private String settleChannel;

        /**
     * 支付时间
     */
         @TableField("pay_time")
    private Date payTime;

        /**
     * 创建时间
     */
         @TableField("created_time")
    private Date createdTime;

        /**
     * 更新时间
     */
         @TableField("updated_time")
    private Date updatedTime;


}