APIClient.js 7.5 KB

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