UserApiServerImpl.java 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286
  1. package com.edufound.reader.apiserver;
  2. import android.app.Activity;
  3. import com.edufound.reader.bean.UserEventBean;
  4. import com.edufound.reader.botsdk.BotConstants;
  5. import com.edufound.reader.util.Consts;
  6. import com.edufound.reader.util.DeviceUuidFactory;
  7. import com.edufound.reader.util.EfunboxCallBack;
  8. import com.edufound.reader.util.OkHttpClient;
  9. import com.okhttplib.HttpInfo;
  10. import com.okhttplib.callback.Callback;
  11. import com.orhanobut.logger.Logger;
  12. public class UserApiServerImpl implements userApiServer {
  13. private String API = Consts.getFinalApi();
  14. /**
  15. * 用户是否登录
  16. */
  17. @Override
  18. public void isLogin(Activity activity, String deviceCode, Callback callback) {
  19. OkHttpClient.doGetAsync(activity, HttpInfo.Builder().setUrl(API + "/user/isLogin").addParam("deviceCode", deviceCode), callback);
  20. }
  21. @Override
  22. public void MiSoundIsLogin(String deviceCode, Callback callback) {
  23. OkHttpClient.doGetAsync(HttpInfo.Builder().setUrl(API + "/user/isLogin").addParam("deviceCode", deviceCode), callback);
  24. }
  25. /**
  26. * 获取用户信息
  27. */
  28. @Override
  29. public void getUserInfo(Activity activity, Callback callback) {
  30. OkHttpClient.doGetAsync(activity, HttpInfo.Builder().setUrl(API + "/user"), callback);
  31. }
  32. /**
  33. * 注册用户
  34. */
  35. @Override
  36. public void registerUser(Activity activity, String userJson, Callback callback) {
  37. OkHttpClient.doPostAsync(activity, HttpInfo.Builder().addParamJson(userJson).setUrl(API + "/user/register"), callback);
  38. }
  39. /**
  40. * 不用验证码的手机号注册
  41. */
  42. @Override
  43. public void registerMobile(Activity activity, String userJson, Callback callback) {
  44. OkHttpClient.doPostAsync(activity, HttpInfo.Builder().addParamJson(userJson).setUrl(API + "/user/registerMobile"), callback);
  45. }
  46. /**
  47. * 根据百度UID注册
  48. */
  49. @Override
  50. public void registerUserId(Activity activity, String userJson, Callback callback) {
  51. OkHttpClient.doPostAsync(activity, HttpInfo.Builder().addParamJson(userJson).setUrl(API + "/user/registerUserId"), callback);
  52. }
  53. /**
  54. * 更新用户信息
  55. */
  56. @Override
  57. public void updateUserInfo(Activity activity, String userJson, Callback callback) {
  58. OkHttpClient.doPutAsync(activity, HttpInfo.Builder().addParamJson(userJson).setUrl(API + "/user"), callback);
  59. }
  60. /**
  61. * 退出登录
  62. */
  63. @Override
  64. public void exitLogin(Activity activity, String deviceCode, Callback callback) {
  65. OkHttpClient.doDeleteAsync(activity, HttpInfo.Builder().addParam("deviceCode", deviceCode).setUrl(API + "/member"), callback);
  66. }
  67. @Override
  68. public void getOtherUserInfo(Activity activity, String uid, Callback callback) {
  69. OkHttpClient.doGetAsync(activity, new HttpInfo.Builder().setUrl(API + "/user/info").addParam("uid", uid), callback);
  70. }
  71. @Override
  72. public void loginSign(Activity activity, Callback callback) {
  73. if (activity == null) {
  74. OkHttpClient.doPostAsync(new HttpInfo.Builder().setUrl(API + "/loginLog"), callback);
  75. } else {
  76. OkHttpClient.doPostAsync(activity, new HttpInfo.Builder().setUrl(API + "/loginLog"), callback);
  77. }
  78. }
  79. @Override
  80. public void getBaiDuUserPhone(Activity activity, String token, Callback callback) {
  81. OkHttpClient.doPostAsync(activity, new HttpInfo.Builder().setUrl(BotConstants.GET_USER_PHONE).addHead("Authorization", "Bearer " + token), callback);
  82. }
  83. @Override
  84. public void getBindWeChatPath(Activity activity, Callback callback) {
  85. OkHttpClient.doGetAsync(activity, new HttpInfo.Builder().setUrl(API + "/user/bindWxQrCode"), callback);
  86. }
  87. @Override
  88. public void getSignInfo(Activity activity, Callback callback) {
  89. OkHttpClient.doGetAsync(activity, HttpInfo.Builder().setUrl(API + "/loginLog/signIn"), callback);
  90. }
  91. @Override
  92. public void getMyInfo(Activity activity, Callback callback) {
  93. OkHttpClient.doGetAsync(activity, new HttpInfo.Builder().setUrl(API + "/user/my"), callback);
  94. }
  95. @Override
  96. public void postUserEvent(Activity activity, String action) {
  97. OkHttpClient.doPostAsync(activity, new HttpInfo.Builder().setUrl(API + "/userEvent").addParamJson(new UserEventBean(action).toJson()), new EfunboxCallBack(null));
  98. }
  99. @Override
  100. public void userCancellation(Activity activity, Callback callback) {
  101. OkHttpClient.doPostAsync(activity, new HttpInfo.Builder().setUrl(API + "/user/logout"), callback);
  102. }
  103. @Override
  104. public void userLoginOut(Activity activity, Callback callback) {
  105. OkHttpClient.doGetAsync(activity, new HttpInfo.Builder().setUrl(API + "/user/logOut"), callback);
  106. }
  107. /**
  108. * 手机号验证码登录
  109. */
  110. @Override
  111. public void registerMobileByVCode(Activity activity, String userJson, Callback callback) {
  112. OkHttpClient.doPostAsync(activity, HttpInfo.Builder().addParamJson(userJson).setUrl(API + "/user/mobile"), callback);
  113. }
  114. @Override
  115. public void getTMailPhone(String json, Callback callback) {
  116. OkHttpClient.doPostAsync(HttpInfo.Builder().addParamJson(json).setUrl(API + "/user/getMobile"), callback);
  117. }
  118. /**
  119. * 获取登录二维码
  120. */
  121. @Override
  122. public void getLoginQRCode(Callback callback) {
  123. Logger.e("deviceCode:" + DeviceUuidFactory.getUuid());
  124. OkHttpClient.doGetAsync(HttpInfo.Builder().addParam("channelCode", Consts.getUMengChannel()).addParam("deviceCode", DeviceUuidFactory.getUuid()).setUrl(API + "/user/qrCode"), callback);
  125. }
  126. @Override
  127. public void bindPhoneNum(String phoneNum, Callback callback) {
  128. OkHttpClient.doPostAsync(HttpInfo.Builder().setUrl(API + "/user/mobileBind").addParamJson("{\"mobileNo\":\"" + phoneNum + "\",\"uid\":\"" + Consts.getUID() + "\"}"), callback);
  129. }
  130. /**
  131. * 获取排行榜
  132. */
  133. @Override
  134. public void getRankList(String id, Callback callback) {
  135. OkHttpClient.doGetAsync(HttpInfo.Builder().addParam("channelCode", Consts.getUMengChannel()).addParam("deviceCode", DeviceUuidFactory.getUuid()).addParam("activityRaceReadId", id).setUrl(API + "/activity/rank"), callback);
  136. }
  137. @Override
  138. public void postFirstEnter(Callback callback) {
  139. OkHttpClient.doGetAsync(HttpInfo.Builder().addParam("channelCode", Consts.getUMengChannel()).addParam("deviceCode", DeviceUuidFactory.getUuid()).setUrl(API + "/userEvent/enter"), callback);
  140. }
  141. }
  142. interface userApiServer {
  143. /**
  144. * 用户是否登录
  145. */
  146. void isLogin(Activity activity, String deviceCode, Callback callback);
  147. /**
  148. * 用户是否登录
  149. */
  150. void MiSoundIsLogin(String deviceCode, Callback callback);
  151. /*
  152. * 获取用户信息
  153. * */
  154. void getUserInfo(Activity activity, Callback callback);
  155. /*
  156. * 注册用户
  157. * */
  158. void registerUser(Activity activity, String userJson, Callback callback);
  159. void registerMobile(Activity activity, String userJson, Callback callback);
  160. /**
  161. * 根据百度UID注册
  162. */
  163. void registerUserId(Activity activity, String userJson, Callback callback);
  164. /*
  165. * 更新用户信息
  166. * */
  167. void updateUserInfo(Activity activity, String userJson, Callback callback);
  168. /**
  169. * 退出登录
  170. */
  171. void exitLogin(Activity activity, String deviceCode, Callback callback);
  172. /**
  173. * 根据他人UID获取他人信息
  174. */
  175. void getOtherUserInfo(Activity activity, String uid, Callback callback);
  176. void loginSign(Activity activity, Callback callback);
  177. void getBaiDuUserPhone(Activity activity, String token, Callback callback);
  178. void getBindWeChatPath(Activity activity, Callback callback);
  179. /**
  180. * 签到
  181. */
  182. void getSignInfo(Activity activity, Callback callback);
  183. /**
  184. * 根据uid获取用户个人中心
  185. */
  186. void getMyInfo(Activity activity, Callback callback);
  187. /**
  188. * 用户操作event
  189. */
  190. void postUserEvent(Activity activity, String action);
  191. /**
  192. * 注销账号
  193. */
  194. void userCancellation(Activity activity, Callback callback);
  195. /**
  196. * 退出登录
  197. */
  198. void userLoginOut(Activity activity, Callback callback);
  199. /**
  200. * 手机号验证码注册
  201. */
  202. void registerMobileByVCode(Activity activity, String userJson, Callback callback);
  203. void getTMailPhone(String json, Callback callback);
  204. /**
  205. * 获取登录二维码
  206. */
  207. void getLoginQRCode(Callback callback);
  208. /**
  209. * 绑定手机号
  210. */
  211. void bindPhoneNum(String phoneNum, Callback callback);
  212. /**
  213. * 获取排行榜
  214. */
  215. void getRankList(String id, Callback callback);
  216. /**
  217. * 统计设备首次访问
  218. */
  219. void postFirstEnter(Callback callback);
  220. }