util.js 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. const formatTime = date => {
  2. const year = date.getFullYear()
  3. const month = date.getMonth() + 1
  4. const day = date.getDate()
  5. const hour = date.getHours()
  6. const minute = date.getMinutes()
  7. const second = date.getSeconds()
  8. return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
  9. }
  10. const formatNumber = n => {
  11. n = n.toString()
  12. return n[1] ? n : '0' + n
  13. }
  14. //年级显示方法
  15. let gradeArr = ["学前班", "一年级", "二年级", "三年级"]
  16. const gradeUpper = grade => {
  17. return gradeArr[grade];
  18. }
  19. //时间转换秒转天或小时或分
  20. const day = msd => {
  21. let time = Math.floor(msd) + "秒";
  22. if( Math.floor(msd )> 60){
  23. let min = Math.floor(msd / 60);
  24. time = min + "分";
  25. if( min > 60 ){
  26. min = Math.floor(msd / 60) % 60;
  27. let hour = Math.floor( msd / 3600 );
  28. time = hour + "小时" + min + "分";
  29. if( hour > 24 ){
  30. hour = Math.floor( msd / 3600 ) % 24;
  31. let day = Math.floor(msd / 3600 / 24 );
  32. time = day + "天" + hour + "小时";
  33. }
  34. }
  35. }
  36. return time;
  37. }
  38. //计算首页学过了多长时间
  39. function studyTime (arr) {
  40. const studyLog = [];
  41. const time = new Date();
  42. for(let item of arr) {
  43. if(!item.lessonTitle) {
  44. break;
  45. }
  46. let msd = (time - item.gmtCreated*1) / 1000;
  47. studyLog.push(
  48. {
  49. lessonTitle: item.lessonTitle,
  50. lessonId: item.lessonId,
  51. gmtCreated:day(msd) + '之前'
  52. }
  53. )
  54. }
  55. return studyLog
  56. }
  57. //计算各个页面学了多长时间
  58. function studyPageTime (arr) {
  59. const studyLog = [];
  60. const time = new Date();
  61. for(let item of arr) {
  62. if(!item.title) {
  63. break;
  64. }
  65. let msd = (time - item.studyDate*1) / 1000;
  66. studyLog.push(
  67. {
  68. title: item.title,
  69. lessonId: item.lessonId,
  70. isStudy: item.isStudy,
  71. studyDate: day(msd) + '之前'
  72. }
  73. )
  74. }
  75. return studyLog;
  76. }
  77. //获取当前页面传的的值
  78. function getUrl() {
  79. var pages = getCurrentPages() //获取加载的页面
  80. var currentPage = pages[pages.length-1] //获取当前页面的对象
  81. var url = currentPage.route //当前页面url
  82. var options = currentPage.options //如果要获取url中所带的参数可以查看options
  83. return options
  84. }
  85. //判断科目唯一值columnId
  86. function column(columnNum) {
  87. let column = {};
  88. switch(columnNum) {
  89. case '1':
  90. column.columnId = '3564feb8-05ba-11e8-9771-080027fcfc4b'
  91. column.columnName = '语文'
  92. break;
  93. case '2':
  94. column.columnId = '2b52f52e-05ba-11e8-9771-080027fcfc4b'
  95. column.columnName = '数学'
  96. break;
  97. case '3':
  98. column.columnId = '3561f024-05ba-11e8-9771-080027fcfc4b'
  99. column.columnName = '中文'
  100. break;
  101. case '4':
  102. column.columnId = '2b5a24ca-05ba-11e8-9771-080027fcfc4b'
  103. column.columnName = '英语'
  104. break;
  105. case '5':
  106. column.columnId = '23598e64-05ba-11e8-9771-080027fcfc4b'
  107. column.columnName = '科学'
  108. break;
  109. case '6':
  110. column.columnId = '41209f14-05ba-11e8-9771-080027fcfc4b'
  111. column.columnName = '艺术'
  112. break;
  113. }
  114. return column;
  115. }
  116. //输入跳转URL链接
  117. function url(columnNum) {
  118. let url = '';
  119. switch(columnNum) {
  120. case '1':
  121. url = '../language/language?ind=2'
  122. break;
  123. case '2':
  124. url = '../mathematics/mathematics?ind=3'
  125. break;
  126. case '3':
  127. url = '../chinese/chinese?ind=4'
  128. break;
  129. case '4':
  130. url = '../english/english?ind=5'
  131. break;
  132. case '5':
  133. url = '../science/science?ind=6'
  134. break;
  135. case '6':
  136. url = '../art/art?ind=7'
  137. break;
  138. }
  139. return url;
  140. }
  141. //过滤返回回来的数组找出前三名重新排序
  142. function topThree (arr) {
  143. var arr1 = [];
  144. for(var item of arr.slice(0,3)){
  145. if(item.rank == 2){
  146. arr1.unshift(item)
  147. }
  148. if(item.rank == 1) {
  149. arr1.push(item)
  150. }
  151. if(item.rank == 3) {
  152. arr1.push(item)
  153. }
  154. }
  155. return arr1;
  156. }
  157. //获取回复条数
  158. function replyNo (arr) {
  159. let num = 0;
  160. for( let item of arr) {
  161. num += item.currentReplyCount
  162. }
  163. return num
  164. }
  165. module.exports = {
  166. formatTime: formatTime,
  167. studyTime,
  168. studyPageTime,
  169. gradeUpper,
  170. day,
  171. getUrl,
  172. column,
  173. url,
  174. topThree,
  175. replyNo
  176. }