|
|
/**
|
|
|
* @Auth:ShenZ
|
|
|
* @Description:
|
|
|
*/
|
|
|
syntax = "proto3"; // 版本号
|
|
|
option go_package="./;proto"; //参数1 表示生成到哪个目录 ,参数2 表示生成的文件的package
|
|
|
package proto ; //默认在哪个包
|
|
|
|
|
|
|
|
|
//结构体
|
|
|
/*
|
|
|
ID int32 `json:"id"`
|
|
|
UserId int32 `json:"userId"`
|
|
|
ProductId int32 `gorm:"product_id" json:"productId"`
|
|
|
ProductSkuId int32 `gorm:"product_sku_id" json:"productSkuId"`
|
|
|
ProductName string `json:"productName"`
|
|
|
ProductMainPicture string `gorm:"product_main_picture" json:"productMainPicture"`
|
|
|
Number int32 `gorm:"default:1" json:"number"`
|
|
|
CreateUser int32 `gorm:"default:1" json:"createUser"`
|
|
|
CreateTime time.Time `json:"createTime"`
|
|
|
UpdateUser int32 `json:"updateUser"`
|
|
|
UpdateTime time.Time `json:"updateTime"`
|
|
|
IsDeleted bool `json:"isDeleted"`
|
|
|
*/
|
|
|
message ShoppingCart {
|
|
|
int32 id = 1;
|
|
|
int32 userId = 2;
|
|
|
int32 productId =3;
|
|
|
int32 productSkuId = 4;
|
|
|
string productName = 5;
|
|
|
string productMainPicture = 6;
|
|
|
int32 number = 7;
|
|
|
//查询修改所需
|
|
|
string updateTime =8;
|
|
|
string crateTime = 9;
|
|
|
int32 createUser = 10;
|
|
|
int32 updateUser = 11;
|
|
|
bool isDeleted = 12;
|
|
|
}
|
|
|
/**
|
|
|
前端请求信息 新增购物车
|
|
|
{
|
|
|
"number": 0,
|
|
|
"productId": 0,
|
|
|
"productSkuId": 0
|
|
|
}
|
|
|
**/
|
|
|
//请求 request struct
|
|
|
message AddCartReq {
|
|
|
int32 number = 1;
|
|
|
int32 productId = 2;
|
|
|
int32 productSkuId =3;
|
|
|
string productName = 4;
|
|
|
string productMainPicture = 5;
|
|
|
int32 userId =6;
|
|
|
int32 id = 7;
|
|
|
int32 createUser = 8;
|
|
|
}
|
|
|
//响应 resp struct
|
|
|
/**
|
|
|
"productSimple": {
|
|
|
"id": 15,
|
|
|
"name": "SKG K3颈椎按摩仪护颈仪颈部按摩器礼品",
|
|
|
"startingPrice": 259.00,
|
|
|
"mainPicture": "https://msb-edu-prod.oss-cn-beijing.aliyuncs.com/mall-product/productyou.mashibing.com_goods_detail_15.png",
|
|
|
"labelList": null,
|
|
|
"singleBuyLimit": 0,
|
|
|
"isEnable": true,
|
|
|
"productType": 1
|
|
|
},
|
|
|
"productSkuSimple": {
|
|
|
"skuId": 31,
|
|
|
"attributeSymbolList": "8",
|
|
|
"name": "SKG 4098蓝牙款颈椎仪",
|
|
|
"sellPrice": 359.00,
|
|
|
"stock": 100
|
|
|
},
|
|
|
"shoppingCartNumber": 2, //增加购物车数量
|
|
|
"canSetShoppingCartNumber": 2, //实际最大可设置购物车数量
|
|
|
"isBeyondMaxLimit": false //是否超出最大限制
|
|
|
**/
|
|
|
message AddCartResp{
|
|
|
ProductDetail productSimple = 1;
|
|
|
ProductSku productSkuSimple =2;
|
|
|
int64 shoppingCartNumber = 3;
|
|
|
int64 canSetShoppingCartNumber = 4;
|
|
|
bool isBeyondMaxLimit = 5;
|
|
|
int32 ID = 6;
|
|
|
}
|
|
|
//RPC 服务 接口
|
|
|
service AddCart {
|
|
|
//rpc 服务
|
|
|
rpc AddCart (AddCartReq) returns (AddCartResp){}
|
|
|
}
|
|
|
message UpdateCartReq {
|
|
|
int32 id = 1;
|
|
|
int32 userId = 2;
|
|
|
int32 productId =3;
|
|
|
int32 productSkuId = 4;
|
|
|
string productName = 5;
|
|
|
string productMainPicture = 6;
|
|
|
int32 number = 7;
|
|
|
//查询修改所需
|
|
|
string updateTime =8;
|
|
|
string crateTime = 9;
|
|
|
int32 createUser = 10;
|
|
|
int32 updateUser = 11;
|
|
|
bool isDeleted = 12;
|
|
|
}
|
|
|
message UpdateCartResp {
|
|
|
int64 shoppingCartNumber = 3;
|
|
|
int64 canSetShoppingCartNumber = 4;
|
|
|
bool isBeyondMaxLimit = 5;
|
|
|
int32 ID = 6;
|
|
|
}
|
|
|
service UpdateCart {
|
|
|
//rpc 服务
|
|
|
rpc UpdateCart (UpdateCartReq) returns (UpdateCartResp){}
|
|
|
}
|
|
|
|
|
|
message FindCartReq {
|
|
|
int32 id = 1;
|
|
|
int32 userId = 2;
|
|
|
bool isDeleted = 3;
|
|
|
}
|
|
|
message FindCartResp {
|
|
|
ShoppingCart shoppingCart = 1;
|
|
|
}
|
|
|
//查询购物车
|
|
|
service FindCart {
|
|
|
rpc FindCart (FindCartReq) returns (FindCartResp){}
|
|
|
}
|
|
|
|
|
|
message Product {
|
|
|
int32 id = 1;
|
|
|
string name = 2;
|
|
|
int32 startingPrice =3;
|
|
|
string mainPicture = 4;
|
|
|
map<string,string> labelList = 5;
|
|
|
int32 singleBuyLimit = 6;
|
|
|
string token = 7;
|
|
|
bool isEnable = 8;
|
|
|
int32 productType = 9;
|
|
|
}
|
|
|
/**
|
|
|
前端请求信息
|
|
|
{
|
|
|
"clientId": 0,
|
|
|
"phone": "",
|
|
|
"systemId": 0,
|
|
|
"verificationCode": ""
|
|
|
}
|
|
|
**/
|
|
|
//请求 request struct
|
|
|
message PageReq {
|
|
|
int32 length = 1;
|
|
|
int32 pageIndex = 2;
|
|
|
}
|
|
|
//响应 resp struct
|
|
|
/**
|
|
|
|
|
|
**/
|
|
|
message PageResp{
|
|
|
repeated Product product = 1;
|
|
|
int64 total =2;
|
|
|
int64 rows = 3;
|
|
|
}
|
|
|
//RPC 服务 接口
|
|
|
service Page {
|
|
|
//rpc 服务
|
|
|
rpc Page (PageReq) returns (PageResp){}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
ID int32 `json:"id"`
|
|
|
Name string `json:"name"`
|
|
|
ProductType int32 `gorm:"default:1" json:"productType"`
|
|
|
CategoryId int32 `json:"categoryId"`
|
|
|
StartingPrice float32 `json:"startingPrice"`
|
|
|
TotalStock int32 `gorm:"default:1234" json:"totalStock"`
|
|
|
MainPicture string `gorm:"default:1" json:"mainPicture"`
|
|
|
RemoteAreaPostage float32 `json:"remoteAreaPostage"`
|
|
|
SingleBuyLimit int32 `json:"singleBuyLimit"`
|
|
|
IsEnable bool `json:"isEnable"`
|
|
|
Remark string `gorm:"default:1" json:"remark"`
|
|
|
CreateUser int32 `gorm:"default:1" json:"createUser"`
|
|
|
CreateTime time.Time `json:"createTime"`
|
|
|
UpdateUser int32 `json:"updateUser"`
|
|
|
UpdateTime time.Time `json:"updateTime"`
|
|
|
IsDeleted bool `json:"isDeleted"`
|
|
|
Detail string `gorm:"dtail" json:"detail"` //商品详情页面
|
|
|
PictureList []string `gorm:"pictureList" json:"pictureList"` //商品详情需要的图片
|
|
|
*/
|
|
|
message ProductDetail {
|
|
|
int32 id = 1;
|
|
|
string name = 2;
|
|
|
int32 productType =3;
|
|
|
int32 categoryId = 4;
|
|
|
float startingPrice =5;
|
|
|
int32 totalStock = 6;
|
|
|
string mainPicture =7;
|
|
|
float remoteAreaPostage = 8;
|
|
|
int32 singleBuyLimit =9;
|
|
|
bool isEnable =10;
|
|
|
string remark =11;
|
|
|
int32 createUser =12 ;
|
|
|
string createTime = 13; //go get google.golang.org/protobuf/ptypes/timestamp
|
|
|
int32 updateUser =14;
|
|
|
string updateTime =15;
|
|
|
bool IsDeleted =16;
|
|
|
string detail =17;
|
|
|
string pictureList =18;
|
|
|
}
|
|
|
//请求 request struct
|
|
|
message ProductDetailReq {
|
|
|
int32 id = 1;
|
|
|
}
|
|
|
//响应 resp struct
|
|
|
/**
|
|
|
|
|
|
**/
|
|
|
message ProductDetailResp{
|
|
|
repeated ProductDetail productDetail = 1;
|
|
|
}
|
|
|
//RPC 服务 接口
|
|
|
service ShowProductDetail {
|
|
|
//rpc 服务
|
|
|
rpc ShowProductDetail (ProductDetailReq) returns (ProductDetailResp){}
|
|
|
}
|
|
|
/*
|
|
|
SkuId int32 `gorm:"column:id" json:"skuId"`
|
|
|
Name string
|
|
|
AttributeSymbolList string `gorm:"column:attribute_symbolList" json:"attributeSymbolList"`
|
|
|
SellPrice float32 `gorm:"column:sell_price" json:"sellPrice"`
|
|
|
Stock int32 `gorm:"default:1"`
|
|
|
*/
|
|
|
message ProductSku {
|
|
|
int32 skuId = 1;
|
|
|
string name = 2;
|
|
|
string attributeSymbolList =3;
|
|
|
float sellPrice = 4;
|
|
|
int32 stock =5;
|
|
|
}
|
|
|
//请求 request struct
|
|
|
message ProductSkuReq {
|
|
|
int32 productId = 1;
|
|
|
}
|
|
|
//响应 resp struct
|
|
|
/**
|
|
|
|
|
|
**/
|
|
|
message ProductSkuResp{
|
|
|
repeated ProductSku productSku = 1;
|
|
|
}
|
|
|
//RPC 服务 接口
|
|
|
service ShowProductSku {
|
|
|
//rpc 服务
|
|
|
rpc ShowProductSku (ProductSkuReq) returns (ProductSkuResp){}
|
|
|
}
|
|
|
//商品库存详情 服务 接口
|
|
|
service ShowDetailSku {
|
|
|
//rpc 服务
|
|
|
rpc ShowDetailSku (ProductDetailReq) returns (ProductSkuResp){}
|
|
|
}
|
|
|
|
|
|
// 获取 分布式 token
|
|
|
message TokenReq {
|
|
|
string uuid = 1;
|
|
|
}
|
|
|
//响应 resp struct
|
|
|
message TokenResp{
|
|
|
string token = 1;
|
|
|
bool isLogin=2;
|
|
|
}
|
|
|
//RPC 服务 接口
|
|
|
service GetUserToken {
|
|
|
//rpc 服务
|
|
|
rpc GetUserToken (TokenReq) returns (TokenResp){}
|
|
|
}
|
|
|
|
|
|
//修改库存
|
|
|
message UpdateSkuReq{
|
|
|
ProductSku productSku = 1;
|
|
|
}
|
|
|
message UpdateSkuResp {
|
|
|
bool isSuccess =1;
|
|
|
}
|
|
|
service UpdateSku {
|
|
|
rpc UpdateSku (UpdateSkuReq) returns (UpdateSkuResp){}
|
|
|
}
|
|
|
// 计算订单价格 请求
|
|
|
message OrderTotalReq {
|
|
|
repeated int32 cartIds = 1;
|
|
|
}
|
|
|
//计算订单价格 响应
|
|
|
message OrderTotalResp{
|
|
|
float totalPrice = 1;
|
|
|
}
|
|
|
//RPC 计算订单价格 服务 接口
|
|
|
service GetOrderTotal {
|
|
|
//rpc 服务
|
|
|
rpc GetOrderTotal (OrderTotalReq) returns (OrderTotalResp){}
|
|
|
}
|