package domain

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

type AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq struct {
	/*
	   商品列表     */
	OutboundItemInfos *[]AlibabaWdkWholesaleOutboundorderCommitOutboundItemInfo `json:"outbound_item_infos,omitempty" `

	/*
	   预计到货时间     */
	EstimatedArrivalAt *util.LocalTime `json:"estimated_arrival_at,omitempty" `

	/*
	   出货时间     */
	OutboundAt *util.LocalTime `json:"outbound_at,omitempty" `

	/*
	   收货类型(信任收货、非信任收货)     */
	TrustedInbound *bool `json:"trusted_inbound,omitempty" `

	/*
	   供应商名称     */
	SupplierName *string `json:"supplier_name,omitempty" `

	/*
	   供应商编码     */
	SupplierCode *string `json:"supplier_code,omitempty" `

	/*
	   asn单号     */
	AsnOrderNo *string `json:"asn_order_no,omitempty" `

	/*
	   商家编码，已经废弃     */
	MerchantCode *string `json:"merchant_code,omitempty" `
}

func (s *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq) SetOutboundItemInfos(v []AlibabaWdkWholesaleOutboundorderCommitOutboundItemInfo) *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq {
	s.OutboundItemInfos = &v
	return s
}
func (s *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq) SetEstimatedArrivalAt(v util.LocalTime) *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq {
	s.EstimatedArrivalAt = &v
	return s
}
func (s *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq) SetOutboundAt(v util.LocalTime) *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq {
	s.OutboundAt = &v
	return s
}
func (s *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq) SetTrustedInbound(v bool) *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq {
	s.TrustedInbound = &v
	return s
}
func (s *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq) SetSupplierName(v string) *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq {
	s.SupplierName = &v
	return s
}
func (s *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq) SetSupplierCode(v string) *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq {
	s.SupplierCode = &v
	return s
}
func (s *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq) SetAsnOrderNo(v string) *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq {
	s.AsnOrderNo = &v
	return s
}
func (s *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq) SetMerchantCode(v string) *AlibabaWdkWholesaleOutboundorderCommitOutboundInfoCommitReq {
	s.MerchantCode = &v
	return s
}
