lsc 11 mesi fa
parent
commit
b9a6b45754

+ 1 - 1
dist/index.html

@@ -32,7 +32,7 @@
       width: 100%;
       background: #e6eaf0;
       font-family: '黑体';
-    }</style><link href=./static/css/app.58957d88bcb0795a9f4cf70793622993.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.571c38d63f24b1ae9e16.js></script><script type=text/javascript src=./static/js/vendor.3cd0a0187ca1f70ded67.js></script><script type=text/javascript src=./static/js/app.abe263c356e09173d611.js></script></body></html><script>function stopSafari() {
+    }</style><link href=./static/css/app.4a6e7c42dffade1c5647ca014e51fde0.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.571c38d63f24b1ae9e16.js></script><script type=text/javascript src=./static/js/vendor.3cd0a0187ca1f70ded67.js></script><script type=text/javascript src=./static/js/app.97191fc9c56a3ed9016c.js></script></body></html><script>function stopSafari() {
     //阻止safari浏览器双击放大功能
     let lastTouchEnd = 0  //更新手指弹起的时间
     document.documentElement.addEventListener("touchstart", function (event) {

File diff suppressed because it is too large
+ 0 - 0
dist/static/css/app.4a6e7c42dffade1c5647ca014e51fde0.css


File diff suppressed because it is too large
+ 0 - 0
dist/static/css/app.4a6e7c42dffade1c5647ca014e51fde0.css.map


File diff suppressed because it is too large
+ 0 - 0
dist/static/css/app.58957d88bcb0795a9f4cf70793622993.css


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/app.97191fc9c56a3ed9016c.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/app.97191fc9c56a3ed9016c.js.map


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/manifest.571c38d63f24b1ae9e16.js.map


+ 9 - 5
src/components/pages/aiAddCourse/addCourse.vue

@@ -3649,7 +3649,7 @@
                     }">
                       {{ steps == 3 ? "确认上传" : "下一步" }}
                     </button>
-                    <button class="c_pub_button_confirm" v-if="steps < 4" @click="openSaveTips">保存模板</button>
+                    <button class="c_pub_button_confirm" v-if="steps < 4 && cidType != 1 && templateid == ''" @click="openSaveTips">保存模板</button>
                   </div>
                 </div>
               </div>
@@ -5435,7 +5435,7 @@ export default {
       aitype: "",
       aiJson: {
         aiDetail:"请根据<课程简要描述>设计一个名为<课程名字>的<课程学科>学科的,面向<面向年级>的项目式学习课程。",
-        aiOutline:"请根据<课程简要描述>及#补充参考资料为这个名为<课程名字>的<课程学科>学科的,面向<面向年级>的项目式学习课程设计序列教学活动(需要每个任务都需要至少50个token的详细描述),每个教学活动的活动设计(可以直接使用文件内容)以及每个教学活动的评价量规(学生能做到...)。",
+        aiOutline:`请为这个名为<课程名字>的<课程学科>学科的,面向<面向年级>学生,时长为<课堂时长>一堂课来设计课堂教学任务(每个任务都需要至少50个token的详细描述)。该课堂的课堂简要描述为<课程简要描述>。每个教学活动的活动设计(可以直接使用文件内容)以及每个教学活动的评价量规(学生能做到...)。`,
         aiTask:"请根据<教学任务教案>。",
         aiDetail1:"请根据<课程描述>,重新设计该教学任务。任务需要至少50个token的详细描述,包含任务设计,评价标准。",
         aiDetail2:"请你在考虑到整个课程的情况下,优化该任务描述和任务名:<任务名>:<任务描述>",
@@ -5448,7 +5448,7 @@ export default {
       aiCallBack: "",
       aiIndex: "",
       clickType: 1,
-      promptShow: true,
+      promptShow: false,
       templateid: this.$route.query.templateid != undefined ? this.$route.query.templateid : "",
       dialogVisibleTips: false,
       tipsJson: {}
@@ -10618,6 +10618,9 @@ export default {
             console.error(err);
           });
       }
+      if(this.cidType != 1 && this.templateid == ''){
+        this.promptShow = true
+      }
     },
     seleteCourseUpdate() {
       let params = {
@@ -12592,8 +12595,6 @@ ${msg} **你需要使用C-POTE教学活动设计框架,其定义参考#补充
 
 
 ## 补充参考资料
-C-POTE定义:
-C-POTE模型是一种针对跨学科主题学习的教学设计模型,它是在新课标导向下提出的,旨在帮助教师更好地开展跨学科主题学习活动。C-POTE模型的核心是以大概念为基础,以核心素养为导向,通过合理部署内容组织、问题设计、目标制定、任务设计、教学评价等环节,促进学生的深度学习和创新能力的发展。C-POTE模型的名称来源于其五个核心组成部分,分别是:概念群(Concept Group):作为模型的基础,概念群负责将不同学科的知识点进行整合,形成有意义的认知网络。教师需要遴选重要的大概念,使之形成更大的跨学科概念群,为后续的教学活动奠定基础。问题链(Problem Chain):围绕大概念设计一系列有逻辑结构的问题,从具体到抽象,形成问题链。问题链的目的是引导学生通过问题解决的过程深化对大概念的理解。目标层(Objective Layer):明确教学目标,将核心素养具体化,分为“双基—学科思维—高阶素养”三个层次。教师需要根据学科课程标准中的核心素养,将其转化为具体的教学目标。任务簇(Task Cluster):设计一系列指向核心素养的表现性任务,将大任务拆解为若干个活动序列,确保学生能够通过实践活动实现学习目标。证据集(Evidence Set):评价学生学习成果的依据,通过收集学生在跨学科实践过程中的表现证据,进行综合性评价,以促进学生核心素养的发展。
 补充资料:${url.join(",")}
 补充描述:${this.courseText2}
 
@@ -13087,6 +13088,9 @@ ${message} 以及##补充参考资料和##参考资料 以文本格式输出项
               )
             }
           }
+          if (_this.infoData.length) {
+            _this.unitJson[0].chapterInfo[0].taskJson[0].chapterData = JSON.parse(JSON.stringify(_this.infoData))
+          }
           _this.unitJson2 = JSON.parse(JSON.stringify(_this.unitJson))
           _this.$forceUpdate();
         }

+ 2 - 4
src/components/pages/aiAddCourse/addCourse3.vue

@@ -5435,7 +5435,7 @@ export default {
       aitype: "",
       aiJson: {
         aiDetail:"请根据<课程简要描述>设计一个名为<课程名字>的<课程学科>学科的,面向<面向年级>的项目式学习课程。",
-        aiOutline:"请根据<课程简要描述>及#补充参考资料为这个名为<课程名字>的<课程学科>学科的,面向<面向年级>的项目式学习课程设计序列教学活动(需要每个任务都需要至少50个token的详细描述),每个教学活动的活动设计(可以直接使用文件内容)以及每个教学活动的评价量规(学生能做到...)。",
+        aiOutline:`请为这个名为<课程名字>的<课程学科>学科的,面向<面向年级>学生,时长为<课堂时长>一堂课来设计课堂教学任务(每个任务都需要至少50个token的详细描述)。该课堂的课堂简要描述为<课程简要描述>。每个教学活动的活动设计(可以直接使用文件内容)以及每个教学活动的评价量规(学生能做到...)。`,
         aiTask:"请根据<教学任务教案>。",
         aiDetail1:"请根据<课程描述>,重新设计该教学任务。任务需要至少50个token的详细描述,包含任务设计,评价标准。",
         aiDetail2:"请你在考虑到整个课程的情况下,优化该任务描述和任务名:<任务名>:<任务描述>",
@@ -12583,7 +12583,7 @@ User: Please generate a recipe for chocolate chip cookies in JSON format.
 
 # Context
 ## 要求 
-${msg} **你需要使用C-POTE教学活动设计框架,其定义参考#补充参考资料 中的C-POTE**。以及##补充参考资料和##参考资料,
+${msg} 以及##补充参考资料和##参考资料,
 然后根据Format example的要求返回要以数组的格式
 
 ## 参考资料
@@ -12594,8 +12594,6 @@ ${msg} **你需要使用C-POTE教学活动设计框架,其定义参考#补充
 
 
 ## 补充参考资料
-C-POTE定义:
-C-POTE模型是一种针对跨学科主题学习的教学设计模型,它是在新课标导向下提出的,旨在帮助教师更好地开展跨学科主题学习活动。C-POTE模型的核心是以大概念为基础,以核心素养为导向,通过合理部署内容组织、问题设计、目标制定、任务设计、教学评价等环节,促进学生的深度学习和创新能力的发展。C-POTE模型的名称来源于其五个核心组成部分,分别是:概念群(Concept Group):作为模型的基础,概念群负责将不同学科的知识点进行整合,形成有意义的认知网络。教师需要遴选重要的大概念,使之形成更大的跨学科概念群,为后续的教学活动奠定基础。问题链(Problem Chain):围绕大概念设计一系列有逻辑结构的问题,从具体到抽象,形成问题链。问题链的目的是引导学生通过问题解决的过程深化对大概念的理解。目标层(Objective Layer):明确教学目标,将核心素养具体化,分为“双基—学科思维—高阶素养”三个层次。教师需要根据学科课程标准中的核心素养,将其转化为具体的教学目标。任务簇(Task Cluster):设计一系列指向核心素养的表现性任务,将大任务拆解为若干个活动序列,确保学生能够通过实践活动实现学习目标。证据集(Evidence Set):评价学生学习成果的依据,通过收集学生在跨学科实践过程中的表现证据,进行综合性评价,以促进学生核心素养的发展。
 补充资料:${url.join(",")}
 补充描述:${this.courseText2}
 

+ 9 - 3
src/components/pages/aiAddCourse/templateDialog.vue

@@ -41,9 +41,15 @@
                         <div class="a-d-b-i-top">
                             <img style="height: 22px; width: 22px" :src="require('../../../assets/icon/classroomObservation/digImg.svg')
                                 " />
-                            <div class="a-d-b-i-t-title">{{ item.name }}</div>
+                            <el-tooltip :content="item.name" placement="top" effect="dark">
+                                <!-- content to trigger tooltip here -->
+                                <div class="a-d-b-i-t-title">{{ item.name }}</div>
+                            </el-tooltip>
                         </div>
-                        <div class="a-d-b-i-bottom">{{ item.detail }}</div>
+                        <div class="a-d-b-i-top" v-if="item.uname">创建人:{{ item.uname }}</div>
+                        <el-tooltip :content="item.detail" placement="top" effect="dark">
+                            <div class="a-d-b-i-bottom">{{ item.detail }}</div>
+                        </el-tooltip>
                         <div class="a-d-b-i-bottomBtn">
                             <div style="
 										display: flex;
@@ -360,7 +366,7 @@ export default {
     width: 100%;
     /* height: 50%; */
     height: 20px;
-    margin-bottom: 15px;
+    margin-bottom: 5px;
     display: flex;
     align-items: center;
     /* justify-content: space-between; */

+ 37 - 11
src/components/pages/classroomObservation/index.vue

@@ -292,15 +292,32 @@ export default {
 				type: "warning",
 			})
 				.then(() => {
-					this.optionData.splice(
-						this.optionData.findIndex((item) => item.value == _value),
-						1
-					);
-					this.tid = this.optionData[0] ? this.optionData[0].value : "";
-					this.changeTid(this.tid);
-					this.$message({
-						type: "success",
-						message: "删除成功!",
+					// this.optionData.splice(
+					// 	this.optionData.findIndex((item) => item.value == _value),
+					// 	1
+					// );
+					// this.tid = this.optionData[0] ? this.optionData[0].value : "";
+					// this.changeTid(this.tid);
+					// this.$message({
+					// 	type: "success",
+					// 	message: "删除成功!",
+					// });
+					let params = {
+						tid: _value,
+					}
+					this.ajax
+					.post("https://gpt4.cocorobo.cn/update_classroom_observation_isdel", params)
+					.then((res) => {
+						this.$message({
+							type: "success",
+							message: "删除成功!",
+						});
+						this.getCourseList().then((_) => {
+							if (!this.tid) return;
+							this.getFileIdId();
+							this.$refs.messageAreaRef.getData();
+							this.$refs.chatAreaRef.getData();
+						});
 					});
 				})
 				.catch(() => {});
@@ -344,8 +361,17 @@ export default {
 					.post("https://gpt4.cocorobo.cn/get_classroom_observation_all")
 					.then((res) => {
 						let _data = res.data.FunctionResponse.result;
-						let _result = _data ? JSON.parse(_data) : [];
-						if (_result.length <= 0) return;
+						let _result = []
+						try {
+							_result = _data ? JSON.parse(_data) : [];
+						} catch (error) {
+							_result = []
+						}
+
+						if (_result.length <= 0) { 
+							this.loading = false;
+							return
+						};
 						let _optionData = _result.map((item) => {
 							item.jsonData = item.jsonData ? JSON.parse(item.jsonData) : {};
 							return {

+ 4 - 1
src/components/pages/testStudent/index.vue

@@ -231,6 +231,7 @@ export default {
       role: this.$route.query.role,
       classid: this.$route.query.classid,
       isN: this.$route.query.isN,
+      tcid: this.$route.query.tcid,
       Juri: "",
       groupList: [],
       JuriList: [],
@@ -329,7 +330,9 @@ export default {
         "&role=" +
         this.role +
         "&isN=" +
-        this.isN
+        this.isN +
+        "&tcid=" +
+        this.tcid
       );
     },
     checkTest(cid) {

+ 14 - 5
src/components/pages/testStudent/view/preview.vue

@@ -27,7 +27,9 @@
       '&role=' +
       role +
       '&isN=' +
-      isN ,
+      isN +
+      '&tcid=' +
+      tcid ,
   }" v-else>表单中心</el-breadcrumb-item>
               <el-breadcrumb-item>
                 <span style="color: rgb(15, 126, 255)">{{ title }}</span>
@@ -71,6 +73,7 @@ export default {
       type: this.$route.query.type,
       updateType: this.$route.query.type,
       isN: this.$route.query.isN,
+      tcid: this.$route.query.tcid,
       steps: 1,
       title: "",
       brief: "",
@@ -124,7 +127,9 @@ export default {
               "&role=" +
               this.role +
               "&isN=" +
-              this.isN 
+              this.isN +
+              "&tcid=" +
+              this.tcid 
             );
           }
         })
@@ -499,7 +504,9 @@ export default {
             "&role=" +
             this.role +
             "&isN=" +
-            this.isN 
+            this.isN +
+            "&tcid=" +
+            this.tcid 
           );
         })
         .catch((err) => {
@@ -512,7 +519,7 @@ export default {
       console.log(cjson);
       let _uid = ''
       if(this.isN == 1){
-        _uid = ''
+        _uid = this.tcid
       }else { 
         _uid = (this.tid) ? this.tid : this.userid
       }
@@ -550,7 +557,9 @@ export default {
               "&role=" +
               this.role +
               "&isN=" +
-              this.isN 
+              this.isN +
+              "&tcid=" +
+              this.tcid 
             );
           }
         })

Some files were not shown because too many files changed in this diff