package com.ruoyi.bst.order.domain.bo;

import java.util.List;

import com.ruoyi.bst.app.domain.AppVO;
import com.ruoyi.bst.area.domain.AreaVO;
import com.ruoyi.bst.areaJoin.domain.AreaJoinVO;
import com.ruoyi.bst.channel.domain.ChannelVO;
import com.ruoyi.bst.channel.domain.vo.ChannelPayVO;
import com.ruoyi.bst.creditUser.domain.CreditUserVO;
import com.ruoyi.bst.device.domain.DeviceVO;
import com.ruoyi.bst.model.domain.ModelVO;
import com.ruoyi.bst.order.domain.Order;
import com.ruoyi.bst.order.domain.dto.OrderCreateDTO;
import com.ruoyi.bst.order.domain.vo.OrderPrePriceVO;
import com.ruoyi.bst.orderDevice.domain.OrderDevice;
import com.ruoyi.bst.orderDevice.domain.OrderDeviceVO;
import com.ruoyi.bst.pay.domain.vo.DoPayVO;
import com.ruoyi.bst.suit.domain.SuitVO;
import com.ruoyi.bst.userApp.domain.UserAppVO;
import com.ruoyi.common.core.domain.vo.UserVO;

import lombok.Data;

@Data
public class OrderCreateBO {

    // 原始参数
    private OrderCreateDTO dto;
    
    // 套餐
    private SuitVO suit;

    // 设备
    private DeviceVO device;

    // 车型
    private ModelVO model;

    // 运营区
    private AreaVO area;

    // 下单用户
    private UserVO user;

    // 未支付的订单数量
    private Integer unpaidCount;

    // 用户进行中的订单设备
    private OrderDeviceVO userOrderDevice;
    
    // 计算的价格信息
    private OrderPrePriceVO prePrice;
    
    // 渠道
    private ChannelVO channel;
    
    // APP信息
    private AppVO app;

    // 设备的加盟商
    private AreaJoinVO areaJoin;

    // 运营区的合伙人
    private List<AreaJoinVO> partners;

    // 用户APP绑定信息
    private UserAppVO userApp;

    // 生成的订单
    private Order order;

    // 生成的订单设备
    private OrderDevice orderDevice;

    // 调起支付的返回值
    private DoPayVO doPayVO;

    // 挂账用户
    private CreditUserVO creditUser;

    // 渠道支付列表
    private List<ChannelPayVO> channelPayList;
}
