From 18d886c2f23dc5c032ebcf42bbb39c739d908a4f Mon Sep 17 00:00:00 2001
From: litian <2804272236@qq.com>
Date: 星期二, 05 十一月 2024 15:49:51 +0800
Subject: [PATCH] Merge branch 'master' of http://182.92.203.7:2001/r/TextbookReader

---
 src/views/readerPages/mobileHome.vue |  123 +++++++++++++++++++++++++++++++++++-----
 1 files changed, 106 insertions(+), 17 deletions(-)

diff --git a/src/views/readerPages/mobileHome.vue b/src/views/readerPages/mobileHome.vue
index bdc6540..3d734dd 100644
--- a/src/views/readerPages/mobileHome.vue
+++ b/src/views/readerPages/mobileHome.vue
@@ -526,21 +526,17 @@
   </div>
 </template>
 <script setup lang="ts">
-import { ref, reactive, watch, onMounted, onBeforeMount, inject } from 'vue'
+import { ref, reactive, watch, onMounted, onBeforeUnmount,inject } from 'vue'
 import axios from 'axios'
-import { useRouter, useRoute } from 'vue-router'
 import { ElMessage, ElMessageBox, valueEquals } from 'element-plus'
 import useClipboard from 'vue-clipboard3'
 const { toClipboard } = useClipboard()
 const MG: any = inject('MG')
 const toolClass = inject('toolClass')
-const qiankunActions = inject('qiankunActions')
 import { loadMicroApp } from 'qiankun'
 import { microApps } from '@/child.ts'
-//鑾峰彇璺敱鍣�
-let router = useRouter()
+
 //鑾峰彇褰撳墠璺敱鐨勪俊鎭�
-let route = useRoute()
 import moment from 'moment'
 
 import bianji from '@/assets/images/operation/bianji.png'
@@ -549,13 +545,25 @@
 import search from '@/assets/images/operation/search.png'
 import search1 from '@/assets/images/operation/search1.png'
 import xuanzhong from '@/assets/images/operation/xuanzhong.png'
-
+let token = localStorage.getItem('token')
+const bookInfo = ref()
+const isBuy = ref(false)
+const tryPageCount = ref(0)
 let microApp = null // 寰簲鐢ㄥ疄渚�
 const bookConfig = ref({})
+let userInfo = ref({})
 //褰撳墠鏄剧ず绔犺妭
 const activeCatalog = ref()
+const currentChapter = ref(1)
 onMounted(() => {
+  if (token) {
+    getUserInfo()
+  }
+  if (localStorage.getItem('bookId')) {
+    getBookInfo()
+  }
   // 鍔犺浇寰簲鐢�
+
   microApp = loadMicroApp(microApps[localStorage.getItem('bookId')], {
     sandbox: {
       strictStyleIsolation: true,
@@ -567,17 +575,20 @@
   window.qiankunActions.onGlobalStateChange((state, prev) => {
     console.log('鐖跺眰state鍙樺寲', state)
     window.qiankunState = state
-
-    if (window.qiankunState && window.qiankunState.initTestBook) {
-      window.qiankunState.initTestBook(
-        localStorage.getItem('bookId') + '',
-        localStorage.getItem('tryPageCount')
-      )
+    if (isBuy.value) {
+      if (window.qiankunState && window.qiankunState.initTestBook) {
+        window.qiankunState.initTestBook(localStorage.getItem('bookId') + '')
+      }
+    } else {
+      if (window.qiankunState && window.qiankunState.initTestBook) {
+        window.qiankunState.initTestBook(localStorage.getItem('bookId') + '', tryPageCount.value)
+      }
     }
   })
 
   // 瀹氫箟鐖跺眰鏂规硶
   window.qiankunActions.setGlobalState({
+    state: 1,
     disableSign: false,
     // windowSelection: (data) => {
     //   // 缁戝畾瀛愬簲鐢ㄩ�夋嫨鐩戝惉浜嬩欢
@@ -628,15 +639,15 @@
     },
     catalogChange: (data) => {
       activeCatalog.value = data.showCatalogList
-      if (window.qiankunState.disableSign) {
-        // getSignData()
-      }
+      // if (window.qiankunState.disableSign) {
+      //   // getSignData()
+      // }
       // getSignData()
       console.log(data, '绔犺妭鍒囨崲锛氱洰鍓嶆樉绀虹殑涓変釜绔犺妭')
     },
     pageChange: (data) => {
       headerData.process = Number(data.page)
-      // currentChapter.value = data.catalog
+      currentChapter.value = data.catalog
       // console.log(data, '椤甸潰鍒囨崲锛氱洰鍓嶆樉绀洪〉闈㈠拰瀵瑰簲鐨勭珷鑺備俊鎭�')
       // if (catalogTree.value) {
       //   catalogTree.value.setCurrentKey(Number(data.page))
@@ -657,6 +668,83 @@
     }
   })
 })
+
+onBeforeUnmount(() => {
+  if (microApp) {
+    microApp.unmount() // 鍗歌浇寰簲鐢�
+  }
+})
+
+const getUserInfo = () => {
+  MG.identity.getCurrentAppUser().then((res) => {
+    if (res) {
+      let teacherRole = res.roleLinks.find((item) => item.role.refCode == 'teacher')
+      let teacherInfos = res.infoList.find((item) => item.type == 'teacherInfo')
+      let wechatInfo = res.infoList.find((item) => item.type == 'WeChat')
+      let studentInfo = res.infoList.find((item) => item.type == 'Default')
+      let phoneInfo = res.secretList.find((item) => item.type == 'MobilePhone')
+      let nameAndPassword = res.secretList.find((item) => item.type == 'LoginNameAndPassword')
+
+      if (teacherRole && teacherInfos) {
+        userInfo.value = {
+          ...teacherInfos,
+          name: teacherInfos.name,
+          role: 'Teacher',
+          roleId: teacherRole.role.id
+        }
+        localStorage.setItem('userInfo', JSON.stringify(userInfo.value))
+      } else if (wechatInfo) {
+        userInfo.value = {
+          ...wechatInfo,
+          phoneNumber: phoneInfo?.credential,
+          Email: emailInfo?.credential,
+          role: 'Student'
+        }
+      } else if (phoneInfo) {
+        userInfo.value = {
+          name: phoneInfo.credential
+        }
+        localStorage.setItem('userInfo', JSON.stringify(userInfo.value))
+      }
+    }
+  })
+}
+//鏍规嵁refcode鑾峰彇鍥句功淇℃伅
+
+const getBookInfo = () => {
+  const obj = {
+    storeInfo: 'jsek_digitalTextbooks',
+    path: '*',
+    queryType: '*',
+    coverSize: {
+      width: 150
+    },
+    paging: {
+      start: 0,
+      size: 6
+    },
+    filterList: [
+      {
+        value: 'Normal',
+        field: 'state'
+      }
+    ],
+    fields: {
+      author: [],
+      RefCodes: [localStorage.getItem('bookId')],
+      probationPage: []
+    }
+  }
+  MG.store.getProductList(obj).then((res) => {
+    bookInfo.value = res.datas[0]
+    if (res.datas[0].purchasedSaleMethodIdList.includes(res.datas[0].defaultSaleMethodId)) {
+      isBuy.value = true
+    } else {
+      isBuy.value = false
+    }
+    tryPageCount.value = Number(res.datas[0].probationPage)
+  })
+}
 
 //鑿滃崟
 const activeIndex = ref('0')
@@ -1479,6 +1567,7 @@
   }
 }
 
+let dialogToolList = [] //閫変腑鏂囧瓧鎿嶄綔
 //閫変腑鏂囧瓧宸ュ叿鏍�
 const showToolBox = ref(false)
 const toolActive = ref('')

--
Gitblit v1.9.1