lsc 11 mēneši atpakaļ
vecāks
revīzija
666c3309a0

+ 1 - 1
dist/index.html

@@ -32,7 +32,7 @@
       width: 100%;
       background: #e6eaf0;
       font-family: '黑体';
-    }</style><link href=./static/css/app.5d6f1e5ab9322d13b99afaafadbf2ab3.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.ee476e38463461edca63.js></script><script type=text/javascript src=./static/js/app.dcf3fe59eb808bd8d2a5.js></script></body></html><script>function stopSafari() {
+    }</style><link href=./static/css/app.2c0a633579aaea9959e7418b3c919416.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.ee476e38463461edca63.js></script><script type=text/javascript src=./static/js/app.c1048e73c002c36b5a85.js></script></body></html><script>function stopSafari() {
     //阻止safari浏览器双击放大功能
     let lastTouchEnd = 0  //更新手指弹起的时间
     document.documentElement.addEventListener("touchstart", function (event) {

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/static/css/app.2c0a633579aaea9959e7418b3c919416.css


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/static/css/app.2c0a633579aaea9959e7418b3c919416.css.map


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/static/css/app.5d6f1e5ab9322d13b99afaafadbf2ab3.css


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/static/css/app.5d6f1e5ab9322d13b99afaafadbf2ab3.css.map


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/static/js/app.c1048e73c002c36b5a85.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/static/js/app.c1048e73c002c36b5a85.js.map


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/static/js/manifest.571c38d63f24b1ae9e16.js.map


+ 53 - 10
src/components/pages/aiAddCourse/addCourse.vue

@@ -1598,7 +1598,7 @@
                 {{isuseT ? "重新生成概况和目标" : "生成概况和目标"}}
               </button>
               <!-- ((isuseT || courseTextBool) && (!yiKeTemplateArray.includes(templateid))) &&  -->
-              <el-tooltip effect="light" content="右键单击可配置提示词" placement="bottom"  v-if="steps < 4">
+              <el-tooltip effect="light" content="右键单击可配置提示词" placement="top"  v-if="steps < 4">
                 <button class="c_pub_button_confirm" @click="nextSteps(2)"
                   @contextmenu.prevent="nextSteps(1)" v-if="templateid != '4480d65a-1e48-11ef-bee5-005056b86db5' && templateid != 'cf5722a4-401b-11ef-b873-005056b86dc3'" :class="{
                     pub_btn_next_img: steps != 3,
@@ -1616,6 +1616,12 @@
                   : "下一步" }}
                 </button>
               </el-tooltip>
+              <!-- <el-tooltip effect="light" content="右键单击可配置提示词" placement="top"  v-if="isOutline2 && cidType == 0">
+                <button class="c_pub_button_confirm" @click="nextSteps(2, 2)" @contextmenu.prevent="nextSteps(1, 2)" :class="{
+                      pub_btn_next_img: steps != 3,
+                      pub_btn_finish_img: steps == 3,
+                    }">下一步2</button>
+              </el-tooltip> -->
             </div>
           </div>
           <div class="rightBox" v-if="steps == 2" :style="{
@@ -2369,6 +2375,11 @@
                                 @contextmenu.prevent="openAiDialog2(1, 'aiTask2',itemTaskIndex)"
                                 @click="openAiDialog2(2, 'aiTask2',itemTaskIndex)">重新生成任务</button>
                             </el-tooltip>
+                            <!-- <el-tooltip effect="light" content="右键单击可配置提示词" placement="bottom">
+                              <button class="c_pub_button_confirm" style="margin: 0 0 0 20px;"
+                                @contextmenu.prevent="openAiDialog2(1, 'aiTask2',itemTaskIndex)"
+                                @click="openAiDialog2(2, 'aiTask2',itemTaskIndex)">重新生成任务2</button>
+                            </el-tooltip> -->
                           </div>
                         </div>
                         <!-- padding: 20px; -->
@@ -5029,8 +5040,10 @@
                                     <span>核心素养:</span>
                                     <input type="input" v-model="itemTask.eList[eIndex].target" placeholder="填写核心素养"  style="width: calc(100% - 280px);"/>
                                     <el-switch
+                                      class="rateSwitch"
                                       style="margin-left: auto;"
                                       v-model="itemTask.eList[eIndex].isai"
+                                      active-color="#0061FF"
                                       active-text="人工评分"
                                       inactive-text="AI评分"
                                       active-value="2"
@@ -8036,7 +8049,7 @@ export default {
       }
       this.$refs.stepBox.scrollTop = 0;
     },
-    nextSteps(clickType) {
+    nextSteps(clickType, ttype) {
       // if (this.cidType == 1) {
       if (this.steps == 1) {
         if (this.courseName != "") {
@@ -8180,10 +8193,15 @@ export default {
 
           if (this.cid) {
             this.loading = true
+            functionA()
           } else {
-            this.openAiDialog(clickType, "aiTask2", 'all')
+            if(ttype == 2){
+              this.openAiDialog(clickType, "aiTask3", 'all', functionA)
+            }else {
+              this.openAiDialog(clickType, "aiTask2", 'all', functionA)
+            }
           }
-          functionA()
+          
         } else {
           this.$message.error("请补充填写课程名称");
           return;
@@ -11596,12 +11614,15 @@ export default {
             this.aiJson.aiTarget2 = this.aiJson.aiTarget2 ? this.aiJson.aiTarget2 : '请根据课程标题<课程标题>,**从你的知识库去检索5个最相关的信息**,如果没有相关的信息,请你根据已有的知识,并参考#参考资料中的内容,生成本课程的教学目标。你仅需要输出与课程目标相关的内容。'
             this.aiJson.aiTargetGet = this.aiJson.aiTargetGet ? this.aiJson.aiTargetGet : '从用户提供的教案资料(文件形式)中,自动提取出课程目标(如不存在课程目标则返回“未提取到目标”。注意,在提取信息方面你绝对不能虚拟出不存在的东西。'
             this.aiJson.aiOutlineDetail2 = this.aiJson.aiOutlineDetail2 ? this.aiJson.aiOutlineDetail2 : '请参考#参考资料,重新生成该任务,生成内容需包含任务名,任务设计,评价标准。注意,你绝对不能重复已有其他任务,也不要输出其他内容'
-            this.aiJson.aiRateRule = '根据<评价维度>和<维度描述>,制定具体的评价细则。 具体的评价细则分为6级——0星,1星,2星,3星,4星,5星。'
+            this.aiJson.aiRateRule = this.aiJson.aiRateRule ? this.aiJson.aiRateRule :'根据<评价维度>和<维度描述>,制定具体的评价细则。 具体的评价细则分为6级——0星,1星,2星,3星,4星,5星。'
             if(this.templateid == '61c628b9-3d96-11ef-b873-005056b86db5'){
               this.aiJson.aiOutlineTask = this.aiJson.aiOutlineTask ? this.aiJson.aiOutlineTask : '请根据<课程名字>以及该课程的<课程简要描述>来为该课程生成100字以内的序列课程任务,序列任务要求彼此连结紧密且没有重复。'
               this.aiJson.aiOutlineDetail = this.aiJson.aiOutlineDetail ? this.aiJson.aiOutlineDetail : '参考<课程名字>、<任务名>和<课程简要描述>的内容,为该序列生成任务详情。任务详情中需要包含教学目标,任务设计和评价标准。'
             }
 
+            // this.aiJson.aiTaskG1 = this.aiJson.aiTaskG1 ? this.aiJson.aiTaskG1 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的任务描述。你的主要任务是输出任务描述,用亲切的口吻告诉学生他们需要做什么。你的输出需要符合# 输出格式与要求'
+            // this.aiJson.aiTaskG2 = this.aiJson.aiTaskG2 ? this.aiJson.aiTaskG2 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的互动工具列表。你的任务是,根据教案中提到的学生活动,为学生选择一些平台上有的互动工具,允许他们提交“证据”(即过程性成果)来展示他们的学习进度或者证明他们的学习成果。举例:如果学生活动有观看视频回答问题,那么你就为这一活动匹配选择【问答】工具,允许学生回答问题或者提出他们自己的疑问,如果学生活动有需要学生设计实验或者撰写报告,选用【文档】工具,如果需要学生记录数据,选用【表格】工具,如果需要学生整理或者梳理信息选用【思维导图】,如果需要学生绘制草图,选用【白板】,如果需要学生提交视频,图片,或者ppt,选用【作业提交】。你的输出需要符合# 输出格式与要求'
+            // this.aiJson.aiTaskG3 = this.aiJson.aiTaskG3 ? this.aiJson.aiTaskG3 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的目标和评价系统。你最主要的任务是提取教案中目标以及评价标准。你的输出需要符合# 输出格式与要求'
 
             // if(this.templateid == '4480d65a-1e48-11ef-bee5-005056b86db5'){
             //   this.aiJson.aiCpoteTask = this.aiJson.aiCpoteTask ? this.aiJson.aiCpoteTask : '请根据<任务簇>,帮我取出里面对应的任务名'
@@ -13583,7 +13604,7 @@ export default {
                 this.aiJson.aiTarget2 = this.aiJson.aiTarget2 ? this.aiJson.aiTarget2 : '请根据课程标题<课程标题>,**从你的知识库去检索5个最相关的信息**,如果没有相关的信息,请你根据已有的知识,并参考#参考资料中的内容,生成本课程的教学目标。你仅需要输出与课程目标相关的内容。'
                 this.aiJson.aiTargetGet = this.aiJson.aiTargetGet ? this.aiJson.aiTargetGet : '从用户提供的教案资料(文件形式)中,自动提取出课程目标(如不存在课程目标则返回“未提取到目标”。注意,在提取信息方面你绝对不能虚拟出不存在的东西。'
                 this.aiJson.aiOutlineDetail2 = this.aiJson.aiOutlineDetail2 ? this.aiJson.aiOutlineDetail2 : '请参考#参考资料,重新生成该任务,生成内容需包含任务名,任务设计,评价标准。注意,你绝对不能重复已有其他任务,也不要输出其他内容'
-                this.aiJson.aiRateRule = '根据<评价维度>和<维度描述>,制定具体的评价细则。 具体的评价细则分为6级——0星,1星,2星,3星,4星,5星。'
+                this.aiJson.aiRateRule = this.aiJson.aiRateRule ? this.aiJson.aiRateRule : '根据<评价维度>和<维度描述>,制定具体的评价细则。 具体的评价细则分为6级——0星,1星,2星,3星,4星,5星。'
                 if(this.templateid == '61c628b9-3d96-11ef-b873-005056b86db5'){
                   this.aiJson.aiOutlineTask = this.aiJson.aiOutlineTask ? this.aiJson.aiOutlineTask : '请根据<课程名字>以及该课程的<课程简要描述>来为该课程生成100字以内的序列课程任务,序列任务要求彼此连结紧密且没有重复。'
                   this.aiJson.aiOutlineDetail = this.aiJson.aiOutlineDetail ? this.aiJson.aiOutlineDetail : '参考<课程名字>、<任务名>和<课程简要描述>的内容,为该序列生成任务详情。任务详情中需要包含教学目标,任务设计和评价标准。'
@@ -13725,7 +13746,7 @@ export default {
                 this.aiJson.aiTarget2 = this.aiJson.aiTarget2 ? this.aiJson.aiTarget2 : '请根据课程标题<课程标题>,**从你的知识库去检索5个最相关的信息**,如果没有相关的信息,请你根据已有的知识,并参考#参考资料中的内容,生成本课程的教学目标。你仅需要输出与课程目标相关的内容。'
                 this.aiJson.aiTargetGet = this.aiJson.aiTargetGet ? this.aiJson.aiTargetGet : '从用户提供的教案资料(文件形式)中,自动提取出课程目标(如不存在课程目标则返回“未提取到目标”。注意,在提取信息方面你绝对不能虚拟出不存在的东西。'
                 this.aiJson.aiOutlineDetail2 = this.aiJson.aiOutlineDetail2 ? this.aiJson.aiOutlineDetail2 : '请参考#参考资料,重新生成该任务,生成内容需包含任务名,任务设计,评价标准。注意,你绝对不能重复已有其他任务,也不要输出其他内容'
-                this.aiJson.aiRateRule = '根据<评价维度>和<维度描述>,制定具体的评价细则。 具体的评价细则分为6级——0星,1星,2星,3星,4星,5星。'
+                this.aiJson.aiRateRule = this.aiJson.aiRateRule ? this.aiJson.aiRateRule : '根据<评价维度>和<维度描述>,制定具体的评价细则。 具体的评价细则分为6级——0星,1星,2星,3星,4星,5星。'
                 if(this.templateid == '61c628b9-3d96-11ef-b873-005056b86db5'){
                   this.aiJson.aiOutlineTask = this.aiJson.aiOutlineTask ? this.aiJson.aiOutlineTask : '请根据<课程名字>以及该课程的<课程简要描述>来为该课程生成100字以内的序列课程任务,序列任务要求彼此连结紧密且没有重复。'
                   this.aiJson.aiOutlineDetail = this.aiJson.aiOutlineDetail ? this.aiJson.aiOutlineDetail : '参考<课程名字>、<任务名>和<课程简要描述>的内容,为该序列生成任务详情。任务详情中需要包含教学目标,任务设计和评价标准。'
@@ -15856,7 +15877,7 @@ export default {
         }
         this.aitype = "aiTask2"
         this.aiText = this.aiJson.aiTask
-        this.aiCallBack = callback
+        this.aiCallBack = [callback, index]
       } else if (type == "aiDetail1") {
         if (this.ttaskDetailLoading.indexOf('task-' + index) !== -1) {
           this.$message({
@@ -16213,7 +16234,7 @@ ${(this.templateid == "4480d65a-1e48-11ef-bee5-005056b86db5" || this.templateid
         this.loading = true
         this.aiGet3(message, this.aiCallBack)
       } else if (this.aitype == "aiTask2") {
-        if(this.aiCallBack == 'all'){
+        if(this.aiCallBack[0] == 'all'){
           for(var _task = 0; _task < this.unitJson[0].chapterInfo[0].taskJson.length; _task++){
             var _text = `任务名称:${this.unitJson[0].chapterInfo[0].taskJson[_task].task} 任务描述:${this.unitJson[0].chapterInfo[0].taskJson[_task].taskDetail3.replaceAll('#','').replaceAll('*','').replaceAll('-','').replaceAll('\n','')} \n`
         let message = `NOTICE
@@ -16270,8 +16291,9 @@ ${(this.templateid == "4480d65a-1e48-11ef-bee5-005056b86db5" || this.templateid
 # Format example
 {"detail":"面向学生的任务描述","elist":[{"value":"评价维度","detail":"维度描述",target:"评价目标","score":5},{"value":"评价维度","detail":"维度描述",target:"评价目标","score":5},{"value":"评价维度","detail":"维度描述",target:"评价目标","score":5}],"toolChoose":[{"tool":"工具名","detail":"工具描述"},{"tool":"工具名","detail":"工具描述"}]}`
         this.taskLoading[this.aiCallBack] = true
-        this.aiGet32(message, this.aiCallBack)
+        this.aiGet32(message, this.aiCallBack[0])
         }
+        this.aiCallBack[1] ? this.aiCallBack[1]() : ''
       } else if (this.aitype == "aiDetail1") {
         this.aiDetail(msg, this.aiIndex)
       } else if (this.aitype == "aiDetail2") {
@@ -25583,4 +25605,25 @@ ol {
   top: calc(50% + 70px);
   transform: translateX(-50%);
 }
+
+.rateSwitch >>> .el-switch__label.is-active {
+  color: #0061FF;
+}
+
+.rateSwitch >>> .el-switch__label--left{
+  display: flex;
+  align-items: center;
+}
+
+.rateSwitch >>> .el-switch__label--left::before{
+  content: "";
+  width: 14px;
+  height: 14px;
+  min-width: 14px;
+  min-height: 14px;
+  background-size: 100% 100%;
+  display: block;
+  margin-right: 7px;
+  background-image: url(../../../assets/icon/new/u_op.png);
+}
 </style>

+ 10 - 1
src/components/pages/aiAddCourse/aiDialog.vue

@@ -15,6 +15,11 @@
                 <textarea rows="10" class="binfo_input binfo_textarea" cols v-model="text2"
                       placeholder="请输入...."></textarea>
             </div>
+            <div class="ai_detail" v-if="text3 && type == 1" style="margin-top: 10px;">
+                <span class="title">默认的提示词3</span>
+                <textarea rows="10" class="binfo_input binfo_textarea" cols v-model="text3"
+                      placeholder="请输入...."></textarea>
+            </div>
         </div>
         <span slot="footer" class="dialog-footer">
             <el-button @click="confirm" type="primary">确 定</el-button>
@@ -37,6 +42,9 @@ export default {
         aiText2: {
             type: String,
         },
+        aiText3: {
+            type: String,
+        },
         clickType: {
             type: Number
         }
@@ -53,6 +61,7 @@ export default {
             if(newValue){
                 this.text = JSON.parse(JSON.stringify(this.aiText))
                 this.text2 = this.aiText2 ? JSON.parse(JSON.stringify(this.aiText2)) : ''
+                this.text3 = this.aiText3 ? JSON.parse(JSON.stringify(this.aiText3)) : ''
                 if(this.clickType == 2){
                     this.confirm();
                 }
@@ -68,7 +77,7 @@ export default {
             this.$emit('update:dialogVisibleAiD', false)
         },
         confirm(){
-            this.$emit("aiConfirm",this.text,this.text2);
+            this.$emit("aiConfirm",this.text,this.text2,this.text3);
             this.$emit('update:dialogVisibleAiD', false)
         }
     },

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels