| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600 | syntax = "proto3";package api.user;import "google/api/annotations.proto";//import "google/protobuf/struct.proto";import "google/protobuf/empty.proto";import "google/protobuf/struct.proto";import "api/chat/chat.proto";import "api/common/common.proto";import "api/statistics/statistics.proto";option go_package = "git.ikuban.com/server/pw-protobuf/api/user;user";option java_multiple_files = true;option java_package = "api.user";service User {  // 1、获取用户详情  rpc GetUserInfo (google.protobuf.Empty) returns (UserInfo){    option (google.api.http) = {      post: "/api/user/info",      body:"*"    };  };  // 2、用户发送验证码  rpc SendPhoneCode (common.SendPhoneCodeRequest) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/code/send",      body:"*"    };  };  // 3、用户验证验证码  rpc CheckPhoneCode (common.CheckPhoneCodeRequest) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/code/check",      body:"*"    };  };  // 4、更新用户信息  rpc UpdateUserInformation (common.UpdateInformationRequest) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/update/information",      body:"*"    };  };  // 5、创建用户与接待员的关联  rpc CreateUserPersonRoom (common.CreateChatRoomParam) returns (chat.RoomReply){    option (google.api.http) = {      post: "/api/user/create/room",      body:"*"    };  };  // 6、获取用户的金额信息  rpc GetUserBalance (google.protobuf.Empty) returns (UserBalance){    option (google.api.http) = {      post: "/api/user/balance",      body:"*"    };  };  // 7、用户获取ta的主页信息  rpc UserGetHomeInfo (common.PersonParam) returns (common.HomeInfo){    option (google.api.http) = {      post: "/api/user/home",      body:"*"    };  };  // 8、用户获取ta的主页访客、关注数  rpc UserGetPersonLikedAndLooked (common.PersonParam) returns (common.LookedAndLikedNum){    option (google.api.http) = {      post: "/api/user/num",      body:"*"    };  };  // 9、查看看过我的列表  rpc FindLookList (common.ListPageRequest) returns (statistics.LookAndLikeListReply){    option (google.api.http) = {      post: "/api/user/list/look",      body:"*"    };  };  // 10、微信SDK初始化  rpc WxConf (common.WxConfReq) returns (common.WxConfResponse){    option (google.api.http) = {      post: "/api/wx/jssdk/config",      body:"*"    };  };  // 11、获取标签列表  rpc FindTagListBySex (common.SexReq) returns (common.TagListReply){    option (google.api.http) = {      post: "/api/user/list/tag",      body:"*"    };  };  // 12、获取在线列表  rpc FindOnlineList (common.ListPage2Request) returns (common.RecommendPersonListReply){    option (google.api.http) = {      post: "/api/user/list/online",      body:"*"    };  };  // 13、七天内列表(当前会话)  rpc FindWithinSevenDayRoomList (common.ListPageRequest) returns (UserFindChatListReply){    option (google.api.http) = {      post: "/api/user/list/chat/within",      body:"*"    };  };  // 14、七天外列表(更早的聊天记录)  rpc FindOverSevenDayRoomList (common.ListPageRequest) returns (UserFindChatListReply){    option (google.api.http) = {      post: "/api/user/list/chat/over",      body:"*"    };  };  // 15、用户查询聊天记录  rpc FindChatRecordList (common.FindChatRecordListRequest) returns (common.ChatRecordListReply){    option (google.api.http) = {      post: "/api/user/chat/record",      body:"*"    };  };  // 16、用户查询房间信息  rpc FindChatRoomMsg (common.FindChatRoomMsgRequest) returns (common.ChatRoomMsg){    option (google.api.http) = {      post: "/api/user/chat/room/msg",      body:"*"    };  };  // 17、用户查询是否关注某人  rpc GetUserIsLike (common.PersonParam) returns (common.IsLike){    option (google.api.http) = {      post: "/api/user/islike",      body:"*"    };  };  // 18、通过类型获取表情包列表  rpc FindMemeByType (common.MemeRequest) returns (common.MemeList){    option (google.api.http) = {      post: "/api/user/find/meme/type",      body:"*"    };  };  // 19、获取对方性别的聊天话题  rpc FindChatTopic (common.FindChatTopicRequest) returns (common.ChatTopicList){    option (google.api.http) = {      post: "/api/user/find/topic",      body:"*"    };  };  // 20、随机表情包  rpc RandomMeme (common.RandomNum) returns (common.CommonTextList){    option (google.api.http) = {      post: "/api/user/find/meme/random",      body:"*"    };  };  // 21、随机打招呼  rpc RandomSwiftMessage (common.RandomNumAndSex) returns (common.CommonTextList){    option (google.api.http) = {      post: "/api/user/find/topic/random",      body:"*"    };  };  // 22、表情包分类名  rpc FindMemeTitle (google.protobuf.Empty) returns (common.MemeTitleList){    option (google.api.http) = {      post: "/api/user/find/meme/title",      body:"*"    };  };  // 23、用户获取聊天对象的资料卡片  rpc UserGetChatCard(common.PersonParam) returns (common.ChatCardInfo){    option (google.api.http) = {      post: "/api/user/chat/card",      body:"*"    };  };  // 24、聊天话题分类名  rpc FindChatTopicTitle (google.protobuf.Empty) returns (common.MemeTitleList){    option (google.api.http) = {      post: "/api/user/find/chat/title",      body:"*"    };  };  // 25、用户关注某人  rpc UserLike(common.PersonParam) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/like",      body:"*"    };  };  // 26、用户取关某人  rpc UserUnLike(common.PersonParam) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/unlike",      body:"*"    };  };  // 27、举报某人  rpc Report (common.ReportChatRequest) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/report",      body:"*"    };  };  // 28、超过七天的头像列表  rpc FindOverSevenDayAvatar (google.protobuf.Empty) returns (common.FindOverSevenDayAvatarReply){    option (google.api.http) = {      post: "/api/user/over/avatar/list",      body:"*"    };  };  // 29、更新上次访问的小纸条  rpc UpdateLastScripID (common.UpdateLastScripIDRequest) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/scrip/last/update",      body:"*"    };  };  // ---还未共用---  // 用户拉黑某人  rpc UserSetBlackChat (common.RoomIDRequest) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/set/black",      body:"*"    };  };  // 用户删除房间  rpc UserDeleteChat (common.RoomIDRequest) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/chat/delete",      body:"*"    };  };  // 创建纸条  rpc CreateScrip (CreateScripRequest) returns (common.ScripID){    option (google.api.http) = {      post: "/api/user/scrip/create",      body:"*"    };  };  // 删除纸条  rpc DeleteScrip (DeleteScripRequest) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/scrip/delete",      body:"*"    };  };  // 查询自己的小纸条  rpc FindMyScrip (UserFindScripRequest) returns (common.ScripReply){    option (google.api.http) = {      post: "/api/user/scrip/find/self",      body:"*"    };  };  // 查询别人的小纸条  rpc FindOtherScrip (common.FindScripRequest) returns (common.ScripReply){    option (google.api.http) = {      post: "/api/user/scrip/find/other",      body:"*"    };  };  // 查询随机纸条列表  rpc FindRecommendScrip (UserFindScripRequest) returns (common.ScripReply){    option (google.api.http) = {      post: "/api/user/scrip/find/recommend",      body:"*"    };  };  // 用户查看纸条  rpc PersonLookScrip (PersonLookScripRequest) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/scrip/look",      body:"*"    };  };  // 用户点击回看  rpc PersonClickLookBack (google.protobuf.Empty) returns (common.ScripInfo){    option (google.api.http) = {      post: "/api/user/scrip/look/back",      body:"*"    };  };  // 用户回复小纸条  rpc PersonReplyScrip (ReplyScripRequest) returns (common.ChatRecordInfo){    option (google.api.http) = {      post: "/api/user/scrip/reply",      body:"*"    };  };  // ---用户专用---  // 检查用户是否与接待员关联  rpc CheckUserPartnerIsRelationship (common.PartnerIDParam) returns (chat.CheckUserPartnerIsRelationshipReply){    option (google.api.http) = {      post: "/api/user/check/relationship",      body:"*"    };  };  // 获取接待员的确认通过页面信息  rpc GetPartnerCircleInfo (KeyRequest) returns (common.AddFriendMessageInfo){    option (google.api.http) = {      post: "/api/user/circle/info",      body:"*"    };  };  // 查看我喜欢的列表  rpc FindLikeList (common.ListPageRequest) returns (statistics.LookAndLikeListReply){    option (google.api.http) = {      post: "/api/user/list/like",      body:"*"    };  };  // 查看喜欢我的列表  rpc FindLikedList (common.ListPageRequest) returns (statistics.LookAndLikeListReply){    option (google.api.http) = {      post: "/api/user/list/liked",      body:"*"    };  };  // 获取用户的访客数以及关注数  rpc GetLookAndLikeStatisticsMessage (google.protobuf.Empty) returns (statistics.LookAndLikeMessageReply){    option (google.api.http) = {      post: "/api/user/num/like_look",      body:"*"    };  };  // 获取用户访问数详情  rpc GetUserLookNum (google.protobuf.Empty) returns (statistics.LookMessageReply){    option (google.api.http) = {      post: "/api/user/look/num",      body:"*"    };  };  // 用户完善资料  rpc UserFinishInformation (google.protobuf.Empty) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/information/finish",      body:"*"    };  };  // 用户完善情况  rpc UserInformationStatus (google.protobuf.Empty) returns (InformationStatus){    option (google.api.http) = {      post: "/api/user/information/status",      body:"*"    };  };  // 用户获取完善资料奖励  rpc UserGetInformationAward(google.protobuf.Empty) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/information/award",      body:"*"    };  };  // 解锁"看过我的"的记录  rpc UnlockLookRecord (common.PersonParam) returns (google.protobuf.Empty){    option (google.api.http) = {      post: "/api/user/look/unlock",      body:"*"    };  };  // 用户充值  rpc UserRecharge (UserRechargeRequest) returns (PayInfo){    option (google.api.http) = {      post: "/api/user/recharge",      body:"*"    };  };  // 充值套餐列表  rpc FindRechargeList (google.protobuf.Empty) returns (RechargeList){    option (google.api.http) = {      post: "/api/user/recharge/list",      body:"*"    };  };  // 用户充值记录列表  rpc FindPayList (FindPayOrderListRequest) returns (PayOrderList){    option (google.api.http) = {      post: "/api/user/pay/list",      body:"*"    };  };  // 查询推荐人的列表  rpc FindRecommendPersonList (FindRecommendPersonListRequest) returns (common.RecommendPersonListReply){    option (google.api.http) = {      post: "/api/user/list/recommend",      body:"*"    };  };  // 获取匹配的头像数组以及数量  rpc FindMatchingAvatarAndNum (google.protobuf.Empty) returns (FindMatchingAvatarAndNumReply){    option (google.api.http) = {      post: "/api/user/matching/message",      body:"*"    };  };  // 获取假弹窗  rpc GetWindowInfo (google.protobuf.Empty) returns (chat.WindowInfo){    option (google.api.http) = {      post: "/api/user/chat/window/get",      body:"*"    };  };  // 用户的每日免费数  rpc GetUserFreeNum (google.protobuf.Empty) returns (UserFreeNum){    option (google.api.http) = {      post: "/api/user/free/num",      body:"*"    };  };  // 随机速配  rpc GetRandomMatching (common.SexReq) returns (chat.GetRandomMatchingReply){    option (google.api.http) = {      post: "/api/user/random/matching",      body:"*"    };  };  // ---rpc---  // 1、获取用户详情  rpc GetUserDBMsg (common.PersonIDParam) returns (common.PersonMsg);  // 2、通过用户IDs查看用户信息列表  rpc FindUserDBList (common.PersonIDList) returns (common.PersonDBReply);  // 3、对内更新  rpc UpdateLastScripIDDB (common.UpdateLastScripIDDBRequest) returns (google.protobuf.Empty){};  // 4、查询推荐用户的数据  rpc FindRecommendUserDBList (common.FindRecommendRequest) returns (common.PersonDBReply){};  // 5、更新上次登录时间  rpc UpdateUserLastLoginTime (common.PersonIDParam) returns (google.protobuf.Empty){};  // 发送消息扣费  rpc SendMsgReduceCredit (common.PersonParam) returns (google.protobuf.Empty);  // 回看纸条扣费  rpc LookBackScripReduceCredit (common.PersonParam) returns (google.protobuf.Empty);  // 发纸条扣费  rpc CreateScripReduceCredit (common.PersonParam) returns (google.protobuf.Empty);  // 回纸条扣费  rpc ReplyScripReduceCredit (common.PersonParam) returns (google.protobuf.Empty);  // 解锁语音扣费  rpc UnlockVoiceCredit (common.PersonParam) returns (google.protobuf.Empty);  // 解锁图片扣费  rpc UnlockPictureCredit (common.PersonParam) returns (google.protobuf.Empty);  // 匹配扣费  rpc MatchingCredit (common.PersonParam) returns (google.protobuf.Empty);}message UserFreeNum{   int64 replyScripNum = 1;// 今日可免费回复纸条的次数   int64 createScripNum = 2;// 今日免费创建纸条的次数   int64 matchingNum = 3;// 今日免费匹配数}message ReplyScripRequest {  int64 scripId = 4;// 小纸条ID  common.Message message = 5;// 回复内容 只需要提供 回复小纸条的内容 或 回复小纸条的素材链接  string msgType = 6;}message PersonLookScripRequest{  int64 scripId = 3;// 纸条id}message UserFindScripRequest {  int64 nextId = 3;  int64 offset = 4;}message DeleteScripRequest {  int64 scripId = 1;// 纸条id}message CreateScripRequest {  string text = 1;// 纸条内容  string pictureUrl = 2; // 纸条背景图}message FindMatchingAvatarAndNumReply{  int64 num = 1;// 匹配人数  repeated string list = 2;// 头像列表}message FindRecommendPersonListRequest{  string nextId = 1;  int64 offset = 2;  int64 sex = 5;// 性别(不筛选就是0)}message UserRechargeRequest{  int64 RechargeTemplateId = 1;// 充值套餐ID}message RechargeList{  repeated RechargeInfo list = 1;}message RechargeInfo{  int64 id = 1;  int64 price = 2;  int64 credit = 3;// 积分  int64 giveCredit = 4;// 赠送的积分  string description = 5;// 描述  string title = 6;// 标题}message InformationStatus{  bool isFinishInformation = 1;//是否完善资料  bool isGetAward = 2;// 是否领取奖励}message UserBalance{  string id = 1; // id  int64 credit = 2;// 积分}message UserFindChatListReply{  repeated UserChatInfo list = 1;  int64 nextId = 2;}message UserChatInfo{  string personId = 2;// 用户ID  int64 unreadNum = 3;// 用户未读数  string lastContent = 4;// 上次发送内容  int64 lastTime = 5;// 上次发送时间  int64 likeability = 6;// 好感度  int64 sex = 8;// 性别  string avatarUrl = 9;// 头像  string nickname = 10;// 昵称  int64 age = 11;// 年龄  int64 roomId = 12;// 房间号ID}message UserInfo{  string id = 1; // id  string nickname = 2;// 昵称  string avatarUrl =3;// 头像链接  int64 age = 4;// 年龄  int64 sex = 5;// 性别  string constellation = 6; // 星座  int64 credit = 7;// 积分  repeated int64 tagList  = 8; // 标签  string signature = 9; // 签名  string introduceVoice = 10; // 介绍语音  string province = 11;// 省  string city = 12;// 市  string area = 13;// 区  int64 userId = 14;// 用户ID  bool isBlack = 15;// 是否被封号}message KeyRequest{  string key = 1;}message CreatePayRequest{  int64 money = 1; // 支付金额 单位 分  string type = 2; // 类型  string openId = 3;  string description = 4;  string attach = 5;}message PayInfo{  google.protobuf.Value payInfo = 1;  int64 orderId = 2;}message PayOrderInfo{  string userID = 1;  int64 orderID = 2; // 订单的唯一ID  int64 money = 3; // 支付金额 ,单位分  string type = 4; // 类型  string TransactionID = 5;  string openId = 6;  string description = 7;  string status = 9;// 状态  int64 payTime = 10;// 支付时间  int64 createTime = 11;// 创建时间}message PayOrderList{  repeated PayOrderInfo list = 1;  int64 nextId = 2;}message FindPayOrderListRequest{  int64 nextId = 1;  int64 offset = 2;  string status = 3;}message PayCallbackReply{  bytes result = 1;}
 |