SanHQin 11 months ago
parent
commit
1355654398

+ 9 - 0
src/api/pocAiClassroom.js

@@ -36,4 +36,13 @@ export function aiRoleChatRequest(data){//聊天请求
     data,
     hideloading: true
 	})
+}
+
+export function aiRoleChatRequest2(data){//聊天请求
+	return request2({
+		url: 'https://gpt4.cocorobo.cn/ai_agent_park_chat',
+    method: 'post',
+    data,
+    hideloading: true
+	})
 }

+ 101 - 8
src/views/pocAiClassroom/component/chapterCard.vue

@@ -5,7 +5,7 @@
       <div
         class="cc_b_item"
       >
-				<div class="cc_b_i_title" v-text="data.title"></div>
+				<!-- <div class="cc_b_i_title" v-text="data.title"></div> -->
         <div class="cc_b_i_image">
           <el-image
             style="width: 100%;height: 100%;"
@@ -29,24 +29,38 @@
         </div>
         <div class="cc_b_i_btnArea">
           <span
-            class="cc_b_i_ba_goClass"
-            v-if="[0].includes(data.type)"
+            :class="['cc_b_i_ba_goClass',data.disabled?'cc_b_i_ba_disabled':'']"
+            v-if="[0].includes(data.type) && !data.disabled"
             @click.stop="goClass(data)"
             >去上课</span
           >
           <span
-            class="cc_b_i_ba_doWorks"
-            v-if="[0, 1].includes(data.type)"
-            @click.stop="goWorks(item)"
+            :class="['cc_b_i_ba_doWorks',data.disabled?'cc_b_i_ba_disabled':'']"
+            v-if="[0, 1].includes(data.type) && !data.disabled"
+            @click.stop="goWorks(data)"
             >做练习</span
           >
+					<span class="cc_b_i_ba_disabled" @click.stop="goWorks(data)" v-if="data.disabled">资源建设中</span>
         </div>
       </div>
     </div>
+		<van-popup v-model="disabledShow" round>
+			<div class="disabledShowBox">
+				<div class="dsb_top">
+					<div class="dsb_top_title">敬请期待</div>
+					<div class="dsb_top_content">当前课程资源正在建设中,请您耐心等待。</div>
+				</div>
+				<div class="dsb_bottom">
+					<span @click.stop="disabledShow = false">催一催</span>
+					<span @click.stop="disabledShow = false">好的</span>
+				</div>
+			</div>
+		</van-popup>
   </div>
 </template>
 
 <script>
+import { Dialog } from 'vant';
 export default {
   props: {
     data: {
@@ -56,7 +70,15 @@ export default {
     subjectList: {
       type: Array,
       default: () => []
-    }
+    },
+		index:{
+			type:Number,
+			default:0
+		},
+		index2:{
+			type:Number,
+			default:0
+		}
   },
   data() {
     return {
@@ -64,17 +86,20 @@ export default {
       org: this.$route.query.org,
       oid: this.$route.query.oid,
 			showBtnAreaIndex:"",
+			disabledShow:false,
     };
   },
   methods: {
     goClass(item) {
+			if(this.data.disabled)return this.disabledShow = true;
 			this.$router.push(
           `/pocClass`
         );
     },
     goWorks(item) {
+			if(this.data.disabled)return this.disabledShow = true;
       this.$router.push(
-        `/pocDoTask`
+        `/pocDoTask?type=${this.index2}-${this.index}`
       );
     },
 		handleClickOutside(){
@@ -197,6 +222,8 @@ export default {
 	margin-left: 10px;
 }
 
+
+
 .cc_b_i_ba_doWorks{
 	background: linear-gradient(90deg, #82B1FF 0%, #3681FC 100%);
 	color: #fff !important;
@@ -207,6 +234,11 @@ export default {
 	color: #3681FC !important;
 }
 
+.cc_b_i_ba_disabled{
+	background: #F0F2F5 !important;
+	color: #00000042 !important;
+}
+
 .cc_b_i_title{
 	width: 100%;
 	height: auto;
@@ -263,4 +295,65 @@ export default {
   white-space: nowrap;
   font-size: 20px;
 } */
+
+.disabledShowBox{
+	/* width: 250px; */
+	width: 80vw;
+	height: 200px;
+	display: flex;
+	flex-direction: column;
+	align-items: center;
+}
+
+.dsb_top{
+	flex: 1;
+	width: 100%;
+	display: flex;
+	align-items: center;
+	justify-content: center;
+	flex-direction: column;
+}
+
+.dsb_top_title{
+	font-size: 18px;
+	font-weight: bold;
+	margin-bottom: 20px;
+}
+
+.dsb_top_content{
+	font-size: 16px;
+	max-width: 80%;
+	display: flex;
+	align-items: center;
+	color: #666666;
+}
+
+.dsb_bottom{
+	width: 100%;
+	height: 60px;
+	display: flex;
+	align-items: center;
+	justify-content: space-between;
+	box-sizing: border-box;
+	padding: 10px 20px;
+}
+
+.dsb_bottom>span{
+	flex: 1;
+	height: 90%;
+	border-radius: 8px;
+	display: flex;
+	justify-content: center;
+	align-items: center;
+	font-size: 16px;
+	font-weight: bold;
+	background-color: #F0F2F5;
+	color: #3681FC;
+}
+
+.dsb_bottom>span:nth-of-type(2){
+	margin-left: 20px;
+	background-color: #3681FC;
+	color: #fff !important;
+}
 </style>

+ 864 - 84
src/views/pocAiClassroom/doTask.vue

@@ -28,7 +28,7 @@
         </div>
       </template>
       <template v-slot:changeChapter v-if="!isSubmit">
-        <div class="dt_m_l_h_changeChapter" @click.stop="changeChapter()">
+        <div class="dt_m_l_h_changeChapter" @click.stop="changeChapterFn()">
           <!-- <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                 <path
                   fill-rule="evenodd"
@@ -98,6 +98,9 @@
               {{ showTaskIndex + 1 }}.
               <span>{{ typeof taskList[showTaskIndex].answer == 'object' ? '[多选题]' : '[单选题]' }}</span
               >{{ taskList[showTaskIndex].teststitle }}
+              <div class="titleImage" v-if="taskList[showTaskIndex].imageUrl">
+                <img :src="taskList[showTaskIndex].imageUrl" />
+              </div>
             </div>
             <div class="dt_m_b_l_t_choseList">
               <div
@@ -197,7 +200,7 @@
 
               <span>求助</span>
             </div>
-            <div class="dt_m_b_l_b_save">
+            <!-- <div class="dt_m_b_l_b_save">
               <svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                 <path
                   fill-rule="evenodd"
@@ -209,7 +212,7 @@
               </svg>
 
               <span>保存</span>
-            </div>
+            </div> -->
             <div class="dt_m_b_l_b_answerSheet" @click.stop="showTaskListSheet = true">
               <svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                 <path
@@ -421,11 +424,12 @@
         </span>
 
         <div class="dt_c_m_message">
-          这题选:<span>{{
+          <span v-text="seekAssistMessage"></span>
+          <!-- 这题选:<span>{{
             typeof taskList[showTaskIndex].answer == 'object'
               ? taskList[showTaskIndex].answer.map(i => choseList[i]).join('、')
               : choseList[taskList[showTaskIndex].answer]
-          }}</span>
+          }}</span> -->
         </div>
         <div class="dt_c_m_btnArea">
           <span class="dt_c_m_btn1" @click.stop="doNotKnow()">还是不太明白</span>
@@ -497,6 +501,9 @@
                 item.teststitle
               }}</span
             >
+            <div class="titleImage" v-if="item.imageUrl">
+              <img :src="item.imageUrl" />
+            </div>
 
             <div class="dt_is_tl_tb_i_choseList">
               <span v-for="(item2, index2) in item.checkList" :key="index + '-' + index2">
@@ -585,43 +592,99 @@
             >/{{ taskList.length }}
           </div>
         </div>
-				<div class="tla_taskList">
-					<span
-              v-for="(item, index) in taskList"
-              :key="index"
-              :class="[isDoTask(index) ? 'isDoTask' : '', showTaskIndex == index ? 'inDoTask' : '']"
-              @click.stop="choseShowTaskIndex(index)"
-              >{{ index + 1 }}</span
-            >
-				</div>
-				<div class="tla_bottom">
-					<div class="dt_m_b_r_tl_bottom">
-              <div><span class="isDoTask"></span>已答</div>
+        <div class="tla_taskList">
+          <span
+            v-for="(item, index) in taskList"
+            :key="index"
+            :class="[isDoTask(index) ? 'isDoTask' : '', showTaskIndex == index ? 'inDoTask' : '']"
+            @click.stop="choseShowTaskIndex(index)"
+            >{{ index + 1 }}</span
+          >
+        </div>
+        <div class="tla_bottom">
+          <div class="dt_m_b_r_tl_bottom">
+            <div><span class="isDoTask"></span>已答</div>
 
-              <div><span class="inDoTask"></span>当前</div>
+            <div><span class="inDoTask"></span>当前</div>
 
-              <div><span></span>未答</div>
+            <div><span></span>未答</div>
+          </div>
+          <div class="tla_b_right">
+            <div>共{{ taskList.length }}道题</div>
+            <span></span>
+            <div>合计100分</div>
+          </div>
+        </div>
+      </div>
+    </van-action-sheet>
+
+    <van-action-sheet v-model="changeChapterSheet">
+      <div class="chapterList">
+        <div class="sd_b_list">
+          <div class="sd_b_l_item" v-for="(item, index) in classList" :key="index">
+            <div class="sd_b_i_title" @click.stop="item.open = !item.open">
+              <svg
+                width="16"
+                height="16"
+                viewBox="0 0 16 16"
+                :style="item.open ? 'transform:rotate(0deg)' : 'transform:rotate(-90deg)'"
+                fill="none"
+                xmlns="http://www.w3.org/2000/svg"
+              >
+                <path
+                  d="M3.54004 6.45977L4.45928 5.54053L7.99966 9.08091L11.54 5.54053L12.4593 6.45977L7.99966 10.9194L3.54004 6.45977Z"
+                  fill="black"
+                  fill-opacity="0.4"
+                />
+              </svg>
+              <span>{{ item.title }}</span>
             </div>
-						<div class="tla_b_right">
-							<div>共{{ taskList.length }}道题</div>
-							<span></span>
-							<div>合计100分</div>
-						</div>
-				</div>
+            <div class="sd_b_i_list" v-if="item.open">
+              <div
+                :class="[
+                  'sd_b_i_l_item',
+                  type == `${index}-${index2}` ? 'sd_b_i_listActive' : '',
+                  item2.disabled ? 'sd_b_i_listDisabled' : ''
+                ]"
+                v-for="(item2, index2) in item.allClass"
+                :key="index + '-' + index2"
+                @click.stop="changeChapter(`${index}-${index2}`, item2)"
+              >
+                <span>第{{ index2 + 1 }}节</span><span>{{ item2.title }}</span>
+              </div>
+            </div>
+          </div>
+        </div>
       </div>
     </van-action-sheet>
+
+		<van-popup v-model="disabledShow" round>
+			<div class="disabledShowBox">
+				<div class="dsb_top">
+					<div class="dsb_top_title">敬请期待</div>
+					<div class="dsb_top_content">当前课程资源正在建设中,请您耐心等待。</div>
+				</div>
+				<div class="dsb_bottom">
+					<span @click.stop="disabledShow = false">催一催</span>
+					<span @click.stop="disabledShow = false">好的</span>
+				</div>
+			</div>
+		</van-popup>
   </div>
 </template>
 
 <script>
 import { Dialog } from 'vant'
 import bar from './component/bar.vue'
+import { v4 as uuidv4 } from 'uuid'
+import { aiRoleChatRequest2 } from '@/api/pocAiClassroom'
 export default {
   components: {
     bar
   },
   data() {
     return {
+			disabledShow:false,
       showTaskIndex: 0,
       time: 0,
       time2: 0,
@@ -632,6 +695,7 @@ export default {
       oid: this.$store.state.user.userinfo.organizeid,
       showSeekAssist: false,
       showTaskListSheet: false,
+      seekAssistMessage: '', //求助内容
       choseList: [
         'A',
         'B',
@@ -862,7 +926,166 @@ export default {
           name: '迷人的大反派6',
           personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心6'
         }
-      ]
+      ],
+      classList: [
+        {
+          title: '第一章:科學入門',
+          open: true,
+          allClass: [
+            {
+              title: '學習科學',
+              type: 0,
+              isComplete: true,
+              subject: 4,
+              disabled: true,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8741724834676182.png'
+            },
+            {
+              title: '科學的實踐',
+              type: 0,
+              subject: 4,
+              disabled: true,
+              isComplete: true,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8731724834767532.png'
+            },
+            {
+              title: '實驗室安全',
+              type: 0,
+              subject: 4,
+              disabled: true,
+              isComplete: false,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8721724834685472.png'
+            },
+            {
+              title: '實驗室儀器及基本實驗技巧',
+              type: 0,
+              subject: 4,
+              disabled: true,
+              isComplete: false,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8751724834771676.png'
+            },
+            {
+              title: '綜合練習',
+              type: 1,
+              subject: 4,
+              disabled: true,
+              isComplete: false,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8711724834666052.png'
+            }
+          ]
+        },
+        {
+          title: '第二章:水',
+          open: true,
+          allClass: [
+            {
+              title: '水的物熊變化',
+              type: 0,
+              subject: 4,
+              disabled: false,
+              isComplete: true,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8761724834777931.png'
+            },
+            {
+              title: '水循環',
+              type: 0,
+              subject: 4,
+              disabled: false,
+              isComplete: true,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8771724834845597.png'
+            },
+            {
+              title: '溶解',
+              type: 0,
+              subject: 4,
+              disabled: true,
+              isComplete: true,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8781724834847977.png'
+            },
+            {
+              title: '水的淨化',
+              type: 0,
+              subject: 4,
+              disabled: true,
+              isComplete: true,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8791724834873373.png'
+            },
+            {
+              title: '食水的進一步處理',
+              type: 0,
+              subject: 4,
+              disabled: true,
+              isComplete: false,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8761724834777931.png'
+            },
+            {
+              title: '節約用水和水污染',
+              type: 0,
+              subject: 4,
+              disabled: true,
+              isComplete: false,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8771724834845597.png'
+            },
+            {
+              title: '綜合練習',
+              type: 1,
+              disabled: true,
+              subject: 4,
+              isComplete: false,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8721724834685472.png'
+            }
+          ]
+        },
+        {
+          title: '第三章:观察生物',
+          open: true,
+          allClass: [
+            {
+              title: '生物',
+              type: 0,
+              disabled: true,
+              isComplete: true,
+              subject: 4,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8741724834676182.png'
+            },
+            {
+              title: '生物的分類',
+              type: 0,
+              subject: 4,
+              disabled: true,
+              isComplete: true,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8731724834767532.png'
+            },
+            {
+              title: '檢索表',
+              type: 0,
+              subject: 4,
+              disabled: true,
+              isComplete: false,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8721724834685472.png'
+            },
+            {
+              title: '生物多樣性',
+              type: 0,
+              subject: 4,
+              disabled: true,
+              isComplete: false,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8751724834771676.png'
+            },
+            {
+              title: '綜合練習',
+              type: 1,
+              subject: 4,
+              disabled: true,
+              isComplete: false,
+              image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8711724834666052.png'
+            }
+          ]
+        }
+      ],
+      type: this.$route.query.type,
+      changeChapterSheet: false,
+      seekAssistLoading: false
     }
   },
   computed: {
@@ -990,12 +1213,14 @@ export default {
       }
     },
     // 切换章节
-    changeChapter() {
-      console.log('切换章节')
+    changeChapterFn() {
+      this.changeChapterSheet = true
+      // console.log('切换章节')
     },
     //求助
     seekAssist() {
       this.showSeekAssist = true
+      this.getSeekAssist()
     },
     keepTime() {
       if (this.timer !== null) {
@@ -1091,16 +1316,420 @@ export default {
       }
     },
     doNotKnow() {
-      this.$toast('多想想')
+      this.getSeekAssist()
+    },
+    choseShowTaskIndex(_index) {
+      this.showTaskIndex = _index
+      this.showTaskListSheet = false
+    },
+    changeChapter(index, item) {
+      if (item && item.disabled)return this.disabledShow = true;
+      if (index == '1-0') {
+        // {
+        //   teststitle: '请从以下选项中选出一个由三个不同字母组成的组合。',
+        //   checkList: ['abc', 'aaa', 'bca', 'ccc'],
+        //   timuList: [],
+        //   answer: 0,
+        //   type: '1',
+        //   analyze:
+        //     '本题考核学生对字母的识别能力以及对字母组合的理解。学生需要识别每个选项中的字母,并判断是否由三个不同的字母组成。选项1(abc)和选项3(bca)都由三个不同的字母组成,但根据题目要求,选项1是正确答案。',
+        //   answer2: '',
+        //   uuid: '2b29f3aa-3389-4415-85aa-613f72e23de6',
+        //   isSubmit: false
+        // },
+        let task = [
+          {
+            teststitle: '當冰加熱到0°C時,它會發生什麼變化',
+            checkList: ['沸騰', '凝結', '熔化', '蒸發'],
+            answer: 2,
+            type: '1',
+            analyze: '當冰加熱到0°C時,它會從固態轉變成液態,這個過程稱為熔化。',
+            answer2: ''
+          },
+          {
+            teststitle: '在自然界中,水能以哪種形式存在?',
+            checkList: ['只有液態', '只有固態', '液態和氣態', '三態均有'],
+            answer: 3,
+            type: '1',
+            analyze: '水在自然界中可以以固態(冰)、液態(水)和氣態(水汽)三種狀態存在。',
+            answer2: ''
+          },
+          {
+            teststitle: '易拉罐表面在夏天常出現水滴,這是由於水汽的什麼現象?',
+            checkList: ['蒸發', '熔化', '沸騰', '凝結'],
+            answer: 3,
+            type: '1',
+            analyze: '水汽在接觸冷的易拉罐表面時凝結成液態水,這個過程稱為凝結。',
+            answer2: ''
+          },
+          {
+            teststitle: '在夏天,玻璃杯外面的水滴形成是因為哪種水物態變化?',
+            checkList: ['凝固', '熔化', '沸騰', '凝結'],
+            answer: 3,
+            type: '1',
+            analyze: '玻璃杯外的水滴是由空氣中的水汽經由凝結形成的。',
+            answer2: ''
+          },
+          {
+            teststitle: '下列哪一項說法正確描述水的熱的物態變化?',
+            checkList: [
+              '水的凝結點比沸點高',
+              '水在0°C時開始凝固或熔化',
+              '水只能通過沸騰轉化為氣態',
+              '水在自然界只存在於其中一種狀態'
+            ],
+            answer: 1,
+            type: '1',
+            analyze: '水在0°C時,可以開始從固態冰凝固成液態水,或者從液態水熔化成固態冰。',
+            answer2: ''
+          },
+          {
+            teststitle: '下列哪項關於物熊變化的敘述是不正確的?',
+            checkList: [
+              '凝結會於沸點或以下的温度發生',
+              '蒸發過程中不会吸收或釋出能量。',
+              '凝固是物質由液熊轉變成固熊的過程',
+              'D.固體熔化時的温度保持不變。'
+            ],
+            answer: 1,
+            type: '1',
+            analyze: '選項B蒸發是液體變成氣體的過程,這個過程需要吸收能量,稱為蒸發熱。因此,蒸發是一個吸熱過程。',
+            answer2: ''
+          },
+          {
+            teststitle: '如圖所示,盛了水的鍋正在爐上加熱。在鍋中和在鍋蓋內壁的水正在發生甚麼物熊變化?',
+            imageUrl: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/image%20%281%291725689946082.png',
+            checkList: [
+              '鍋中:熔化,鍋蓋內璧:沸騰',
+              '鍋中:蒸發,鍋蓋內璧:凝固',
+              '鍋中:沸騰,鍋蓋內璧:凝結',
+              '鍋中:凝結,鍋蓋內璧:蒸發'
+            ],
+            answer: 2,
+            type: '1',
+            analyze:
+              '鍋中:沸騰。當鍋中的水被加熱到一定的溫度,即水的沸點時,水分子獲得足夠的能量克服相互之間的吸引力,開始從液態轉變為氣態,形成氣泡並上升到水面,然後氣泡破裂,釋放出水蒸氣。這個過程稱為沸騰,是液體變成氣體的相變過程。鍋蓋內璧:凝結。鍋蓋內璧的溫度通常低於鍋中水的溫度,因此當鍋中產生的水蒸氣遇到較冷的鍋蓋內璧時,水蒸氣分子會失去能量,相互之間的吸引力增強,導致它們重新聚集在一起形成液態水。這個過程稱為凝結,是氣體變成液體的相變過程。',
+            answer2: ''
+          },
+          {
+            teststitle: '下列哪項正確顯示冰變成水時的水粒子變化?',
+            imageUrl: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/image%20%282%291725690023281.png',
+            checkList: ['A', 'B', 'C', 'D'],
+            answer: 0,
+            type: '1',
+            analyze: '冰變成水時,水分子間的距離增大,分子運動加快。',
+            answer2: ''
+          },
+          {
+            teststitle: '當水冷卻到0°C時,它會發生什麼變化?',
+            checkList: ['熔化', '凝固', '沸騰', '蒸發'],
+            answer: 1,
+            type: '1',
+            analyze: '當水冷卻到0°C時,它會從液態轉變成固態,這個過程稱為凝固。',
+            answer2: ''
+          },
+          {
+            teststitle: '水蒸發需要具備哪些條件?',
+            checkList: ['高於100°C的溫度', '僅能在沸點發生', '低於沸點的任何溫度', '僅能在冰點發生'],
+            answer: 2,
+            type: '1',
+            analyze: '水蒸發可以在低於沸點的任何溫度發生,並不需要達到沸點。',
+            answer2: ''
+          }
+        ]
+        this.taskList = task
+      } else if (index == '1-1') {
+        let task = [
+          {
+            teststitle: `在下列哪個(些)情况下,濕衣服會乾得很慢?
+(1)把衣服摺起來
+(2)空氣濕度低
+(3)把衣服晾在陽光下
+`,
+            checkList: ['只有 (1)', '只有 (1)和 (2)', '只有 (1) 和 (3)', '只有 (2) 和 (3)'],
+            answer: 0,
+            type: '1',
+            analyze:
+              '當衣服被折疊起來時,水分蒸發的表面積減少,因為衣服內部的水分不容易接觸到流通的空氣,這會減慢幹燥過程。,水分蒸发的表面积减少,因为衣服内部的水分不容易接触到流通的空气,这会减慢干燥过程。',
+            answer2: ''
+          },
+          {
+            teststitle: '下列各容器盛有相同分量的水。把它們置在陽光下幾小時後,哪個容器會剩下最少水?',
+            imageUrl: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/image%20%283%291725690506088.png',
+            checkList: ['A', 'B', 'C', 'D'],
+            answer: 2,
+            type: '1',
+            analyze: '表面積越大,水分接觸空氣的面積越多,蒸發得越快。',
+            answer2: ''
+          },
+          {
+            teststitle: `一把濕雨傘收起後掛在窗邊。下列哪個(些)方法能使目4濕傘快些乾透?
+(1)把雨傘放在陽光下。
+(2)開動風扇,再把雨傘放在風扇前方
+(3)完全打開傘。
+`,
+            checkList: ['只有 (1)', '只有 (2)和 (3)', '只有(1)和(2)', '全部(1)(2)和(3)'],
+            answer: 3,
+            type: '1',
+            analyze:
+              '(1)將雨傘放在陽光直射的地方,可以利用太陽的熱量來提高雨傘的溫度,這是加快水分蒸發的一個有效方法。(2)使用風扇或其他形式的人工通風可以增加空氣中的對流,幫助將潮濕的空氣帶走,並帶來更幹燥的空氣,這同樣有助於加速雨傘的幹燥。(3)雨傘完全打開時,增加了與空氣接觸的表面積,這意味著有更多的水分可以同時蒸發,從而加快了整體的幹燥過程。',
+            answer2: ''
+          },
+          {
+            teststitle: '下列哪項關於大自然中水的敘述是正確的 ?',
+            checkList: [
+              '地球上的水因蒸發不斷流失。',
+              '地球上的水因凝結不斷增加。',
+              '海洋中水由液熊水轉變成水汽。',
+              '高空的水滴不會返回地面。'
+            ],
+            answer: 2,
+            type: '1',
+            analyze:
+              'A 雖然地球上的水會通過蒸發變成水蒸氣進入大氣中,但這個過程是水循環的一部分,水蒸氣最終會通過凝結成雲,再以雨、雪等形式返回地面,補充到地球上的水源中。B 凝結是水循環中的一個環節,這個過程並不會導致地球上總水量的增加,因為水循環是一個動態平衡的系統。D高空中的水滴可以通過多種方式返回地面,最常見的是水滴凝結成雲,然後以雨、雪、冰雹等形式降落到地面。',
+            answer2: ''
+          },
+          {
+            teststitle: '以下哪個現象不屬於水循環的一部分?',
+            checkList: ['蒸發', '火山爆發', '降水', '凝結'],
+            answer: 1,
+            type: '1',
+            analyze: '水循環涉及蒸發、凝結、運輸和降水等過程,而火山爆發不是水循環的一部分。',
+            answer2: ''
+          },
+          {
+            teststitle: '以下哪種因素不直接影響水的蒸發速率?',
+            checkList: ['溫度', '空氣流動', '衣服的顏色', '表面積'],
+            answer: 2,
+            type: '1',
+            analyze: '水的蒸發速率主要受溫度、空氣流動和表面積的影響,衣服的顏色不直接影響水的蒸發。',
+            answer2: ''
+          },
+          {
+            teststitle: '在水循環中,海洋的主要作用是什麼?',
+            // imageUrl:"https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/image%20%281%291725689946082.png",
+            checkList: ['提供空氣濕度', '儲存地球上大部分水量', '為陸地提供地下水', '提供生態系統'],
+            answer: 1,
+            type: '1',
+            analyze: '海洋覆蓋地球表面的約 70%,儲存了地球總水量的 97%,是水循環的主要儲水地。',
+            answer2: ''
+          },
+          {
+            teststitle: '下列關於水循環的敘述,哪一項是不正確的?',
+            checkList: ['降水可以是雨、雪、或冰雹', '水循環是由人類活動主導的', '降水主要發生在海洋', '凝結形成雲'],
+            answer: 1,
+            type: '1',
+            analyze: '水循環是自然過程,主要受到太陽能量驅動,而非人類活動。',
+            answer2: ''
+          },
+          {
+            teststitle: '為什麼高空的水滴容易凝結?',
+            checkList: ['因為空氣中的二氧化碳含量高', '因為高空的溫度較低', '因為水的密度變大', '因為地心引力的作用'],
+            answer: 1,
+            type: '1',
+            analyze: '高空的溫度較低,這樣水汽容易凝結成小水滴。',
+            answer2: ''
+          },
+          {
+            teststitle: '以下哪項活動會加快水的蒸發速率?',
+            checkList: ['將盛水的容器蓋住', '將水置於陰暗角落', '將水置於陽光直射下', '增加室內濕度'],
+            answer: 2,
+            type: '1',
+            analyze: '在陽光直射下,水分子吸收更多的能量,蒸發速率會增加。',
+            answer2: ''
+          }
+        ]
+        this.taskList = task
+      } else {
+        let task = [
+          {
+            teststitle: '當冰加熱到0°C時,它會發生什麼變化',
+            checkList: ['沸騰', '凝結', '熔化', '蒸發'],
+            answer: 2,
+            type: '1',
+            analyze: '當冰加熱到0°C時,它會從固態轉變成液態,這個過程稱為熔化。',
+            answer2: ''
+          },
+          {
+            teststitle: '在自然界中,水能以哪種形式存在?',
+            checkList: ['只有液態', '只有固態', '液態和氣態', '三態均有'],
+            answer: 3,
+            type: '1',
+            analyze: '水在自然界中可以以固態(冰)、液態(水)和氣態(水汽)三種狀態存在。',
+            answer2: ''
+          },
+          {
+            teststitle: '易拉罐表面在夏天常出現水滴,這是由於水汽的什麼現象?',
+            checkList: ['蒸發', '熔化', '沸騰', '凝結'],
+            answer: 3,
+            type: '1',
+            analyze: '水汽在接觸冷的易拉罐表面時凝結成液態水,這個過程稱為凝結。',
+            answer2: ''
+          },
+          {
+            teststitle: '在夏天,玻璃杯外面的水滴形成是因為哪種水物態變化?',
+            checkList: ['凝固', '熔化', '沸騰', '凝結'],
+            answer: 3,
+            type: '1',
+            analyze: '玻璃杯外的水滴是由空氣中的水汽經由凝結形成的。',
+            answer2: ''
+          },
+          {
+            teststitle: '下列哪一項說法正確描述水的熱的物態變化?',
+            checkList: [
+              '水的凝結點比沸點高',
+              '水在0°C時開始凝固或熔化',
+              '水只能通過沸騰轉化為氣態',
+              '水在自然界只存在於其中一種狀態'
+            ],
+            answer: 1,
+            type: '1',
+            analyze: '水在0°C時,可以開始從固態冰凝固成液態水,或者從液態水熔化成固態冰。',
+            answer2: ''
+          },
+          {
+            teststitle: '下列哪項關於物熊變化的敘述是不正確的?',
+            checkList: [
+              '凝結會於沸點或以下的温度發生',
+              '蒸發過程中不会吸收或釋出能量。',
+              '凝固是物質由液熊轉變成固熊的過程',
+              'D.固體熔化時的温度保持不變。'
+            ],
+            answer: 1,
+            type: '1',
+            analyze: '選項B蒸發是液體變成氣體的過程,這個過程需要吸收能量,稱為蒸發熱。因此,蒸發是一個吸熱過程。',
+            answer2: ''
+          },
+          {
+            teststitle: '如圖所示,盛了水的鍋正在爐上加熱。在鍋中和在鍋蓋內壁的水正在發生甚麼物熊變化?',
+            imageUrl: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/image%20%281%291725689946082.png',
+            checkList: [
+              '鍋中:熔化,鍋蓋內璧:沸騰',
+              '鍋中:蒸發,鍋蓋內璧:凝固',
+              '鍋中:沸騰,鍋蓋內璧:凝結',
+              '鍋中:凝結,鍋蓋內璧:蒸發'
+            ],
+            answer: 2,
+            type: '1',
+            analyze:
+              '鍋中:沸騰。當鍋中的水被加熱到一定的溫度,即水的沸點時,水分子獲得足夠的能量克服相互之間的吸引力,開始從液態轉變為氣態,形成氣泡並上升到水面,然後氣泡破裂,釋放出水蒸氣。這個過程稱為沸騰,是液體變成氣體的相變過程。鍋蓋內璧:凝結。鍋蓋內璧的溫度通常低於鍋中水的溫度,因此當鍋中產生的水蒸氣遇到較冷的鍋蓋內璧時,水蒸氣分子會失去能量,相互之間的吸引力增強,導致它們重新聚集在一起形成液態水。這個過程稱為凝結,是氣體變成液體的相變過程。',
+            answer2: ''
+          },
+          {
+            teststitle: '下列哪項正確顯示冰變成水時的水粒子變化?',
+            imageUrl: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/image%20%282%291725690023281.png',
+            checkList: ['A', 'B', 'C', 'D'],
+            answer: 0,
+            type: '1',
+            analyze: '冰變成水時,水分子間的距離增大,分子運動加快。',
+            answer2: ''
+          },
+          {
+            teststitle: '當水冷卻到0°C時,它會發生什麼變化?',
+            checkList: ['熔化', '凝固', '沸騰', '蒸發'],
+            answer: 1,
+            type: '1',
+            analyze: '當水冷卻到0°C時,它會從液態轉變成固態,這個過程稱為凝固。',
+            answer2: ''
+          },
+          {
+            teststitle: '水蒸發需要具備哪些條件?',
+            checkList: ['高於100°C的溫度', '僅能在沸點發生', '低於沸點的任何溫度', '僅能在冰點發生'],
+            answer: 2,
+            type: '1',
+            analyze: '水蒸發可以在低於沸點的任何溫度發生,並不需要達到沸點。',
+            answer2: ''
+          }
+        ]
+        this.taskList = task
+      }
+      this.showTaskIndex = 0
+      this.time = 0
+      this.time2 = 0
+      this.startTime = new Date().getTime()
+      this.type = index
+      this.taskMessage.chapter = this.classList[parseInt(index.split('-')[0])].title
+      this.taskMessage.title = `第${parseInt(index.split('-')[1]) + 1}节 ${
+        this.classList[parseInt(index.split('-')[0])].allClass[parseInt(index.split('-')[1])].title
+      }`
+      this.changeChapterSheet = false
     },
-		choseShowTaskIndex(_index){
-			this.showTaskIndex = _index;
-			this.showTaskListSheet = false;
-		}
+    getSeekAssist() {
+      if (this.seekAssistLoading) return
+      return new Promise(resolve => {
+        let _index = 0
+        let _timer = null
+        this.seekAssistLoading = true
+        this.seekAssistMessage = '我想想哦'
+        _timer = setInterval(() => {
+          if (_index >= 5) {
+            _index = 0
+            this.seekAssistMessage = '我想想哦'
+          } else {
+            _index++
+            this.seekAssistMessage = '我想想哦' + '.'.repeat(_index)
+          }
+        }, 500)
+        let task = this.taskList[this.showTaskIndex]
+        let taskMsg = `${typeof task.answer == 'object' ? '【多选题】' : '【单选题】'}${task.teststitle}
+${task.checkList.map((i, index) => this.choseList[index] + '.' + i).join('\n')}
+正确答案:${
+          typeof task.answer == 'object'
+            ? task.answer.map(i => this.choseList[i]).join('、')
+            : this.choseList[task.answer]
+        }
+解析:${task.analyze}
+`
+
+        let _msg = `Language: Please use the same language as the user requirement, if the user speaks Traditional Chinese, the specific text of your answer should also be in Traditional Chinese.
+ATTENTION: Use '##' to SPLIT SECTIONS, not '#'. Output format carefully referenced "Format example".
+Instruction: Based on the context, follow "Format example", write content
+
+#Context
+這是一道題目相關的資料,你面向的是一位中學一年級的學生。現在學生求解這道題遇到了困難。請你扮演一位香港中學科學老師,請你使用1-3句完整的話,結合該題目考核的具體選項,從側面對題目選項進行暗示,務必不要直接給出答案。請堅持使用繁體中文,並使用香港人習慣使用的表達方式,請使用偏口語的方式表達,適當給予學生鼓勵。
+##題目內容:
+${taskMsg}
+
+#Format example
+(只需要输出一句话即可,不需要输出其他内容,不要输出Object)
+`
+
+        let params = {
+          assistant_id: '6063369f-289a-11ef-8bf4-12e77c4cb76b',
+          userId: this.userId,
+          message: [{ type: 'text', text: _msg }],
+          session_name: uuidv4(),
+          // uid: _uuid,
+          file_ids: [],
+          model: 'gpt-4o-2024-08-06'
+        }
+
+        aiRoleChatRequest2(params)
+          .then(res => {
+            clearInterval(_timer)
+            _timer = null
+            let _result = res.FunctionResponse.message
+            if (_result) {
+              this.seekAssistMessage = _result
+              this.seekAssistLoading = false
+            } else {
+              console.log(_result)
+              this.$toast('获取失败,请重试')
+              this.showSeekAssist = false
+            }
+          })
+          .catch(e => {
+            console.log(e)
+            this.$toast('获取失败,请重试')
+            this.showSeekAssist = false
+          })
+      })
+    }
   },
   mounted() {
     this.keepTime()
     this.sortTaskList()
+    this.changeChapter(this.type)
   }
 }
 </script>
@@ -1505,7 +2134,7 @@ export default {
   display: flex;
   justify-content: space-around;
   align-items: center;
-	margin-left: 10px;
+  margin-left: 10px;
 }
 
 .dt_m_b_r_tl_bottom > div {
@@ -2065,6 +2694,8 @@ export default {
   max-width: 100%;
   font-size: 18px;
   padding: 10px 30px;
+  height: 60%;
+  overflow: auto;
 }
 
 .dt_c_m_message > span {
@@ -2206,72 +2837,72 @@ export default {
 .tla_head {
   width: 100%;
   height: 40px;
-	display: flex;
-	justify-content: center;
-	align-items: center;
-	font-size: 14px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  font-size: 14px;
 }
 
-.tla_head>svg{
-	width: 18px;
-	height: 18px;
-	margin-right: 2px;
+.tla_head > svg {
+  width: 18px;
+  height: 18px;
+  margin-right: 2px;
 }
 
-.tla_head>span{
-	display: flex;
-	height: 20px;
-	width: auto;
-	align-items: center;
+.tla_head > span {
+  display: flex;
+  height: 20px;
+  width: auto;
+  align-items: center;
 }
 
-.tla_head>div{
-	font-size: 12px;
-	height: 20px;
-	display: flex;
-	align-items: flex-end;
-	margin-left: 3px;
-	color: #A6A6A6;
+.tla_head > div {
+  font-size: 12px;
+  height: 20px;
+  display: flex;
+  align-items: flex-end;
+  margin-left: 3px;
+  color: #a6a6a6;
 }
 
-.tla_head>div>span{
-	font-size: 14px;
-	color: #3681fc;
+.tla_head > div > span {
+  font-size: 14px;
+  color: #3681fc;
 }
 
-.tla_taskList{
-	width: 100%;
-	box-sizing: border-box;
-	padding: 30px;
-	height: calc(100% - 90px);
+.tla_taskList {
+  width: 100%;
+  box-sizing: border-box;
+  padding: 30px;
+  height: calc(100% - 90px);
 }
 
-.tla_bottom{
-	width: 100%;
-	height: 50px;
-	display: flex;
-	justify-content: space-between;
-	align-items: center;
-	box-sizing: border-box;
-	border-top: solid 1px #f2f2f2;
+.tla_bottom {
+  width: 100%;
+  height: 50px;
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  box-sizing: border-box;
+  border-top: solid 1px #f2f2f2;
 }
 
-.tla_b_right{
-	width: auto;
-	height: 100%;
-	display: flex;
-	align-items: center;
-	justify-content: center;
-	margin: 0 10px;
-	color: #00000066;
-	font-size: 12px;
+.tla_b_right {
+  width: auto;
+  height: 100%;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  margin: 0 10px;
+  color: #00000066;
+  font-size: 12px;
 }
 
-.tla_b_right>span{
-	margin: 0 7px;
-	width: 1px;
-	height: 10px;
-	background-color: #00000066;
+.tla_b_right > span {
+  margin: 0 7px;
+  width: 1px;
+  height: 10px;
+  background-color: #00000066;
 }
 
 .tla_taskList > span {
@@ -2291,4 +2922,153 @@ export default {
   font-size: 18px;
   /* font-weight: bold; */
 }
+
+.chapterList {
+  width: 100%;
+  height: 60vh;
+  box-sizing: border-box;
+  padding: 20px;
+}
+
+.sd_b_list {
+  width: 100%;
+  height: 100%;
+  overflow: auto;
+}
+
+.sd_b_l_item {
+  width: 100%;
+  height: auto;
+}
+
+.sd_b_i_title {
+  width: 100%;
+  height: 40px;
+  display: flex;
+  align-items: center;
+  font-size: 20px;
+  cursor: pointer;
+}
+
+.sd_b_i_title > svg {
+  width: 20px;
+  height: 20px;
+  margin-right: 10px;
+}
+
+.sd_b_i_title > span {
+  display: flex;
+  max-width: 80%;
+  overflow: hidden;
+  text-overflow: ellipsis;
+  white-space: nowrap;
+}
+
+.sd_b_i_list {
+  width: 100%;
+  height: auto;
+}
+
+.sd_b_i_l_item {
+  width: 100%;
+  height: 40px;
+  border-radius: 4px;
+  background-color: #fff;
+  font-size: 18px;
+  display: flex;
+  align-items: center;
+  box-sizing: border-box;
+  padding-left: 30px;
+  margin: 5px 0;
+  cursor: pointer;
+}
+
+.sd_b_i_l_item > span {
+  margin-right: 10px;
+}
+
+.sd_b_i_l_item:hover {
+  background-color: #e0eafb;
+  color: #3681fc;
+}
+
+.sd_b_i_listActive {
+  background-color: #e0eafb !important;
+  color: #3681fc !important;
+}
+
+.titleImage {
+  width: 100%;
+  object-fit: cover;
+}
+
+.titleImage > img {
+  width: 100%;
+  max-width: 400px;
+}
+
+.sd_b_i_listDisabled {
+  color: gray !important;
+}
+
+.disabledShowBox{
+	/* width: 250px; */
+	width: 80vw;
+	height: 200px;
+	display: flex;
+	flex-direction: column;
+	align-items: center;
+}
+
+.dsb_top{
+	flex: 1;
+	width: 100%;
+	display: flex;
+	align-items: center;
+	justify-content: center;
+	flex-direction: column;
+}
+
+.dsb_top_title{
+	font-size: 18px;
+	font-weight: bold;
+	margin-bottom: 20px;
+}
+
+.dsb_top_content{
+	font-size: 16px;
+	max-width: 80%;
+	display: flex;
+	align-items: center;
+	color: #666666;
+}
+
+.dsb_bottom{
+	width: 100%;
+	height: 60px;
+	display: flex;
+	align-items: center;
+	justify-content: space-between;
+	box-sizing: border-box;
+	padding: 10px 20px;
+}
+
+.dsb_bottom>span{
+	flex: 1;
+	height: 90%;
+	border-radius: 8px;
+	display: flex;
+	justify-content: center;
+	align-items: center;
+	font-size: 16px;
+	font-weight: bold;
+	background-color: #F0F2F5;
+	color: #3681FC;
+}
+
+.dsb_bottom>span:nth-of-type(2){
+	margin-left: 20px;
+	background-color: #3681FC;
+	color: #fff !important;
+}
 </style>

+ 175 - 50
src/views/pocAiClassroom/index.vue

@@ -57,7 +57,7 @@
         <van-popover placement="bottom-start" v-model="showChapter" trigger="click">
           <div class="pac_s_i_list">
             <div
-              :class="['pac_s_i_l_item', chapter == index ? 'pac_s_i_l_itemActive' : '']"
+              :class="['pac_s_i_l_item', chapter == index ? 'pac_s_i_l_itemActive' : '',[0,2].includes(index)?'pac_s_i_l_itemDisabled':'']"
               v-for="(item, index) in classList"
               :key="index"
               @click.stop="changeChapter(index)"
@@ -83,7 +83,7 @@
         <van-popover placement="bottom" v-model="showSubject" trigger="click">
           <div class="pac_s_i_list">
             <div
-              :class="['pac_s_i_l_item', subject == item.label ? 'pac_s_i_l_itemActive' : '']"
+              :class="['pac_s_i_l_item', subject == item.label ? 'pac_s_i_l_itemActive' : '',item.disabled?'pac_s_i_l_itemDisabled':'']"
               v-for="(item, index) in subjectList"
               :key="item.value"
               @click.stop="changeSubject(item)"
@@ -220,6 +220,8 @@
       <chapterCard
         v-for="(item, index) in classList[chapter].allClass"
         :key="index"
+				:index="index"
+				:index2="chapter"
         :data="item"
         :subjectList="subjectList"
       />
@@ -246,11 +248,13 @@
             </svg>
           </span>
           <div class="pac_fd_b_r_message">
-            Hi,{{ userInfo.userName }}同学,欢迎回来!现在让我们开启第一课的学习吧!
+            Hi,{{
+              userInfo.userName
+            }}同学,欢迎回来!你是否开始下一节课的学习,学习<span>【水循环】</span>?
           </div>
           <div class="pac_fd_b_r_btnArea">
             <span class="pac_fd_b_r_ba_btn1" @click.stop="dialogBtn(3)">聊聊天</span>
-            <!-- <span class="pac_fd_b_r_ba_btn2" @click.stop="dialogBtn(2)">复习上一课</span> -->
+            <span class="pac_fd_b_r_ba_btn2" @click.stop="dialogBtn(2)">复习上一课</span>
             <span class="pac_fd_b_r_ba_btn3" @click.stop="dialogBtn(1)">好,开始学习→</span>
           </div>
         </div>
@@ -284,6 +288,18 @@
       @changeUserInfo="changeUserInfo"
       @changeCharacterInfo="changeCharacterInfo"
     /> -->
+		<van-popup v-model="disabledShow" round>
+			<div class="disabledShowBox">
+				<div class="dsb_top">
+					<div class="dsb_top_title">敬请期待</div>
+					<div class="dsb_top_content">当前课程资源正在建设中,请您耐心等待。</div>
+				</div>
+				<div class="dsb_bottom">
+					<span @click.stop="disabledShow = false">催一催</span>
+					<span @click.stop="disabledShow = false">好的</span>
+				</div>
+			</div>
+		</van-popup>
   </div>
 </template>
 
@@ -291,7 +307,7 @@
 import chapterCard from './component/chapterCard.vue'
 // import settingsDialog from './component/settingsDialog.vue'
 import bar from './component/bar.vue'
-
+import { Dialog } from 'vant';
 // 自定义指令,用于处理点击外部区域的事件
 const clickOutside = {
   bind(el, binding) {
@@ -325,18 +341,19 @@ export default {
       userId: this.$store.state.user.userinfo.userid,
       org: this.$store.state.user.userinfo.org,
       oid: this.$store.state.user.userinfo.organizeid,
-      chapter: 0,
+      chapter: 1,
       showChapter: false,
-      subject: '中國語文',
+      subject: '科學',
       showSubject: false,
-      edition: '',
+      edition: '牛津大學',
       showEdition: false,
       searchValue: '',
-      grade: 7,
+      grade: 6,
+			disabledShow:false,
       showDialog: true,
       userInfo: {
         userName: '科科',
-        grade: 7,
+        grade: 6,
         userAvatar: require('../../assets/images/pocAiClassroom/defaultAvatar.png'),
         choseCharacter: 0
       },
@@ -390,27 +407,51 @@ export default {
         // { value: 6, label: '历史' },
         // { value: 7, label: '地理' },
         // { value: 8, label: '政治' }
-				{ value: 0, label: '中國語文' },
-        { value: 1, label: '英國語文 ' },
-        { value: 2, label: '數學' },
-        { value: 3, label: '公民與社會發展' },
-        { value: 4, label: '科學' },
-        { value: 5, label: '物理' },
-        { value: 6, label: '化學' },
-        { value: 7, label: '生物' },
-        { value: 8, label: '中國歷史' }
+				{ value: 0, label: '中國語文',disabled:true, },
+        { value: 1, label: '英國語文 ',disabled:true, },
+        { value: 2, label: '數學',disabled:true, },
+        { value: 3, label: '公民與社會發展',disabled:true, },
+        { value: 4, label: '科學',disabled:false, },
+        { value: 5, label: '物理',disabled:true, },
+        { value: 6, label: '化學',disabled:true, },
+        { value: 7, label: '生物',disabled:true, },
+        { value: 8, label: '中國歷史',disabled:true, },
+				
       ],
+      // gradeList: [
+      //   "一年级",
+      //   "二年级",
+      //   "三年级",
+      //   "四年级",
+      //   "五年级",
+      //   "六年级",
+      //   "七年级",
+      //   "八年级",
+      //   "九年级"
+      // ],
+      // subjectList: [
+      //   { value: 0, label: "语文" },
+      //   { value: 1, label: "数学" },
+      //   { value: 2, label: "英语" },
+      //   { value: 3, label: "物理" },
+      //   { value: 4, label: "化学" },
+      //   { value: 5, label: "生物" },
+      //   { value: 6, label: "历史" },
+      //   { value: 7, label: "地理" },
+      //   { value: 8, label: "政治" }
+      // ],
       editionList: [
-        { value: 0, label: '人教版' },
-        { value: 1, label: '教科版' },
-        { value: 2, label: '北师大版' },
-        { value: 3, label: '苏教版' },
-        { value: 4, label: '沪教版' },
-        { value: 5, label: '浙教版' },
-        { value: 6, label: '冀教版' },
-        { value: 7, label: '鲁教版' },
-        { value: 8, label: '人教A版' },
-        { value: 9, label: '人教B版' }
+				{ value: 0, label: "牛津大學" },
+        // { value: 0, label: "人教版" },
+        // { value: 1, label: "教科版" },
+        // { value: 2, label: "北师大版" },
+        // { value: 3, label: "苏教版" },
+        // { value: 4, label: "沪教版" },
+        // { value: 5, label: "浙教版" },
+        // { value: 6, label: "冀教版" },
+        // { value: 7, label: "鲁教版" },
+        // { value: 8, label: "人教A版" },
+        // { value: 9, label: "人教B版" }
       ],
       classList: [
         {
@@ -420,35 +461,40 @@ export default {
               title: '學習科學',
               type: 0,
               isComplete: true,
-              subject: 0,
+              subject: 4,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8741724834676182.png'
             },
             {
               title: '科學的實踐',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: true,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8731724834767532.png'
             },
             {
               title: '實驗室安全',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: false,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8721724834685472.png'
             },
             {
               title: '實驗室儀器及基本實驗技巧',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: false,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8751724834771676.png'
             },
             {
               title: '綜合練習',
               type: 1,
-              subject: 0,
+              subject: 4,
               isComplete: false,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8711724834666052.png'
             }
           ]
@@ -459,50 +505,57 @@ export default {
             {
               title: '水的物熊變化',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: true,
+							disabled:false,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8761724834777931.png'
             },
             {
               title: '水循環',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: true,
+							disabled:false,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8771724834845597.png'
             },
             {
               title: '溶解',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: true,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8781724834847977.png'
             },
             {
               title: '水的淨化',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: true,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8791724834873373.png'
             },
             {
               title: '食水的進一步處理',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: false,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8761724834777931.png'
             },
             {
               title: '節約用水和水污染',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: false,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8771724834845597.png'
             },
             {
               title: '綜合練習',
               type: 1,
-              subject: 0,
+              subject: 4,
               isComplete: false,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8721724834685472.png'
             },
           ]
@@ -514,35 +567,40 @@ export default {
               title: '生物',
               type: 0,
               isComplete: true,
-              subject: 0,
+              subject: 4,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8741724834676182.png'
             },
             {
               title: '生物的分類',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: true,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8731724834767532.png'
             },
             {
               title: '檢索表',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: false,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8721724834685472.png'
             },
             {
               title: '生物多樣性',
               type: 0,
-              subject: 0,
+              subject: 4,
               isComplete: false,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8751724834771676.png'
             },
             {
               title: '綜合練習',
               type: 1,
-              subject: 0,
+              subject: 4,
               isComplete: false,
+							disabled:true,
               image: 'https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E5%9B%BE%E7%89%8711724834666052.png'
             }
           ]
@@ -566,13 +624,13 @@ export default {
       if (type == 0) {
         this.showDialog = false
       } else if (type == 1) {
-        this.$router.push(`/pocClass`)
+        this.$router.push(`/pocClass?type=1`)
         // console.log("开始学习新的内容");
       } else if (type == 2) {
-        this.$router.push(`/pocClass`)
+        this.$router.push(`/pocClass?type=2`)
         // console.log("复习上一节课");
       } else if (type == 3) {
-        this.$router.push(`/pocAiChat`)
+        this.$router.push(`/pocAiChat?type=3`)
       }
     },
     reset() {
@@ -603,11 +661,13 @@ export default {
       console.log('渠道学伴设置')
     },
     changeChapter(index) {
+			if([0,2].includes(index))return this.disabledShow = true;
       this.chapter = index
       this.showChapter = false
       console.log('切换章节', index)
     },
     changeSubject(item) {
+			if(item.disabled)return this.disabledShow = true;
       this.subject = item.label
       this.showSubject = false
       console.log('切换科目', item)
@@ -991,7 +1051,7 @@ export default {
 }
 
 .pac_fd_b_r_btnArea > span {
-  padding: 10px 30px;
+  padding: 10px 10px;
   border-radius: 6px;
   font-size: 14px;
   cursor: pointer;
@@ -1058,4 +1118,69 @@ export default {
   margin: 5px 0;
   background-color: #e7e7e7;
 }
+
+.pac_s_i_l_itemDisabled{
+	color: gray !important;
+}
+
+.disabledShowBox{
+	/* width: 250px; */
+	width: 80vw;
+	height: 200px;
+	display: flex;
+	flex-direction: column;
+	align-items: center;
+}
+
+.dsb_top{
+	flex: 1;
+	width: 100%;
+	display: flex;
+	align-items: center;
+	justify-content: center;
+	flex-direction: column;
+}
+
+.dsb_top_title{
+	font-size: 18px;
+	font-weight: bold;
+	margin-bottom: 20px;
+}
+
+.dsb_top_content{
+	font-size: 16px;
+	max-width: 80%;
+	display: flex;
+	align-items: center;
+	color: #666666;
+}
+
+.dsb_bottom{
+	width: 100%;
+	height: 60px;
+	display: flex;
+	align-items: center;
+	justify-content: space-between;
+	box-sizing: border-box;
+	padding: 10px 20px;
+}
+
+.dsb_bottom>span{
+	flex: 1;
+	height: 90%;
+	border-radius: 8px;
+	display: flex;
+	justify-content: center;
+	align-items: center;
+	font-size: 16px;
+	font-weight: bold;
+	background-color: #F0F2F5;
+	color: #3681FC;
+}
+
+.dsb_bottom>span:nth-of-type(2){
+	margin-left: 20px;
+	background-color: #3681FC;
+	color: #fff !important;
+}
 </style>

+ 9 - 2
src/views/pocAiClassroom/pocClass.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="chatArea">
-		<bar :backPage="1" :tit="'物体的运动课程'"/>
+		<bar :backPage="1" :tit="'上课'"/>
 		<iframe ref="iframeRef" class="ca_iframe" allow="camera *; microphone *;display-capture;midi;encrypted-media;" :src="src"></iframe>
   </div>
 </template>
@@ -16,6 +16,7 @@ export default {
 			userId: this.$store.state.user.userinfo.userid,
       org: this.$store.state.user.userinfo.org,
       oid: this.$store.state.user.userinfo.organizeid,
+			type:this.$route.query.type,
 			src:"https://beta.cloud.cocorobo.cn/aigpt/#/js?active_role=3"
     };
   },
@@ -23,7 +24,13 @@ export default {
 
   },
   mounted() {
-    
+    if (this.type == 1) {
+      this.src = `https://beta.cloud.cocorobo.cn/aigpt/#/js?active_role=${5}`;
+			console.log("5")
+    } else if (this.type == 2) {
+      this.src = `https://beta.cloud.cocorobo.cn/aigpt/#/js?active_role=${3}`;
+			console.log(3)
+    }
   }
 };
 </script>

+ 39 - 36
src/views/pocAiClassroom/selfMessage.vue

@@ -87,7 +87,7 @@
           <!-- <el-input class="sm_f_input" v-model="" placeholder="请输入姓名" maxlength="10"></el-input> -->
         </div>
         <div class="sm_f_item_right">
-          <svg
+          <!-- <svg
             width="24"
             height="24"
             viewBox="0 0 24 24"
@@ -175,7 +175,7 @@
               d="M9.97725 18.2839C9.90164 18.77 9.47012 19.0009 9.00027 18.748C8.49741 18.4773 8.12112 17.8684 8.07861 17.2907C8.15048 16.8035 8.58705 16.5804 9.05559 16.8264C9.5648 17.0937 9.93909 17.7034 9.97725 18.2839Z"
               fill="#4B5C83"
             />
-          </svg>
+          </svg> -->
         </div>
       </div>
 
@@ -196,9 +196,9 @@
     </div>
 
     <div class="sm_bottom">
-      <div>返回</div>
+      <div @click.stop="back()">返回</div>
       <div class="sm_b_save" v-if="type == 0">保存修改</div>
-      <div class="sm_b_save" v-if="type == 1">更新学伴设置</div>
+      <!-- <div class="sm_b_save" v-if="type == 1">更新学伴设置</div> -->
     </div>
 
     <van-action-sheet v-model="showTime" title="生日">
@@ -231,7 +231,7 @@ export default {
       type: 0,
       userInfo: {
         userName: '科科',
-        grade: 7,
+        grade: 6,
         userAvatar: require('../../assets/images/pocAiClassroom/defaultAvatar.png'),
         choseCharacter: 0,
         phone: '19128326542',
@@ -271,36 +271,36 @@ export default {
           name: '圆鼓鼓的大胖鱼',
           personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心'
         },
-        {
-          index: 1,
-          image: require('../../assets/images/pocAiClassroom/character2.png'),
-          name: '迷人的大反派2',
-          personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心2'
-        },
-        {
-          index: 2,
-          image: require('../../assets/images/pocAiClassroom/character3.png'),
-          name: '迷人的大反派3',
-          personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心3'
-        },
-        {
-          index: 3,
-          image: require('../../assets/images/pocAiClassroom/character4.png'),
-          name: '迷人的大反派4',
-          personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心4'
-        },
-        {
-          index: 4,
-          image: require('../../assets/images/pocAiClassroom/character5.png'),
-          name: '迷人的大反派5',
-          personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心5'
-        },
-        {
-          index: 5,
-          image: require('../../assets/images/pocAiClassroom/character6.png'),
-          name: '迷人的大反派6',
-          personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心6'
-        }
+        // {
+        //   index: 1,
+        //   image: require('../../assets/images/pocAiClassroom/character2.png'),
+        //   name: '迷人的大反派2',
+        //   personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心2'
+        // },
+        // {
+        //   index: 2,
+        //   image: require('../../assets/images/pocAiClassroom/character3.png'),
+        //   name: '迷人的大反派3',
+        //   personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心3'
+        // },
+        // {
+        //   index: 3,
+        //   image: require('../../assets/images/pocAiClassroom/character4.png'),
+        //   name: '迷人的大反派4',
+        //   personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心4'
+        // },
+        // {
+        //   index: 4,
+        //   image: require('../../assets/images/pocAiClassroom/character5.png'),
+        //   name: '迷人的大反派5',
+        //   personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心5'
+        // },
+        // {
+        //   index: 5,
+        //   image: require('../../assets/images/pocAiClassroom/character6.png'),
+        //   name: '迷人的大反派6',
+        //   personality: '心思细腻,能够敏锐捕捉到别人的需求,喜欢支持和鼓励他人,富有耐心6'
+        // }
       ]
     }
   },
@@ -349,7 +349,10 @@ export default {
     changeCharacterName() {},
     changeCharacter(index) {
       this.userInfo.choseCharacter = index
-    }
+    },
+		back(){
+			this.$router.go(-1)
+		}
   }
 }
 </script>