package domain

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

type AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse struct {
	/*
	   商家编码     */
	MerchantCode *string `json:"merchant_code,omitempty" `

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

	/*
	   订单ID     */
	BizOrderId *int64 `json:"biz_order_id,omitempty" `

	/*
	   订单来源 (2=美团/3=饿了么/26=京东到家/31=淘鲜达/28=私域渠道)     */
	OrderFrom *int64 `json:"order_from,omitempty" `

	/*
	   渠道订单ID     */
	OutOrderId *string `json:"out_order_id,omitempty" `

	/*
	   仓作业单状态 1 = 任务生成 2 = 拣货开始 3 = 拣货完成 4 = 打包开始 5 = 打包完成 -1 = 任务取消     */
	WarehouseStatus *int64 `json:"warehouse_status,omitempty" `

	/*
	   仓作业单状态描述     */
	WarehouseStatusDesc *string `json:"warehouse_status_desc,omitempty" `

	/*
	   订单配送时效  1 = 自提 / 2 = 小时达     */
	DeliveryTimeMind *int64 `json:"delivery_time_mind,omitempty" `

	/*
	   仓单异常状态 (正常/缺货出/任务取消)     */
	ExcStatusDesc *string `json:"exc_status_desc,omitempty" `

	/*
	   仓作业任务下发时间(仓接单)     */
	TaskDispatchedTime *util.LocalTime `json:"task_dispatched_time,omitempty" `

	/*
	   仓作业任务生成时间(准备开始作业)     */
	TaskGenerateTime *util.LocalTime `json:"task_generate_time,omitempty" `

	/*
	   拣货人员ID     */
	PickWorkerId *string `json:"pick_worker_id,omitempty" `

	/*
	   拣货人员姓名     */
	PickWorkerName *string `json:"pick_worker_name,omitempty" `

	/*
	   拣货开始时间(人员开始拣货)     */
	PickStartTime *util.LocalTime `json:"pick_start_time,omitempty" `

	/*
	   拣货结束时间     */
	PickFinishTime *util.LocalTime `json:"pick_finish_time,omitempty" `

	/*
	   打包人员ID     */
	PackWorkerId *string `json:"pack_worker_id,omitempty" `

	/*
	   打包人员姓名     */
	PackWorkerName *string `json:"pack_worker_name,omitempty" `

	/*
	   打包开始时间     */
	PackStartTime *util.LocalTime `json:"pack_start_time,omitempty" `

	/*
	   打包结束时间     */
	PackFinishTime *util.LocalTime `json:"pack_finish_time,omitempty" `

	/*
	   用户选择最晚送达时间     */
	LatestArrivalTime *util.LocalTime `json:"latest_arrival_time,omitempty" `

	/*
	   最晚出库时间     */
	LatestOutboundTime *util.LocalTime `json:"latest_outbound_time,omitempty" `

	/*
	   实际出库时间     */
	ActualOutboundTime *util.LocalTime `json:"actual_outbound_time,omitempty" `

	/*
	   仓作业取消时间     */
	CancelTime *util.LocalTime `json:"cancel_time,omitempty" `

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

func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetMerchantCode(v string) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.MerchantCode = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetStoreId(v string) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.StoreId = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetBizOrderId(v int64) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.BizOrderId = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetOrderFrom(v int64) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.OrderFrom = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetOutOrderId(v string) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.OutOrderId = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetWarehouseStatus(v int64) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.WarehouseStatus = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetWarehouseStatusDesc(v string) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.WarehouseStatusDesc = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetDeliveryTimeMind(v int64) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.DeliveryTimeMind = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetExcStatusDesc(v string) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.ExcStatusDesc = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetTaskDispatchedTime(v util.LocalTime) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.TaskDispatchedTime = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetTaskGenerateTime(v util.LocalTime) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.TaskGenerateTime = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetPickWorkerId(v string) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.PickWorkerId = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetPickWorkerName(v string) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.PickWorkerName = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetPickStartTime(v util.LocalTime) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.PickStartTime = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetPickFinishTime(v util.LocalTime) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.PickFinishTime = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetPackWorkerId(v string) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.PackWorkerId = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetPackWorkerName(v string) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.PackWorkerName = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetPackStartTime(v util.LocalTime) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.PackStartTime = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetPackFinishTime(v util.LocalTime) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.PackFinishTime = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetLatestArrivalTime(v util.LocalTime) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.LatestArrivalTime = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetLatestOutboundTime(v util.LocalTime) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.LatestOutboundTime = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetActualOutboundTime(v util.LocalTime) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.ActualOutboundTime = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetCancelTime(v util.LocalTime) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.CancelTime = &v
	return s
}
func (s *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse) SetSubOrders(v []AlibabaTclsAelophyWarehouseOrderGetWarehouseSubOrderResponse) *AlibabaTclsAelophyWarehouseOrderGetWarehouseOrderResponse {
	s.SubOrders = &v
	return s
}
