package com.yidian.shenghuoquan.buserorder.dto

import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.parcelize.Parcelize

/**
 * 确认订单响应
 */
@Parcelize
data class OrderConfirmResDto(
  @SerializedName("coupon_list")
  val couponList: List<CouponDto>? = null,
  @SerializedName("goods_list")
  val goodsList: List<GoodsDto>? = null,
  @SerializedName("marketing_info")
  val marketingInfo: MarketingInfo? = null,
  @SerializedName("shipping")
  val shipping: Shipping? = null,
) : Parcelable

@Parcelize
data class MarketingInfo(
  @SerializedName("marketing_id")
  val marketingId: String? = null,// 活动id
  @SerializedName("marketing_name")
  val marketingName: String? = null,// 活动名称
) : Parcelable

@Parcelize
data class CouponDto(
  @SerializedName("coupon_id")
  val couponId: String? = null,// 优惠券id
  @SerializedName("name")
  val name: String? = null,// 优惠券名称
  @SerializedName("amount")
  val amount: String? = null,// 优惠券金额
  @SerializedName("desc")
  val desc: String? = null,// 优惠券描述
  @SerializedName("scope_use")
  val scopeUse: String? = null,// 优惠券使用门槛
  @SerializedName("start_time")
  val startTime: String? = null,// 有效期开始时间
  @SerializedName("end_time")
  val endTime: String? = null,// 有效期结束时间
  @SerializedName("status")
  val status: Int? = null,// 优惠券状态
) : Parcelable

/**
 * 商品列表
 */
@Parcelize
data class GoodsDto(
  @SerializedName("goods_sku_id")
  val goodsSkuId: String? = null,
  @SerializedName("goods_name")// 商品名称
  val goodsName: String? = null,
  @SerializedName("price") // 商品价格
  val price: Double,
  @SerializedName("goods_sku_num") // 商品数量
  val goodsNum: Int,
  @SerializedName("desc_pic_url_list") // 商品数量
  val picUrl: String,
) : Parcelable

/**
 * 发货相关
 */
@Parcelize
data class Shipping(
  @SerializedName("receiver_mobile")
  val receiverMobile: String? = null,// 收货人手机号
  @SerializedName("receiver_name")
  val receiverName: String? = null,// 收货人姓名
  @SerializedName("take_place_id")
  var takePlaceId: Long? = null,// 自提点id
  @SerializedName("take_place_name")
  var takePlaceName: String? = null,// 自提点名称
  @SerializedName("contact_name")
  var contactName: String? = null,// 自提点联系人
  @SerializedName("phone")
  var phone: String? = null,// 自提点电话
  @SerializedName("address")
  var address: String? = null,// 自提点地址
) : Parcelable

