2023-11-27 09:36:02 +00:00
|
|
|
|
syntax = "proto3"; //版本声明,使用v3版本
|
|
|
|
|
|
|
|
|
|
package fsservice;
|
2023-12-04 06:56:42 +00:00
|
|
|
|
option go_package = "gitee.com/fusenpack/fusen-service;service";
|
|
|
|
|
|
2023-11-27 09:36:02 +00:00
|
|
|
|
// 导入google/api/annotations.proto 注释依赖
|
|
|
|
|
import "google/api/annotations.proto";
|
|
|
|
|
import "service/basic.proto";
|
|
|
|
|
import "google/protobuf/struct.proto";
|
|
|
|
|
import "google/protobuf/any.proto";
|
|
|
|
|
|
|
|
|
|
//定义服务
|
2023-12-04 06:56:42 +00:00
|
|
|
|
service info {
|
2023-11-27 09:36:02 +00:00
|
|
|
|
// 用户信息
|
|
|
|
|
rpc UserInfo(UserInfoRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
post: "/api/info/user"
|
|
|
|
|
body: "*"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 用户个人资料查询
|
|
|
|
|
rpc UserProfile(QueryProfileRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
post: "/api/info/user/profile"
|
|
|
|
|
body: "*"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 获取默认用户个人资料
|
|
|
|
|
rpc DefaultUserProfile(DefaultProfileRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
get: "/api/info/user/profile/default/{request}"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 更新用户个人资料
|
|
|
|
|
rpc UpdateProfileBase(ProfileRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
post: "/api/info/user/profile/base/update"
|
|
|
|
|
body: "*"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 设置默认地址
|
|
|
|
|
rpc AddressDefault(AddressDefaultRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
post: "/api/info/address/default"
|
|
|
|
|
body: "*"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 添加地址
|
|
|
|
|
rpc AddressAdd(AddressRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
post: "/api/info/address/add"
|
|
|
|
|
body: "*"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 更新地址
|
|
|
|
|
rpc AddressUpdate(AddressRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
post: "/api/info/address/update"
|
|
|
|
|
body: "*"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 更新地址使用状态
|
|
|
|
|
rpc AddressUsedUpdate(AddressIdRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
post: "/api/info/address/update/used"
|
|
|
|
|
body: "*"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 删除地址
|
|
|
|
|
rpc AddressDelete(AddressIdRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
post: "/api/info/address/delete"
|
|
|
|
|
body: "*"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 获取地址列表
|
|
|
|
|
rpc AddressList(basic.Request) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
get: "/api/info/address/list"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 获取餐厅列表
|
|
|
|
|
rpc RestaurantList(basic.Request) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
get: "/api/info/restaurant/list"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 搜索建议
|
|
|
|
|
rpc PreLogoSearchSuggestions(PreLogoSearchSuggestionsRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
post: "/api/info/prelogo/search/suggestions"
|
|
|
|
|
body: "*"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 搜索
|
|
|
|
|
rpc PreLogoSearch(PreLogoSearchRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
post: "/api/info/prelogo/search"
|
|
|
|
|
body: "*"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 联系我们
|
|
|
|
|
rpc ContactUs(ContactUsRequest) returns (basic.Response) {
|
|
|
|
|
option (google.api.http) = {
|
|
|
|
|
post: "/api/info/contact/us"
|
|
|
|
|
body: "*"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2023-12-04 06:56:42 +00:00
|
|
|
|
//定义产品服务
|
|
|
|
|
service product {
|
|
|
|
|
// 产品详情
|
|
|
|
|
rpc GetProductDetail(GetProductDetailReq) returns (GetProductDetailRsp) {
|
|
|
|
|
option (google.api.http) = {
|
2023-12-04 09:16:28 +00:00
|
|
|
|
get: "/api/product/get_product_detail"
|
2023-12-04 06:56:42 +00:00
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
}
|
2023-11-27 09:36:02 +00:00
|
|
|
|
|
|
|
|
|
message UserInfoRequest {
|
|
|
|
|
repeated string module = 1; // 模块
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message QueryProfileRequest {
|
|
|
|
|
string top_key = 1; // 首键
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message QueryProfileResponse {
|
2023-12-04 06:56:42 +00:00
|
|
|
|
google.protobuf.Struct data = 1;
|
2023-11-27 09:36:02 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message DefaultProfileRequest {
|
|
|
|
|
string request = 1; // 请求
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message ProfileRequest {
|
|
|
|
|
ProfileBase base = 1; // 基础个人资料
|
|
|
|
|
SubscriptionStatus sub_status = 2; // 订阅状态
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message ProfileBase {
|
|
|
|
|
optional string first_name = 1; // 名字
|
|
|
|
|
optional string last_name = 2; // 姓氏
|
|
|
|
|
optional string email = 4; // 电子邮件
|
|
|
|
|
optional string mobile = 5; // 手机号码
|
|
|
|
|
optional string resetaurant = 6; // 餐厅
|
|
|
|
|
optional string company = 7; // 公司
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message SubscriptionStatus {
|
|
|
|
|
NotificationEmail notification_email = 1; // 邮件通知设置
|
|
|
|
|
NotificationPhone notification_phone = 2; // 电话通知设置
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message NotificationEmail {
|
|
|
|
|
bool order_update = 1; // 订单更新
|
|
|
|
|
bool newseleter = 2; // 新闻订阅
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message NotificationPhone {
|
|
|
|
|
bool order_update = 1; // 订单更新
|
|
|
|
|
bool newseleter = 2; // 新闻订阅
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message AddressObjectRequest {
|
|
|
|
|
int64 address_id = 1; // 地址ID
|
|
|
|
|
string address_name = 2; // 地址名称
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message AddressIdRequest {
|
|
|
|
|
int64 address_id = 1; // 地址ID
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message AddressDefaultRequest {
|
|
|
|
|
int64 address_id = 1; // 地址ID
|
|
|
|
|
int64 is_default = 2; // 是否默认
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message AddressRequest {
|
|
|
|
|
int64 address_id = 1; // 地址ID(已弃用)
|
|
|
|
|
int64 is_default = 2; // 是否默认
|
|
|
|
|
string first_name = 3; // 名字
|
|
|
|
|
string last_name = 4; // 姓氏
|
|
|
|
|
string mobile = 5; // 手机号码
|
|
|
|
|
string zip_code = 6; // 邮政编码
|
|
|
|
|
string street = 7; // 街道
|
|
|
|
|
string suite = 8; // 套房
|
|
|
|
|
string city = 9; // 城市
|
|
|
|
|
string state = 10; // 省份
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message PreLogoSearchSuggestionsRequest {
|
|
|
|
|
string keywords = 1; // 关键字
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message PreLogoSearchRequest {
|
|
|
|
|
string zip_code = 1; // 邮编
|
|
|
|
|
string keywords = 2; // 关键字
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message ContactUsRequest {
|
|
|
|
|
string name = 1; // 姓名
|
|
|
|
|
string email = 2; // 电子邮件
|
|
|
|
|
string phone = 3; // 电话号码
|
|
|
|
|
string message = 4; // 消息内容
|
|
|
|
|
}
|
|
|
|
|
|
2023-12-04 10:20:02 +00:00
|
|
|
|
//获取产品详情
|
2023-12-04 06:56:42 +00:00
|
|
|
|
message GetProductDetailReq{
|
|
|
|
|
int64 product_id = 1;
|
2023-12-04 08:26:44 +00:00
|
|
|
|
string template_tag = 2;
|
|
|
|
|
int64 selected_color_index = 3;
|
|
|
|
|
string logo = 4;
|
2023-12-04 06:56:42 +00:00
|
|
|
|
}
|
2023-12-04 10:20:02 +00:00
|
|
|
|
message GetProductDetailRsp {
|
|
|
|
|
string logo = 1; //logo
|
|
|
|
|
TemplateTagColorInfo template_tag_color_info = 2; //标签颜色信息
|
|
|
|
|
ProductInfo product_info = 3; //产品基本信息
|
2023-12-05 06:39:15 +00:00
|
|
|
|
google.protobuf.ListValue base_colors = 4; //一些返回写死的颜色
|
2023-12-04 10:20:02 +00:00
|
|
|
|
repeated SizeInfo size_list = 5; //尺寸相关信息
|
2023-12-04 06:56:42 +00:00
|
|
|
|
}
|
|
|
|
|
|
2023-12-04 10:20:02 +00:00
|
|
|
|
message SizeInfo {
|
|
|
|
|
int64 id =1; //尺寸id
|
|
|
|
|
int64 is_default = 2; //是否默认显示
|
|
|
|
|
google.protobuf.Struct title = 3; //尺寸标题信息
|
|
|
|
|
string capacity = 4; //尺寸名称
|
|
|
|
|
int64 parts_can_deleted = 5; //配件是否可删除
|
|
|
|
|
int64 is_hot = 6; //是否热门
|
|
|
|
|
string min_price = 7; //最低价
|
|
|
|
|
google.protobuf.Struct template_info = 8; //模板相关信息
|
|
|
|
|
ModelInfo model_info = 9; //模型相关信息
|
|
|
|
|
repeated FittingInfo fitting_list = 10; //配件相关信息
|
|
|
|
|
}
|
|
|
|
|
message FittingInfo {
|
|
|
|
|
int64 id = 1; //配件id
|
|
|
|
|
int64 is_hot = 2; //是否热门
|
|
|
|
|
string material_image = 3;//配件材质图
|
|
|
|
|
google.protobuf.Struct design_info = 4; //配件设计信息
|
|
|
|
|
string price = 5; //配件价格
|
|
|
|
|
string name = 6; //配件名
|
|
|
|
|
int64 is_default = 7; //是否默认的配件
|
|
|
|
|
}
|
|
|
|
|
message ModelInfo {
|
|
|
|
|
int64 id = 1; //模型id
|
|
|
|
|
google.protobuf.Struct design_info = 2; //模型设计信息
|
|
|
|
|
LightInfo light_info = 3; //灯光信息
|
|
|
|
|
}
|
|
|
|
|
message LightInfo {
|
|
|
|
|
int64 id = 1; //灯光id
|
|
|
|
|
google.protobuf.Struct light_design_info = 2; //灯光设计信息
|
|
|
|
|
}
|
|
|
|
|
message ProductInfo {
|
|
|
|
|
int64 id = 1; //产品id
|
|
|
|
|
string description = 2; //产品描述
|
|
|
|
|
int64 product_type = 3; //产品类型id
|
|
|
|
|
string product_type_name = 4;//产品类型名称
|
|
|
|
|
string title = 5; //产品标题
|
|
|
|
|
int64 is_env = 6; //是否环保
|
|
|
|
|
int64 is_micro = 7; //是否可微波炉
|
|
|
|
|
int64 is_customization = 8; //是否可定制产品
|
|
|
|
|
google.protobuf.Struct website_unit = 9; //产品前台网站单位
|
|
|
|
|
}
|
|
|
|
|
message TemplateTagColorInfo {
|
|
|
|
|
google.protobuf.Struct colors = 1; //传入logo对应的算法颜色组
|
|
|
|
|
int64 selected_color_index = 2; //选择的模板标签的颜色索引值
|
|
|
|
|
google.protobuf.Struct template_tag_groups = 3; //模板标签分组信息
|
|
|
|
|
}
|
2023-11-27 09:36:02 +00:00
|
|
|
|
|