package domain

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

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

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

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

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

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

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

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

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

	/*
	   销售类型（正向销售1：逆向销售2。本接口应返回2）     */
	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     */
	MerchantCode *string `json:"merchant_code,omitempty" `

	/*
	   orderStatus     */
	OrderStatus *string `json:"order_status,omitempty" `

	/*
	   memberPoint     */
	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" `

	/*
	   map格式的json字符串，部分key含义如下。wdkMemberValue:手机号或者卡号 wdkMemberSource:carNum or phoneNum memDegrade：1表示在线降级，2表示离线降级     */
	TradeAttributes *string `json:"trade_attributes,omitempty" `

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

	/*
	   渠道来源     */
	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" `

	/*
	   支付金额，单位分     */
	PayAmt *int64 `json:"pay_amt,omitempty" `
}

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