package models

type ProductPrePlanVo struct {
	SaleOrderId         *string `json:"saleOrderId"`
	ProductPlanName     *string `json:"productPlanName"`
	PurchasePlanName    *string `json:"purchasePlanName"`
	OutsourcingPlanName *string `json:"outsourcingPlanName"`
	PlanBeginDate       *string `json:"planBeginDate"`
	PlanEndDate         *string `json:"planEndDate"`

	ProductPlanVoList     *[]ProductPlanVo     `json:"productPlanVoList"`
	PurchasePlanVoList    *[]PurchasePlanVo    `json:"purchasePlanVoList"`
	OutsourcingPlanVoList *[]OutsourcingPlanVo `json:"outsourcingPlanVoList"`
}

type ProductPlanVo struct {
	MaterialCode *string `json:"materialCode"`
	BomId        *string `json:"bomId"`

	WarehouseMaterialVoList *[]WarehouseMaterialVo `json:"warehouseMaterialVoList"`
	PlanProductNumber       *float64               `json:"allocateNum"`
}

type PurchasePlanVo struct {
	MaterialCode *string `json:"materialCode"`

	WarehouseMaterialVoList *[]WarehouseMaterialVo `json:"warehouseMaterialVoList"`
	PlanPurchaseNumber      *float64               `json:"allocateNum"`
}

type OutsourcingPlanVo struct {
	MaterialCode *string `json:"materialCode"`

	WarehouseMaterialVoList *[]WarehouseMaterialVo `json:"warehouseMaterialVoList"`
	PlanOutsourcingNumber   *float64               `json:"allocateNum"`
}

type WarehouseMaterialVo struct {
	LockedNumber *float64 `json:"lockedNumber"`
	WarehouseId  *string  `json:"warehouseId"`
}
