package com.starry.admin.modules.order.module.vo;

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

/**
 * 订单查询返回对象
 *
 * @author admin
 * @since 2024-03-20
 */
@Data
public class PlayOrderDetailsReturnVo {

    private String id;

    private String orderNo;

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

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

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

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

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

    private String acceptBy;

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

    /**
     * 下单时间
     */
    @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 = new Date();

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

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

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

    /**
     * 订单最终金额
     */
    private BigDecimal finalAmount;

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

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

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

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

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

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

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

    /**
     * 要求店员性别（0:未知;1:男;2:女）- 仅随机单有效
     */
    private String sex;

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

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

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

    /**
     * 订单要求
     */
    private List<String> labels;

    /**
     * 是否是首单【0：不是，1：是】
     */
    private String firstOrder;

    /**
     * 是否评价（1：已评价;0:未评价）
     */
    private String evaluate = "0";

    /**
     * 是否投诉（1：已投诉;0:未投诉）
     */
    private String complaint = "0";

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

    /**
     * 店员收入比例
     */
    private Integer estimatedRevenueRatio;

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

}
