myMission.js 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779
  1. const app = require('../../utils/util.js');
  2. const tools = require('../../utils/tools.js');
  3. Page({
  4. data: {
  5. showewm: false, //是否显示班级群二维码
  6. showzs: false, //是否显示毕业证书
  7. kcArr: [], //课程列表
  8. sfmArr: [], //课程的时间换算成(时分秒)
  9. istask1: false, //第一个任务加入班级群
  10. istask2: false, //第二个任务学员登记表
  11. istask3: false, //第三个任务所有课程是否学完
  12. istask4: false, //第四个任务是否完成期末开始
  13. istask5: false, //第五个任务综合反馈
  14. istask6: false, //第六个任务是否领取毕业证书
  15. studentName: "", //学生的名字用于毕业证书
  16. classInfo: {}, //有关我这个班级的所有信息
  17. byzsbj: "../../images/zsbj.jpg", //毕业证书的背景 用于合成图片
  18. myCanvasId: 0, //画布的id 再次绘制不成功的原因是id不能一致 所以id为变量++
  19. IngCourseArr: [] //如果有正在进行的课就存一下
  20. },
  21. // 检查第一个任务 班级二维码是否点击
  22. checkTaskList(sessionKey) {
  23. wx.request({
  24. url: app.globalData.publicUrl + '/wx/student/selStudentSessionKey',
  25. method: "post",
  26. data: {
  27. sessionKey: sessionKey
  28. },
  29. success: (res) => {
  30. console.log(res.data, "检查第一个任务")
  31. if (res.data.code == 0) {
  32. if (res.data.data.joinClas == 0) {
  33. this.setData({
  34. istask1: true
  35. })
  36. }
  37. this.setData({
  38. studentName: res.data.data.studentName,
  39. })
  40. }
  41. }
  42. })
  43. },
  44. //保存班级二维码
  45. saveImg() {
  46. wx.getSetting({
  47. success: (res) => {
  48. console.log(res)
  49. if (!res.authSetting['scope.writePhotosAlbum']) {
  50. wx.authorize({
  51. scope: 'scope.writePhotosAlbum',
  52. success() {
  53. console.log(res, "我点击同意啦")
  54. wx.showLoading({
  55. title: '保存中...'
  56. })
  57. let imgSrc = this.data.classInfo.codeImg;
  58. wx.downloadFile({
  59. url: imgSrc,
  60. success: function (res) {
  61. console.log(res, '我下载完成啦');
  62. //图片保存到本地
  63. wx.saveImageToPhotosAlbum({
  64. filePath: res.tempFilePath,
  65. success: function (data) {
  66. console.log(data, '我保存成功啦')
  67. wx.hideLoading();
  68. wx.showToast({
  69. title: '保存成功',
  70. icon: 'success',
  71. duration: 2000
  72. })
  73. },
  74. fail: function (err) {
  75. console.log(err, '我保存失败啦')
  76. wx.hideLoading();
  77. if (err.errMsg === "saveImageToPhotosAlbum:fail auth deny") {
  78. console.log("当初用户拒绝,再次发起授权")
  79. wx.openSetting({
  80. success(settingdata) {
  81. console.log(settingdata)
  82. if (settingdata.authSetting['scope.writePhotosAlbum']) {
  83. console.log('获取权限成功,给出再次点击图片保存到相册的提示。')
  84. } else {
  85. console.log('获取权限失败,给出不给权限就无法正常使用的提示')
  86. }
  87. }
  88. })
  89. }
  90. },
  91. complete(res) {
  92. console.log(res);
  93. }
  94. })
  95. }
  96. })
  97. }
  98. })
  99. } else {
  100. wx.showLoading({
  101. title: '保存中...'
  102. })
  103. console.log(this.data.classInfo.codeImg)
  104. let imgSrc = this.data.classInfo.codeImg
  105. wx.downloadFile({
  106. url: imgSrc,
  107. success: function (res) {
  108. console.log(res, '我下载完成啦');
  109. wx.hideLoading();
  110. //图片保存到本地
  111. wx.saveImageToPhotosAlbum({
  112. filePath: res.tempFilePath,
  113. success: function (data) {
  114. console.log(data, '我保存成功啦')
  115. wx.hideLoading();
  116. wx.showToast({
  117. title: '保存成功',
  118. icon: 'success',
  119. duration: 2000
  120. })
  121. },
  122. fail: function (err) {
  123. console.log(err, '我保存失败啦')
  124. wx.hideLoading();
  125. if (err.errMsg === "saveImageToPhotosAlbum:fail auth deny") {
  126. console.log("当初用户拒绝,再次发起授权")
  127. wx.openSetting({
  128. success(settingdata) {
  129. console.log(settingdata)
  130. if (settingdata.authSetting['scope.writePhotosAlbum']) {
  131. console.log('获取权限成功,给出再次点击图片保存到相册的提示。')
  132. } else {
  133. console.log('获取权限失败,给出不给权限就无法正常使用的提示')
  134. }
  135. }
  136. })
  137. }
  138. },
  139. complete(res) {
  140. console.log(res);
  141. }
  142. })
  143. }
  144. })
  145. }
  146. }
  147. })
  148. },
  149. // 检查第二个任务 学员登记表
  150. checkTaskList2(sessionKey) {
  151. wx.request({
  152. url: app.globalData.publicUrl + '/wx/student/selStudentSessionKey',
  153. method: "post",
  154. data: {
  155. sessionKey: sessionKey
  156. },
  157. success: (res) => {
  158. console.log(res.data, "我是第二个任务的检查状态")
  159. if (res.data.code == 0 && res.data.data.register == 0) {
  160. this.setData({
  161. istask2: true
  162. })
  163. }
  164. }
  165. })
  166. },
  167. // (第三个任务在获取列表是做了 --getMycourse()) 第四个任务 期末考试
  168. checkTaskList4(sessionKey, id) {
  169. wx.request({
  170. url: app.globalData.publicUrl + '/wx/exam/clasExamstatus',
  171. method: "post",
  172. data: {
  173. sessionKey: sessionKey,
  174. clasId: id
  175. },
  176. success: (res) => {
  177. console.log(res.data, "我是第四个任务的检查状态")
  178. if (res.data.code == 0 && res.data.status == 1) {
  179. this.setData({
  180. istask4: true
  181. })
  182. }
  183. }
  184. })
  185. },
  186. // 检查第五个任务 综合反馈表
  187. checkTaskList5(sessionKey, id) {
  188. wx.request({
  189. url: app.globalData.publicUrl + '/wx/exam/status',
  190. method: "post",
  191. data: {
  192. sessionKey: sessionKey,
  193. clasId: id
  194. },
  195. success: (res) => {
  196. console.log(res.data, "我是第五个任务的检查状态")
  197. if (res.data.code == 0 && res.data.status == 1) {
  198. this.setData({
  199. istask5: true
  200. })
  201. }
  202. }
  203. })
  204. },
  205. //第六个任务 领取结业证
  206. checkTaskList6(sessionKey) {
  207. wx.request({
  208. url: app.globalData.publicUrl + '/wx/student/wxGraduation',
  209. method: "post",
  210. data: {
  211. sessionKey: sessionKey
  212. },
  213. success: (res) => {
  214. console.log(res.data, "我是第六个任务的检查状态")
  215. if (res.data.code == 0 && res.data.code == 0) {
  216. this.setData({
  217. istask6: true
  218. })
  219. }
  220. }
  221. })
  222. },
  223. // 查询我是否有班&&班级名字
  224. isClass(sessionKey) {
  225. wx.request({
  226. url: app.globalData.publicUrl + '/wx/student/selMyClas',
  227. method: "post",
  228. data: {
  229. sessionKey: sessionKey
  230. },
  231. success: (res) => {
  232. console.log(res, "我是返回是否有班级")
  233. if (res.data.code == 0) {
  234. this.setData({
  235. classInfo: res.data.data
  236. })
  237. this.checkTaskList4(sessionKey, res.data.data.id)
  238. this.checkTaskList5(sessionKey, res.data.data.id)
  239. } else {
  240. wx.showModal({
  241. content: "您当前还没有开放的班级!",
  242. showCancel: false,
  243. success(res) {
  244. if (res.confirm) {
  245. wx.switchTab({
  246. url: '../index/index'
  247. })
  248. }
  249. }
  250. })
  251. return false;
  252. }
  253. }
  254. })
  255. },
  256. // 获取我的课程表
  257. getMycourse(sessionKey) {
  258. wx.request({
  259. url: app.globalData.publicUrl + '/wx/course/selectBySessionKey',
  260. method: "post",
  261. data: {
  262. sessionKey: sessionKey
  263. },
  264. success: (res) => {
  265. console.log(res, "我的任务之课程")
  266. if (res.data.code == 0 && res.data.list.length !== 0) {
  267. this.setData({
  268. kcArr: res.data.list,
  269. istask3: res.data.allDone
  270. });
  271. // 过滤数组
  272. for (let i = 0; i < res.data.list.length; i++) {
  273. if (res.data.list[i].isStudyDone == 0) {
  274. this.setData({
  275. IngCourseArr: res.data.list[i]
  276. })
  277. }
  278. }
  279. // 换算时间
  280. let result = [];
  281. if (res.data.list)
  282. for (let i = 0; i < res.data.list.length; i++) {
  283. result.push({
  284. courseTime: res.data.list[i].courseTime
  285. });
  286. }
  287. const timesArr = result.map((item) => {
  288. return item.courseTime;
  289. });
  290. let sfmArr = [];
  291. for (let i = 0; i < timesArr.length; i++) {
  292. let value = timesArr[i];
  293. const resultValue = this.handler(value);
  294. sfmArr.push({
  295. courseTime: resultValue
  296. })
  297. this.setData({
  298. sfmArr: sfmArr
  299. })
  300. }
  301. }
  302. }
  303. })
  304. },
  305. // 记录二维码已经点击
  306. showEwm() {
  307. wx.request({
  308. url: app.globalData.publicUrl + '/wx/student/wxGroup',
  309. method: "post",
  310. data: {
  311. sessionKey: this.data.sessionKey
  312. },
  313. success: () => {
  314. this.setData({
  315. showewm: true,
  316. istask1: true
  317. })
  318. }
  319. })
  320. },
  321. // 二维码隐藏
  322. onClose() {
  323. wx.hideLoading()
  324. this.setData({
  325. showewm: false
  326. });
  327. },
  328. // 填写学员登记表
  329. goWrite() {
  330. if (this.data.istask1 == false) {
  331. wx.showModal({
  332. showCancel: false,
  333. content: "请按照任务顺序执行哦!"
  334. })
  335. return false
  336. }
  337. wx.navigateTo({
  338. url: '../studentRegistration/studentRegistration'
  339. })
  340. },
  341. // 去学习
  342. goStudy(e) {
  343. if (this.data.istask1 == false) {
  344. wx.showModal({
  345. showCancel: false,
  346. content: "请按照任务顺序执行哦!"
  347. })
  348. return false
  349. }
  350. let id = e.currentTarget.dataset.item.id //此课程的id
  351. console.log(id)
  352. console.log(this.data.IngCourseArr, "我是筛选的列表")
  353. if (this.data.IngCourseArr.length == 0) {
  354. if (e.currentTarget.dataset.item.isLive == 1) {
  355. if (e.currentTarget.dataset.item.isActive == 1) {
  356. wx.navigateTo({
  357. url: '../zbDetails/zbDetails?id=' + id
  358. })
  359. } else {
  360. wx.showModal({
  361. showCancel: false,
  362. content: "直播还未开始哦"
  363. })
  364. return false;
  365. }
  366. } else {
  367. wx.navigateTo({
  368. url: '../dbDetails/dbDetails?id=' + id
  369. })
  370. }
  371. } else {
  372. if (id == this.data.IngCourseArr.id) {
  373. if (e.currentTarget.dataset.item.isLive == 1) {
  374. if (e.currentTarget.dataset.item.isActive == 1) {
  375. wx.navigateTo({
  376. url: '../zbDetails/zbDetails?id=' + id
  377. })
  378. } else {
  379. wx.showModal({
  380. showCancel: false,
  381. content: "直播还未开始哦"
  382. })
  383. return false;
  384. }
  385. } else {
  386. wx.navigateTo({
  387. url: '../dbDetails/dbDetails?id=' + id
  388. })
  389. }
  390. } else {
  391. wx.showModal({
  392. showCancel: false,
  393. content: "您的 ‘" + this.data.IngCourseArr.courseName + "’ 课还未学完,快去学习吧"
  394. })
  395. }
  396. }
  397. },
  398. // 去考试
  399. gokhAnswer(e) {
  400. if (this.data.istask1 == false) {
  401. wx.showModal({
  402. showCancel: false,
  403. content: "请按照任务顺序执行哦!"
  404. })
  405. return false
  406. }
  407. let isStudyDone = e.currentTarget.dataset.item.isStudyDone
  408. if (isStudyDone != 1) {
  409. wx.showModal({
  410. showCancel: false,
  411. content: "您的学习课程还未完成哦,请先完成学习任务后再来考试吧!"
  412. })
  413. return false
  414. } else {
  415. wx.request({
  416. url: app.globalData.publicUrl + '/wx/exam/examList',
  417. method: "post",
  418. data: {
  419. sessionKey: this.data.sessionKey,
  420. courseId: e.currentTarget.dataset.item.id,
  421. clasId: this.data.classInfo.id
  422. },
  423. success: (res) => {
  424. if (res.data.code == 0) {
  425. if (res.data.list.length == 0) {
  426. wx.showModal({
  427. showCancel: false,
  428. content: '此课程还没有考试噢'
  429. })
  430. } else {
  431. if (res.data.list[0]) {
  432. if (res.data.list[0].answersId) {
  433. this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'answerAfterclass');
  434. } else {
  435. this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'answerAfterclass');
  436. }
  437. }
  438. }
  439. }
  440. }
  441. })
  442. }
  443. },
  444. //去评价
  445. gopjClass(e) {
  446. if (this.data.istask1 == false) {
  447. wx.showModal({
  448. showCancel: false,
  449. content: "请按照任务顺序执行哦!"
  450. })
  451. return false
  452. }
  453. let isStudyDone = e.currentTarget.dataset.item.isStudyDone
  454. if (isStudyDone != 1) {
  455. wx.showModal({
  456. showCancel: false,
  457. content: "您的学习课程还未完成哦,请先完成学习任务后再来评价吧!"
  458. })
  459. return false
  460. } else {
  461. wx.request({
  462. url: app.globalData.publicUrl + '/wx/exam/quesExamList',
  463. method: "post",
  464. data: {
  465. sessionKey: this.data.sessionKey,
  466. questSub: '3',
  467. courseId: e.currentTarget.dataset.item.id,
  468. clasId: this.data.classInfo.id
  469. },
  470. success: (res) => {
  471. console.log(res, "我去评价啦")
  472. if (res.data.code == 0) {
  473. if (res.data.list.length == 0) {
  474. wx.showModal({
  475. showCancel: false,
  476. content: '此课程还不可以评价哦!'
  477. })
  478. } else {
  479. if (res.data.list[0]) {
  480. if (res.data.list[0].answersId) {
  481. this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'evaluationCourse');
  482. } else {
  483. this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'evaluationCourse');
  484. }
  485. }
  486. }
  487. }
  488. }
  489. })
  490. }
  491. },
  492. // 期末考试
  493. goQmks() {
  494. if (this.data.istask3 == false) {
  495. wx.showModal({
  496. showCancel: false,
  497. content: "请按照任务顺序执行哦!"
  498. })
  499. return false
  500. }
  501. wx.request({
  502. url: app.globalData.publicUrl + '/wx/exam/examList',
  503. method: "post",
  504. data: {
  505. sessionKey: this.data.sessionKey,
  506. clasId: this.data.classInfo.id
  507. },
  508. success: (res) => {
  509. if (res.data.code == 0) {
  510. if (res.data.list.length == 0) {
  511. wx.showModal({
  512. showCancel: false,
  513. content: '期末考试还未开始哦!'
  514. })
  515. } else {
  516. if (res.data.list[0]) {
  517. if (res.data.list[0].answersId) {
  518. if (res.data.list[0].status == '1') {
  519. wx.request({
  520. url: app.globalData.publicUrl + '/wx/answer/detail',
  521. method: "post",
  522. data: {
  523. answersId: res.data.list[0].answersId
  524. },
  525. success: (res1) => {
  526. if (res1.data.list[0].answerScore) {
  527. wx.navigateTo({
  528. url: '/pages/grade/grade?answersId=' + res.data.list[0].answersId,
  529. })
  530. } else {
  531. wx.showModal({
  532. showCancel: false,
  533. content: '当前老师批阅中,请耐心等待'
  534. })
  535. }
  536. }
  537. })
  538. } else {
  539. this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'answerAfterclass');
  540. }
  541. } else {
  542. this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'answerAfterclass');
  543. }
  544. }
  545. }
  546. }
  547. }
  548. })
  549. },
  550. // 综合反馈表
  551. goWrite2() {
  552. // if (this.data.istask4 == false) {
  553. // wx.showModal({
  554. // showCancel: false,
  555. // content: "请按照任务顺序执行哦!"
  556. // })
  557. // return false
  558. // }
  559. // console.log(this.data.sessionKey, "dayin");
  560. // console.log(this.data.classInfo.id);
  561. wx.request({
  562. url: app.globalData.publicUrl + '/wx/exam/quesExamList',
  563. method: "post",
  564. data: {
  565. sessionKey: this.data.sessionKey,
  566. questSub: '1',
  567. clasId: this.data.classInfo.id
  568. },
  569. success: (res) => {
  570. if (res.data.code == 0) {
  571. if (res.data.list.length == 0) {
  572. wx.showModal({
  573. showCancel: false,
  574. content: '当前综合反馈还不可以填写哦!'
  575. })
  576. } else {
  577. if (res.data.list[0]) {
  578. if (res.data.list[0].answersId) {
  579. if (res.data.list[0].status == '1') {
  580. wx.navigateTo({
  581. url: '/pages/feedBackDetail/feedBackDetail?answersId=' + res.data.list[0].answersId,
  582. })
  583. } else {
  584. this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'feedBack');
  585. }
  586. } else {
  587. this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'feedBack');
  588. }
  589. }
  590. }
  591. }
  592. }
  593. })
  594. },
  595. // 考试需要的方法
  596. toPath(id, paperId, answersId, address, status) {
  597. wx.navigateTo({
  598. url: '/pages/' + address + '/' + address + '?id=' + id + '&paperId=' + paperId + '&answersId=' + answersId + '&status=' + status,
  599. })
  600. },
  601. // 考试需要的方法
  602. beginKao(id, paperId, sessionKey, address) {
  603. console.log(paperId, "8888888");
  604. wx.request({
  605. url: app.globalData.publicUrl + '/wx/exam/begin',
  606. method: "post",
  607. data: {
  608. sessionKey: sessionKey,
  609. id: id,
  610. paperId: paperId
  611. },
  612. success: (res) => {
  613. console.log(res);
  614. if (res.data.code == 0) {
  615. console.log(res, "为我么我们微妙"); // 提交答案是后
  616. this.setData({
  617. status: res.data.status
  618. })
  619. this.toPath(id, paperId, res.data.answersId, address, );
  620. }
  621. }
  622. })
  623. },
  624. // 领取结业证
  625. lq() {
  626. if (this.data.istask4 == false) {
  627. wx.showModal({
  628. showCancel: false,
  629. content: "请按照任务顺序执行哦!"
  630. })
  631. return false
  632. }
  633. wx.showLoading({
  634. mask: true,
  635. title: '加载中',
  636. })
  637. this.setData({
  638. myCanvasId: this.data.myCanvasId + 1
  639. })
  640. console.log(this.data.myCanvasId)
  641. let str = this.data.studentName + "同志于" + this.data.classInfo.beginDate + " 至 " + this.data.classInfo.endDate + "参加学习完成规定培训内容,准予结业,特发此证。"
  642. let strArr = [];
  643. //每15个字截取一下
  644. // let n = 15;
  645. // for (let i = 0, l = str.length; i < l / n; i++) {
  646. // let a = str.slice(n * i, n * (i + 1));
  647. // strArr.push(a);
  648. // }
  649. let a = str.slice(0, 18);
  650. let b = str.slice(16, 36);
  651. let c = str.slice(36, 56);
  652. strArr.push(a, b, c);
  653. console.log(strArr, "我是截取之后的")
  654. const ctx = wx.createCanvasContext(this.data.myCanvasId);
  655. ctx.drawImage(this.data.byzsbj, 0, 0, 300, 415); //里面的参数无非就是图片放置的位置即图片的横纵坐标,图片的宽高
  656. ctx.setFillStyle("#000");
  657. ctx.setFontSize(16); //字大小
  658. ctx.setTextAlign('left'); //是否居中显示,参考点画布中线
  659. let leftPositionAarr = [60, 30, 30, 30]
  660. for (let i = 0; i < strArr.length; i++) {
  661. console.log(i);
  662. ctx.fillText(strArr[i], leftPositionAarr[i], 160 + i * 30);
  663. }
  664. // ctx.fillText(str, 150, 160); //150:canvas画布宽300,取1/2,中间,280:纵向位置
  665. ctx.draw();
  666. wx.hideLoading();
  667. this.setData({
  668. showzs: true,
  669. istask5: true
  670. });
  671. wx.request({
  672. url: app.globalData.publicUrl + '/wx/student/wxGraduation',
  673. method: "post",
  674. data: {
  675. sessionKey: this.data.sessionKey
  676. },
  677. success: (res) => {
  678. console.log(res.data, "领取结业证提交")
  679. }
  680. })
  681. },
  682. // 保存结业证
  683. saveZs() {
  684. wx.canvasToTempFilePath({ //把当前画布指定区域的内容导出生成指定大小的图片
  685. canvasId: this.data.myCanvasId,
  686. success(res) {
  687. console.log(res)
  688. wx.authorize({ //向用户发起授权请求
  689. scope: 'scope.writePhotosAlbum', //保存相册授权
  690. success: () => {
  691. wx.saveImageToPhotosAlbum({ //保存图片到系统相册
  692. filePath: res.tempFilePath,
  693. success: () => {
  694. wx.showToast({
  695. title: '图片保存成功'
  696. })
  697. }
  698. })
  699. }
  700. })
  701. }
  702. })
  703. },
  704. // 视频时长换算 换成多少时多少分多少秒
  705. handler(value) {
  706. //换算为秒 进制1000
  707. const second = Math.floor(value / 1000); //判断是否够1秒
  708. if (second < 1) {
  709. return "0秒";
  710. }
  711. const secondValue = second % 60; // 秒
  712. const minutes = Math.floor(second / 60); //判断是否够1分钟
  713. if (minutes < 1) {
  714. return `${secondValue}秒`;
  715. }
  716. const minutesValue = minutes % 60; //分
  717. const hours = Math.floor(minutes / 60); //判断是否够1小时
  718. if (hours < 1) {
  719. return `${minutesValue}分${secondValue}秒`;
  720. }
  721. const hoursValue = hours % 60; //小时
  722. return `${hoursValue}时${minutesValue}分${secondValue}秒`;
  723. },
  724. // 结业证隐藏
  725. onClose1() {
  726. this.setData({
  727. showzs: false
  728. });
  729. },
  730. // 查看详情成绩
  731. gockcj(e) {
  732. console.log(e.currentTarget.dataset.item.isExamId);
  733. if (e.currentTarget.dataset.item.isExamId) {
  734. wx.request({
  735. url: app.globalData.publicUrl + '/wx/answer/detail',
  736. method: "post",
  737. data: {
  738. answersId: e.currentTarget.dataset.item.isExamId
  739. },
  740. success: (res) => {
  741. console.log(res.data, "我是第四个任务的检查状态")
  742. if (res.data.list[0].answerScore) {
  743. wx.navigateTo({
  744. url: '/pages/grade/grade?answersId=' + e.currentTarget.dataset.item.isExamId,
  745. })
  746. } else {
  747. wx.showModal({
  748. showCancel: false,
  749. content: '当前老师批阅中,请耐心等待',
  750. success(res) {}
  751. })
  752. }
  753. }
  754. })
  755. }
  756. },
  757. // 查看详情评价
  758. gockpj(e) {
  759. console.log(e.currentTarget.dataset.item.isFeedbackId);
  760. wx.navigateTo({
  761. url: '/pages/evaluationCourseDetail/evaluationCourseDetail?answersId=' + e.currentTarget.dataset.item.isFeedbackId,
  762. })
  763. },
  764. async onShow() {
  765. const sessionKey = await tools.checkSessionAndLogin();
  766. this.setData({
  767. sessionKey
  768. })
  769. this.isClass(sessionKey);
  770. this.getMycourse(sessionKey);
  771. this.checkTaskList(sessionKey)
  772. this.checkTaskList2(sessionKey)
  773. this.checkTaskList6(sessionKey)
  774. }
  775. })