ssfg %!s(int64=5) %!d(string=hai) anos
pai
achega
d6fd991251

+ 12 - 1
pages/historyClass/historyClass.js

@@ -4,6 +4,7 @@ Page({
   data: {
     showzs: false,
     kcArr: [],
+    showZhfk: true
   },
   lq() {
     this.setData({
@@ -92,7 +93,17 @@ Page({
   onLoad(options) {
     console.log(options)
     this.setData({
-      id: options.id
+      id: options.id,
+      name: options.name,
+      clasEnd: options.clasEnd
     })
+    let currrentTime = new Date().getTime()
+    let endTime = new Date(this.data.clasEnd).getTime()
+    let day = Math.floor((currrentTime - endTime) / 86400000);
+    if (day > 7) {
+      this.setData({
+        showZhfk: false
+      })
+    }
   }
 })

+ 1 - 1
pages/historyClass/historyClass.json

@@ -1,3 +1,3 @@
 {
-  "navigationBarTitleText":"我的培训-历史班"
+  "navigationBarTitleText":"我的培训"
 }

+ 1 - 1
pages/historyClass/historyClass.wxml

@@ -22,7 +22,7 @@
 				</view>
 			</view>
 		</view>
-	<view class="layout" style="margin-top:40rpx" bindtap="goWrite2">
+	<view class="layout" style="margin-top:40rpx" bindtap="goWrite2" wx:if='{{showZhfk}}'>
 		<image src='/images/zhfk_bj.png' mode='aspectFill' class="bgimg1"></image>
 		<view class="layout_text1">综合反馈表</view>
 		<view class="layout_text3">去填写</view>

+ 9 - 4
pages/index/index.js

@@ -6,7 +6,9 @@ Page({
     jjdataArr: 0,
     isNeedlogin: false,
     // 课程轮播
-    "bnrUrl": [],
+    bnrUrl: [{
+      clasImg:"../../images/zbfm.png"
+    }],
     gridArr: [{
       url: "/images/icon1.png",
       name: "在线直播",
@@ -117,9 +119,12 @@ Page({
         sessionKey: sessionKey
       },
       success: (res) => {
-        this.setData({
-          bnrUrl: res.data.data.claList
-        })
+        if (res.data.data.claList.length != 0) {
+          this.setData({
+            bnrUrl: res.data.data.claList
+          })
+        }
+
       }
     })
   },

+ 2 - 2
pages/index/index.wxml

@@ -6,8 +6,8 @@
 					<image src='{{item.clasImg}}' class='u-img-slide' mode='aspectFill'></image>
 					<image src='/images/mb.png' class='uimg' mode='aspectFill'></image>
 					<view class="text text1">{{item.clasName}}</view>
-					<view class="text text2">主办:{{item.remark}}</view>
-					<view class="text text3">开班时间:{{item.beginDate}} 至 {{item.endDate}}</view>
+					<view class="text text2" wx:if="{{item.remark}}">主办:{{item.remark}}</view>
+					<view class="text text3" wx:if="{{item.beginDate}}">开班时间:{{item.beginDate}} 至 {{item.endDate}}</view>
 					<image src='/images/goclass.png' mode='aspectFill' class="gozbbtn" wx:if='{{item.isActive==5}}'></image>
 				</swiper-item>
 			</block>

+ 214 - 88
pages/myClass/myClass.js

@@ -12,6 +12,9 @@ Page({
     sfmArr: [],
     studentName: "",
     status: '', //状态
+    myCanvasId: 0,
+    byzsbj: "../../images/zsbj.jpg",
+    IngCourseArr: [] //如果有正在进行的课就存一下
   },
   // 更多
   listToggle: function () {
@@ -82,70 +85,102 @@ Page({
   //   })
   // },
   gokhAnswer(e) {
-    console.log(e.currentTarget.dataset.courseid, "00");
-    wx.request({
-      url: app.globalData.publicUrl + '/wx/exam/examList',
-      method: "post",
-      data: {
-        sessionKey: this.data.sessionKey,
-        courseId: e.currentTarget.dataset.courseid,
-        clasId: this.data.classInfo.id
-      },
-      success: (res) => {
-        if (res.data.code == 0) {
-          console.log(res.data);
-          //let answersId =  res.data.list[0].answersId ;
-          if (res.data.list[0]) {
-            if (res.data.list[0].answersId) {
-              this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'answerAfterclass');
-            } else {
-              console.log('777777');
-              this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'answerAfterclass');
+    let isStudyDone = e.currentTarget.dataset.item.isStudyDone
+    let isExam = e.currentTarget.dataset.item.isExam
+    if (isStudyDone != 1) {
+      wx.showModal({
+        showCancel: false,
+        content: "您的学习课程还未完成哦,请先完成学习任务后再来考试吧!"
+      })
+      return false
+    } else {
+      if (isExam == 0) {
+        wx.request({
+          url: app.globalData.publicUrl + '/wx/exam/examList',
+          method: "post",
+          data: {
+            sessionKey: this.data.sessionKey,
+            courseId: e.currentTarget.dataset.item.courseid,
+            clasId: this.data.classInfo.id
+          },
+          success: (res) => {
+            if (res.data.code == 0) {
+              console.log(res.data);
+              //let answersId =  res.data.list[0].answersId ;
+              if (res.data.list[0]) {
+                if (res.data.list[0].answersId) {
+                  this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'answerAfterclass');
+                } else {
+                  console.log('777777');
+                  this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'answerAfterclass');
+                }
+              }
             }
           }
-        }
+        })
+      } else {
+        wx.showModal({
+          showCancel: false,
+          content: "您已经考完试了!"
+        })
       }
-    })
-    // wx.navigateTo({
-    //   url: '../evaluationCourse/evaluationCourse'
-    // })
+    }
+    // console.log(e.currentTarget.dataset.courseid, "00");
+
+
   },
-  //w我的班级去评价
+  //我的班级去评价
   gopjClass(e) {
-    console.log(e.currentTarget.dataset.courseid, "00");
-    wx.request({
-      url: app.globalData.publicUrl + '/wx/exam/quesExamList',
-      method: "post",
-      data: {
-        sessionKey: this.data.sessionKey,
-        questSub: '3',
-        courseId: e.currentTarget.dataset.courseid,
-        clasId: this.data.classInfo.id
-      },
-      success: (res) => {
-        if (res.data.code == 0) {
-          console.log(res.data);
-          //let answersId =  res.data.list[0].answersId ;
-          if (res.data.list[0]) {
-            if (res.data.list[0].answersId) {
-              if (res.data.list[0].status == '1') {
-                wx.navigateTo({
-                  url: '/pages/evaluationCourseDetail/evaluationCourseDetail?answersId=' + res.data.list[0].answersId,
-                })
-              } else {
-                this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'evaluationCourse');
+    console.log(e.currentTarget.dataset.item, "8888")
+    let isStudyDone = e.currentTarget.dataset.item.isStudyDone
+    let isFeedback = e.currentTarget.dataset.item.isFeedback
+    if (isStudyDone != 1) {
+      wx.showModal({
+        showCancel: false,
+        content: "您的学习课程还未完成哦,请先完成学习任务后再来评价吧!"
+      })
+      return false
+    } else {
+      if (isFeedback == 0) {
+        wx.request({
+          url: app.globalData.publicUrl + '/wx/exam/quesExamList',
+          method: "post",
+          data: {
+            sessionKey: this.data.sessionKey,
+            questSub: '3',
+            courseId: e.currentTarget.dataset.courseid,
+            clasId: this.data.classInfo.id
+          },
+          success: (res) => {
+            if (res.data.code == 0) {
+              console.log(res.data);
+              //let answersId =  res.data.list[0].answersId ;
+              if (res.data.list[0]) {
+                if (res.data.list[0].answersId) {
+                  if (res.data.list[0].status == '1') {
+                    wx.navigateTo({
+                      url: '/pages/evaluationCourseDetail/evaluationCourseDetail?answersId=' + res.data.list[0].answersId,
+                    })
+                  } else {
+                    this.toPath(res.data.list[0].id, res.data.list[0].paperId, res.data.list[0].answersId, 'evaluationCourse');
+                  }
+                } else {
+                  console.log('777777');
+                  this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'evaluationCourse');
+                }
               }
-            } else {
-              console.log('777777');
-              this.beginKao(res.data.list[0].id, res.data.list[0].paperId, this.data.sessionKey, 'evaluationCourse');
             }
           }
-        }
+        })
+      } else {
+        wx.showModal({
+          showCancel: false,
+          content: "您已经评价过了!"
+        })
       }
-    })
-    // wx.navigateTo({
-    //   url: '../evaluationCourse/evaluationCourse'
-    // })
+    }
+
+
   },
   goMyPoints() {
     // wx.showModal({
@@ -163,14 +198,74 @@ Page({
     })
   },
   lq() {
-    // wx.showModal({
-    //   showCancel: false,
-    //   content: "此功能暂时还未开放哦",
-    //   success(res) {}
-    // })
+    wx.showLoading({
+      mask: true,
+      title: '加载中',
+    })
+    this.setData({
+      myCanvasId: this.data.myCanvasId + 1
+    })
+    console.log(this.data.myCanvasId)
+    let str = this.data.studentName + "同志于" + this.data.classInfo.beginDate + " 至 " + this.data.classInfo.endDate + "参加学习完成规定培训内容,准予结业,特发此证。"
+    let strArr = [];
+    //每15个字截取一下
+    // let n = 15;
+    // for (let i = 0, l = str.length; i < l / n; i++) {
+    //   let a = str.slice(n * i, n * (i + 1));
+    //   strArr.push(a);
+    // }
+    let a = str.slice(0, 18);
+    let b = str.slice(16, 36);
+    let c = str.slice(36, 56);
+    strArr.push(a, b, c);
+    console.log(strArr, "我是截取之后的")
+    const ctx = wx.createCanvasContext(this.data.myCanvasId);
+    ctx.drawImage(this.data.byzsbj, 0, 0, 300, 415); //里面的参数无非就是图片放置的位置即图片的横纵坐标,图片的宽高
+    ctx.setFillStyle("#000");
+    ctx.setFontSize(16); //字大小
+    ctx.setTextAlign('left'); //是否居中显示,参考点画布中线
+    let leftPositionAarr = [60, 30, 30, 30]
+    for (let i = 0; i < strArr.length; i++) {
+      console.log(i);
+      ctx.fillText(strArr[i], leftPositionAarr[i], 160 + i * 30);
+    }
+    // ctx.fillText(str, 150, 160); //150:canvas画布宽300,取1/2,中间,280:纵向位置
+    ctx.draw();
+    wx.hideLoading();
     this.setData({
       showzs: true
     });
+    wx.request({
+      url: app.globalData.publicUrl + '/wx/student/wxGraduation',
+      method: "post",
+      data: {
+        sessionKey: this.data.sessionKey
+      },
+      success: (res) => {
+        console.log(res.data, "领取结业证提交")
+      }
+    })
+  },
+  saveZs() {
+    wx.canvasToTempFilePath({ //把当前画布指定区域的内容导出生成指定大小的图片
+      canvasId: this.data.myCanvasId,
+      success(res) {
+        console.log(res)
+        wx.authorize({ //向用户发起授权请求
+          scope: 'scope.writePhotosAlbum', //保存相册授权
+          success: () => {
+            wx.saveImageToPhotosAlbum({ //保存图片到系统相册
+              filePath: res.tempFilePath,
+              success: () => {
+                wx.showToast({
+                  title: '图片保存成功'
+                })
+              }
+            })
+          }
+        })
+      }
+    })
   },
   onClose1() {
     this.setData({
@@ -261,7 +356,7 @@ Page({
   },
   // 综合反馈表 、、、、、、
   getBanner1() {
-    console.log(this.data.sessionKey,"dayin");
+    console.log(this.data.sessionKey, "dayin");
     console.log(this.data.classInfo.id);
     wx.request({
       url: app.globalData.publicUrl + '/wx/exam/quesExamList',
@@ -273,7 +368,7 @@ Page({
       },
       success: (res) => {
         if (res.data.code == 0) {
-          console.log(res.data,"zonghe");
+          console.log(res.data, "zonghe");
           //let answersId =  res.data.list[0].answersId ;
           console.log(res.data.list.length);
           if (res.data.list[0]) {
@@ -333,29 +428,53 @@ Page({
   },
   // 跳转直播点播页面
   goStudy(e) {
-    wx.showModal({
-      showCancel: false,
-      content: "您有未完成的学习课程,请先完成学习任务后再进行其他课程学习!",
-      success(res) {}
-    })
-    // let id = e.currentTarget.dataset.item.id
-    // if (e.currentTarget.dataset.item.isLive == 1) {
-    //   if (e.currentTarget.dataset.item.isActive == 1) {
-    //     wx.navigateTo({
-    //       url: '../zbDetails/zbDetails?id=' + id
-    //     })
-    //   } else {
-    //     wx.showModal({
-    //       showCancel: false,
-    //       content: "直播还未开始哦",
-    //       success(res) {}
-    //     })
-    //   }
-    // } else {
-    //   wx.navigateTo({
-    //     url: '../dbDetails/dbDetails?id=' + id
-    //   })
-    // }
+    let id = e.currentTarget.dataset.item.id //此课程的id
+    console.log(id)
+    console.log(this.data.IngCourseArr, "我是筛选的列表")
+    if (this.data.IngCourseArr.length == 0) {
+      if (e.currentTarget.dataset.item.isLive == 1) {
+        if (e.currentTarget.dataset.item.isActive == 1) {
+          wx.navigateTo({
+            url: '../zbDetails/zbDetails?id=' + id
+          })
+        } else {
+          wx.showModal({
+            showCancel: false,
+            content: "直播还未开始哦"
+          })
+          return false;
+        }
+      } else {
+        wx.navigateTo({
+          url: '../dbDetails/dbDetails?id=' + id
+        })
+      }
+    } else {
+      if (id == this.data.IngCourseArr.id) {
+        if (e.currentTarget.dataset.item.isLive == 1) {
+          if (e.currentTarget.dataset.item.isActive == 1) {
+            wx.navigateTo({
+              url: '../zbDetails/zbDetails?id=' + id
+            })
+          } else {
+            wx.showModal({
+              showCancel: false,
+              content: "直播还未开始哦"
+            })
+            return false;
+          }
+        } else {
+          wx.navigateTo({
+            url: '../dbDetails/dbDetails?id=' + id
+          })
+        }
+      } else {
+        wx.showModal({
+          showCancel: false,
+          content: "您有未完成的学习课程,请先完成学习任务后再进行其他课程学习!"
+        })
+      }
+    }
   },
   // 查询我是否有班&&班级名字
   isClass(sessionKey) {
@@ -402,15 +521,15 @@ Page({
       success: (res) => {
         console.log(res, "查询学员信息")
         if (res.data.code == 0 && res.data.data) {
-          if (res.data.data.isAgree == 0) {
+          if (res.data.data.agreement == 0) {
             this.setData({
               studentName: res.data.data.studentName,
-              show: true
+              show: false
             });
           } else {
             this.setData({
               studentName: res.data.data.studentName,
-              show: false
+              show: true
             });
           }
 
@@ -461,6 +580,13 @@ Page({
         this.setData({
           kcArr: res.data.list
         });
+        for (let i = 0; i < res.data.list.length; i++) {
+          if (res.data.list[i].isStudyDone == 0) {
+            this.setData({
+              IngCourseArr: res.data.list[i]
+            })
+          }
+        }
         let result = [];
         if (res.data.list)
           for (let i = 0; i < res.data.list.length; i++) {

+ 7 - 9
pages/myClass/myClass.wxml

@@ -43,8 +43,8 @@
 					<view class="start_text" wx:if='{{item.isLive==-1}}'>视频时长: {{sfmArr[idx].courseTime}}</view> -->
 				<view>
 					<image src='/images/startstudy.png' mode='aspectFill' class="an" data-item="{{item}}" bindtap="goStudy"></image>
-					<image src='/images/dtxs.png' data-courseId='{{item.id}}' mode='aspectFill' class="an" bindtap="gokhAnswer"></image>
-					<image src='/images/pjkc.png' data-courseId='{{item.id}}' mode='aspectFill' class="an" bindtap="gopjClass"></image>
+					<image src='/images/dtxs.png' mode='aspectFill' class="an" data-item="{{item}}" bindtap="gokhAnswer"></image>
+					<image src='/images/pjkc.png' mode='aspectFill' class="an" data-item="{{item}}" bindtap="gopjClass"></image>
 				</view>
 			</view>
 		</view>
@@ -76,11 +76,9 @@
 		<view class="lq_btn" bindtap="lq">领取结业证</view>
 		<view class="pz">注:领取结业证需完成所有课程</view>
 	</view>
-	<van-popup show="{{ showzs }}" bind:close="onClose1">
-		<view style="position:relative">
-			<image src='/images/zsbj.jpg' mode='aspectFill' class="zsbj"></image>
-			<view class="byzc">李欣桐同志于2020年07月08日-2020年07月13日参加学习完成规定培训内容,准予结业,特发此证。</view>
-			<!-- <view class="byzc">{{studentName}}同志于{{classInfo.beginDate}}-{{classInfo.endDate}}参加学习完成规定培训内容,准予结业,特发此证。</view> -->
-		</view>
-	</van-popup>
+	<view wx:if="{{ showzs }}" style="position:absolute;top:0;height:100%;width:100%;background-color:rgba(13,13,13,0.7)">
+		<canvas canvas-id="{{myCanvasId}}" style="width:300px;height:415px;margin:100rpx auto 30rpx auto"></canvas>
+		<button bindtap="saveZs" size="mini" type="default" style="color:#000;font-size:14px;margin-left:200rpx;">保存证书</button>
+		<button bindtap="onClose1" size="mini" type="default" style="color:#000;font-size:14px;margin-left:20rpx;">关闭证书</button>
+	</view>
 </view>

+ 5 - 3
pages/myTraining/myTraining.js

@@ -8,20 +8,22 @@ Page({
   goClass(e) {
     console.log(e, "9999999999")
     let id = e.currentTarget.dataset.item.id
+    let name = e.currentTarget.dataset.item.clasName
+    let clasEnd = e.currentTarget.dataset.item.clasEnd
     if (e.currentTarget.dataset.item.isActive == 0) {
       wx.showModal({
         showCancel: false,
         content: "还未到开班时间哦"
       })
     }
-    if (e.currentTarget.dataset.item.isActive == 2) {
+    if (e.currentTarget.dataset.item.isActive == 1) {
       wx.switchTab({
         url: '../myClass/myClass'
       })
     }
-    if (e.currentTarget.dataset.item.isActive == 1) {
+    if (e.currentTarget.dataset.item.isActive == 2) {
       wx.navigateTo({
-        url: '../historyClass/historyClass?id=' + id
+        url: '../historyClass/historyClass?id=' + id + '&&name=' + name + '&&clasEnd=' + clasEnd
       })
     }
   },

+ 2 - 2
utils/util.js

@@ -1,7 +1,7 @@
 const globalData = {
   // 正式服务器
-  // publicUrl: 'https://sqdx.jiaxintech.com',
-  publicUrl: 'http://10.16.4.19:80',
+  publicUrl: 'https://sqdx.jiaxintech.com',
+  // publicUrl: 'http://10.16.4.19:80',
   publicSocketUrl: 'wss://sqdx.jiaxintech.com'
   // 测试服务器
   // publicUrl: 'https://sqdx.windd.cn',