Przeglądaj źródła

修改埋点与上课跳转

11wqe1 1 dzień temu
rodzic
commit
ed33b3d6a1

+ 18 - 78
src/components/dialog/selectTeachingClassDialog.vue

@@ -76,7 +76,7 @@
 				</div>
 				<div class="b_bottom">
 					<div @click="close()">{{ lang.ssCancel }}</div>
-          			<div class="b_b_submit" @click="selectClassSuccess()">{{selectId ? lang.ssConfirm : lang.ssEnterDirect}}</div>
+          <div class="b_b_submit" @click="selectClassSuccess()">{{selectId ? lang.ssConfirm : lang.ssEnterDirect}}</div>
 				</div>
 
 		</el-dialog>
@@ -87,6 +87,8 @@
 			:courseDetail="courseDetail"
 			@success="getCourseList"
 		/>
+  <iframe :src="courseUrl" class="courseIframe" v-if="courseUrl"></iframe>
+
 </template>
 
 <script setup>
@@ -95,6 +97,7 @@ import { userInfoStore } from "../../stores/counter";
 import addClassDialog from "./addClassDialog.vue";
 const emit = defineEmits(["success", "changeClassList"]);
 import axios from '@/services/config'
+import { addOp3 } from '@/mixins/mixin'
 const lang = inject('lang')
 const checkStage = ref('0');
 
@@ -340,7 +343,7 @@ const gotoCourse = (id) => {
               "&tType=" +
               userInfo.user.type +
               "&screenType=" +
-              '1' +
+              '2' +
               "&tcid=" +
               id
           );
@@ -361,7 +364,7 @@ const gotoCourse = (id) => {
               "&tType=" +
               userInfo.user.type +
               "&screenType=" +
-              '1'
+              '2'
           );
         }
       }
@@ -377,10 +380,11 @@ const gotoCourse = (id) => {
           console.error(err);
         });
 }
-
+const courseUrl = ref('')
 const goto = (val) => {
   console.log('val',val)
-  top.U.MD.D.I.openInApplication('setUrl',{url:val,title:'课程详情',id:new Date().getTime()})
+  courseUrl.value = val
+  // top.U.MD.D.I.openInApplication('setUrl',{url:val,title:'课程详情',id:new Date().getTime()})
 }
 
 const insertMemorandum = (_html,tcid="") => {//保存行为操作
@@ -406,79 +410,6 @@ const insertMemorandum = (_html,tcid="") => {//保存行为操作
       console.log(e)
     })
   }
-const detectBrowser = () => {
-  const ua = navigator.userAgent;
-
-  // 按优先级顺序检测
-  if (ua.includes("Edg/") || ua.includes("Edge/")) {
-    return "Microsoft Edge";
-  } else if (ua.includes("Firefox")) {
-    return "Mozilla Firefox";
-  } else if (ua.includes("Trident") || ua.includes("MSIE")) {
-    return "Internet Explorer";
-  } else if (ua.includes("360EE")) {
-    return "360 Browser (极速模式)";
-  } else if (ua.includes("360SE")) {
-    return "360 Browser (安全模式)";
-  } else if (ua.includes("SLBrowser")) {
-    return "QQ Browser";
-  } else if (ua.includes("UCBrowser")) {
-    return "UC Browser";
-  } else if (ua.includes("Opera") || ua.includes("OPR/")) {
-    return "Opera";
-  } else if (ua.includes("Chrome") && !ua.includes("Edg/")) {
-    return "Google Chrome";
-  } else if (ua.includes("Safari/") && !ua.includes("Chrome")) {
-    return "Safari";
-  } else {
-    return "Other Browser";
-  }
-}
-const addOp3 = async (userTime, loadTime, object, status) => {
-  if (!userInfo.user.userid) return
-  // try {
-  //   if(!userInfo.user || !userInfo.user.accountNumber){
-  //     let res = await axios.get("https://pbl.cocorobo.cn/api/pbl/selectUser?userid="+userInfo.user.userid)
-  //     userInfo.user = res[0][0]
-  //   }
-  // } catch (e) {
-  //   console.log(e);
-  //   return addOp3(userTime, loadTime, object, status);
-  // }
-  let _time = new Date()
-    .toLocaleString("zh-CN", { hour12: false, timeZone: "Asia/Shanghai" })
-    .replace(/\//g, "-");
-  let browser = detectBrowser();
-  let params = {
-    userid: userInfo.user.userid,
-    username: userInfo.user.username,
-    accountNumber: userInfo.user.accountNumber,
-    org: userInfo.user.orgName,
-    school: userInfo.user.schoolName,
-    role: userInfo.user.type =='1'?'老师':'学生',
-    browser: browser,
-    userTime: userTime == "1" ? _time : userTime, // 使用时间 1次的就1 其次传秒
-    loadTime: loadTime, //load的时间没有就""
-    object: JSON.stringify(object), //执行信息传json
-    status: status //成功返回success。失败返回error的信息
-  };
-  console.log('params',params);
-  
-  axios
-    .post("https://pbl.cocorobo.cn/api/mongo/updateUserData2", [params])
-    .then(res => {
-      console.log('res',res);
-      if (res.status == 1) {
-        console.log("保存成功");
-      } else {
-        console.log("保存失败");
-      }
-    })
-    .catch(e => {
-      console.log("保存失败");
-      console.log(e);
-    });
-}
 const close = () => {
     show.value = false;
 }
@@ -705,4 +636,13 @@ defineExpose({
   color: #D4D4D4;
   border-color: #1A1A1A;
 }
+.courseIframe{
+  width: 100vw;
+  height: 100vh;
+  position: fixed;
+  z-index: 99999;
+  top: 0;
+  left: 0;
+  border: none;
+}
 </style>

+ 20 - 1
src/components/main/courseSelect.vue

@@ -611,6 +611,24 @@ const updateCourseId = (id, type) => {
       if (type == "openCourseNewUpdate") {
         top.U.MD.D.I.openInApplication("openCourseNewUpdate", res.data[0][0].courseId)
       } else {
+
+        let _str = ""
+        if(res.data[0][0].state == 1){
+          _str = "course_stageMode_open"
+        }if(res.data[0][0].state == 2){
+          _str = "course_taskMode_open"
+        }if(res.data[0][0].state == 3){
+          _str = "course_easyMode_open"
+        }if(res.data[0][0].state == 5){
+          _str = "course_aiMode_open"
+        }if(res.data[0][0].state == 6){
+          _str = "course_aiEasyMode_open"
+        }if(res.data[0][0].state == 7){
+          _str = "course_pptMode_open"
+        }
+        addOp3('1', "", { courseid: res.data[0][0].courseId, type: _str }, "success")
+
+
         let url = '';
 				if (lang.lang == 'hk') {
 					url = "https://pbl.cocorobo.hk"
@@ -623,7 +641,8 @@ const updateCourseId = (id, type) => {
         
         let url2 = `${url}/pbl-student-table/dist/#/courseDetail?userid=${user.user.userid}&oid=${user.user.organizeid}&org=${user.user.org}&courseId=${res.data[0][0].courseId}&tType=1&cid=&screenType=2`
         // top.U.MD.D.I.openInApplication("studyDetail", res.value[0][0].courseId, 2, user.user.type);
-        top.U.MD.D.I.openInApplication('setUrl',{url:url2,title:'课程详情',id:new Date().getTime()})
+        courseUrl.value = url2
+        // top.U.MD.D.I.openInApplication('setUrl',{url:url2,title:'课程详情',id:new Date().getTime()})
         // top.U.MD.D.I.openInApplication("studyDetail", res.value[0][0].courseId, 3, user.user.type);
       }
     }