APIClient.js 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253
  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).data(data).method('GET').send();
  112. },
  113. /**另一个小程序接口调用从此处开始 */
  114. // 获取课程表列表
  115. getClassSchedule() {
  116. let url = genAPIUrlTwo('wx/classSchedule/list');
  117. return request.getInstance().url(url).send();
  118. },
  119. // 课程表详情列表
  120. getClassScheduleWeekly(itemId, userId) {
  121. if (!userId) {
  122. loginSchedule.getOpenidSessionKeyTwo(function (res) {
  123. wx.navigateBack();
  124. wx.navigateTo({
  125. url: `/pages/schedule/scheduleSubject/scheduleSubject?scene=sc&id=${itemId}`
  126. })
  127. }, function (res) {
  128. wx.navigateBack()
  129. });
  130. }
  131. let url = genAPIUrlTwo(`wx/classSchedule/weekly/${itemId}`);
  132. //let data = genData({ userId })
  133. return request.getInstance().data({ userId }).url(url).send();
  134. },
  135. // 课程表详情列表二维码
  136. getClassScheduleWeeklyQR(itemId, userId, showId) {
  137. if (!userId) {
  138. loginSchedule.getOpenidSessionKeyTwo(function (res) {
  139. wx.navigateBack()
  140. wx.navigateTo({
  141. url: `/pages/schedule/scheduleSubject/scheduleSubject?scene=sc&id=${itemId}&showId=${showId}`
  142. })
  143. }, function (res) {
  144. wx.navigateBack()
  145. showModal()
  146. });
  147. }
  148. let url = genAPIUrlTwo(`wx/classSchedule/weekly/${itemId}`);
  149. //let data = genData({ userId, showId })
  150. return request.getInstance().data({ userId, showId }).url(url).send();
  151. },
  152. // 课程表详情问答列表
  153. getQAList(userId, columnId, columnType, pageNo, pageSize) {
  154. let url = genAPIUrlTwo(`wx/posts`);
  155. let data = {
  156. userId,
  157. columnId,
  158. columnType,
  159. pageNo,
  160. pageSize
  161. }
  162. return request.getInstance().url(url).data(data).send();
  163. },
  164. // 添加问题
  165. addQuestion(userId, columnId, columnType, title, columnNames) {
  166. let url = genAPIUrlTwo(`wx/posts`);
  167. let header = {'content-type': 'application/x-www-form-urlencoded'}
  168. let data = {
  169. userId,
  170. columnId,
  171. columnType,
  172. title,
  173. columnNames
  174. }
  175. return request.getInstance().url(url).header(header).method('POST').data(data).send();
  176. },
  177. // 添加问题回复
  178. addReply(userId, postsId, content, columnNames) {
  179. let url = genAPIUrlTwo(`wx/posts/addReply`);
  180. let header = {'content-type': 'application/x-www-form-urlencoded'}
  181. let data = {
  182. userId,
  183. postsId,
  184. content,
  185. columnNames
  186. }
  187. return request.getInstance().url(url).header(header).method('POST').data(data).send();
  188. },
  189. // 问题点赞
  190. addPraise(userId, id) {
  191. let url = genAPIUrlTwo(`wx/posts/like`);
  192. let header = {'content-type': 'application/x-www-form-urlencoded'}
  193. let data = {
  194. userId,
  195. id
  196. }
  197. return request.getInstance().url(url).header(header).method('POST').data(data).send();
  198. },
  199. // 问题取消点赞
  200. cancelPraise(userId, id) {
  201. let url = genAPIUrlTwo(`wx/posts/unlike`);
  202. let header = {'content-type': 'application/x-www-form-urlencoded'}
  203. let data = {
  204. userId,
  205. id
  206. }
  207. return request.getInstance().url(url).header(header).method('POST').data(data).send();
  208. },
  209. // 直播课资料列表
  210. getMaterials(columnId) {
  211. let url = genAPIUrlTwo(`wx/classSchedule/courseware/${columnId}`);
  212. return request.getInstance().url(url).send();
  213. },
  214. // 课程表资料列表
  215. getScheduleMaterials(userId, itemId) {
  216. let url = genAPIUrlTwo(`wx/classSchedule/courseware/${itemId}`);
  217. let data = { userId }
  218. return request.getInstance().url(url).data(data).send();
  219. },
  220. // 添加收藏
  221. toggleCollection(userId, favoritesCode, favoritesType, name) {
  222. let url = genAPIUrlTwo('wx/favorites')
  223. let header = {'content-type': 'application/x-www-form-urlencoded'}
  224. let data = { userId, favoritesCode, favoritesType, name }
  225. return request.getInstance().url(url).method('POST').header(header).data(data).send()
  226. },
  227. // 获取teacherID title goal
  228. getScheduleGoal(itemId) {
  229. let url = genAPIUrlTwo(`wx/classSchedule/goal/${itemId}`);
  230. return request.getInstance().url(url).send();
  231. },
  232. // 课程表详情中的课程表和学习目标
  233. getScheduleDetailGoalSchedule(itemId, type, userId) {
  234. let url = genAPIUrlTwo(`wx/classSchedule/info/${itemId}`);
  235. let data = { type, userId }
  236. return request.getInstance().url(url).data(data).send();
  237. },
  238. //6.5错题
  239. getScheduleErr(qid) {
  240. let data = {
  241. qid
  242. }
  243. return request.getInstance().url('https://schedule.api.ai160.com/customer/question/getAnalysis').data(data).send();
  244. },
  245. }