package com.yc.ship.module.trade.controller.admin.order.vo.order;

import com.yc.ship.module.trade.framework.annotation.ForUpdate;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;

/**
 * @author qsl
 */
@Schema(description = "订单统计信息")
@Data
public class TradeOrderTotalVO {
    /**
     * 订单ID
     */
    @Schema(description = "订单ID")
    private Long orderId;

    /**
     * 旧订单ID
     */
    private Long oldOrderId;
    /**
     * 成人总数
     */
    @Schema(description = "成人总数")
    private Integer adultTotalNum;
    /**
     * 儿童总数
     */
    @Schema(description = "儿童总数")
    private Integer childTotalNum;
    /**
     * 婴儿总数
     */
    @Schema(description = "婴儿总数")
    private Integer babyTotalNum;
    /**
     * 陪同总数
     */
    @Schema(description = "陪同总数")
    private Integer withTotalNum;

    /**
     * 陪同总价
     */
    @Schema(description = "陪同总价")
    private BigDecimal withTotalNumMoney;
    /**
     * 用房总数
     */
    @Schema(description = "用房总数")
    private BigDecimal useRoomTotalNum;
    /**
     * 升楼层总数
     */
    @Schema(description = "升楼层总数")
    private Integer upFloorTotalNum;
    /**
     * 升楼层总价
     */
    @Schema(description = "升楼层总价")
    private BigDecimal upFloorTotalMoney;
    /**
     * 总加床人数
     */
    @Schema(description = "总加床人数")
    private Integer plusTotalNum;
    /**
     * 调节总价
     */
    @Schema(description = "调节总价")
    private BigDecimal adjustTotalMoney;
    /**
     * 领队数
     */
    @Schema(description = "领队数")
    private Integer leaderTotalNum;

    /**
     * 领队费用
     */
    @Schema(description = "领队费用")
    private BigDecimal leaderAmount;

    /**
     * 陪同费用
     */
    @Schema(description = "陪同费用")
    private BigDecimal withAmount;

    /**
     * 包含服务费
     */
    @Schema(description = "包含服务费")
    private BigDecimal serviceMoney;
    /**
     * 代收服务费
     */
    @Schema(description = "代收服务费")
    private BigDecimal collectionServiceMoney;

    @Schema(description = "折扣")
    private Long discountId;
    /**
     * 订单总额
     */
    @Schema(description = "订单总额")
    private BigDecimal orderMoney;

    @Schema(description = "实际总额")
    private BigDecimal realMoney;

    @Schema(description = "实际总额")
    private BigDecimal realOrderMoney;

    @Schema(description = "其它费用")
    private BigDecimal otherMoney;

    @Schema(description = "其它费用说明")
    private String otherRemark;

    @Schema(description = "16免1人数")
    private Integer freeNum;

    @Schema(description = "16免1金额")
    private BigDecimal freeAmount;

    @Schema(description = "定金")
    private BigDecimal deposi;

    @Schema(description = "受损金额")
    private BigDecimal damaged;
}
