APIClient.js 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. const request = require('./WXHttpRequest.js');
  2. const url = require('./const.js');
  3. const loginSchedule = require('./loginSchedule.js');
  4. const HOST = url.apiUrl;
  5. const HOSTTwo = url.apiUrlTwo;
  6. function genAPIUrl(action) {
  7. return HOST + action;
  8. }
  9. function genAPIUrlTwo(action) {
  10. return HOSTTwo + action;
  11. }
  12. // function genData(data) {
  13. // debugger;
  14. // let commonData = {
  15. // platform_type: PLATFORM
  16. // }
  17. // for (let key in commonData) {
  18. // data[key] = commonData[key];
  19. // }
  20. // return data;
  21. // }
  22. //没有登录的提示
  23. function showModal() {
  24. wx.showModal({
  25. title: '提示',
  26. content: '需要获取您的公开信息(昵称、头像等),请从小程序列表删除快乐学堂小助手后再次扫码进入,允许授权后可正常使用',
  27. showCancel: false,
  28. success: function (res) {
  29. if (res.confirm) {
  30. console.log('用户点击确定')
  31. } else if (res.cancel) {
  32. console.log('用户点击取消')
  33. }
  34. }
  35. })
  36. }
  37. module.exports = {
  38. // 获取我的data
  39. getMySchedule(header) {
  40. let url = genAPIUrl('wx/ucenter');
  41. return request.getInstance().url(url).header(header).send();
  42. },
  43. //获取推荐课程
  44. getRecommendSchedule(header) {
  45. let url = genAPIUrl('wx/course/recommend');
  46. return request.getInstance().url(url).header(header).send();
  47. },
  48. //发送上传图片
  49. getSendSchedule(header, data) {
  50. let url = genAPIUrl('wx/posts');
  51. return request.getInstance().url(url).header(header).data(data).method('POST').send();
  52. },
  53. //获取分享作品list
  54. getProductionSchedule(header, data) {
  55. let url = genAPIUrl('wx/posts/reply');
  56. return request.getInstance().url(url).header(header).data(data).method('GET').send();
  57. },
  58. //保存评论
  59. getDiscussSchedule(header, data) {
  60. let url = genAPIUrl('wx/reply');
  61. return request.getInstance().url(url).header(header).data(data).method('POST').send();
  62. },
  63. //分享查询单条
  64. getOneSchedule(header, data) {
  65. let url = genAPIUrl('wx/posts/one');
  66. return request.getInstance().url(url).header(header).data(data).method('GET').send();
  67. },
  68. //各个科目信息
  69. getEachSchedule(header, data) {
  70. let url = genAPIUrl('wx/course');
  71. return request.getInstance().url(url).header(header).data(data).method('GET').send();
  72. },
  73. //各个排名
  74. getFriendSchedule(urls, header) {
  75. let url = genAPIUrl(urls);
  76. return request.getInstance().url(url).header(header).method('GET').send();
  77. },
  78. //更改昵称
  79. getSetNameSchedule(header, data) {
  80. let url = genAPIUrl('wx/ucenter/user/update');
  81. return request.getInstance().url(url).header(header).data(data).method('GET').send();
  82. },
  83. //分享后点赞
  84. getLikeSchedule(header, data) {
  85. let url = genAPIUrl('wx/posts/attribute');
  86. return request.getInstance().url(url).header(header).data(data).method('GET').send();
  87. },
  88. //取消小点
  89. cancelDian(header, data) {
  90. let url = genAPIUrl('wx/posts/readCount');
  91. return request.getInstance().url(url).header(header).data(data).method('GET').send();
  92. },
  93. //获取错题本
  94. getErrorsSchedule(header, data) {
  95. let url = genAPIUrl('wx/question/wrong');
  96. return request.getInstance().url(url).header(header).data(data).method('GET').send();
  97. },
  98. //记录用户操作
  99. getStatisticsOpt (header, data) {
  100. let url = genAPIUrl('wx/statistics/opt');
  101. return request.getInstance().url(url).header(header).data(data).method('POST').send();
  102. },
  103. //获取用户答题指数
  104. getExponentSchedule(header) {
  105. let url = genAPIUrl('wx/question/exponent');
  106. return request.getInstance().url(url).header(header).method('GET').send();
  107. },
  108. //获取二维码
  109. getqrCode(data) {
  110. let url = genAPIUrl('wx/qrCode/postsCache');
  111. return request.getInstance().url(url).header({
  112. uid: wx.getStorageSync('uid')
  113. }).data(data).method('GET').send();
  114. },
  115. /**另一个小程序接口调用从此处开始 */
  116. // 获取课程表列表
  117. getClassSchedule() {
  118. let url = genAPIUrlTwo('wx/classSchedule/list');
  119. return request.getInstance().url(url).send();
  120. },
  121. // 课程表详情列表
  122. getClassScheduleWeekly(itemId, userId) {
  123. if (!userId) {
  124. loginSchedule.getOpenidSessionKeyTwo(function (res) {
  125. wx.navigateBack();
  126. wx.navigateTo({
  127. url: `/pages/schedule/scheduleSubject/scheduleSubject?scene=sc&id=${itemId}`
  128. })
  129. }, function (res) {
  130. wx.navigateBack()
  131. });
  132. }
  133. let url = genAPIUrlTwo(`wx/classSchedule/weekly/${itemId}`);
  134. //let data = genData({ userId })
  135. return request.getInstance().data({ userId }).url(url).send();
  136. },
  137. // 课程表详情列表二维码
  138. getClassScheduleWeeklyQR(itemId, userId, showId) {
  139. if (!userId) {
  140. loginSchedule.getOpenidSessionKeyTwo(function (res) {
  141. wx.navigateBack()
  142. wx.navigateTo({
  143. url: `/pages/schedule/scheduleSubject/scheduleSubject?scene=sc&id=${itemId}&showId=${showId}`
  144. })
  145. }, function (res) {
  146. wx.navigateBack()
  147. showModal()
  148. });
  149. }
  150. let url = genAPIUrlTwo(`wx/classSchedule/weekly/${itemId}`);
  151. //let data = genData({ userId, showId })
  152. return request.getInstance().data({ userId, showId }).url(url).send();
  153. },
  154. // 课程表详情问答列表
  155. getQAList(userId, columnId, columnType, pageNo, pageSize) {
  156. let url = genAPIUrlTwo(`wx/posts`);
  157. let data = {
  158. userId,
  159. columnId,
  160. columnType,
  161. pageNo,
  162. pageSize
  163. }
  164. return request.getInstance().url(url).data(data).send();
  165. },
  166. // 添加问题
  167. addQuestion(userId, columnId, columnType, title, columnNames) {
  168. let url = genAPIUrlTwo(`wx/posts`);
  169. let header = {'content-type': 'application/x-www-form-urlencoded'}
  170. let data = {
  171. userId,
  172. columnId,
  173. columnType,
  174. title,
  175. columnNames
  176. }
  177. return request.getInstance().url(url).header(header).method('POST').data(data).send();
  178. },
  179. // 添加问题回复
  180. addReply(userId, postsId, content, columnNames) {
  181. let url = genAPIUrlTwo(`wx/posts/addReply`);
  182. let header = {'content-type': 'application/x-www-form-urlencoded'}
  183. let data = {
  184. userId,
  185. postsId,
  186. content,
  187. columnNames
  188. }
  189. return request.getInstance().url(url).header(header).method('POST').data(data).send();
  190. },
  191. // 问题点赞
  192. addPraise(userId, id) {
  193. let url = genAPIUrlTwo(`wx/posts/like`);
  194. let header = {'content-type': 'application/x-www-form-urlencoded'}
  195. let data = {
  196. userId,
  197. id
  198. }
  199. return request.getInstance().url(url).header(header).method('POST').data(data).send();
  200. },
  201. // 问题取消点赞
  202. cancelPraise(userId, id) {
  203. let url = genAPIUrlTwo(`wx/posts/unlike`);
  204. let header = {'content-type': 'application/x-www-form-urlencoded'}
  205. let data = {
  206. userId,
  207. id
  208. }
  209. return request.getInstance().url(url).header(header).method('POST').data(data).send();
  210. },
  211. // 直播课资料列表
  212. getMaterials(columnId) {
  213. let url = genAPIUrlTwo(`wx/classSchedule/courseware/${columnId}`);
  214. return request.getInstance().url(url).send();
  215. },
  216. // 课程表资料列表
  217. getScheduleMaterials(userId, itemId) {
  218. let url = genAPIUrlTwo(`wx/classSchedule/courseware/${itemId}`);
  219. let data = { userId }
  220. return request.getInstance().url(url).data(data).send();
  221. },
  222. // 添加收藏
  223. toggleCollection(userId, favoritesCode, favoritesType, name) {
  224. let url = genAPIUrlTwo('wx/favorites')
  225. let header = {'content-type': 'application/x-www-form-urlencoded'}
  226. let data = { userId, favoritesCode, favoritesType, name }
  227. return request.getInstance().url(url).method('POST').header(header).data(data).send()
  228. },
  229. // 获取teacherID title goal
  230. getScheduleGoal(itemId) {
  231. let url = genAPIUrlTwo(`wx/classSchedule/goal/${itemId}`);
  232. return request.getInstance().url(url).send();
  233. },
  234. // 课程表详情中的课程表和学习目标
  235. getScheduleDetailGoalSchedule(itemId, type, userId) {
  236. let url = genAPIUrlTwo(`wx/classSchedule/info/${itemId}`);
  237. let data = { type, userId }
  238. return request.getInstance().url(url).data(data).send();
  239. },
  240. //6.5错题
  241. getScheduleErr(qid) {
  242. let data = {
  243. qid
  244. }
  245. return request.getInstance().url('https://schedule.api.ai160.com/customer/question/getAnalysis').data(data).send();
  246. },
  247. }