https://open.shipout.com/portal/documentation/
b, err := os.ReadFile("./config/config_test.json")
if err != nil {
panic(fmt.Sprintf("Read config error: %s", err.Error()))
}
var c config.Config
err = jsoniter.Unmarshal(b, &c)
if err != nil {
panic(fmt.Sprintf("Parse config file error: %s", err.Error()))
}
shipOutClient := NewShipOut(c)
params := OrdersQueryParams{}
params.CurPageNo = 1
params.PageSize = 100
orders, _, err := shipOutClient.OMS.Order.All(params)
fmt.Println(orders)
如果是带有翻页的数据,对应的方法会有三个返回值(比如:All()),分别是:
- 获取到的数据
- 是否为最后一页
- 错误信息
您可以使用以下代码来获取所有的数据,例如:
params := OrdersQueryParams{}
params.CurPageNo = 1
params.PageSize = 100
for {
orders, isLastPage, err := shipOutClient.OMS.Order.All(params)
if err != nil {
panic(err)
}
// 根据返回的 orders 进行业务处理
if isLastPage {
break
}
params.CurPageNo += 1
}
需要获取所有值,您可以使用 for 循环调用对应的方法,并且不断的累加 CurPageNo 参数,直到 isLastPage 返回 true 为止。
如果不带有翻页,则方法调用后只会有两个返回值,分别为数据集和错误。
在任何情况下,您都应该首先判断是否返回错误,然后再进行下一步的业务逻辑处理。
- Bulk() 批量提交订单
req := BulkOrderRequest{}
shipOutClient.OMS.Order.Bulk(req)
- All() 查询订单列表
parmas := OrdersQueryParams()
orders, isLastPage, err := shipOutClient.OMS.Order.All(params)
- One() 查询单个订单
params := OrderQueryParams{}
order, err := shipOutClient.OMS.Order.One(params)
- Cancel() 取消订单
id, err := shipOutClient.OMS.Order.Cancel(orderId)
- Bulk() 批量创建产品
req := BulkProductRequest{}
err := shipOutClient.OMS.Product.Bulk(req)
- All() 产品列表
params := ProductsQueryParams{}
products, isLastPage, err := shipOutClient.OMS.Product.All(params)
- Update() 更新商品
req := UpdateProductRequest{}
err := shipOutClient.OMS.Product.Update(req)
- Warehouses() 仓库增值服务
warehouseValueAddedServices, err := shipOutClient.OMS.ValueAddedService.Warehouses()
- Warehouses() 仓库列表
warehouses, err := shipOutClient.OMS.BaseInfo.Warehouses()