myMission.js 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794
  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/selStudentSessionKey',
  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.data.graduation == 0 ) {
  216. this.setData({
  217. istask6: true
  218. })
  219. }
  220. }
  221. })
  222. },
  223. isRz(sessionKey){
  224. wx.request({
  225. url: app.globalData.publicUrl + '/wx/student/selStudentSessionKey',
  226. method: "post",
  227. data: {
  228. sessionKey: sessionKey
  229. },
  230. success: (res) => {
  231. if (res.data.code == 0 && res.data.data) {
  232. if (res.data.data.studentOpenId == "" ||res.data.data.studentOpenId == null) {
  233. wx.showModal({
  234. content: "您还没有进行身份认证哦",
  235. showCancel: false,
  236. success(res) {
  237. if (res.confirm) {
  238. wx.switchTab({
  239. url: '../index/index'
  240. })
  241. }
  242. }
  243. })
  244. return false;
  245. }
  246. }
  247. }
  248. })
  249. },
  250. // 查询我是否有班&&班级名字
  251. isClass(sessionKey) {
  252. wx.request({
  253. url: app.globalData.publicUrl + '/wx/student/selMyClas',
  254. method: "post",
  255. data: {
  256. sessionKey: sessionKey
  257. },
  258. success: (res) => {
  259. console.log(res, "我是返回是否有班级")
  260. if (res.data.code == 0) {
  261. this.setData({
  262. classInfo: res.data.data
  263. })
  264. this.checkTaskList4(sessionKey, res.data.data.id)
  265. this.checkTaskList5(sessionKey, res.data.data.id)
  266. } else {
  267. wx.showModal({
  268. content: "您当前还没有开放的班级!",
  269. showCancel: false,
  270. success(res) {
  271. if (res.confirm) {
  272. wx.switchTab({
  273. url: '../index/index'
  274. })
  275. }
  276. }
  277. })
  278. return false;
  279. }
  280. }
  281. })
  282. },
  283. // 获取我的课程表
  284. getMycourse(sessionKey) {
  285. wx.request({
  286. url: app.globalData.publicUrl + '/wx/course/selectBySessionKey',
  287. method: "post",
  288. data: {
  289. sessionKey: sessionKey
  290. },
  291. success: (res) => {
  292. console.log(res, "我的任务之课程")
  293. if (res.data.code == 0 && res.data.list.length !== 0) {
  294. this.setData({
  295. kcArr: res.data.list,
  296. istask3: res.data.allDone
  297. });
  298. // 过滤数组
  299. for (let i = 0; i < res.data.list.length; i++) {
  300. if (res.data.list[i].isStudyDone == 0) {
  301. this.setData({
  302. IngCourseArr: res.data.list[i]
  303. })
  304. }
  305. }
  306. // 换算时间
  307. let result = [];
  308. if (res.data.list)
  309. for (let i = 0; i < res.data.list.length; i++) {
  310. result.push({
  311. courseTime: res.data.list[i].courseTime
  312. });
  313. }
  314. const timesArr = result.map((item) => {
  315. return item.courseTime;
  316. });
  317. let sfmArr = [];
  318. for (let i = 0; i < timesArr.length; i++) {
  319. let value = timesArr[i];
  320. const resultValue = this.handler(value);
  321. sfmArr.push({
  322. courseTime: resultValue
  323. })
  324. this.setData({
  325. sfmArr: sfmArr
  326. })
  327. }
  328. }
  329. }
  330. })
  331. },
  332. // 记录二维码已经点击
  333. showEwm() {
  334. wx.request({
  335. url: app.globalData.publicUrl + '/wx/student/wxGroup',
  336. method: "post",
  337. data: {
  338. sessionKey: this.data.sessionKey
  339. },
  340. success: () => {
  341. this.setData({
  342. showewm: true,
  343. istask1: true
  344. })
  345. }
  346. })
  347. },
  348. // 二维码隐藏
  349. onClose() {
  350. wx.hideLoading()
  351. this.setData({
  352. showewm: false
  353. });
  354. },
  355. // 填写学员登记表
  356. goWrite() {
  357. if (this.data.istask1 == false) {
  358. wx.showModal({
  359. showCancel: false,
  360. content: "请先去扫描班级二维码加入班级群吧!"
  361. })
  362. return false
  363. }
  364. wx.navigateTo({
  365. url: '../studentRegistration/studentRegistration'
  366. })
  367. },
  368. // 去学习
  369. goStudy(e) {
  370. if (!this.data.istask2) {
  371. wx.showModal({
  372. showCancel: false,
  373. content: "请先去填写学院登记表吧!"
  374. })
  375. return false
  376. }
  377. let id = e.currentTarget.dataset.item.id //此课程的id
  378. if (this.data.IngCourseArr.length == 0) {
  379. if (e.currentTarget.dataset.item.isLive == 1) {
  380. if (e.currentTarget.dataset.item.isActive == 1) {
  381. wx.navigateTo({
  382. url: '../zbDetails/zbDetails?id=' + id
  383. })
  384. } else {
  385. wx.showModal({
  386. showCancel: false,
  387. content: "直播还未开始哦"
  388. })
  389. return false;
  390. }
  391. } else {
  392. wx.navigateTo({
  393. url: '../dbDetails/dbDetails?id=' + id
  394. })
  395. }
  396. } else {
  397. if (e.currentTarget.dataset.item.isLive == 1) {
  398. if (e.currentTarget.dataset.item.isActive == 1) {
  399. wx.navigateTo({
  400. url: '../zbDetails/zbDetails?id=' + id
  401. })
  402. } else {
  403. wx.showModal({
  404. showCancel: false,
  405. content: "直播还未开始哦"
  406. })
  407. return false;
  408. }
  409. } else {
  410. if (id == this.data.IngCourseArr.id) {
  411. wx.navigateTo({
  412. url: '../dbDetails/dbDetails?id=' + id
  413. })
  414. } else {
  415. wx.showModal({
  416. showCancel: false,
  417. content: "您的" + this.data.IngCourseArr.courseName + "课还未学完,快去学习吧"
  418. })
  419. }
  420. }
  421. }
  422. },
  423. // 去考试
  424. gokhAnswer(e) {
  425. if (!this.data.istask2) {
  426. wx.showModal({
  427. showCancel: false,
  428. content: "请先去填写学院登记表吧!"
  429. })
  430. return false
  431. }
  432. let isStudyDone = e.currentTarget.dataset.item.isStudyDone
  433. if (isStudyDone != 1) {
  434. wx.showModal({
  435. showCancel: false,
  436. content: "您的学习课程还未完成哦,请先完成学习任务后再来考试吧!"
  437. })
  438. return false
  439. } else {
  440. wx.request({
  441. url: app.globalData.publicUrl + '/wx/exam/examList',
  442. method: "post",
  443. data: {
  444. sessionKey: this.data.sessionKey,
  445. courseId: e.currentTarget.dataset.item.id,
  446. clasId: this.data.classInfo.id
  447. },
  448. success: (res) => {
  449. if (res.data.code == 0) {
  450. if (res.data.list.length == 0) {
  451. wx.showModal({
  452. showCancel: false,
  453. content: '此课程还没有考试噢'
  454. })
  455. } else {
  456. if (res.data.list[0]) {
  457. if (res.data.list[0].answersId) {
  458. this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'answerAfterclass');
  459. } else {
  460. this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'answerAfterclass');
  461. }
  462. }
  463. }
  464. }
  465. }
  466. })
  467. }
  468. },
  469. //去评价
  470. gopjClass(e) {
  471. if (!this.data.istask2) {
  472. wx.showModal({
  473. showCancel: false,
  474. content: "请先去填写学院登记表吧!"
  475. })
  476. return false
  477. }
  478. let isStudyDone = e.currentTarget.dataset.item.isStudyDone
  479. if (isStudyDone != 1) {
  480. wx.showModal({
  481. showCancel: false,
  482. content: "您的学习课程还未完成哦,请先完成学习任务后再来评价吧!"
  483. })
  484. return false
  485. } else {
  486. wx.request({
  487. url: app.globalData.publicUrl + '/wx/exam/quesExamList',
  488. method: "post",
  489. data: {
  490. sessionKey: this.data.sessionKey,
  491. questSub: '3',
  492. courseId: e.currentTarget.dataset.item.id,
  493. clasId: this.data.classInfo.id
  494. },
  495. success: (res) => {
  496. console.log(res, "我去评价啦")
  497. if (res.data.code == 0) {
  498. if (res.data.list.length == 0) {
  499. wx.showModal({
  500. showCancel: false,
  501. content: '此课程还不可以评价哦!'
  502. })
  503. } else {
  504. if (res.data.list[0]) {
  505. if (res.data.list[0].answersId) {
  506. this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'evaluationCourse');
  507. } else {
  508. this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'evaluationCourse');
  509. }
  510. }
  511. }
  512. }
  513. }
  514. })
  515. }
  516. },
  517. // 期末考试
  518. goQmks() {
  519. if (!this.data.istask3) {
  520. wx.showModal({
  521. showCancel: false,
  522. content: "请先完成所有的课程再来期末考试吧!"
  523. })
  524. return false
  525. }
  526. wx.request({
  527. url: app.globalData.publicUrl + '/wx/exam/examList',
  528. method: "post",
  529. data: {
  530. sessionKey: this.data.sessionKey,
  531. clasId: this.data.classInfo.id
  532. },
  533. success: (res) => {
  534. if (res.data.code == 0) {
  535. if (res.data.list.length == 0) {
  536. wx.showModal({
  537. showCancel: false,
  538. content: '期末考试还未开始哦!'
  539. })
  540. } else {
  541. if (res.data.list[0]) {
  542. if (res.data.list[0].answersId) {
  543. if (res.data.list[0].status == '1') {
  544. wx.request({
  545. url: app.globalData.publicUrl + '/wx/answer/detail',
  546. method: "post",
  547. data: {
  548. answersId: res.data.list[0].answersId
  549. },
  550. success: (res1) => {
  551. if (res1.data.list[0].answerScore) {
  552. wx.navigateTo({
  553. url: '/pages/grade/grade?answersId=' + res.data.list[0].answersId,
  554. })
  555. } else {
  556. wx.showModal({
  557. showCancel: false,
  558. content: '当前老师批阅中,请耐心等待'
  559. })
  560. }
  561. }
  562. })
  563. } else {
  564. this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'answerAfterclass');
  565. }
  566. } else {
  567. this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'answerAfterclass');
  568. }
  569. }
  570. }
  571. }
  572. }
  573. })
  574. },
  575. // 综合反馈表
  576. goWrite2() {
  577. wx.request({
  578. url: app.globalData.publicUrl + '/wx/exam/quesExamList',
  579. method: "post",
  580. data: {
  581. sessionKey: this.data.sessionKey,
  582. questSub: '1',
  583. clasId: this.data.classInfo.id
  584. },
  585. success: (res) => {
  586. if (res.data.code == 0) {
  587. if (res.data.list.length == 0) {
  588. wx.showModal({
  589. showCancel: false,
  590. content: '当前综合反馈还不可以填写哦!'
  591. })
  592. } else {
  593. if (res.data.list[0]) {
  594. if (res.data.list[0].answersId) {
  595. if (res.data.list[0].status == '1') {
  596. wx.navigateTo({
  597. url: '/pages/feedBackDetail/feedBackDetail?answersId=' + res.data.list[0].answersId,
  598. })
  599. } else {
  600. this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'feedBack');
  601. }
  602. } else {
  603. this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'feedBack');
  604. }
  605. }
  606. }
  607. }
  608. }
  609. })
  610. },
  611. // 考试需要的方法
  612. toPath(id, paperId, answersId, address, status) {
  613. wx.navigateTo({
  614. url: '/pages/' + address + '/' + address + '?id=' + id + '&paperId=' + paperId + '&answersId=' + answersId + '&status=' + status,
  615. })
  616. },
  617. // 考试需要的方法
  618. beginKao(id, paperId, sessionKey, address) {
  619. console.log(paperId, "8888888");
  620. wx.request({
  621. url: app.globalData.publicUrl + '/wx/exam/begin',
  622. method: "post",
  623. data: {
  624. sessionKey: sessionKey,
  625. id: id,
  626. paperId: paperId
  627. },
  628. success: (res) => {
  629. console.log(res);
  630. if (res.data.code == 0) {
  631. console.log(res, "为我么我们微妙"); // 提交答案是后
  632. this.setData({
  633. status: res.data.status
  634. })
  635. this.toPath(id, paperId, res.data.answersId, address, );
  636. }
  637. }
  638. })
  639. },
  640. // 领取结业证
  641. lq() {
  642. if (!this.data.istask4) {
  643. wx.showModal({
  644. showCancel: false,
  645. content: "请先去期末考试再来领取结业证吧!"
  646. })
  647. return false
  648. }
  649. wx.showLoading({
  650. mask: true,
  651. title: '加载中',
  652. })
  653. this.setData({
  654. myCanvasId: this.data.myCanvasId + 1
  655. })
  656. console.log(this.data.myCanvasId)
  657. let str = this.data.studentName + "同志于" + this.data.classInfo.beginDate + " 至 " + this.data.classInfo.endDate + "参加学习完成规定培训内容,准予结业,特发此证。"
  658. let strArr = [];
  659. //每15个字截取一下
  660. // let n = 15;
  661. // for (let i = 0, l = str.length; i < l / n; i++) {
  662. // let a = str.slice(n * i, n * (i + 1));
  663. // strArr.push(a);
  664. // }
  665. let a = str.slice(0, 18);
  666. let b = str.slice(16, 36);
  667. let c = str.slice(36, 56);
  668. strArr.push(a, b, c);
  669. console.log(strArr, "我是截取之后的")
  670. const ctx = wx.createCanvasContext(this.data.myCanvasId);
  671. ctx.drawImage(this.data.byzsbj, 0, 0, 300, 415); //里面的参数无非就是图片放置的位置即图片的横纵坐标,图片的宽高
  672. ctx.setFillStyle("#000");
  673. ctx.setFontSize(16); //字大小
  674. ctx.setTextAlign('left'); //是否居中显示,参考点画布中线
  675. let leftPositionAarr = [60, 30, 30, 30]
  676. for (let i = 0; i < strArr.length; i++) {
  677. console.log(i);
  678. ctx.fillText(strArr[i], leftPositionAarr[i], 160 + i * 30);
  679. }
  680. // ctx.fillText(str, 150, 160); //150:canvas画布宽300,取1/2,中间,280:纵向位置
  681. ctx.draw();
  682. wx.hideLoading();
  683. this.setData({
  684. showzs: true,
  685. istask6: true
  686. });
  687. wx.request({
  688. url: app.globalData.publicUrl + '/wx/student/wxGraduation',
  689. method: "post",
  690. data: {
  691. sessionKey: this.data.sessionKey
  692. },
  693. success: (res) => {
  694. console.log(res.data, "领取结业证提交")
  695. }
  696. })
  697. },
  698. // 保存结业证
  699. saveZs() {
  700. wx.canvasToTempFilePath({ //把当前画布指定区域的内容导出生成指定大小的图片
  701. canvasId: this.data.myCanvasId,
  702. success(res) {
  703. console.log(res)
  704. wx.authorize({ //向用户发起授权请求
  705. scope: 'scope.writePhotosAlbum', //保存相册授权
  706. success: () => {
  707. wx.saveImageToPhotosAlbum({ //保存图片到系统相册
  708. filePath: res.tempFilePath,
  709. success: () => {
  710. wx.showToast({
  711. title: '图片保存成功'
  712. })
  713. }
  714. })
  715. }
  716. })
  717. }
  718. })
  719. },
  720. // 视频时长换算 换成多少时多少分多少秒
  721. handler(value) {
  722. //换算为秒 进制1000
  723. const second = Math.floor(value / 1000); //判断是否够1秒
  724. if (second < 1) {
  725. return "0秒";
  726. }
  727. const secondValue = second % 60; // 秒
  728. const minutes = Math.floor(second / 60); //判断是否够1分钟
  729. if (minutes < 1) {
  730. return `${secondValue}秒`;
  731. }
  732. const minutesValue = minutes % 60; //分
  733. const hours = Math.floor(minutes / 60); //判断是否够1小时
  734. if (hours < 1) {
  735. return `${minutesValue}分${secondValue}秒`;
  736. }
  737. const hoursValue = hours % 60; //小时
  738. return `${hoursValue}时${minutesValue}分${secondValue}秒`;
  739. },
  740. // 结业证隐藏
  741. onClose1() {
  742. this.setData({
  743. showzs: false
  744. });
  745. },
  746. // 查看详情成绩
  747. gockcj(e) {
  748. console.log(e.currentTarget.dataset.item.isExamId);
  749. if (e.currentTarget.dataset.item.isExamId) {
  750. wx.request({
  751. url: app.globalData.publicUrl + '/wx/answer/detail',
  752. method: "post",
  753. data: {
  754. answersId: e.currentTarget.dataset.item.isExamId
  755. },
  756. success: (res) => {
  757. console.log(res.data, "我是第四个任务的检查状态")
  758. if (res.data.list[0].answerScore) {
  759. wx.navigateTo({
  760. url: '/pages/grade/grade?answersId=' + e.currentTarget.dataset.item.isExamId,
  761. })
  762. } else {
  763. wx.showModal({
  764. showCancel: false,
  765. content: '当前老师批阅中,请耐心等待',
  766. success(res) {}
  767. })
  768. }
  769. }
  770. })
  771. }
  772. },
  773. // 查看详情评价
  774. gockpj(e) {
  775. console.log(e.currentTarget.dataset.item.isFeedbackId);
  776. wx.navigateTo({
  777. url: '/pages/evaluationCourseDetail/evaluationCourseDetail?answersId=' + e.currentTarget.dataset.item.isFeedbackId,
  778. })
  779. },
  780. async onShow() {
  781. const sessionKey = await tools.checkSessionAndLogin();
  782. this.setData({
  783. sessionKey
  784. })
  785. this.isRz(sessionKey);
  786. this.isClass(sessionKey);
  787. this.getMycourse(sessionKey);
  788. this.checkTaskList(sessionKey)
  789. this.checkTaskList2(sessionKey)
  790. this.checkTaskList6(sessionKey)
  791. }
  792. })