package com.starry.admin.modules.weichat.entity.order;

import com.fasterxml.jackson.annotation.JsonFormat;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;

/**
 * 店员订单详情返回信息
 *
 * @author admin
 * @since 2024/5/12 下午9:16
 **/
@Data
public class PlayClerkOrderDetailsReturnVo {

    /**
     * 订单ID
     */
    private String id;

    /**
     * 订单编号
     */
    private String orderNo;

    /**
     * 订单状态【0:1:2:3:4】 0：已下单（待接单） 1：已接单（待开始） 2：已开始（服务中） 3：已完成 4：已取消
     */
    private String orderStatus;

    /**
     * 下单类型（0：指定单，1：随机单。2：打赏单）
     */
    private String placeType;

    /**
     * 商品数量
     */
    private int commodityNumber;

    /**
     * 支付方式，0：余额支付,1:微信支付,2:支付宝支付
     */
    private String payMethod;

    /**
     * 订单备注
     */
    private String remark;

    /**
     * 买家微信号码
     */
    private String weiChatCode;

    /**
     * 订单金额
     */
    private BigDecimal orderMoney;

    /**
     * 下单时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date purchaserTime;

    /**
     * 接单时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date acceptTime;

    /**
     * 开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date startTime;

    /**
     * 结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;

    /**
     * 取消时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date cancelTime;

    /**
     * 退款人类型[0:顾客;1:店员;2:管理员]
     */
    private String refundByType;

    /**
     * 退款人ID
     */
    private String refundById;

    /**
     * 退款原因
     **/
    private String refundReason;

    /**
     * 订单最终金额（支付金额）
     */
    private BigDecimal finalAmount;

    /**
     * 预计收入
     */
    private BigDecimal estimatedRevenue;

    private String acceptBy;

    /**
     * 优惠金额
     */
    private BigDecimal discountAmount;

    /**
     * 用户ID
     */
    private String customId;

    /**
     * 用户昵称
     */
    private String customNickname;

    /**
     * 用户头像
     */
    private String customAvatar;

    /**
     * 用户等级ID
     */
    private String customLevelId;

    /**
     * 用户等级名称
     */
    private String customLevelName;

    /**
     * 店员ID
     */
    private String clerkId;

    /**
     * 店员昵称
     */
    private String clerkNickname;

    /**
     * 店员头像
     */
    private String clerkAvatar;

    /**
     * 商品ID
     */
    private String commodityId;

    /**
     * 商品类型[0:礼物，1：服务]
     */
    private String commodityType;

    /**
     * 商品名称
     */
    private String commodityName;
    /**
     * 商品单价
     */
    private BigDecimal commodityPrice;

    /**
     * 服务时长
     *
     * @since 2024/5/8 16:44
     **/
    private String serviceDuration;

}
