This commit is contained in:
david 2024-02-27 23:01:27 +08:00
parent b8f8a7bfda
commit 06b9a5a15d
49 changed files with 3481 additions and 9 deletions

View File

@ -0,0 +1,55 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { AddressAddRequest,StatusReply,AddressItem,IdentRequest,FetchRequest,AddressListReply,AddressDelRequest } from "./types";
// 新增地址
export function Add(data: AddressAddRequest): AxiosPromise<StatusReply> {
return request({
url: "/address.Method.Add",
method: "post",
data: data,
});
}
// 修改地址
export function Set(data: AddressItem): AxiosPromise<StatusReply> {
return request({
url: "/address.Method.Set",
method: "post",
data: data,
});
}
// 获取一条地址
export function Get(data: IdentRequest): AxiosPromise<AddressItem> {
return request({
url: "/address.Method.Get",
method: "post",
data: data,
});
}
// 获取地址列表
export function List(data: FetchRequest): AxiosPromise<AddressListReply> {
return request({
url: "/address.Method.List",
method: "post",
data: data,
});
}
// 删除一个地址
export function Del(data: AddressDelRequest): AxiosPromise<StatusReply> {
return request({
url: "/address.Method.Del",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,56 @@
export interface AddressItem {
id?: number; // ID
phone?: string; // 手机号
country?: string; // 国家
province?: string; // 省
city?: string; // 市
area?: string; // 区
detail?: string; // 详情地址
contact?: string; // 联系人
status?: number; // 状态 -1为删除1为正常2为设置成默认
}
export interface AddressAddRequest {
phone?: string; // 手机号
country?: string; // 国家
province?: string; // 省
city?: string; // 市
area?: string; // 区
detail?: string; // 详情地址
contact?: string; // 联系人
status?: number; // 状态 -1为删除1为正常2为设置成默认
}
export interface FetchRequest {
page_no?: number; // 页数
page_size?: number; // 每页记录数
params?: ParamsEntry[]; // 条件参数,key=val,eg key:category_id=?,vlaue=11
}
export interface IdentRequest {
id?: number; // 唯一ID
identity?: string; // 唯一码
}
export interface StatusReply {
status?: number; // 状态码
identity?: string; // 标识码
message?: string; // 状态说明
timeseq?: number; // 响应时间序列
}
export interface AddressListReply {
data?: AddressItem[]; // 地址列表
}
export interface AddressDelRequest {
id?: number; // ID
}

View File

@ -0,0 +1,105 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { ListRequest,ListResponse,DirTreeRequest,DirTreeResponse,DownloadRequest,MakeRequest,MakeResponse,RenameRequest,Empty,RemoveRequest,MoveRequest,CopyRequest,ShareRequest,ShareResponse,ParseShareRequest,ParseShareResponse } from "./types";
// 本级目录列表
export function List(data: ListRequest): AxiosPromise<ListResponse> {
return request({
url: "/cloud.Method.List",
method: "post",
data: data,
});
}
// 目录树
export function DirTree(data: DirTreeRequest): AxiosPromise<DirTreeResponse> {
return request({
url: "/cloud.Method.DirTree",
method: "post",
data: data,
});
}
// 本级及子级递归列表
export function Download(data: DownloadRequest): AxiosPromise<ListResponse> {
return request({
url: "/cloud.Method.Download",
method: "post",
data: data,
});
}
// 创建文件/文件夹
export function Make(data: MakeRequest): AxiosPromise<MakeResponse> {
return request({
url: "/cloud.Method.Make",
method: "post",
data: data,
});
}
// 修改文件/文件夹名称
export function Rename(data: RenameRequest): AxiosPromise<Empty> {
return request({
url: "/cloud.Method.Rename",
method: "post",
data: data,
});
}
// 移除文件/文件夹及其子级递归列表
export function Remove(data: RemoveRequest): AxiosPromise<Empty> {
return request({
url: "/cloud.Method.Remove",
method: "post",
data: data,
});
}
// 移动文件/文件夹及其子级递归列表
export function Move(data: MoveRequest): AxiosPromise<Empty> {
return request({
url: "/cloud.Method.Move",
method: "post",
data: data,
});
}
// 复制文件/文件夹及其子级递归列表
export function Copy(data: CopyRequest): AxiosPromise<Empty> {
return request({
url: "/cloud.Method.Copy",
method: "post",
data: data,
});
}
// 分享文件/文件夹及其子级递归列表
export function Share(data: ShareRequest): AxiosPromise<ShareResponse> {
return request({
url: "/cloud.Method.Share",
method: "post",
data: data,
});
}
// 解析分享内容
export function ParseShare(data: ParseShareRequest): AxiosPromise<ParseShareResponse> {
return request({
url: "/cloud.Method.ParseShare",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,113 @@
export interface Empty {
}
authorization_identity identity
user_identity
export interface ListRequest {
identity?: string; // 文件夹唯一标识,获取顶级的不传
name?: string; // 根据文件名称模糊查找,当该字段不为空时identity的限定失效
}
export interface ListResponse {
list?: UserFile[];
}
export interface DirTreeRequest {
identity?: string; // 文件夹唯一标识,获取顶级的不传
}
export interface DirTreeResponse {
list?: UserFile[]; // 只返回文件夹
}
export interface DownloadRequest {
list?: string; // identity列表,必传
}
export interface UserFile {
identity?: string; // 唯一标识
name?: string; // 文件/文件夹名称
ext?: string; // 后缀,文件夹时为空
parent?: string; // 父级文件夹序列,按文件名称查询时候生效
file?: TYPE_MESSAGE; // 文件信息
created_at?: string;
updated_at?: string;
children?: UserFile[]; // 子文件夹
}
export interface File {
identity?: string; // 唯一标识
path?: string; // 文件路径
size?: number; // 文件大小,单位:B
}
export interface MakeRequest {
name?: string; // 文件/文件夹名称,必传
ext?: string; // 后缀,文件夹传空即可
parent_identity?: string; // 父文件夹标识,选填
size?: number; // 文件大小,非文件夹时必传,单位:B
hash?: string; // 文件hash值,非文件夹时必传
path?: string; // 文件地址,非文件夹时必传
}
export interface MakeResponse {
identity?: string;
}
,
export interface RenameRequest {
identity?: string; // 必传
name?: string; // 文件/文件夹名称,必传
ext?: string; // 后缀,文件夹传空即可
}
export interface RemoveRequest {
list?: string; // identity列表
}
export interface MoveRequest {
list?: string; // identity列表
target_identity?: string; // 目标文件夹标识,如果是顶级则不填
}
export interface CopyRequest {
list?: string; // identity列表
target_identity?: string; // 目标文件夹标识,如果是顶级则不填
}
export interface ShareRequest {
list?: string; // identity列表
days?: number; // 有效天数,默认永久
}
export interface ShareResponse {
key?: string; // 解析分享内容关键key
}
export interface ParseShareRequest {
key?: string; // 解析分享内容关键key
}
export interface ParseShareResponse {
list?: UserFile[];
}

View File

@ -0,0 +1,85 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { CompanyListRequest,CompanyListReply,Identity,CompanyItem,DeliveryAddressListRequest,DeliveryAddressListReply,DeliveryAddressItem,Empty,CollectionInformationItem } from "./types";
export function List(data: CompanyListRequest): AxiosPromise<CompanyListReply> {
return request({
url: "/company.Company.List",
method: "post",
data: data,
});
}
export function Get(data: Identity): AxiosPromise<CompanyItem> {
return request({
url: "/company.Company.Get",
method: "post",
data: data,
});
}
export function Modify(data: CompanyItem): AxiosPromise<Identity> {
return request({
url: "/company.Company.Modify",
method: "post",
data: data,
});
}
export function DeliveryAddressList(data: DeliveryAddressListRequest): AxiosPromise<DeliveryAddressListReply> {
return request({
url: "/company.Company.DeliveryAddressList",
method: "post",
data: data,
});
}
export function DeliveryAddressModify(data: DeliveryAddressItem): AxiosPromise<Identity> {
return request({
url: "/company.Company.DeliveryAddressModify",
method: "post",
data: data,
});
}
export function DeliveryAddressDelete(data: Identity): AxiosPromise<Empty> {
return request({
url: "/company.Company.DeliveryAddressDelete",
method: "post",
data: data,
});
}
export function CollectionInformation(data: Identity): AxiosPromise<CollectionInformationItem> {
return request({
url: "/company.Company.CollectionInformation",
method: "post",
data: data,
});
}
export function CollectionInformationModify(data: CollectionInformationItem): AxiosPromise<Identity> {
return request({
url: "/company.Company.CollectionInformationModify",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,35 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { RoleRequest,RoleReply,RoleItem,Identity,Empty } from "./types";
export function List(data: RoleRequest): AxiosPromise<RoleReply> {
return request({
url: "/company.Role.List",
method: "post",
data: data,
});
}
export function Modify(data: RoleItem): AxiosPromise<Identity> {
return request({
url: "/company.Role.Modify",
method: "post",
data: data,
});
}
export function Delete(data: Identity): AxiosPromise<Empty> {
return request({
url: "/company.Role.Delete",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,55 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { StaffListRequest,StaffListReply,StaffItem,Identity,Empty,StaffCompanyRequest } from "./types";
export function List(data: StaffListRequest): AxiosPromise<StaffListReply> {
return request({
url: "/company.Staff.List",
method: "post",
data: data,
});
}
export function Modify(data: StaffItem): AxiosPromise<Identity> {
return request({
url: "/company.Staff.Modify",
method: "post",
data: data,
});
}
export function Delete(data: Identity): AxiosPromise<Empty> {
return request({
url: "/company.Staff.Delete",
method: "post",
data: data,
});
}
// 修改关联关系
export function StaffCompany(data: StaffCompanyRequest): AxiosPromise<Empty> {
return request({
url: "/company.Staff.StaffCompany",
method: "post",
data: data,
});
}
export function StaffCompanyChangeStatus(data: StaffCompanyRequest): AxiosPromise<Empty> {
return request({
url: "/company.Staff.StaffCompanyChangeStatus",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,192 @@
export interface Identity {
identity?: string;
}
export interface Empty {
}
export interface CompanyListRequest {
page_no?: number; // 页数
page_size?: number; // 每页记录数
name?: string; // 企业名称
status?: number; // 认证状态: 1 已注册、2 已认证
relation_genre?: number; // 关联关系类型: 1 成员企业、2 分销企业、3 供货企业
registered_start_at?: string; // 注册时间-开始,格式:2006-01-02 15:04:05
registered_end_at?: string; // 注册时间-结束格式:2006-01-02 15:04:05
with_statistics?: TYPE_BOOL; // 是否需要查询统计信息
}
export interface CompanyListReply {
list?: CompanyItem[];
count?: number;
statistics?: TYPE_MESSAGE;
}
export interface CompanyItem {
id?: number;
identity?: string;
name?: string; // 企业名称
unicode?: string; // 信用代码
logo?: string; // 企业Logo
profile?: string; // 企业头像
genre?: number; // 企业类型: 1 企业、2 资金方、3 物流企业 etc.
registered_at?: string; // 注册时间
authorized_at?: string; // 认证时间
status?: number; // 认证状态: 1 已注册、2 已认证
relation_genre?: number; // 关联关系类型: 1 成员企业、2 分销企业、3 供货企业
relation_status?: number; // 关联关系状态: 1 正常表示关系可用、2 已停用(表示关系不可用)
contact_name?: string; // 联系人
contact_phone?: string; // 联系电话
contact_address?: string; // 联系地址(补充地址)
province_identity?: string; // 省级identity
city_identity?: string; // 市级identity
district_identity?: string; // 区级identity
account?: string; // 登录账号
password?: string; // 登录密码
password_confirmed?: string; // 确认密码密码,仅注册/修改需要
}
export interface CompanyStatisticsData {
total?: number; // 总的企业数
available?: number; // 可用的企业数
disable?: number; // 停用企业数
}
export interface DeliveryAddressListRequest {
page_no?: number; // 页数
page_size?: number; // 每页记录数
contact_name?: string;
contact_phone?: string;
}
export interface DeliveryAddressListReply {
list?: DeliveryAddressItem[];
count?: number;
}
export interface DeliveryAddressItem {
identity?: string;
contact_name?: string; // 联系人
contact_phone?: string; // 联系电话
contact_address?: string; // 联系地址(补充地址)
province_identity?: string; // 省级identity
city_identity?: string; // 市级identity
district_identity?: string; // 区级identity
is_default?: TYPE_BOOL;
created_at?: string;
}
export interface CollectionInformationItem {
identity?: string;
company_identity?: string;
card_no?: string;
deposit_bank?: string;
payment_line?: string;
remark?: string;
created_at?: string;
}
export interface RoleRequest {
company_identity?: string; // 企业identity,如果不传具体的identity就查询所有的
}
export interface RoleReply {
kv?: KvEntry[]; // key:company_identity
}
export interface RoleList {
list?: RoleItem[];
}
export interface RoleItem {
id?: number;
identity?: string;
name?: string;
company_identity?: string;
created_at?: string;
}
export interface StaffListRequest {
page_no?: number; // 页数
page_size?: number; // 每页记录数
staff_name?: string;
company_name?: string;
status?: number;
registered_start_at?: string; // 注册时间-开始,格式:2006-01-02 15:04:05
registered_end_at?: string; // 注册时间-结束格式:2006-01-02 15:04:05
with_statistics?: TYPE_BOOL; // 是否需要查询统计信息
staff_identity?: string;
}
export interface StaffListReply {
list?: StaffItem[];
count?: number;
statistics?: TYPE_MESSAGE;
}
export interface StaffItem {
id?: number;
identity?: string;
name?: string;
account?: string;
profile?: string;
password?: string;
phone?: string;
email?: string;
status?: number;
creator_identity?: string;
created_at?: string;
staff_company?: StaffCompany[]; // 关联企业信息
password_confirmed?: string; // 确认密码密码,仅注册/修改需要
sms_verify_code?: string; // 创建时需要内容 短线验证码
}
export interface StaffCompany {
company_identity?: string;
role_identity?: string;
status?: number;
company_name?: string; // 显示用
role_name?: string;
identity?: string;
}
export interface StaffStatisticsData {
total?: number; // 总的
available?: number; // 可用的
disable?: number; // 停用
}
export interface StaffCompanyRequest {
list?: StaffCompanyItem[];
staff_identity?: string; // 管理端请求需要校验这个参数
}
export interface StaffCompanyItem {
company_identity?: string;
role_identity?: string;
status?: number;
identity?: string;
}

View File

@ -0,0 +1,65 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { ListRequest,ListReply,GetRequest,GetReply,AddRequest,AddReply,ModifyRequest,ModifyReply,DeleteRequest,DeleteReply,RemarkRequest,RemarkReply } from "./types";
export function List(data: ListRequest): AxiosPromise<ListReply> {
return request({
url: "/feedback.Method.List",
method: "post",
data: data,
});
}
export function Get(data: GetRequest): AxiosPromise<GetReply> {
return request({
url: "/feedback.Method.Get",
method: "post",
data: data,
});
}
export function Add(data: AddRequest): AxiosPromise<AddReply> {
return request({
url: "/feedback.Method.Add",
method: "post",
data: data,
});
}
export function Modify(data: ModifyRequest): AxiosPromise<ModifyReply> {
return request({
url: "/feedback.Method.Modify",
method: "post",
data: data,
});
}
export function Delete(data: DeleteRequest): AxiosPromise<DeleteReply> {
return request({
url: "/feedback.Method.Delete",
method: "post",
data: data,
});
}
export function Remark(data: RemarkRequest): AxiosPromise<RemarkReply> {
return request({
url: "/feedback.Method.Remark",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,104 @@
export interface ListRequest {
page?: number; // 页码,默认第一页
size?: number; // 单页显示数量,默认10,最多50
user_identity?: string; // 用户唯一`标识,可选
username?: string; // 用户名称,可选
status?: number; // 条目状态,可选,默认0,全部查找
type?: number; // 业务类型: 1,意见/2,反馈/3,申述等,默认0 调用方传
}
export interface ListReply {
count?: number;
list?: FeedbackItem[];
}
export interface FeedbackItem {
identity?: string;
user_identity?: string;
username?: string;
status?: number; // 状态,1未处理,2已处理,也可以调用方自行设置,如果未设置则默认是1
created_at?: string;
updated_at?: string;
title?: string;
content?: string;
images?: FeedbackImage[];
remark?: string; // 反馈信息
type?: number;
}
export interface FeedbackImage {
identity?: string;
item_identity?: string;
url?: string;
}
export interface GetRequest {
identity?: string;
}
export interface GetReply {
record?: TYPE_MESSAGE;
exists?: TYPE_BOOL;
}
export interface AddRequest {
user_identity?: string;
username?: string;
status?: number; // 状态,1未处理,2已处理,也可以调用方自行设置,如果未设置则默认是1
title?: string;
content?: string;
images?: FeedbackImage[];
type?: number;
}
export interface AddReply {
identity?: string;
}
export interface ModifyRequest {
identity?: string;
user_identity?: string;
username?: string;
status?: number; // 状态,1未处理,2已处理,也可以调用方自行设置,如果未设置则默认是1
title?: string;
content?: string;
images?: FeedbackImage[];
type?: number;
}
export interface ModifyReply {
}
export interface DeleteRequest {
identity?: string;
}
export interface DeleteReply {
}
export interface RemarkRequest {
identity?: string;
remark?: string;
status?: number;
}
export interface RemarkReply {
}

View File

@ -0,0 +1,15 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { VerifyRequest,VerifyReply } from "./types";
// 许可证验证
export function Verify(data: VerifyRequest): AxiosPromise<VerifyReply> {
return request({
url: "/license.Method.Verify",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,14 @@
export interface VerifyRequest {
license_code?: string; // 许可证码
machine_code?: string; // 机器码
}
export interface VerifyReply {
status?: number; // 状态码
identity?: string; // 标识码
message?: string; // 状态说明
timeseq?: number; // 响应时间序列
}

View File

@ -0,0 +1,75 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { Empty,StoreListReply,UniqueIndex,CategoryReply,RecommendRequest,RecommendReply,ListRequest,ListReply,SearchRequest,GetRequest,GetReply,CommentListRequest,CommentListReply } from "./types";
// 店铺列表
export function List(data: Empty): AxiosPromise<StoreListReply> {
return request({
url: "/mall.Store.List",
method: "post",
data: data,
});
}
// 获取所有分类数据
export function Category(data: UniqueIndex): AxiosPromise<CategoryReply> {
return request({
url: "/mall.Store.Category",
method: "post",
data: data,
});
}
// 推荐商品
export function Recommend(data: RecommendRequest): AxiosPromise<RecommendReply> {
return request({
url: "/mall.Store.Recommend",
method: "post",
data: data,
});
}
// 商品列表
export function ProductList(data: ListRequest): AxiosPromise<ListReply> {
return request({
url: "/mall.Store.ProductList",
method: "post",
data: data,
});
}
// 商品搜索
export function Search(data: SearchRequest): AxiosPromise<ListReply> {
return request({
url: "/mall.Store.Search",
method: "post",
data: data,
});
}
// 商品详情
export function ProductGet(data: GetRequest): AxiosPromise<GetReply> {
return request({
url: "/mall.Store.ProductGet",
method: "post",
data: data,
});
}
// 评论列表
export function CommentList(data: CommentListRequest): AxiosPromise<CommentListReply> {
return request({
url: "/mall.Store.CommentList",
method: "post",
data: data,
});
}

161
axios/service/mall/types.ts Normal file
View File

@ -0,0 +1,161 @@
export interface Empty {
}
export interface StoreListReply {
data?: StoreBasic[];
}
export interface StoreBasic {
id?: number;
key?: string; // 店铺唯一KEY
title?: string; // 标题
intro?: string; // 描述说明
template?: string; // 模板
configs?: string; // 配置说明
created_at?: string; // 创建时间
}
KEY
export interface UniqueIndex {
store_key?: string; // 店铺唯一KEY
}
export interface CategoryReply {
data?: CategoryItem[];
}
export interface CategoryItem {
id?: number; // ID
title?: string; // 名称
en_title?: string; // 英文名称
keys?: string; // 关键词
parent_id?: number; // 上级ID
paths?: string; // 路径
intro?: string; // 简介
icon?: string; // 图标
sort?: number; // 排序
}
export interface RecommendRequest {
store_key?: string; // 店铺唯一KEY
code?: number; // 推荐状态码
number?: number; // 数量
}
export interface RecommendReply {
data?: ProductItem[]; // 推荐商品列表
}
export interface ListRequest {
store_key?: string; // 店铺唯一KEY
category_id?: number; // 分类ID
page?: number; // 当前页数,默认第一页,取值1~50 页
size?: number; // 每页显示条数,默认10条,取值1~50 条/每次
}
export interface SearchRequest {
store_key?: string; // 店铺唯一KEY
category_id?: number; // 分类ID
keyword?: string; // 关键字
page?: number; // 当前页数,默认第一页,取值1~50 页
size?: number; // 每页显示条数,默认10条,取值1~50 条/每次
}
export interface ListReply {
count?: number; // 课程数量
data?: ProductItem[]; // 商品数据列表
}
export interface ProductItem {
id?: number; // 商品ID
identity?: string; // 商品唯一码
supply_id?: number; // 供应商ID
types?: number; // 商品类型:Product=1 实体商品,Service=2 服务,Membership=3 会员服务,Other=4 其它
category_id?: number; // 分类ID
category_paths?: string; // 分类路径
title?: string; // 商品标题
sub_title?: string; // 商品标题
keyword?: string; // 商品关键字
cover_image?: string; // 商品封面图片
stock?: number; // 库存
sales_price?: number; // 销售价
content?: string; // 商品详情
args?: string; // 商品相关参数JSON
star?: number; // 商品星级
comment_total?: number; // 评论总数
sale_total?: number; // 销售总数
view_total?: number; // 查看总数
image_total?: number; // 图片总数
recommend?: number; // 推荐码0不推荐1推荐的状态
sort?: number; // 排序
status?: number; // 状态(0未上架1上架)
}
export interface GetRequest {
identity?: string; // 商品唯一码
store_key?: string; // 店铺唯一KEY
}
export interface GetReply {
detail?: TYPE_MESSAGE; // 商品详情数据
attr?: AttrItem[]; // 商品属性数据
photos?: PhotosItem[]; // 商品相册数据
}
export interface AttrItem {
id?: number; // 属性ID
name?: string; // 属性名称
parent_id?: number; // 上级ID
value?: string; // 属性值
}
export interface PhotosItem {
id?: number; // 相册ID
name?: string; // 相册名称
url?: string; // URL
sort?: number; // 排序
}
export interface CommentItem {
id?: number; // ID
created?: string; // 创建时间
passport_id?: number; // 评论人ID
passport_identity?: string; // 用户名称
nickname?: string; // 用户名称
score?: number; // 评分
comment?: string; // 评论正文
reply?: string; // 回复正文
}
export interface CommentListRequest {
product_identity?: string; // 商品Identity
page?: number; // 当前页数,默认第一页,取值1~50 页
size?: number; // 每页显示条数,默认10条,取值1~50 条/每次
}
export interface CommentListReply {
count?: number; // 课程数量
data?: CommentItem[]; // 评论列表
}

View File

@ -0,0 +1,15 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { MailSendRequest,MailSendResponse } from "./types";
export function Send(data: MailSendRequest): AxiosPromise<MailSendResponse> {
return request({
url: "/notify.Mail.Send",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,25 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { SmsSendRequest,SmsSendResponse,SmsVerifyRequest,PassResponse } from "./types";
export function Send(data: SmsSendRequest): AxiosPromise<SmsSendResponse> {
return request({
url: "/notify.Sms.Send",
method: "post",
data: data,
});
}
export function Verify(data: SmsVerifyRequest): AxiosPromise<PassResponse> {
return request({
url: "/notify.Sms.Verify",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,42 @@
sms module
export interface MailSendRequest {
sign_name?: string; // 必传项
}
export interface MailSendResponse {
request_id?: string;
}
sms module
export interface SmsSendRequest {
sign_name?: string; // 必传项
template_code?: string; // 必传项
phone?: string; // 必传项
paramters?: ParamtersEntry[];
generate_code?: TYPE_BOOL; // 验证码相关 是否生成验证码
expire_interval?: number; // 验证码缓存时间,单位:分钟,仅generate_code为true时会缓存,默认5分钟
code_width?: number; // 验证码长度,默认 4
code_key?: string; // template_code 模板中验证码的标识,默认code
has_black_list_filter?: TYPE_BOOL; // 是否黑单过滤,默认不过滤
wihout_limit?: TYPE_BOOL; // 忽略每天短信条数上线限制,默认不忽略
}
export interface SmsSendResponse {
biz_id?: string; // string request_id = 1;
}
export interface SmsVerifyRequest {
phone?: string; // string request_id = 1;
code?: string;
}
export interface PassResponse {
pass?: TYPE_BOOL;
}

View File

@ -0,0 +1,45 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { CartGetRequest,CartGetReply,CartAddRequest,StatusReply,CartSetRequest,CartDelRequest } from "./types";
// 获取购物车的商品数据
export function Get(data: CartGetRequest): AxiosPromise<CartGetReply> {
return request({
url: "/order.Cart.Get",
method: "post",
data: data,
});
}
// 将商品增加至购物车
export function Add(data: CartAddRequest): AxiosPromise<StatusReply> {
return request({
url: "/order.Cart.Add",
method: "post",
data: data,
});
}
// 修改购物车中的商品数量
export function Set(data: CartSetRequest): AxiosPromise<StatusReply> {
return request({
url: "/order.Cart.Set",
method: "post",
data: data,
});
}
// 删除购物车中的商品
export function Del(data: CartDelRequest): AxiosPromise<StatusReply> {
return request({
url: "/order.Cart.Del",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,15 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { Status,CouponListReply } from "./types";
// 按状态获取优惠卷
export function ByStatus(data: Status): AxiosPromise<CouponListReply> {
return request({
url: "/order.Coupon.ByStatus",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,45 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { PlanItem,StatusReply,FetchRequest,FetchReply,CancelPlanRequest } from "./types";
// 创建采购计划
export function CreatePlan(data: PlanItem): AxiosPromise<StatusReply> {
return request({
url: "/order.Purch.CreatePlan",
method: "post",
data: data,
});
}
// 修改采购计划
export function ModifyPlan(data: PlanItem): AxiosPromise<StatusReply> {
return request({
url: "/order.Purch.ModifyPlan",
method: "post",
data: data,
});
}
// 采购计划列表
export function FetchPlan(data: FetchRequest): AxiosPromise<FetchReply> {
return request({
url: "/order.Purch.FetchPlan",
method: "post",
data: data,
});
}
// 作废采购计划
export function CancelPlan(data: CancelPlanRequest): AxiosPromise<StatusReply> {
return request({
url: "/order.Purch.CancelPlan",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,75 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { QuickCreateByTokenRequest,StatusReply,SubmitRequest,Empty,IdentRequest,SummaryGetReply,SummaryListRequest,SummaryListReply,ConfirmRequest,ConfirmReply,CancelRequest } from "./types";
// 基于Token快速创建一个订单
export function QuickCreateByToken(data: QuickCreateByTokenRequest): AxiosPromise<StatusReply> {
return request({
url: "/order.Summary.QuickCreateByToken",
method: "post",
data: data,
});
}
// 将购物车的数据提交生成订单
export function Submit(data: SubmitRequest): AxiosPromise<StatusReply> {
return request({
url: "/order.Summary.Submit",
method: "post",
data: data,
});
}
// 检测是否有未确认及付款的订单
export function Check(data: Empty): AxiosPromise<StatusReply> {
return request({
url: "/order.Summary.Check",
method: "post",
data: data,
});
}
// 获取一个订单的详情数据
export function Get(data: IdentRequest): AxiosPromise<SummaryGetReply> {
return request({
url: "/order.Summary.Get",
method: "post",
data: data,
});
}
// 根据不同的类型获取我的订单列表 类型: All:全部 Unpaid:未付款 Paid:已付款 NotDelivered:未发货 Delivered:已发货 NotComment:待评论
export function List(data: SummaryListRequest): AxiosPromise<SummaryListReply> {
return request({
url: "/order.Summary.List",
method: "post",
data: data,
});
}
// 确认订单,物流,优惠卷等其它信息
export function Confirm(data: ConfirmRequest): AxiosPromise<ConfirmReply> {
return request({
url: "/order.Summary.Confirm",
method: "post",
data: data,
});
}
// 取消订单
export function Cancel(data: CancelRequest): AxiosPromise<StatusReply> {
return request({
url: "/order.Summary.Cancel",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,209 @@
export interface Empty {
}
export interface FetchRequest {
page_no?: number; // 页数
page_size?: number; // 每页记录数
params?: ParamsEntry[]; // 条件参数,key=val,eg key:category_id=?,vlaue=11
}
export interface IdentRequest {
id?: number; // 唯一ID
identity?: string; // 唯一码
}
export interface StatusReply {
status?: number; // 状态码
identity?: string; // 标识码
message?: string; // 状态说明
timeseq?: number; // 响应时间序列
}
export interface CartGetRequest {
cartIdentity?: string; // 购物车唯一码,主要是用于未登录购物
passportIdentity?: string; // 登录后的用户唯一码
}
export interface CartGetReply {
data?: CartItem[]; // 购物车中的商品数据列表
}
export interface CartItem {
id?: number; // ID
productId?: number; // 商品ID
title?: string; // 商品名称
coverImage?: string; // 商品封面图片
salesPrice?: number; // 商品销售价格
productArgs?: string; // 商品属性
number?: number; // 数量
unitPrice?: number; // 实际单价
totalPrice?: number; // 总价
}
export interface CartAddRequest {
cartIdentity?: string; // 购物车唯一码,主要是用于未登录购物
passportIdentity?: string; // 登录后的用户唯一码
productId?: number; // 商品ID
productArgs?: string; // 商品属性
number?: number; // 数量
}
export interface CartSetRequest {
id?: number; // 购物车ID
number?: number; // 数量
unitPrice?: number; // 单价
}
export interface CartDelRequest {
id?: number; // 购物车ID
}
export interface Status {
status?: number; // 优惠卷状态
}
export interface CouponListReply {
data?: CouponItem[]; // 购物车中的商品数据列表
}
export interface CouponItem {
id?: number; // ID
identity?: string; // 唯一码
title?: string; // 标题
intro?: string; // 描述
amount?: string; // 金额
started?: string; // 开始时间
expired?: string; // 结束时间
status?: string; // 状态
}
export interface PlanItem {
id?: number; // ID
identity?: number; // 计划唯一标识
title?: string; // 计划名称
descr?: string; // 计划描述
passport_identity?: string; // 用户唯一码
}
export interface FetchReply {
data?: PlanItem[]; // 采购计划列表
}
export interface CancelPlanRequest {
id?: number;
}
export interface QuickCreateByCodeRequest {
partner_id?: number; // 合伙人ID
product_identity?: string; // 商品唯一码
number?: number; // 数量
phone?: string; // 手机号
address?: string; // 详情地址
contact?: string; // 联系人
code?: string; // 短信验证码
}
export interface QuickCreateByTokenRequest {
partner_id?: number; // 合伙人ID
product_identity?: string; // 商品唯一码
number?: number; // 数量
args?: string; // 相关参数
}
export interface SubmitRequest {
id?: string; // 购物车的ID数据以逗号分开
partner_id?: number; // 合伙人ID
address_id?: number; // 地址ID
}
export interface SummaryGetReply {
summary?: TYPE_MESSAGE; // 订单概要详情
details?: OrderDetails[]; // 订单商品详情
}
export interface OrderSummary {
id?: number; // ID
order_no?: string; // 订单唯一码
partner_id?: number; // 合伙人ID
tradeNo?: string; // 支付交易号
payType?: number; // 支付类型
address?: string; // 收货地址
total_price?: number; // 总价
trans_price?: number; // 交易金额
refund_price?: number; // 退款金额
logistics_number?: string; // 物流信息
logistics_fee?: number; // 物流信息
coupon_amount?: number; // 物流信息
remark?: string; // 备注
status?: number; // 订单状态
payTime?: string; // 支付时间
created?: string; // 创建时间
updated?: string; // 最后创建时间
details?: OrderDetails[]; // 订单商品
}
export interface OrderDetails {
id?: number; // ID
product_id?: number; // 商品ID
type?: number; // 商品类型
title?: string; // 商品名称
cover_image?: string; // 商品封面图片
sales_price?: string; // 商品销售价格
product_args?: string; // 商品参数
number?: number; // 数量
unitPrice?: number; // 单价
}
export interface SummaryListRequest {
type?: string; // 订单类型
}
export interface SummaryListReply {
summary?: OrderSummary[]; // 订单列表
}
export interface ConfirmRequest {
order_no?: number; // 订单唯一码
address_id?: number; // 订单唯一码
coupon_identity?: string; // 优惠卷
remark?: string; // 备注
logisticsFee?: TYPE_DOUBLE; // 运费
}
export interface ConfirmReply {
total_price?: number; // 总价
}
export interface CancelRequest {
order_no?: number; // 订单唯一码
type?: string; // 订单类型
}

View File

@ -0,0 +1,25 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { VerifyRequest,StatusReply,ForgetResetRequest,ForgetReply } from "./types";
// 验证手机号和验证码
export function Verify(data: VerifyRequest): AxiosPromise<StatusReply> {
return request({
url: "/passport.Forget.Verify",
method: "post",
data: data,
});
}
// 重罢密码
export function Reset(data: ForgetResetRequest): AxiosPromise<ForgetReply> {
return request({
url: "/passport.Forget.Reset",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,55 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { BindRequest,StatusReply,Empty,GetDataReply,SetDataRequest,SetPasswordRequest,StatisticsRequest,StatisticsReply } from "./types";
// 绑定资料
export function Bind(data: BindRequest): AxiosPromise<StatusReply> {
return request({
url: "/passport.Info.Bind",
method: "post",
data: data,
});
}
// 获取会员的所有信息数据
export function GetData(data: Empty): AxiosPromise<GetDataReply> {
return request({
url: "/passport.Info.GetData",
method: "post",
data: data,
});
}
// 更新会员的信息数据 字段值为空或是0将不更新此数据
export function SetData(data: SetDataRequest): AxiosPromise<StatusReply> {
return request({
url: "/passport.Info.SetData",
method: "post",
data: data,
});
}
// 更新会员的密码
export function SetPassword(data: SetPasswordRequest): AxiosPromise<StatusReply> {
return request({
url: "/passport.Info.SetPassword",
method: "post",
data: data,
});
}
// 获取会员的相关统计数据
export function Statistics(data: StatisticsRequest): AxiosPromise<StatisticsReply> {
return request({
url: "/passport.Info.Statistics",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,75 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { LoginByPwdRequest,LoginReply,LoginByCodeRequest,WeChatByCodeRequest,WeChatByCodeReply,WeChatByPhoneRequest,WeChatByPhoneReply,WeChatGetUserinfoReply,LoginByAppleIDRequest } from "./types";
// 通过密码登录
export function Pwd(data: LoginByPwdRequest): AxiosPromise<LoginReply> {
return request({
url: "/passport.Login.Pwd",
method: "post",
data: data,
});
}
// 通过验证码登录
export function Code(data: LoginByCodeRequest): AxiosPromise<LoginReply> {
return request({
url: "/passport.Login.Code",
method: "post",
data: data,
});
}
// 通过Wechat登录
export function WeChatByCode(data: WeChatByCodeRequest): AxiosPromise<WeChatByCodeReply> {
return request({
url: "/passport.Login.WeChatByCode",
method: "post",
data: data,
});
}
export function WeChatByPhone(data: WeChatByPhoneRequest): AxiosPromise<WeChatByPhoneReply> {
return request({
url: "/passport.Login.WeChatByPhone",
method: "post",
data: data,
});
}
export function WeChatGetUserinfo(data: WeChatByPhoneRequest): AxiosPromise<WeChatGetUserinfoReply> {
return request({
url: "/passport.Login.WeChatGetUserinfo",
method: "post",
data: data,
});
}
// 通过AppleID登录
export function AppleID(data: LoginByAppleIDRequest): AxiosPromise<LoginReply> {
return request({
url: "/passport.Login.AppleID",
method: "post",
data: data,
});
}
// 通过验证码登录并注册
export function CodeAndRegister(data: LoginByCodeRequest): AxiosPromise<LoginReply> {
return request({
url: "/passport.Login.CodeAndRegister",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,45 @@
import request from "../../request";
import { AxiosPromise } from "axios";
import { RegisterRequest,RegisterReply } from "./types";
// 帐号密码注册
export function Pwd(data: RegisterRequest): AxiosPromise<RegisterReply> {
return request({
url: "/passport.Register.Pwd",
method: "post",
data: data,
});
}
// 手机验证码注册
export function Code(data: RegisterRequest): AxiosPromise<RegisterReply> {
return request({
url: "/passport.Register.Code",
method: "post",
data: data,
});
}
// Wechat注册
export function WeChat(data: RegisterRequest): AxiosPromise<RegisterReply> {
return request({
url: "/passport.Register.WeChat",
method: "post",
data: data,
});
}
// AppleID注册
export function AppleID(data: RegisterRequest): AxiosPromise<RegisterReply> {
return request({
url: "/passport.Register.AppleID",
method: "post",
data: data,
});
}

View File

@ -0,0 +1,205 @@
export interface FetchRequest {
page_no?: number; // 页数
page_size?: number; // 每页记录数
params?: ParamsEntry[]; // 条件参数,key=val,eg key:category_id=?,vlaue=11
}
export interface IdentRequest {
id?: number; // 唯一ID
identity?: string; // 唯一码
}
export interface VersionRequest {
version?: number; // 时序版本号
}
export interface SearchRequest {
keyword?: string; // 关键词
}
export interface StatusReply {
status?: number; // 状态码
identity?: string; // 标识码
message?: string; // 状态说明
timeseq?: number; // 响应时间序列
}
export interface Empty {
}
export interface VerifyRequest {
phone?: string; // 手机号
code?: string; // 验证码
}
export interface ForgetResetRequest {
identity?: string; // 唯一码
password?: string; // 密码
}
export interface ForgetReply {
identity?: string; // 用户唯一码
data_bind?: string; // 数据绑定的相关说明,PASS通过NOPHONE没有绑定手机号NOPWD没有设置密码NOBIND没有手机号同时没有密码
token?: string; // 用户凭证
extend?: ExtendEntry[]; // 扩展字段
}
export interface BindRequest {
action?: string; // 操作动作
phone?: string; // 手机号码 必填
code?: string; // 验证码
password?: string; // 密码 必填
nickname?: string; // 昵称
}
export interface GetDataReply {
account?: string; // 帐号
phone?: string; // 手机号
nickname?: string; // 昵称
avatar?: string; // 头像
birthday?: string; // 生日
sex?: number; // 性别1为男性2为女性
province?: number; // 省
city?: number; // 市
area?: number; // 区
sign?: string; // 签名
approve?: number; // 状态:-2,认证未通过0为未认证1为审核中2为认证成功
}
export interface SetDataRequest {
nickname?: string; // 昵称
avatar?: string; // 头像
birthday?: string; // 生日
sex?: number; // 性别1为男性2为女性
province?: number; // 省
city?: number; // 市
area?: number; // 区
sign?: string; // 签名
}
export interface SetPasswordRequest {
old_password?: string; // 旧密码
new_password?: string; // 新密码
}
export interface StatisticsRequest {
field?: string; // 要获取的统计数据字段。
}
export interface StatisticsReply {
Data?: DataEntry[]; // 数据以Map格式输出
}
export interface LoginByPwdRequest {
account?: string; // 账号 必填
password?: string; // 密码 必填
device?: string; // 设备 必填
}
export interface LoginByCodeRequest {
country?: string; // 国家
phone?: string; // 手机号码
code?: string; // 验证码
device?: string; // 设备
}
export interface WeChatByCodeRequest {
code?: string; // WeChat code
agency_id?: number; // 代理ID
staff_id?: number; // 工作人员ID
}
export interface WeChatByPhoneReply {
account?: string; // WeChat code
}
export interface WeChatByCodeReply {
session_key?: string; // WeChat session key
open_id?: string; // WeChat open id
identity?: string; // identity
account?: string; // account
}
export interface WeChatByPhoneRequest {
session_key?: string; // WeChat session key
open_id?: string; // open_id
data?: string; // data
iv?: string; // iv
identity?: string; // identiy
}
export interface WeChatGetUserinfoReply {
id?: number;
account?: string;
identity?: string;
nickname?: string;
avatar?: string;
rights?: string;
token?: string;
}
export interface LoginByAppleIDRequest {
apple_id?: string; // apple id
desc?: string; // 描述
device?: string; // 设备
}
export interface LoginReply {
id?: number;
identity?: string; // 用户唯一码
data_bind?: string; // 数据绑定的相关说明,PASS通过NOPHONE没有绑定手机号NOPWD没有设置密码NOBIND没有手机号同时没有密码
token?: string; // 用户凭证
extend?: ExtendEntry[]; // 扩展字段
}
export interface RegisterRequest {
origin?: string; // 来源,归属
account?: string; // 帐号
phone?: string; // 手机号
password?: string; // 密码
code?: string; // 验证码
wechat_union_id?: string; // 微信UnionID
wechat_open_id?: string; // 微信OpenID
apple_id?: string; // Apple ID
nickname?: string; // 昵称
type?: string; // 类型
device?: string; // 设备
agency_id?: number; // 代理ID
staff_id?: number; // 工作人员ID
}
export interface RegisterReply {
id?: number;
identity?: string; // 用户唯一码
data_bind?: string; // 数据绑定的相关说明,PASS通过NOPHONE没有绑定手机号NOPWD没有设置密码NOBIND没有手机号同时没有密码
token?: string; // 用户Header所需Token
extend?: ExtendEntry[]; // 扩展字段
}

View File

@ -18,12 +18,13 @@ var (
)
func main() {
fmt.Println("Conv poroto file to js file.")
fmt.Println("CONV: poroto file to js file.")
srvPaths := getSubDirs(protoPath)
fmt.Println("Root:", protoPath, srvPaths, "JS Out:", jsPath)
fmt.Println("CONV:", protoPath, srvPaths, "JS Out:", jsPath)
for _, v := range srvPaths {
fmt.Println("CONV:", protoPath, "=>", v)
parseProtos(protoPath, v)
}
@ -147,6 +148,9 @@ export function {{MethodName}}(data: {{In}}): AxiosPromise<{{Reply}}> {
bodys = append(bodys, header)
bodys = append(bodys, funcs...)
if !utils.PathExists(tsPath) {
os.Mkdir(tsPath, 0755)
}
tsFileName := strings.ToLower(srvName) + ".ts"
destPath := filepath.Join(tsPath, tsFileName)
utils.StringToFile(destPath, strings.Join(bodys, "\r\n"))
@ -186,6 +190,9 @@ export interface {{Name}} {
}
typesPath := filepath.Join(tsPath, "types.ts")
if !utils.PathExists(tsPath) {
os.Mkdir(tsPath, 0755)
}
utils.StringToFile(typesPath, strings.Join(bodys, "\r\n"))
}

View File

@ -0,0 +1,71 @@
syntax = "proto3";
package address;
option go_package = "./address";
//
service Method {
//
rpc Add(AddressAddRequest) returns (StatusReply) {};
//
rpc Set(AddressItem) returns (StatusReply) {};
//
rpc Get(IdentRequest) returns (AddressItem) {};
//
rpc List(FetchRequest) returns (AddressListReply) {};
//
rpc Del(AddressDelRequest) returns (StatusReply) {};
}
message AddressItem {
int64 id = 1; // ID
string phone = 2; //
string country = 3; //
string province = 4; //
string city = 5; //
string area = 6; //
string detail = 7; //
string contact = 8; //
int32 status = 9; // -112
}
message AddressAddRequest {
string phone = 1; //
string country = 2; //
string province = 3; //
string city = 4; //
string area = 5; //
string detail = 6; //
string contact = 7; //
int32 status = 8; // -112
}
message FetchRequest {
int64 page_no=1; //
int64 page_size=2; //
map<string,string> params=3; // ,key=val,eg key:category_id=?,vlaue=11
}
message IdentRequest{
int64 id = 1; // ID
string identity = 2; //
}
message StatusReply{
int64 status = 1; //
string identity=2; //
string message=3; //
int64 timeseq=4; //
}
message AddressListReply {
repeated AddressItem data = 1; //
}
message AddressDelRequest {
repeated int64 id = 1; // ID
}

123
proto/cloud/cloud.proto Normal file
View File

@ -0,0 +1,123 @@
syntax = "proto3";
package cloud;
option go_package = "./cloud";
//
service Method{
//
rpc List(ListRequest) returns (ListResponse){}
//
rpc DirTree(DirTreeRequest) returns (DirTreeResponse){}
//
rpc Download(DownloadRequest) returns (ListResponse){}
// /
rpc Make(MakeRequest) returns (MakeResponse){}
// /
rpc Rename(RenameRequest) returns (Empty){}
// /
rpc Remove(RemoveRequest) returns (Empty){}
// /
rpc Move(MoveRequest) returns (Empty){}
// /
rpc Copy(CopyRequest) returns (Empty){}
// /
rpc Share(ShareRequest) returns (ShareResponse){}
//
rpc ParseShare(ParseShareRequest) returns (ParseShareResponse){}
}
message Empty{}
// authorization_identity identity
// user_identity
message ListRequest {
string identity = 1; // ,
string name =2; //,identity的限定失效
}
message ListResponse {
repeated UserFile list = 1;
}
message DirTreeRequest {
string identity = 1; // ,
}
message DirTreeResponse {
repeated UserFile list = 1; //
}
message DownloadRequest {
repeated string list = 1; // identity列表,
}
message UserFile {
string identity =1; //
string name =2;///
string ext = 3;//,
repeated string parent = 4; // ,
File file = 5;//
string created_at = 7;
string updated_at = 8;
repeated UserFile children = 9;//
}
message File{
string identity =1; //
string path = 2;//
int64 size = 3; // ,:B
}
message MakeRequest {
string name =1;///,
string ext = 2;//,
string parent_identity = 3;// ,
int64 size = 4; // ,,:B
string hash = 5; // hash值,
string path = 6;// ,
}
message MakeResponse {
string identity = 1;
}
// ,
message RenameRequest {
string identity = 1;//
string name =2;///,
string ext = 3;//,
}
message RemoveRequest {
repeated string list = 1; // identity列表
}
message MoveRequest {
repeated string list = 1; // identity列表
string target_identity = 2; // ,
}
message CopyRequest {
repeated string list = 1; // identity列表
string target_identity = 3; // ,
}
message ShareRequest {
repeated string list = 1; // identity列表
int64 days = 2;// ,
}
message ShareResponse {
string key = 1; // key
}
message ParseShareRequest {
string key = 1; // key
}
message ParseShareResponse {
repeated UserFile list = 1;
}

221
proto/company/main.proto Normal file
View File

@ -0,0 +1,221 @@
syntax = "proto3";
package company;
option go_package = "./;company";
// /Users/edy/go/src/company/proto/company.proto START
message Identity {
string identity = 1;
}
message Empty {}
service Company{
rpc List(CompanyListRequest) returns (CompanyListReply) {}
rpc Get(Identity) returns (CompanyItem) {}
rpc Modify(CompanyItem) returns (Identity) {}
rpc DeliveryAddressList(DeliveryAddressListRequest) returns (DeliveryAddressListReply) {}
rpc DeliveryAddressModify(DeliveryAddressItem) returns (Identity) {}
rpc DeliveryAddressDelete(Identity) returns (Empty) {}
rpc CollectionInformation (Identity) returns (CollectionInformationItem) {}
rpc CollectionInformationModify(CollectionInformationItem) returns (Identity) {}
}
message CompanyListRequest {
int64 page_no = 1; //
int64 page_size = 2; //
string name = 3; //
int32 status = 4; // : 1 2
int32 relation_genre = 5; // : 1 2 3
string registered_start_at = 6; // -,:2006-01-02 15:04:05
string registered_end_at = 7; // -:2006-01-02 15:04:05
bool with_statistics = 8;//
}
message CompanyListReply {
repeated CompanyItem list = 1;
int64 count = 2;
CompanyStatisticsData statistics = 3;
}
message CompanyItem {
int32 id = 1;
string identity = 2;
string name = 3;//
string unicode = 4;//
string logo = 5; // Logo
string profile = 6;//
int32 genre = 7; // : 1 2 3 etc.
string registered_at = 8; //
string authorized_at = 9;//
int32 status = 10;// : 1 2
int32 relation_genre = 11;// : 1 2 3
int32 relation_status = 12;// : 1 2
string contact_name = 13;//
string contact_phone = 14;//
string contact_address = 15;// ()
string province_identity = 16;//identity
string city_identity = 17;// identity
string district_identity = 18;// identity
string account = 19; //
string password = 20; //
string password_confirmed = 21; // ,/
}
message CompanyStatisticsData {
int64 total = 1; //
int64 available = 2; //
int64 disable = 3;//
}
message DeliveryAddressListRequest {
int64 page_no = 1; //
int64 page_size = 2; //
string contact_name = 3;
string contact_phone = 4;
}
message DeliveryAddressListReply{
repeated DeliveryAddressItem list = 1;
int64 count =2;
}
message DeliveryAddressItem {
string identity = 1;
string contact_name = 2;//
string contact_phone = 3;//
string contact_address = 4;// ()
string province_identity = 5;//identity
string city_identity = 6;// identity
string district_identity = 7;// identity
bool is_default = 8;
string created_at = 9;
}
message CollectionInformationItem {
string identity = 1;
string company_identity = 2;
string card_no = 3;
string deposit_bank = 4;
string payment_line = 5;
string remark = 6;
string created_at = 7;
}
// END
// /Users/edy/go/src/company/proto/role.proto START
service Role{
rpc List(RoleRequest) returns (RoleReply) {}
rpc Modify(RoleItem) returns (Identity) {}
rpc Delete(Identity) returns (Empty) {}
}
message RoleRequest {
repeated string company_identity = 1; // identity,identity就查询所有的
}
message RoleReply {
map<string,RoleList> kv =1; // key:company_identity
}
message RoleList {
repeated RoleItem list = 1;
}
message RoleItem {
int32 id = 1;
string identity = 2;
string name = 3;
string company_identity = 4;
string created_at = 5;
}
// END
// /Users/edy/go/src/company/proto/staff.proto START
service Staff{
rpc List(StaffListRequest) returns (StaffListReply) {}
rpc Modify(StaffItem) returns (Identity) {}
rpc Delete(Identity) returns (Empty) {}
//
rpc StaffCompany(StaffCompanyRequest) returns (Empty) {}
rpc StaffCompanyChangeStatus(StaffCompanyRequest) returns (Empty) {}
}
message StaffListRequest {
int64 page_no=1; //
int64 page_size=2; //
string staff_name = 3;
string company_name = 4;
int32 status = 5;
string registered_start_at = 6; // -,:2006-01-02 15:04:05
string registered_end_at = 7; // -:2006-01-02 15:04:05
bool with_statistics = 8;//
string staff_identity = 9;
}
message StaffListReply {
repeated StaffItem list = 1;
int64 count = 2;
StaffStatisticsData statistics = 3;
}
message StaffItem {
int32 id = 1;
string identity = 2;
string name = 3;
string account = 4;
string profile = 5;
string password = 6;
string phone = 7;
string email = 8;
int32 status = 9;
string creator_identity = 10;
string created_at = 11;
repeated StaffCompany staff_company = 12; //
string password_confirmed = 13; // ,/
//
string sms_verify_code = 14; // 线
}
message StaffCompany {
string company_identity = 1;
string role_identity = 2;
int32 status = 3;
//
string company_name = 4;
string role_name = 5;
string identity = 6;
}
message StaffStatisticsData {
int64 total = 1; //
int64 available = 2; //
int64 disable = 3;//
}
message StaffCompanyRequest {
repeated StaffCompanyItem list = 1;
string staff_identity = 2; //
}
message StaffCompanyItem {
string company_identity = 1;
string role_identity = 2;
int32 status = 3;
string identity = 4;
}
// END

View File

@ -0,0 +1,104 @@
syntax = "proto3";
package feedback;
option go_package = "./feedback";
// Feedback-
service Method{
rpc List(ListRequest) returns (ListReply) {}
rpc Get(GetRequest) returns (GetReply) {}
rpc Add(AddRequest) returns (AddReply) {}
rpc Modify(ModifyRequest) returns (ModifyReply) {}
rpc Delete(DeleteRequest) returns (DeleteReply) {}
rpc Remark(RemarkRequest) returns (RemarkReply) {}
}
message ListRequest {
int64 page = 1; // ,
int64 size = 2; // ,10,50
string user_identity = 3; //`,
string username = 4; // ,
int32 status = 5;// ,,0,
int32 type = 6; //: 1,/2,/3,,0
}
message ListReply {
int64 count = 1;
repeated FeedbackItem list = 2;
}
message FeedbackItem{
string identity = 1;
string user_identity = 2;
string username = 3;
int32 status = 4; //,1,2,,1
string created_at = 5;
string updated_at = 6;
string title = 7;
string content = 8;
repeated FeedbackImage images = 9;
string remark = 10; //
int32 type = 11;
}
message FeedbackImage{
string identity = 1;
string item_identity = 2;
string url = 3;
}
message GetRequest{
string identity = 1;
}
message GetReply{
FeedbackItem record = 1;
bool exists = 2;
}
message AddRequest {
string user_identity = 1;
string username = 2;
int32 status = 3; //,1,2,,1
string title = 7;
string content = 8;
repeated FeedbackImage images = 9;
int32 type = 10;
}
message AddReply {
string identity = 1;
}
message ModifyRequest {
string identity = 1;
string user_identity = 2;
string username = 3;
int32 status = 4; //,1,2,,1
string title = 7;
string content = 8;
repeated FeedbackImage images = 9;
int32 type = 10;
}
message ModifyReply {
}
message DeleteRequest {
string identity = 1;
}
message DeleteReply {
}
message RemarkRequest {
string identity = 1;
string remark = 2;
int32 status = 3;
}
message RemarkReply {
}

View File

@ -0,0 +1,22 @@
syntax = "proto3";
package license;
option go_package = "./;license";
// license-
service Method{
//
rpc Verify(VerifyRequest) returns (VerifyReply) {}
}
message VerifyRequest{
string license_code = 1; //
string machine_code = 2; //
}
message VerifyReply{
int64 status = 1; //
string identity=2; //
string message=3; //
int64 timeseq=4; //
}

170
proto/mall/mall.proto Normal file
View File

@ -0,0 +1,170 @@
syntax = "proto3";
package mall;
option go_package = "./mall";
// EC-Mall模块
service Store {
//
rpc List(Empty) returns(StoreListReply) {};
//
rpc Category(UniqueIndex) returns(CategoryReply) {};
//
rpc Recommend(RecommendRequest) returns(RecommendReply) {};
//
rpc ProductList(ListRequest) returns(ListReply) {};
//
rpc Search(SearchRequest) returns(ListReply) {};
//
rpc ProductGet(GetRequest) returns (GetReply) {};
//
rpc CommentList(CommentListRequest) returns (CommentListReply) {};
}
message Empty{
}
message StoreListReply{
repeated StoreBasic data = 1;
}
message StoreBasic{
int64 id =1;
string key=2; //KEY
string title=3; //
string intro=4; //
string template=5; //
string configs=6; //
string created_at = 7; //
}
// KEY
message UniqueIndex {
string store_key = 1; //KEY
}
//
message CategoryReply{
repeated CategoryItem data = 1;
}
message CategoryItem{
int64 id = 1; //ID
string title = 2; //
string en_title = 3; //
string keys =4; //
int64 parent_id = 5; //ID
string paths = 6; //
string intro = 7; //
string icon = 8; //
int64 sort = 9; //
}
message RecommendRequest {
string store_key = 1; //KEY
int32 code = 2; //
int32 number = 3; //
}
message RecommendReply {
//
repeated ProductItem data = 1;
}
message ListRequest {
string store_key = 1; //KEY
int64 category_id = 2; //ID
int32 page = 3; // ,,1~50
int32 size = 4; // ,10,1~50 /
}
message SearchRequest {
string store_key = 1; //KEY
int64 category_id = 2; //ID
string keyword = 3; //
int32 page = 4; // ,,1~50
int32 size = 5; // ,10,1~50 /
}
message ListReply {
int64 count = 1; //
repeated ProductItem data = 2;//
}
message ProductItem{
int64 id = 1; //ID
string identity = 2; //
int64 supply_id =4; //ID
int32 types = 5; //:Product=1 ,Service=2 ,Membership=3 ,Other=4
int64 category_id = 6; //ID
string category_paths = 7; //
string title = 8; //
string sub_title = 9; //
string keyword = 10; //
string cover_image = 11; //
int32 stock = 12; //
int64 sales_price = 13; //
string content = 14; //
string args = 15; //JSON
int64 star = 16; //
int32 comment_total = 17; //
int32 sale_total = 18; //
int32 view_total = 19; //
int32 image_total = 20; //
int32 recommend = 21; //01
int32 sort = 22; //
int32 status = 23; //(01)
}
message GetRequest {
string identity = 1; //
string store_key = 2; //KEY
}
message GetReply {
ProductItem detail = 1; //
repeated AttrItem attr = 2; //
repeated PhotosItem photos = 3; //
}
message AttrItem{
int64 id = 1; //ID
string name = 2; //
int32 parent_id =3; //ID
string value = 4; //
}
message PhotosItem{
int64 id = 1; //ID
string name = 2; //
string url =3; //URL
int32 sort = 4; //
}
message CommentItem{
int64 id = 1; //ID
string created = 2; //
int64 passport_id = 4; //ID
string passport_identity = 5; //
string nickname = 6; //
int32 score = 7; //
string comment = 8; //
string reply = 9; //
}
message CommentListRequest {
string product_identity = 1; //Identity
int32 page = 2; // ,,1~50
int32 size = 3; // ,10,1~50 /
}
message CommentListReply {
int64 count = 1; //
repeated CommentItem data = 2;//
}

17
proto/notify/mail.proto Normal file
View File

@ -0,0 +1,17 @@
syntax = "proto3";
package notify;
option go_package="./notify";
// Mail method
service Mail {
rpc Send(MailSendRequest) returns (MailSendResponse);
}
// sms module
message MailSendRequest {
string sign_name = 1; //
}
message MailSendResponse {
string request_id = 1;
}

20
proto/notify/push.proto Normal file
View File

@ -0,0 +1,20 @@
syntax = "proto3";
package notify;
option go_package="./notify";
// E:\working\Practice\bsm-service-base\notify\proto\mail.proto START
// Mail method
service Mail {
rpc Send(MailSendRequest) returns (MailSendResponse);
}
// sms module
message MailSendRequest {
string sign_name = 1; //
}
message MailSendResponse {
string request_id = 1;
}
// END

40
proto/notify/sms.proto Normal file
View File

@ -0,0 +1,40 @@
syntax = "proto3";
package notify;
option go_package="./notify";
// sms method
service Sms {
rpc Send(SmsSendRequest) returns (SmsSendResponse);
rpc Verify(SmsVerifyRequest) returns (PassResponse);
}
// sms module
message SmsSendRequest {
string sign_name = 1; //
string template_code = 2; //
string phone = 3; //
map<string,string> paramters=5;
//
bool generate_code =6; //
int64 expire_interval = 7;//,:,generate_code为true时会缓存,5
int64 code_width = 8; //, 4
string code_key = 9; //template_code ,code
bool has_black_list_filter = 10; // ,
bool wihout_limit = 11;//线,
}
message SmsSendResponse {
// string request_id = 1;
string biz_id = 2;
}
message SmsVerifyRequest {
// string request_id = 1;
string phone = 2;
string code = 3;
}
message PassResponse{
bool pass =1;
}

81
proto/order/cart.proto Normal file
View File

@ -0,0 +1,81 @@
syntax = "proto3";
package order;
option go_package = "./order";
message Empty{
}
message FetchRequest {
int64 page_no=1; //
int64 page_size=2; //
map<string,string> params=3; // ,key=val,eg key:category_id=?,vlaue=11
}
message IdentRequest{
int64 id = 1; // ID
string identity = 2; //
}
message StatusReply{
int64 status = 1; //
string identity=2; //
string message=3; //
int64 timeseq=4; //
}
// Order()-
service Cart {
//
rpc Get(CartGetRequest) returns (CartGetReply) {};
//
rpc Add(CartAddRequest) returns (StatusReply) {};
//
rpc Set(CartSetRequest) returns (StatusReply) {};
//
rpc Del(CartDelRequest) returns (StatusReply) {};
}
message CartGetRequest {
string cartIdentity =1; //
string passportIdentity =2; //
}
message CartGetReply {
repeated CartItem data = 1; //
}
message CartItem{
int64 id = 1; // ID
int64 productId = 2; // ID
string title = 3; //
string coverImage = 4; //
int64 salesPrice = 5; //
string productArgs =6; //
int32 number = 7; //
int64 unitPrice = 8; //
int64 totalPrice = 9; //
}
message CartAddRequest {
string cartIdentity =1; //
string passportIdentity =2; //
int64 productId = 4; // ID
string productArgs =5; //
int32 number = 6; //
}
message CartSetRequest {
int64 id = 1; // ID
int32 number = 2; //
int64 unitPrice = 3; //
}
message CartDelRequest {
repeated int64 id = 3; // ID
}

53
proto/order/coupon.proto Normal file
View File

@ -0,0 +1,53 @@
syntax = "proto3";
package order;
option go_package = "./order";
message Empty{
}
message FetchRequest {
int64 page_no=1; //
int64 page_size=2; //
map<string,string> params=3; // ,key=val,eg key:category_id=?,vlaue=11
}
message IdentRequest{
int64 id = 1; // ID
string identity = 2; //
}
message StatusReply{
int64 status = 1; //
string identity=2; //
string message=3; //
int64 timeseq=4; //
}
// Order()-
service Coupon {
//
rpc ByStatus(Status) returns (CouponListReply) {};
}
message Status {
int32 status = 1; //
}
message CouponListReply {
repeated CouponItem data = 1; //
}
message CouponItem{
int64 id = 1; // ID
string identity = 2; //
string title = 3; //
string intro = 4; //
string amount = 5; //
string started =6; //
string expired =7; //
string status =8; //
}

58
proto/order/purch.proto Normal file
View File

@ -0,0 +1,58 @@
syntax = "proto3";
package order;
option go_package = "./order";
message Empty{
}
message FetchRequest {
int64 page_no=1; //
int64 page_size=2; //
map<string,string> params=3; // ,key=val,eg key:category_id=?,vlaue=11
}
message IdentRequest{
int64 id = 1; // ID
string identity = 2; //
}
message StatusReply{
int64 status = 1; //
string identity=2; //
string message=3; //
int64 timeseq=4; //
}
// Order()-
service Purch {
//
rpc CreatePlan(PlanItem) returns (StatusReply) {};
//
rpc ModifyPlan(PlanItem) returns (StatusReply) {};
//
rpc FetchPlan(FetchRequest) returns (FetchReply) {};
//
rpc CancelPlan(CancelPlanRequest) returns (StatusReply) {};
}
message PlanItem{
int64 id = 1; // ID
int64 identity = 2; //
string title = 3; //
string descr = 4; //
string passport_identity =5; //
}
message FetchReply {
repeated PlanItem data = 1; //
}
message CancelPlanRequest {
repeated int64 id = 3;
}

148
proto/order/summary.proto Normal file
View File

@ -0,0 +1,148 @@
syntax = "proto3";
package order;
option go_package = "./order";
message Empty{
}
message FetchRequest {
int64 page_no=1; //
int64 page_size=2; //
map<string,string> params=3; // ,key=val,eg key:category_id=?,vlaue=11
}
message IdentRequest{
int64 id = 1; // ID
string identity = 2; //
}
message StatusReply{
int64 status = 1; //
string identity=2; //
string message=3; //
int64 timeseq=4; //
}
// Order()-
// Token,
service Summary {
// Token快速创建一个订单
rpc QuickCreateByToken(QuickCreateByTokenRequest) returns (StatusReply) {};
//
rpc Submit(SubmitRequest) returns (StatusReply) {};
//
rpc Check(Empty) returns (StatusReply) {};
//
rpc Get(IdentRequest) returns (SummaryGetReply) {};
//
// :
// All:
// Unpaid:
// Paid:
// NotDelivered:
// Delivered:
// NotComment:
rpc List(SummaryListRequest) returns (SummaryListReply) {};
//
rpc Confirm(ConfirmRequest) returns (ConfirmReply) {};
//
rpc Cancel(CancelRequest) returns (StatusReply) {};
}
message QuickCreateByCodeRequest{
int32 partner_id =1; // ID
string product_identity = 2; //
int32 number = 3; //
string phone = 4; //
string address = 5; //
string contact = 6; //
string code=7;//
}
message QuickCreateByTokenRequest{
int32 partner_id =1; // ID
string product_identity = 2; //
int32 number = 3; //
string args = 5; //
}
message SubmitRequest {
repeated string id = 1; // ID数据
int32 partner_id =2; // ID
int64 address_id=3; // ID
}
message SummaryGetReply {
OrderSummary summary = 1; //
repeated OrderDetails details = 2; //
}
message OrderSummary {
int64 id = 1; // ID
string order_no = 2; //
int32 partner_id =3; // ID
string tradeNo = 4; //
int32 payType = 5; //
string address = 6; //
int64 total_price = 7; //
int64 trans_price = 8; //
int64 refund_price = 9; // 退
string logistics_number = 10; //
int64 logistics_fee = 11; //
int64 coupon_amount = 12; //
string remark = 13; //
int32 status = 14; //
string payTime = 15; //
string created = 16; //
string updated = 17; //
repeated OrderDetails details =18; //
}
message OrderDetails{
int64 id = 1; // ID
int64 product_id = 2; // ID
int32 type = 3; //
string title = 4; //
string cover_image = 5; //
string sales_price = 6; //
string product_args = 7; //
int32 number = 8; //
int64 unitPrice = 9; //
}
message SummaryListRequest {
string type = 1; //
}
message SummaryListReply {
repeated OrderSummary summary = 1; //
}
message ConfirmRequest {
int64 order_no = 1; //
int64 address_id = 2; //
string coupon_identity = 3; //
string remark = 4; //
double logisticsFee = 5; //
}
message ConfirmReply {
int64 total_price = 1; //
}
message CancelRequest {
int64 order_no = 1; //
string type = 2; //
}

View File

@ -0,0 +1,3 @@
syntax = "proto3";
package passport;
option go_package = "./;passport";

View File

@ -0,0 +1,61 @@
syntax = "proto3";
package passport;
option go_package = "./passport";
message FetchRequest {
int64 page_no=1; //
int64 page_size=2; //
map<string,string> params=3; // ,key=val,eg key:category_id=?,vlaue=11
}
message IdentRequest{
int64 id = 1; // ID
string identity = 2; //
}
message VersionRequest {
int64 version=1; //
}
message SearchRequest {
string keyword=1; //
}
message StatusReply{
int64 status = 1; //
string identity=2; //
string message=3; //
int64 timeseq=4; //
}
message Empty{
}
// Passport-
service Forget{
//
rpc Verify(VerifyRequest) returns(StatusReply) {}
//
rpc Reset(ForgetResetRequest) returns (ForgetReply) {}
}
message VerifyRequest {
string phone = 1; //
string code = 2; //
}
message ForgetResetRequest {
string identity = 1; //
string password = 2; //
}
message ForgetReply {
string identity = 1; //
string data_bind = 2; // ,PASS通过NOPHONE没有绑定手机号NOPWD没有设置密码NOBIND没有手机号同时没有密码
string token = 3; //
map<string, string> extend = 4; //
}

104
proto/passport/info.proto Normal file
View File

@ -0,0 +1,104 @@
syntax = "proto3";
package passport;
option go_package = "./passport";
message FetchRequest {
int64 page_no=1; //
int64 page_size=2; //
map<string,string> params=3; // ,key=val,eg key:category_id=?,vlaue=11
}
message IdentRequest{
int64 id = 1; // ID
string identity = 2; //
}
message VersionRequest {
int64 version=1; //
}
message SearchRequest {
string keyword=1; //
}
message StatusReply{
int64 status = 1; //
string identity=2; //
string message=3; //
int64 timeseq=4; //
}
message Empty{
}
// Passport()-
// *Token验证
service Info{
//
rpc Bind(BindRequest) returns (StatusReply) {}
//
rpc GetData(Empty) returns (GetDataReply) {}
//
// 0
rpc SetData(SetDataRequest) returns (StatusReply) {}
//
rpc SetPassword(SetPasswordRequest) returns (StatusReply) {}
//
rpc Statistics(StatisticsRequest) returns (StatisticsReply) {}
}
message BindRequest {
string action =1; //
string phone = 2; //
string code = 3; //
string password = 4; //
string nickname = 5; //
}
message GetDataReply {
string account = 1; //
string phone = 2; //
string nickname = 3; //
string avatar = 4; //
string birthday = 5; //
int32 sex = 6; //12
int32 province = 7; //
int32 city = 8; //
int32 area = 9; //
string sign = 10; //
int32 approve = 11; //-2,012
}
message SetDataRequest {
string nickname = 1; //
string avatar = 2; //
string birthday = 3; //
int32 sex = 4; //12
int32 province = 5; //
int32 city = 6; //
int32 area = 7; //
string sign = 8; //
}
message SetPasswordRequest {
string old_password = 3; //
string new_password = 4;//
}
message StatisticsRequest {
repeated string field = 1; //
}
message StatisticsReply {
map<string,int64> Data=1; //Map格式输出
}

120
proto/passport/login.proto Normal file
View File

@ -0,0 +1,120 @@
syntax = "proto3";
package passport;
option go_package = "./passport";
message FetchRequest {
int64 page_no=1; //
int64 page_size=2; //
map<string,string> params=3; // ,key=val,eg key:category_id=?,vlaue=11
}
message IdentRequest{
int64 id = 1; // ID
string identity = 2; //
}
message VersionRequest {
int64 version=1; //
}
message SearchRequest {
string keyword=1; //
}
message StatusReply{
int64 status = 1; //
string identity=2; //
string message=3; //
int64 timeseq=4; //
}
message Empty{
}
// Passport--
service Login{
//
rpc Pwd(LoginByPwdRequest) returns (LoginReply) {}
//
rpc Code(LoginByCodeRequest) returns (LoginReply) {}
// Wechat登录
rpc WeChatByCode(WeChatByCodeRequest) returns (WeChatByCodeReply) {}
rpc WeChatByPhone(WeChatByPhoneRequest) returns (WeChatByPhoneReply) {}
rpc WeChatGetUserinfo(WeChatByPhoneRequest) returns (WeChatGetUserinfoReply) {}
// AppleID登录
rpc AppleID(LoginByAppleIDRequest) returns (LoginReply) {}
//
rpc CodeAndRegister(LoginByCodeRequest) returns (LoginReply) {}
}
message LoginByPwdRequest {
string account = 1; //
string password = 2; //
string device = 3; //
}
message LoginByCodeRequest {
string country = 1; //
string phone = 2; //
string code = 3; //
string device = 4;//
}
message WeChatByCodeRequest {
string code = 1; // WeChat code
int64 agency_id=2; // ID
int64 staff_id=3; // ID
}
message WeChatByPhoneReply {
string account = 1; // WeChat code
}
message WeChatByCodeReply {
string session_key = 1; // WeChat session key
string open_id = 2; // WeChat open id
string identity = 3; // identity
string account = 4; // account
}
message WeChatByPhoneRequest {
string session_key = 1; // WeChat session key
string open_id = 2; // open_id
string data = 3; // data
string iv = 4; // iv
string identity = 5; // identiy
}
message WeChatGetUserinfoReply {
int64 id=1;
string account=2;
string identity=3;
string nickname=4;
string avatar=5;
string rights=6;
string token=7;
}
message LoginByAppleIDRequest {
string apple_id = 1; // apple id
string desc = 2; //
string device = 3;//
}
message LoginReply {
int64 id=1;
string identity = 2; //
string data_bind = 3; // ,PASS通过NOPHONE没有绑定手机号NOPWD没有设置密码NOBIND没有手机号同时没有密码
string token = 4; //
map<string, string> extend = 5; //
}

View File

@ -0,0 +1,43 @@
syntax = "proto3";
package passport;
option go_package = "./passport";
// Passport--
service Register{
//
rpc Pwd(RegisterRequest) returns (RegisterReply) {}
//
rpc Code(RegisterRequest) returns (RegisterReply) {}
// Wechat注册
rpc WeChat(RegisterRequest) returns (RegisterReply) {}
// AppleID注册
rpc AppleID(RegisterRequest) returns (RegisterReply) {}
}
message RegisterRequest {
string origin = 1; //
string account = 2; //
string phone = 3; //
string password = 4; //
string code = 5; //
string wechat_union_id = 6; //UnionID
string wechat_open_id = 7; //OpenID
string apple_id = 8; //Apple ID
string nickname = 9; //
string type = 10; //
string device = 11; //
int64 agency_id=12; // ID
int64 staff_id=13; // ID
}
message RegisterReply {
int64 id=1;
string identity = 2; //
string data_bind = 3; // ,PASS通过NOPHONE没有绑定手机号NOPWD没有设置密码NOBIND没有手机号同时没有密码
string token = 4; //Header所需Token
map<string, string> extend = 5; //
}