fusenapi/server_api/shopping-cart-confirmation.api
2023-07-12 14:11:04 +08:00

139 lines
3.9 KiB
Plaintext

syntax = "v1"
info (
title: "购物车服务"
desc: // TODO: add description
author: "ldm"
email: ""
)
import "basic.api"
service shopping-cart-confirmation {
//添加入购物车
@handler CartAddHandler
post /api/cart/add (CartAddReq) returns (response);
//删除购物车
@handler CartDeleteHandler
post /api/cart/del (CartDeleteReq) returns (response);
//获取用户购物车数量
@handler CartNumberHandler
get /api/cart/num (request) returns (response);
//获取用户购物车列表
@handler CartListHandler
get /api/cart/list (CartListReq) returns (response);
//获取用户购物车订单详情
@handler CartOrderDetailHandler
get /api/cart/order-detail (CartOrderDetailReq) returns (response);
//变更发货方式和地址
@handler ChangeOrderMethodHandler
post /api/cart/chang-order-method (ChangeOrderMethodReq) returns (response);
//创建购物车订单
@handler CreateOrderHandler
post /api/cart/create-order (CreateOrderReq) returns (response);
}
//添加入购物车
type CartAddReq {
DesignId string `json:"design_id"` //设计sn
BuyNum int64 `json:"buy_num"` //购买数量
IsCheck int64 `json:"is_check,optional"`
}
//删除购物车
type CartDeleteReq {
Id int64 `json:"id"`
}
//获取用户购物车数量
type CartNumberRsp {
Num int64 `json:"num"`
}
//获取用户购物车列表
type CartListReq {
Size uint32 `form:"size"`
}
type CartListRsp {
Id int64 `json:"id"`
Cover string `json:"cover"`
Name string `json:"name"`
Capacity string `json:"capacity"`
ETA string `json:"ETA"`
Pcs int64 `json:"pcs"`
ProductSn string `json:"product_sn"`
DesignSn string `json:"designSn"`
Option *CartOption `json:"option"`
IsCheck int64 `json:"is_check"`
TsTime string `json:"ts_time"`
PcsList []*PcsItem `json:"pcs_list"`
Size *CartSizeItem `json:"size"`
}
type CartOption {
Id int64 `json:"id"`
Title string `json:"title"`
Price float64 `json:"price"`
}
type PcsItem {
Num int64 `json:"num"`
TotalNum int64 `json:"total_num"`
Title string `json:"title"`
Price float64 `json:"price"`
}
type CartSizeItem {
Cm string `json:"cm"`
Inch string `json:"inch"`
}
//获取用户购物车订单详情
type CartOrderDetailReq {
Sn string `form:"sn"`
}
type CartOrderDetailRsp {
DeliveryMethod int64 `json:"delivery_method"`
AddressId int64 `json:"address_id"`
PayTime string `json:"pay_time"`
PayMethod int64 `json:"pay_method"`
PayStep int64 `json:"pay_step"`
Subtotal string `json:"subtotal"`
Total string `json:"total"`
Remaining string `json:"remaining"`
AddrList []*CartAddr `json:"addr_list"`
Items []*CartDetailItem `json:"items"`
}
type CartDetailItem {
Cover string `json:"cover"`
Pcs int64 `json:"pcs"`
Amount string `json:"amount"`
Option string `json:"option"`
Size string `json:"size"`
Name string `json:"name"`
}
type CartAddr {
Id int64 `json:"id"`
Name string `json:"name"`
FirstName string `json:"first_name"`
LastName string `json:"last_name"`
Mobile string `json:"mobile"`
Street string `json:"street"`
Suite string `json:"suite"`
City string `json:"city"`
State string `json:"state"`
ZipCode string `json:"zip_code"`
IsDefault int64 `json:"is_default"`
}
//变更发货方式和地址
type ChangeOrderMethodReq {
Sn string `json:"sn"`
DeliveryMethod int64 `json:"delivery_method , options=1|2"`
AddressId int64 `json:"address_id"`
PayMethod int64 `json:"pay_method"`
}
//创建购物车订单
type CreateOrderReq {
Form []OrderFormItem `json:"form"`
}
type OrderFormItem {
Id int64 `json:"id"`
Num int64 `json:"num"`
}
type CreateOrderRsp {
Sn string `json:"sn"`
}