slowwild.proto 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. syntax="proto3";
  2. package slowwildserver;
  3. option go_package="slowwild/slowwildserver";
  4. message UserEntity {
  5. int64 id = 1; // 用户id
  6. string avatar = 2; // 用户头像
  7. string nickname = 3; // 昵称
  8. string username = 4; // 用户名(唯一)
  9. string phone = 5; // 手机号码
  10. int32 status = 6; // 是否锁住1-正常2-停用
  11. int32 sex = 7; // 性别0-女1-男
  12. int64 follows = 8; //粉丝
  13. int64 followings = 9; // 关注量
  14. int32 get_likes_count = 10; //获得点赞数量
  15. int32 get_collection_count = 11; //获得收藏的数量
  16. }
  17. message UserInfo {
  18. int64 id = 1; // 用户id
  19. string avatar = 2; // 用户头像
  20. string nickname = 3; // 昵称
  21. int32 sex = 7; // 性别0-女1-男
  22. }
  23. message FollowUserInfo {
  24. UserInfo user = 1;
  25. bool is_mutual_follow = 2; // 是否互相关注
  26. }
  27. message LoginAndRegisterRsp {
  28. string token = 1; // token令牌
  29. int64 expire = 2; // 到期时间
  30. }
  31. message LoginReq {
  32. string phone = 1; //手机号
  33. string password = 2; // 密码
  34. string code = 3; //验证码
  35. int32 login_type = 4; // 登录类型
  36. }
  37. message RegisterReq{
  38. string phone = 1; // 手机号码
  39. string nickname = 2; // 用户昵称
  40. string password = 3; // 密码
  41. string avatar = 4; // 头像
  42. int32 sex = 5; // 性别
  43. string username = 6; // 用户名(唯一)
  44. }
  45. message GetUserInfoReq {
  46. int64 id = 1; // 用户id
  47. }
  48. message GetUserInfoResp {
  49. UserEntity user = 1; // 用户信息
  50. }
  51. message FindUserReq {
  52. string username = 1; // 用户昵称
  53. string phone = 2; // 用户手机号码
  54. repeated int64 ids = 3; // 用户id
  55. }
  56. message FindUserResp {
  57. repeated UserInfo user_list = 1; // 用户信息
  58. }
  59. // 用户关注
  60. message FollowUserReq {
  61. int64 user_id = 1; // 当前登录用户id
  62. int64 follow_user_id = 2; // 被关注的用户id
  63. }
  64. message FollowUserRes {
  65. bool success = 1; // 是否关注成功
  66. }
  67. // 用户取消关注
  68. message UnFollowUserReq {
  69. int64 user_id = 1; // 当前登录的用户id
  70. int64 un_follow_user_id = 2; // 当前被取消关注的用户id
  71. }
  72. message UnFollowUserRes {
  73. bool success = 1; // 是否关注成功
  74. }
  75. // 查询粉丝列表
  76. message GetFollowingReq {
  77. int64 user_id = 1; // 当前登录用户的id
  78. int32 page_size = 2; // 数量限制
  79. int32 page = 3; // 分页开始偏移量
  80. int64 query_user_id = 4; // 查询用户的id
  81. }
  82. message GetFollowingRes {
  83. repeated FollowUserInfo list = 1;
  84. int64 total = 2;
  85. }
  86. // 查询我关注的列表
  87. message GetFollowReq {
  88. int64 user_id = 1; // 当前登录用户的id
  89. int32 page_size = 2; // 数量限制
  90. int32 page = 3; // 分页开始偏移量
  91. int64 query_user_id = 4; // 查询用户的id
  92. }
  93. message GetFollowRes {
  94. repeated FollowUserInfo list = 1;
  95. int64 total = 2;
  96. }
  97. //查询用户信息
  98. message GetUserProfileReq {
  99. string username = 1;
  100. int64 user_id = 2;
  101. }
  102. message GetUserProfileRes {
  103. int64 id = 1; // 用户id
  104. string nickname = 2; // 用户昵称
  105. string username = 3; // 用户名
  106. int32 status = 4; // 用户状态0-正常1-封禁中2-禁言中3-删除
  107. string avatar = 5; // 头像
  108. bool is_friend = 7; // 是否是好友
  109. bool is_following = 8; // 是否关注
  110. int64 created_on = 9; // 注册时间
  111. int64 follows = 10; // 关注数
  112. int64 fans = 11; // 粉丝数
  113. int32 get_likes_count = 12; //获得点赞数量
  114. int32 get_collection_count = 13; //获得收藏的数量
  115. }
  116. // 模糊查询用户
  117. message SearchUsernameReq {
  118. string username = 1;
  119. }
  120. message SearchUsernameItem {
  121. string username = 1;
  122. string avatar = 2;
  123. int64 id = 3;
  124. }
  125. message SearchUsernameRes {
  126. repeated SearchUsernameItem list = 1;
  127. }
  128. service SlowWildServer {
  129. // 用户登录
  130. rpc Login(LoginReq) returns (LoginAndRegisterRsp);
  131. // 用户注册
  132. rpc Register(RegisterReq) returns (LoginAndRegisterRsp);
  133. // 获取用户信息
  134. rpc GetUserInfo(GetUserInfoReq) returns (GetUserInfoResp);
  135. // 查询用户信息
  136. rpc FindUser(FindUserReq) returns (FindUserResp);
  137. // 关注用户
  138. rpc UserFollow (FollowUserReq) returns (FollowUserRes);
  139. // 取消关注用户
  140. rpc UnUserFollow (UnFollowUserReq) returns (UnFollowUserRes);
  141. // 获取我得粉丝
  142. rpc GetFans (GetFollowingReq) returns (GetFollowingRes);
  143. // 查询我的关注
  144. rpc GetFollows (GetFollowingReq) returns (GetFollowingRes);
  145. // 查询用户的详细信息
  146. rpc GetUserProfile (GetUserProfileReq) returns (GetUserProfileRes);
  147. // 搜索用户名称
  148. rpc SearchUsername (SearchUsernameReq) returns (SearchUsernameRes);
  149. }