package shop.alien.entity.store.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 律师订单统计数据VO
 *
 * @author system
 * @since 2025-01-XX
 */
@Data
@ApiModel(value = "LawyerOrderStatisticsVO对象", description = "律师订单统计数据VO")
public class LawyerOrderStatisticsVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "本月订单量")
    private Integer monthOrderCount;

    @ApiModelProperty(value = "本月收益（元）")
    private BigDecimal monthRevenue;

    @ApiModelProperty(value = "总订单量")
    private Integer totalOrderCount;

    @ApiModelProperty(value = "总收益（元）")
    private BigDecimal totalRevenue;

    @ApiModelProperty(value = "进行中订单统计")
    private OrderStatusStatistics inProgressOrder;

    @ApiModelProperty(value = "待接单订单统计")
    private OrderStatusStatistics pendingAcceptOrder;

    @ApiModelProperty(value = "已退款订单统计")
    private OrderStatusStatistics refundedOrder;

    /**
     * 订单状态统计内部类
     */
    @Data
    @ApiModel(value = "OrderStatusStatistics对象", description = "订单状态统计数据")
    public static class OrderStatusStatistics implements Serializable {

        private static final long serialVersionUID = 1L;

        @ApiModelProperty(value = "订单总数")
        private Integer orderCount;

        @ApiModelProperty(value = "金额合计（元）")
        private BigDecimal totalAmount;
    }
}

