package shop.alien.entity.store.vo;

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

import java.util.Date;

/**
 * 评价VO
 * 用于显示用户评价信息，包含律师信息、评分、评价内容、发布时间等
 *
 * @author system
 * @since 2025-01-XX
 */
@Data
@ApiModel(value = "PendingReviewVo对象", description = "待评价VO")
public class PendingReviewVo {

    @ApiModelProperty(value = "订单ID")
    private Integer orderId;

    @ApiModelProperty(value = "订单编号")
    private String orderNumber;

    @ApiModelProperty(value = "律师用户ID")
    private Integer lawyerUserId;

    @ApiModelProperty(value = "律师名称")
    private String lawyerName;

    @ApiModelProperty(value = "律师头像")
    private String lawyerAvatar;

    @ApiModelProperty(value = "律所名称")
    private String lawFirmName;

    @ApiModelProperty(value = "总体评分")
    private Double overallRating;

    @ApiModelProperty(value = "评价内容")
    private String reviewContent;

    @ApiModelProperty(value = "发布时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createdTime;

    @ApiModelProperty(value = "订单完成时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date completedTime;

    @ApiModelProperty(value = "问题描述")
    private String problemDescription;

    @ApiModelProperty(value = "订单金额,单位分")
    private Integer orderAmount;

    @ApiModelProperty(value = "咨询费用,单位分")
    private Integer consultationFee;

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

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

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

    @ApiModelProperty(value = "支付时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date paymentTime;

    @ApiModelProperty(value = "订单状态, 0:待支付,1.待接单 2:进行中, 3:已完成, 4:已取消，5.已退款")
    private Integer orderStatus;

    @ApiModelProperty(value = "支付状态, 0:未支付, 1:已支付")
    private Integer paymentStatus;
}

