package domain

import (
	"git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/util"
)

type AlibabaWdkOrderListOrder struct {
	/*
	   业务主订单号     */
	BizOrderId *int64 `json:"biz_order_id,omitempty" `

	/*
	   商品优惠总额     */
	DiscountAmt *int64 `json:"discount_amt,omitempty" `

	/*
	   商品总金额（优惠前）     */
	OriginalAmt *int64 `json:"original_amt,omitempty" `

	/*
	   支付渠道列表     */
	PayChannels *[]AlibabaWdkOrderListPayChannel `json:"pay_channels,omitempty" `

	/*
	   成交时间     */
	PayTime *util.LocalTime `json:"pay_time,omitempty" `

	/*
	   配送费     */
	PostFee *int64 `json:"post_fee,omitempty" `

	/*
	   门店编码     */
	StoreId *string `json:"store_id,omitempty" `

	/*
	   子订单列表     */
	SubOrders *[]AlibabaWdkOrderListSubOrder `json:"sub_orders,omitempty" `

	/*
	   销售类型（正向销售1：逆向销售2。本接口应返回1）     */
	TrdType *int64 `json:"trd_type,omitempty" `

	/*
	   会员价优惠总金额     */
	MemberDiscountAmt *int64 `json:"member_discount_amt,omitempty" `

	/*
	   会员卡号     */
	MemberCardNum *string `json:"member_card_num,omitempty" `

	/*
	   收银员编号     */
	OperatorId *string `json:"operator_id,omitempty" `

	/*
	   淘宝主订单号     */
	TbBizOrderId *int64 `json:"tb_biz_order_id,omitempty" `

	/*
	   收银员名字     */
	OperatorName *string `json:"operator_name,omitempty" `

	/*
	   商户码     */
	MerchantCode *string `json:"merchant_code,omitempty" `

	/*
	   订单状态     */
	OrderStatus *string `json:"order_status,omitempty" `

	/*
	   主订单总积分     */
	MemberPoint *string `json:"member_point,omitempty" `

	/*
	   打包时间     */
	PackageTime *util.LocalTime `json:"package_time,omitempty" `

	/*
	   赠券，格式为 券ID_券金额， 金额单位为分     */
	GiftCoupon *string `json:"gift_coupon,omitempty" `

	/*
	   一串唯一的字符串     */
	DutyCode *string `json:"duty_code,omitempty" `

	/*
	   tradeAttributes     */
	TradeAttributes *string `json:"trade_attributes,omitempty" `

	/*
	   买家对应的open_uid     */
	OpenUid *string `json:"open_uid,omitempty" `

	/*
	   渠道来源，3：饿了么  4：盒马 18:大润发飞牛  19:欧尚外卖     */
	OrderFrom *int64 `json:"order_from,omitempty" `

	/*
	   渠道店id     */
	ShopId *string `json:"shop_id,omitempty" `

	/*
	   外部门店id     */
	OutShopId *string `json:"out_shop_id,omitempty" `

	/*
	   外部订单号     */
	OutOrderId *string `json:"out_order_id,omitempty" `

	/*
	   app或pos     */
	OrderClient *string `json:"order_client,omitempty" `
}

func (s *AlibabaWdkOrderListOrder) SetBizOrderId(v int64) *AlibabaWdkOrderListOrder {
	s.BizOrderId = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetDiscountAmt(v int64) *AlibabaWdkOrderListOrder {
	s.DiscountAmt = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetOriginalAmt(v int64) *AlibabaWdkOrderListOrder {
	s.OriginalAmt = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetPayChannels(v []AlibabaWdkOrderListPayChannel) *AlibabaWdkOrderListOrder {
	s.PayChannels = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetPayTime(v util.LocalTime) *AlibabaWdkOrderListOrder {
	s.PayTime = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetPostFee(v int64) *AlibabaWdkOrderListOrder {
	s.PostFee = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetStoreId(v string) *AlibabaWdkOrderListOrder {
	s.StoreId = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetSubOrders(v []AlibabaWdkOrderListSubOrder) *AlibabaWdkOrderListOrder {
	s.SubOrders = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetTrdType(v int64) *AlibabaWdkOrderListOrder {
	s.TrdType = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetMemberDiscountAmt(v int64) *AlibabaWdkOrderListOrder {
	s.MemberDiscountAmt = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetMemberCardNum(v string) *AlibabaWdkOrderListOrder {
	s.MemberCardNum = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetOperatorId(v string) *AlibabaWdkOrderListOrder {
	s.OperatorId = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetTbBizOrderId(v int64) *AlibabaWdkOrderListOrder {
	s.TbBizOrderId = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetOperatorName(v string) *AlibabaWdkOrderListOrder {
	s.OperatorName = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetMerchantCode(v string) *AlibabaWdkOrderListOrder {
	s.MerchantCode = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetOrderStatus(v string) *AlibabaWdkOrderListOrder {
	s.OrderStatus = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetMemberPoint(v string) *AlibabaWdkOrderListOrder {
	s.MemberPoint = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetPackageTime(v util.LocalTime) *AlibabaWdkOrderListOrder {
	s.PackageTime = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetGiftCoupon(v string) *AlibabaWdkOrderListOrder {
	s.GiftCoupon = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetDutyCode(v string) *AlibabaWdkOrderListOrder {
	s.DutyCode = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetTradeAttributes(v string) *AlibabaWdkOrderListOrder {
	s.TradeAttributes = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetOpenUid(v string) *AlibabaWdkOrderListOrder {
	s.OpenUid = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetOrderFrom(v int64) *AlibabaWdkOrderListOrder {
	s.OrderFrom = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetShopId(v string) *AlibabaWdkOrderListOrder {
	s.ShopId = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetOutShopId(v string) *AlibabaWdkOrderListOrder {
	s.OutShopId = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetOutOrderId(v string) *AlibabaWdkOrderListOrder {
	s.OutOrderId = &v
	return s
}
func (s *AlibabaWdkOrderListOrder) SetOrderClient(v string) *AlibabaWdkOrderListOrder {
	s.OrderClient = &v
	return s
}
