|
@@ -177,11 +177,23 @@
|
|
</div>
|
|
</div>
|
|
<div class="info_box_t" v-if="!yiKeTemplateArray.includes(templateid)">
|
|
<div class="info_box_t" v-if="!yiKeTemplateArray.includes(templateid)">
|
|
<div class="info_box_t_box">
|
|
<div class="info_box_t_box">
|
|
- <el-switch v-model="isuseT" active-text="是否从已有教案生成"
|
|
+ <!-- <el-switch v-model="isuseT" active-text="是否从已有教案生成"
|
|
- style="justify-content: center; min-width: 175px"></el-switch>
|
|
+ style="justify-content: center; min-width: 175px"></el-switch> -->
|
|
|
|
+ <span>生成模式:</span>
|
|
|
|
+ <el-radio-group v-model="isuseT" style="display: flex; align-items: center">
|
|
|
|
+ <!-- <div class="all_choose info_radio">
|
|
|
|
+ <el-radio :label="1">引导模式生成</el-radio>
|
|
|
|
+ </div> -->
|
|
|
|
+ <div class="all_choose info_radio" style="margin-left: 10px">
|
|
|
|
+ <el-radio :label="true">从已有教案生成</el-radio>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="all_choose info_radio" style="margin-left: 10px">
|
|
|
|
+ <el-radio :label="false">从零开始生成</el-radio>
|
|
|
|
+ </div>
|
|
|
|
+ </el-radio-group>
|
|
</div>
|
|
</div>
|
|
<div class="info_box_t_box">
|
|
<div class="info_box_t_box">
|
|
- <span>AI生成模式:</span>
|
|
+ <span>生成风格:</span>
|
|
<div class="mode_box">
|
|
<div class="mode_box">
|
|
<span :class="{active: mode == 1}" @click="mode = 1">精确</span>
|
|
<span :class="{active: mode == 1}" @click="mode = 1">精确</span>
|
|
<!-- <span :class="{active: mode == 2}" @click="mode = 2">平衡</span> -->
|
|
<!-- <span :class="{active: mode == 2}" @click="mode = 2">平衡</span> -->
|
|
@@ -374,7 +386,7 @@
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <div class="whiteBg" style="background: #fff; margin: 0 0 10px;padding: 0 0 15px;" v-if="(!yiKeTemplateArray.includes(templateid)) && isuseT">
|
|
+ <div class="whiteBg" style="background: #fff; margin: 0 0 10px;padding: 0 0 15px;" v-if="(!yiKeTemplateArray.includes(templateid)) && isuseT === true">
|
|
<div style="position: relative;
|
|
<div style="position: relative;
|
|
background: #fff;
|
|
background: #fff;
|
|
box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
@@ -528,7 +540,7 @@
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <div class="whiteBg" :style="{ minHeight: teacherTextLoading ? '250px' : 'auto'}" style="background: #fff; margin: 0 0 10px;padding: 0 0 15px;position: relative" v-loading="teacherTextLoading" element-loading-text="小可正在努力生成中,请稍等..." v-if="(!yiKeTemplateArray.includes(templateid)) && isuseT">
|
|
+ <div class="whiteBg" :style="{ minHeight: teacherTextLoading ? '250px' : 'auto'}" style="background: #fff; margin: 0 0 10px;padding: 0 0 15px;position: relative" v-loading="teacherTextLoading" element-loading-text="小可正在努力生成中,请稍等..." v-if="(!yiKeTemplateArray.includes(templateid)) && isuseT === true">
|
|
<div class="c_pub_button_confirm stopBtn" v-if="teacherTextLoading && isTeacherTextCancelToken" @click="cancelAjax('teacherText')">停止</div>
|
|
<div class="c_pub_button_confirm stopBtn" v-if="teacherTextLoading && isTeacherTextCancelToken" @click="cancelAjax('teacherText')">停止</div>
|
|
<div class="whiteBg" style="border-radius: 0; margin-top: 15px">
|
|
<div class="whiteBg" style="border-radius: 0; margin-top: 15px">
|
|
<div class="c_info_title">
|
|
<div class="c_info_title">
|
|
@@ -560,7 +572,7 @@
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <div class="whiteBg" :style="{ minHeight: targetTextLoading ? '250px' : 'auto'}" style="background: #fff; margin: 0 0 10px;padding: 0 0 15px;" v-loading="targetTextLoading" element-loading-text="小可正在努力生成中,请稍等..." v-if="(!yiKeTemplateArray.includes(templateid)) && isuseT && templateid != '4480d65a-1e48-11ef-bee5-005056b86db5' && templateid != 'cf5722a4-401b-11ef-b873-005056b86dc3'">
|
|
+ <div class="whiteBg" :style="{ minHeight: targetTextLoading ? '250px' : 'auto'}" style="background: #fff; margin: 0 0 10px;padding: 0 0 15px;" v-loading="targetTextLoading" element-loading-text="小可正在努力生成中,请稍等..." v-if="(!yiKeTemplateArray.includes(templateid)) && isuseT === true && templateid != '4480d65a-1e48-11ef-bee5-005056b86db5' && templateid != 'cf5722a4-401b-11ef-b873-005056b86dc3'">
|
|
<div class="c_pub_button_confirm stopBtn" v-if="targetTextLoading && isTargetCancelToken1" @click="cancelAjax('target1')">停止</div>
|
|
<div class="c_pub_button_confirm stopBtn" v-if="targetTextLoading && isTargetCancelToken1" @click="cancelAjax('target1')">停止</div>
|
|
<div class="whiteBg" style="border-radius: 0; margin-top: 15px">
|
|
<div class="whiteBg" style="border-radius: 0; margin-top: 15px">
|
|
<div class="c_info_title">
|
|
<div class="c_info_title">
|
|
@@ -887,7 +899,7 @@
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <div class="whiteBg" :style="{ minHeight: textLoading ? '250px' : 'auto'}" style="background: #fff; margin: 0 0 10px;padding: 0 0 15px;" v-loading="textLoading" element-loading-text="小可正在努力生成中,请稍等..." v-if="(!isuseT && (!yiKeTemplateArray.includes(templateid))) || (isuseT && (!yiKeTemplateArray.includes(templateid)) && courseTextBool) || (yiKeTemplateArray.includes(templateid))">
|
|
+ <div class="whiteBg" :style="{ minHeight: textLoading ? '250px' : 'auto'}" style="background: #fff; margin: 0 0 10px;padding: 0 0 15px;" v-loading="textLoading" element-loading-text="小可正在努力生成中,请稍等..." v-if="(!(isuseT === true) && !(isuseT === 1) && (!yiKeTemplateArray.includes(templateid))) || (isuseT === true && (!yiKeTemplateArray.includes(templateid)) && courseTextBool) || (yiKeTemplateArray.includes(templateid))">
|
|
<div class="c_pub_button_confirm stopBtn" v-if="textLoading && isTextCancelToken" @click="cancelAjax('text')">停止</div>
|
|
<div class="c_pub_button_confirm stopBtn" v-if="textLoading && isTextCancelToken" @click="cancelAjax('text')">停止</div>
|
|
<div class="whiteBg" style="border-radius: 0; margin-top: 15px">
|
|
<div class="whiteBg" style="border-radius: 0; margin-top: 15px">
|
|
<div class="c_info_title" style="margin: 0 20px 0 20px;">
|
|
<div class="c_info_title" style="margin: 0 20px 0 20px;">
|
|
@@ -920,7 +932,49 @@
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <div class="whiteBg" :style="{ minHeight: targetTextLoading2 ? '250px' : 'auto'}" style="background: #fff; margin: 0 0 10px;padding: 0 0 15px;" v-loading="targetTextLoading2" element-loading-text="小可正在努力生成中,请稍等..." v-if="((!isuseT && (!yiKeTemplateArray.includes(templateid))) || (isuseT && (!yiKeTemplateArray.includes(templateid)) && courseTextBool)) && templateid != '4480d65a-1e48-11ef-bee5-005056b86db5' && templateid != 'cf5722a4-401b-11ef-b873-005056b86dc3'">
|
|
+ <div class="whiteBg" style="background: #fff; margin: 0 0 10px;padding: 0 0 15px;" v-loading="textLoading" element-loading-text="小可正在努力生成中,请稍等..." v-if="(isuseT === 1)">
|
|
|
|
+ <div class="whiteBg" style="border-radius: 0; margin-top: 15px">
|
|
|
|
+ <div class="c_info_title" style="margin: 0 20px 0 20px;position:relative;">
|
|
|
|
+ 课程概况<span class="inter_setting" @click="openInterPanSetting"></span>
|
|
|
|
+ <div class="inter_setting_panel" v-show="interSetting">
|
|
|
|
+ <div class="panel_title">配置工作流</div>
|
|
|
|
+ <div class="panel_tips">您可在创作者中心中创建工作流后,复制工作流链接并贴入</div>
|
|
|
|
+ <div class="panel_input">
|
|
|
|
+ <input type="text" :placeholder="this.aiJson.agentid ? this.aiJson.agentid : '请输入agentid'" class="binfo_input" v-model="agentid"/>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="panel_button">
|
|
|
|
+ <button class="c_pub_button_confirm" @click="setAgentid">确认</button>
|
|
|
|
+ <button class="c_pub_button_confirm" @click="rebuildAgentid" v-if="istemplate != 1">复原</button>
|
|
|
|
+ <button class="c_pub_button_return" @click="cancelInterSetting">取消</button>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ <button class="c_pub_button_confirm" style="margin: 0 0 0 auto;" @click="interPan = !interPan">{{ interPan ? '折叠' : '展开'}}</button>
|
|
|
|
+ </div>
|
|
|
|
+ <div style="width: 100%; padding: 0px 20px; box-sizing: border-box;display:flex;">
|
|
|
|
+ <div class="inter_box" v-show="interPan">
|
|
|
|
+ <iframe :src="interUrl" frameborder="0"></iframe>
|
|
|
|
+ </div>
|
|
|
|
+ <div style="width: calc(100%);height: 100%" class='op_task_box'>
|
|
|
|
+ <textarea style="height: 500px" class="binfo_input binfo_textarea" cols v-model="courseText"
|
|
|
|
+ placeholder="请输入课程简要描述" v-if="courseTextB"></textarea>
|
|
|
|
+ <div class="markBox vditor-reset" style="white-space:pre-wrap;height: 500px;overflow-y:auto" v-text="courseText" v-else-if="textLoading"></div>
|
|
|
|
+ <div class="markBox vditor-reset" style="height: 500px;overflow-y:auto" v-html="MarkdownT(courseText)" v-else></div>
|
|
|
|
+ <div class="op_box">
|
|
|
|
+ <div class="op_remark"></div>
|
|
|
|
+ <div style="display: flex;">
|
|
|
|
+ <!-- <el-tooltip effect="light" content="右键单击可配置提示词" placement="bottom">
|
|
|
|
+ <div class="r_pub_button_op"
|
|
|
|
+ @contextmenu.prevent="openAiDialog(1, 'aiDetail', 2)"
|
|
|
|
+ @click="openAiDialog(2, 'aiDetail', 2)">智能优化</div>
|
|
|
|
+ </el-tooltip> -->
|
|
|
|
+ <div class="r_pub_button_edit" style="margin-left:10px" @click="courseTextB = !courseTextB">{{ courseTextB ? '确定' : '编辑'}}</div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="whiteBg" :style="{ minHeight: targetTextLoading2 ? '250px' : 'auto'}" style="background: #fff; margin: 0 0 10px;padding: 0 0 15px;" v-loading="targetTextLoading2" element-loading-text="小可正在努力生成中,请稍等..." v-if="((!(isuseT === true) && (!yiKeTemplateArray.includes(templateid))) || (isuseT === true && (!yiKeTemplateArray.includes(templateid)) && courseTextBool)) && templateid != '4480d65a-1e48-11ef-bee5-005056b86db5' && templateid != 'cf5722a4-401b-11ef-b873-005056b86dc3'">
|
|
<div class="c_pub_button_confirm stopBtn" v-if="targetTextLoading2 && isTargetCancelToken2" @click="cancelAjax('target2')">停止</div>
|
|
<div class="c_pub_button_confirm stopBtn" v-if="targetTextLoading2 && isTargetCancelToken2" @click="cancelAjax('target2')">停止</div>
|
|
<div class="whiteBg" style="border-radius: 0; margin-top: 15px">
|
|
<div class="whiteBg" style="border-radius: 0; margin-top: 15px">
|
|
<div class="c_info_title" style="flex-wrap: wrap; position:relative;margin:0 20px;">
|
|
<div class="c_info_title" style="flex-wrap: wrap; position:relative;margin:0 20px;">
|
|
@@ -1601,11 +1655,11 @@
|
|
<button class="c_pub_button_return pub_btn_last_img" v-if="steps > 1 && steps != 5" @click="lastSteps">
|
|
<button class="c_pub_button_return pub_btn_last_img" v-if="steps > 1 && steps != 5" @click="lastSteps">
|
|
{{ steps == 4 ? "返回课程" : "上一步" }}
|
|
{{ steps == 4 ? "返回课程" : "上一步" }}
|
|
</button>
|
|
</button>
|
|
- <button class="c_pub_button_confirm" v-if="isuseT && !isOutline && !courseTextBool && (!yiKeTemplateArray.includes(templateid)) && templateid != '4480d65a-1e48-11ef-bee5-005056b86db5' && templateid != 'cf5722a4-401b-11ef-b873-005056b86dc3'" @click="clickGenTT2">
|
|
+ <button class="c_pub_button_confirm" v-if="isuseT === true && !isOutline && !courseTextBool && (!yiKeTemplateArray.includes(templateid)) && templateid != '4480d65a-1e48-11ef-bee5-005056b86db5' && templateid != 'cf5722a4-401b-11ef-b873-005056b86dc3'" @click="clickGenTT2">
|
|
- {{isuseT ? "重新生成概况和目标" : "生成概况和目标"}}
|
|
+ {{isuseT === true ? "重新生成概况和目标" : "生成概况和目标"}}
|
|
</button>
|
|
</button>
|
|
- <button class="c_pub_button_confirm" v-else-if="isuseT && !isOutline && !courseTextBool && (!yiKeTemplateArray.includes(templateid))" @click="clickGenTT2">
|
|
+ <button class="c_pub_button_confirm" v-else-if="isuseT === true && !isOutline && !courseTextBool && (!yiKeTemplateArray.includes(templateid))" @click="clickGenTT2">
|
|
- {{isuseT ? "重新生成概况" : "生成概况"}}
|
|
+ {{isuseT === true ? "重新生成概况" : "生成概况"}}
|
|
</button>
|
|
</button>
|
|
<!-- ((isuseT || courseTextBool) && (!yiKeTemplateArray.includes(templateid))) && -->
|
|
<!-- ((isuseT || courseTextBool) && (!yiKeTemplateArray.includes(templateid))) && -->
|
|
<el-tooltip effect="light" content="右键单击可配置提示词" placement="top" v-if="steps < 4">
|
|
<el-tooltip effect="light" content="右键单击可配置提示词" placement="top" v-if="steps < 4">
|
|
@@ -5351,6 +5405,9 @@
|
|
<aiTips ttitle="任务详情" title="任务评价优化" :detail="aiJson.aiDetail4" pan="aiDetail4" @setAiJson="setAiJson" />
|
|
<aiTips ttitle="任务详情" title="任务评价优化" :detail="aiJson.aiDetail4" pan="aiDetail4" @setAiJson="setAiJson" />
|
|
<aiTips ttitle="任务详情" title="生成评价细则" :detail="aiJson.aiRateRule" pan="aiRateRule" @setAiJson="setAiJson"/>
|
|
<aiTips ttitle="任务详情" title="生成评价细则" :detail="aiJson.aiRateRule" pan="aiRateRule" @setAiJson="setAiJson"/>
|
|
</div>
|
|
</div>
|
|
|
|
+ <div class="leftBar2" v-if="istemplate != 1 && templateid == 'cf5722a4-401b-11ef-b873-005056b86cd2'">
|
|
|
|
+ <aiBoxRight :courseId="courseId" :unitJson="unitJson"></aiBoxRight>
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
<el-dialog title="提示" :visible.sync="dialogVisible" :append-to-body="true" width="25%" :before-close="handleClose"
|
|
<el-dialog title="提示" :visible.sync="dialogVisible" :append-to-body="true" width="25%" :before-close="handleClose"
|
|
class="dialog_diy2 customWidth">
|
|
class="dialog_diy2 customWidth">
|
|
@@ -6885,6 +6942,7 @@ import englishRight from "../components/englishRight.vue";
|
|
import evaBox from "../evaBox/index.vue";
|
|
import evaBox from "../evaBox/index.vue";
|
|
import EnglishVoice from "../EnglishVoice/index.vue";
|
|
import EnglishVoice from "../EnglishVoice/index.vue";
|
|
import aiBox from './aiBox.vue'
|
|
import aiBox from './aiBox.vue'
|
|
|
|
+import aiBoxRight from './aiBoxRight.vue'
|
|
import aiDialog from './aiDialog'
|
|
import aiDialog from './aiDialog'
|
|
import aiTips from './aiTips.vue'
|
|
import aiTips from './aiTips.vue'
|
|
import tipsDialog from './tipsDialog.vue'
|
|
import tipsDialog from './tipsDialog.vue'
|
|
@@ -6917,6 +6975,7 @@ export default {
|
|
evaBox,
|
|
evaBox,
|
|
EnglishVoice,
|
|
EnglishVoice,
|
|
aiBox,
|
|
aiBox,
|
|
|
|
+ aiBoxRight,
|
|
aiDialog,
|
|
aiDialog,
|
|
aiTips,
|
|
aiTips,
|
|
tipsDialog,
|
|
tipsDialog,
|
|
@@ -7348,7 +7407,10 @@ export default {
|
|
isTeacherTextCancelSource: null,
|
|
isTeacherTextCancelSource: null,
|
|
isTargetCancelSource1: null,
|
|
isTargetCancelSource1: null,
|
|
isTargetCancelSource2: null,
|
|
isTargetCancelSource2: null,
|
|
- fileidArray: []
|
|
+ fileidArray: [],
|
|
|
|
+ interPan: true,
|
|
|
|
+ agentid: "",
|
|
|
|
+ interSetting: false
|
|
};
|
|
};
|
|
},
|
|
},
|
|
directives: {
|
|
directives: {
|
|
@@ -7510,7 +7572,18 @@ export default {
|
|
}
|
|
}
|
|
return false;
|
|
return false;
|
|
};
|
|
};
|
|
- }
|
|
+ },
|
|
|
|
+ interUrl: function () {
|
|
|
|
+ let agentid = this.aiJson.agentid
|
|
|
|
+ let sagentid = this.aiJson.sagentid
|
|
|
|
+ let url = ''
|
|
|
|
+ if(sagentid){
|
|
|
|
+ url = 'https://beta.cloud.cocorobo.cn/aigpt/#/js?active_role=6&agentid='+sagentid+'&sagentid='+agentid
|
|
|
|
+ }else{
|
|
|
|
+ url = 'https://beta.cloud.cocorobo.cn/aigpt/#/js?active_role=6&agentid='+agentid+'&sagentid='+agentid
|
|
|
|
+ }
|
|
|
|
+ return url;
|
|
|
|
+ },
|
|
},
|
|
},
|
|
watch: {
|
|
watch: {
|
|
unitIndex(newValue, oldValue) {
|
|
unitIndex(newValue, oldValue) {
|
|
@@ -11709,6 +11782,9 @@ export default {
|
|
this.aiJson.aiTaskG2 = this.aiJson.aiTaskG2 ? this.aiJson.aiTaskG2 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的互动工具列表。你的任务是,根据教案中提到的学生活动,为学生选择一些平台上有的互动工具,允许他们提交“证据”(即过程性成果)来展示他们的学习进度或者证明他们的学习成果。举例:如果学生活动有观看视频回答问题,那么你就为这一活动匹配选择【问答】工具,允许学生回答问题或者提出他们自己的疑问,如果学生活动有需要学生设计实验或者撰写报告,选用【文档】工具,如果需要学生记录数据,选用【表格】工具,如果需要学生整理或者梳理信息选用【思维导图】,如果需要学生绘制草图,选用【电子白板】,如果需要学生提交视频,图片,或者ppt,选用【作业提交】。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG2 = this.aiJson.aiTaskG2 ? this.aiJson.aiTaskG2 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的互动工具列表。你的任务是,根据教案中提到的学生活动,为学生选择一些平台上有的互动工具,允许他们提交“证据”(即过程性成果)来展示他们的学习进度或者证明他们的学习成果。举例:如果学生活动有观看视频回答问题,那么你就为这一活动匹配选择【问答】工具,允许学生回答问题或者提出他们自己的疑问,如果学生活动有需要学生设计实验或者撰写报告,选用【文档】工具,如果需要学生记录数据,选用【表格】工具,如果需要学生整理或者梳理信息选用【思维导图】,如果需要学生绘制草图,选用【电子白板】,如果需要学生提交视频,图片,或者ppt,选用【作业提交】。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG3 = this.aiJson.aiTaskG3 ? this.aiJson.aiTaskG3 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的目标和评价系统。你最主要的任务是提取教案中目标以及评价标准。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG3 = this.aiJson.aiTaskG3 ? this.aiJson.aiTaskG3 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的目标和评价系统。你最主要的任务是提取教案中目标以及评价标准。你的输出需要符合# 输出格式与要求'
|
|
|
|
|
|
|
|
+ this.aiJson.agentid = this.aiJson.agentid ? this.aiJson.agentid : 'agentid'
|
|
|
|
+ this.aiJson.sagentid = this.aiJson.sagentid ? this.aiJson.sagentid : ''
|
|
|
|
+
|
|
// if(this.templateid == '4480d65a-1e48-11ef-bee5-005056b86db5'){
|
|
// if(this.templateid == '4480d65a-1e48-11ef-bee5-005056b86db5'){
|
|
// this.aiJson.aiCpoteTask = this.aiJson.aiCpoteTask ? this.aiJson.aiCpoteTask : '请根据<任务簇>,帮我取出里面对应的任务名'
|
|
// this.aiJson.aiCpoteTask = this.aiJson.aiCpoteTask ? this.aiJson.aiCpoteTask : '请根据<任务簇>,帮我取出里面对应的任务名'
|
|
// }
|
|
// }
|
|
@@ -13698,6 +13774,8 @@ export default {
|
|
this.aiJson.aiTaskG2 = this.aiJson.aiTaskG2 ? this.aiJson.aiTaskG2 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的互动工具列表。你的任务是,根据教案中提到的学生活动,为学生选择一些平台上有的互动工具,允许他们提交“证据”(即过程性成果)来展示他们的学习进度或者证明他们的学习成果。举例:如果学生活动有观看视频回答问题,那么你就为这一活动匹配选择【问答】工具,允许学生回答问题或者提出他们自己的疑问,如果学生活动有需要学生设计实验或者撰写报告,选用【文档】工具,如果需要学生记录数据,选用【表格】工具,如果需要学生整理或者梳理信息选用【思维导图】,如果需要学生绘制草图,选用【白板】,如果需要学生提交视频,图片,或者ppt,选用【作业提交】。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG2 = this.aiJson.aiTaskG2 ? this.aiJson.aiTaskG2 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的互动工具列表。你的任务是,根据教案中提到的学生活动,为学生选择一些平台上有的互动工具,允许他们提交“证据”(即过程性成果)来展示他们的学习进度或者证明他们的学习成果。举例:如果学生活动有观看视频回答问题,那么你就为这一活动匹配选择【问答】工具,允许学生回答问题或者提出他们自己的疑问,如果学生活动有需要学生设计实验或者撰写报告,选用【文档】工具,如果需要学生记录数据,选用【表格】工具,如果需要学生整理或者梳理信息选用【思维导图】,如果需要学生绘制草图,选用【白板】,如果需要学生提交视频,图片,或者ppt,选用【作业提交】。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG3 = this.aiJson.aiTaskG3 ? this.aiJson.aiTaskG3 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的目标和评价系统。你最主要的任务是提取教案中目标以及评价标准。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG3 = this.aiJson.aiTaskG3 ? this.aiJson.aiTaskG3 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的目标和评价系统。你最主要的任务是提取教案中目标以及评价标准。你的输出需要符合# 输出格式与要求'
|
|
|
|
|
|
|
|
+ this.aiJson.agentid = this.aiJson.agentid ? this.aiJson.agentid : 'agentid'
|
|
|
|
+ this.aiJson.sagentid = this.aiJson.sagentid ? this.aiJson.sagentid : ''
|
|
this.templateid = res.data[3][0].template;
|
|
this.templateid = res.data[3][0].template;
|
|
}catch(error){
|
|
}catch(error){
|
|
console.error(error)
|
|
console.error(error)
|
|
@@ -13722,15 +13800,15 @@ export default {
|
|
this.xuanzeInfoData = JSON.parse(res.data[0][0].setting).xuanzeInfoData ? JSON.parse(res.data[0][0].setting).xuanzeInfoData : [];
|
|
this.xuanzeInfoData = JSON.parse(res.data[0][0].setting).xuanzeInfoData ? JSON.parse(res.data[0][0].setting).xuanzeInfoData : [];
|
|
this.pingjiaInfoData = JSON.parse(res.data[0][0].setting).pingjiaInfoData ? JSON.parse(res.data[0][0].setting).pingjiaInfoData : [];
|
|
this.pingjiaInfoData = JSON.parse(res.data[0][0].setting).pingjiaInfoData ? JSON.parse(res.data[0][0].setting).pingjiaInfoData : [];
|
|
this.infoData2 = JSON.parse(res.data[0][0].setting).infoData2 ? JSON.parse(res.data[0][0].setting).infoData2 : [];
|
|
this.infoData2 = JSON.parse(res.data[0][0].setting).infoData2 ? JSON.parse(res.data[0][0].setting).infoData2 : [];
|
|
- this.isuseT = JSON.parse(res.data[0][0].setting).isuseT ? JSON.parse(res.data[0][0].setting).isuseT : JSON.parse(res.data[0][0].setting).isuseT === false ? false : false;
|
|
+ this.isuseT = JSON.parse(res.data[0][0].setting).isuseT ? JSON.parse(res.data[0][0].setting).isuseT : JSON.parse(res.data[0][0].setting).isuseT === false ? false : 1;
|
|
this.mode = JSON.parse(res.data[0][0].setting).mode ? JSON.parse(res.data[0][0].setting).mode : 1;
|
|
this.mode = JSON.parse(res.data[0][0].setting).mode ? JSON.parse(res.data[0][0].setting).mode : 1;
|
|
this.targetCourseText2 = JSON.parse(res.data[0][0].setting).targetCourseText2 ? JSON.parse(res.data[0][0].setting).targetCourseText2 : '';
|
|
this.targetCourseText2 = JSON.parse(res.data[0][0].setting).targetCourseText2 ? JSON.parse(res.data[0][0].setting).targetCourseText2 : '';
|
|
if(this.targetCourseText2 || (!this.teacherCourseText)){
|
|
if(this.targetCourseText2 || (!this.teacherCourseText)){
|
|
this.courseTextBool = true
|
|
this.courseTextBool = true
|
|
}
|
|
}
|
|
- if(!this.teacherCourseText && !this.teacherCourseText){
|
|
+ // if(!this.teacherCourseText && !this.targetCourseText2){
|
|
- this.isuseT = false
|
|
+ // this.isuseT = 1
|
|
- }
|
|
+ // }
|
|
}catch(error){
|
|
}catch(error){
|
|
console.error(error)
|
|
console.error(error)
|
|
}
|
|
}
|
|
@@ -13848,6 +13926,9 @@ export default {
|
|
this.aiJson.aiTaskG1 = this.aiJson.aiTaskG1 ? this.aiJson.aiTaskG1 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的任务描述。你的主要任务是输出任务描述,用亲切的口吻告诉学生他们需要做什么。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG1 = this.aiJson.aiTaskG1 ? this.aiJson.aiTaskG1 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的任务描述。你的主要任务是输出任务描述,用亲切的口吻告诉学生他们需要做什么。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG2 = this.aiJson.aiTaskG2 ? this.aiJson.aiTaskG2 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的互动工具列表。你的任务是,根据教案中提到的学生活动,为学生选择一些平台上有的互动工具,允许他们提交“证据”(即过程性成果)来展示他们的学习进度或者证明他们的学习成果。举例:如果学生活动有观看视频回答问题,那么你就为这一活动匹配选择【问答】工具,允许学生回答问题或者提出他们自己的疑问,如果学生活动有需要学生设计实验或者撰写报告,选用【文档】工具,如果需要学生记录数据,选用【表格】工具,如果需要学生整理或者梳理信息选用【思维导图】,如果需要学生绘制草图,选用【白板】,如果需要学生提交视频,图片,或者ppt,选用【作业提交】。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG2 = this.aiJson.aiTaskG2 ? this.aiJson.aiTaskG2 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的互动工具列表。你的任务是,根据教案中提到的学生活动,为学生选择一些平台上有的互动工具,允许他们提交“证据”(即过程性成果)来展示他们的学习进度或者证明他们的学习成果。举例:如果学生活动有观看视频回答问题,那么你就为这一活动匹配选择【问答】工具,允许学生回答问题或者提出他们自己的疑问,如果学生活动有需要学生设计实验或者撰写报告,选用【文档】工具,如果需要学生记录数据,选用【表格】工具,如果需要学生整理或者梳理信息选用【思维导图】,如果需要学生绘制草图,选用【白板】,如果需要学生提交视频,图片,或者ppt,选用【作业提交】。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG3 = this.aiJson.aiTaskG3 ? this.aiJson.aiTaskG3 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的目标和评价系统。你最主要的任务是提取教案中目标以及评价标准。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG3 = this.aiJson.aiTaskG3 ? this.aiJson.aiTaskG3 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的目标和评价系统。你最主要的任务是提取教案中目标以及评价标准。你的输出需要符合# 输出格式与要求'
|
|
|
|
+
|
|
|
|
+ this.aiJson.agentid = this.aiJson.agentid ? this.aiJson.agentid : 'agentid'
|
|
|
|
+ this.aiJson.sagentid = this.aiJson.sagentid ? this.aiJson.sagentid : ''
|
|
if(res.data[0][0].cpote){
|
|
if(res.data[0][0].cpote){
|
|
try {
|
|
try {
|
|
this.cpote = JSON.parse(res.data[0][0].cpote);
|
|
this.cpote = JSON.parse(res.data[0][0].cpote);
|
|
@@ -13867,15 +13948,15 @@ export default {
|
|
this.xuanzeInfoData = JSON.parse(res.data[0][0].setting).xuanzeInfoData ? JSON.parse(res.data[0][0].setting).xuanzeInfoData : [];
|
|
this.xuanzeInfoData = JSON.parse(res.data[0][0].setting).xuanzeInfoData ? JSON.parse(res.data[0][0].setting).xuanzeInfoData : [];
|
|
this.pingjiaInfoData = JSON.parse(res.data[0][0].setting).pingjiaInfoData ? JSON.parse(res.data[0][0].setting).pingjiaInfoData : [];
|
|
this.pingjiaInfoData = JSON.parse(res.data[0][0].setting).pingjiaInfoData ? JSON.parse(res.data[0][0].setting).pingjiaInfoData : [];
|
|
this.infoData2 = JSON.parse(res.data[0][0].setting).infoData2 ? this.infoData2.length ? this.infoData2 : JSON.parse(res.data[0][0].setting).infoData2 : [...this.infoData2];
|
|
this.infoData2 = JSON.parse(res.data[0][0].setting).infoData2 ? this.infoData2.length ? this.infoData2 : JSON.parse(res.data[0][0].setting).infoData2 : [...this.infoData2];
|
|
- this.isuseT = JSON.parse(res.data[0][0].setting).isuseT ? JSON.parse(res.data[0][0].setting).isuseT : JSON.parse(res.data[0][0].setting).isuseT === false ? false : false;
|
|
+ this.isuseT = JSON.parse(res.data[0][0].setting).isuseT ? JSON.parse(res.data[0][0].setting).isuseT : JSON.parse(res.data[0][0].setting).isuseT === false ? false : 1;
|
|
this.mode = JSON.parse(res.data[0][0].setting).mode ? JSON.parse(res.data[0][0].setting).mode : 1;
|
|
this.mode = JSON.parse(res.data[0][0].setting).mode ? JSON.parse(res.data[0][0].setting).mode : 1;
|
|
this.targetCourseText2 = JSON.parse(res.data[0][0].setting).targetCourseText2 ? JSON.parse(res.data[0][0].setting).targetCourseText2 : '';
|
|
this.targetCourseText2 = JSON.parse(res.data[0][0].setting).targetCourseText2 ? JSON.parse(res.data[0][0].setting).targetCourseText2 : '';
|
|
if(this.targetCourseText2 || (!this.teacherCourseText)){
|
|
if(this.targetCourseText2 || (!this.teacherCourseText)){
|
|
this.courseTextBool = true
|
|
this.courseTextBool = true
|
|
}
|
|
}
|
|
- if(!this.teacherCourseText && !this.teacherCourseText){
|
|
+ // if(!this.teacherCourseText && !this.targetCourseText2){
|
|
- this.isuseT = false
|
|
+ // this.isuseT = 1
|
|
- }
|
|
+ // }
|
|
}catch(error){
|
|
}catch(error){
|
|
console.error(error)
|
|
console.error(error)
|
|
}
|
|
}
|
|
@@ -15887,6 +15968,33 @@ export default {
|
|
|
|
|
|
this.courseTextBool = true
|
|
this.courseTextBool = true
|
|
},
|
|
},
|
|
|
|
+ openInterPanSetting(){
|
|
|
|
+ this.interSetting = !this.interSetting
|
|
|
|
+ if(this.interSetting){
|
|
|
|
+ if(this.istemplate == 1){
|
|
|
|
+ this.agentid = this.aiJson.agentid
|
|
|
|
+ }else {
|
|
|
|
+ this.agentid = this.aiJson.sagentid
|
|
|
|
+ }
|
|
|
|
+ }else {
|
|
|
|
+ this.agentid = ''
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ setAgentid(){
|
|
|
|
+ if(this.istemplate == 1){
|
|
|
|
+ this.aiJson.agentid = this.agentid
|
|
|
|
+ }else {
|
|
|
|
+ this.aiJson.sagentid = this.agentid
|
|
|
|
+ }
|
|
|
|
+ this.interSetting = false
|
|
|
|
+ },
|
|
|
|
+ rebuildAgentid(){
|
|
|
|
+ this.aiJson.sagentid = ''
|
|
|
|
+ },
|
|
|
|
+ cancelInterSetting(){
|
|
|
|
+ this.agentid = ''
|
|
|
|
+ this.interSetting = false
|
|
|
|
+ },
|
|
openAiDialog2(clickType, type, callback, index, tindex){
|
|
openAiDialog2(clickType, type, callback, index, tindex){
|
|
this.$confirm("重新生成会影响已生成内容,确定重新生成吗?", "提示", {
|
|
this.$confirm("重新生成会影响已生成内容,确定重新生成吗?", "提示", {
|
|
confirmButtonText: "确定",
|
|
confirmButtonText: "确定",
|
|
@@ -22356,6 +22464,8 @@ ${msg}
|
|
this.aiJson.aiTaskG2 = this.aiJson.aiTaskG2 ? this.aiJson.aiTaskG2 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的互动工具列表。你的任务是,根据教案中提到的学生活动,为学生选择一些平台上有的互动工具,允许他们提交“证据”(即过程性成果)来展示他们的学习进度或者证明他们的学习成果。举例:如果学生活动有观看视频回答问题,那么你就为这一活动匹配选择【问答】工具,允许学生回答问题或者提出他们自己的疑问,如果学生活动有需要学生设计实验或者撰写报告,选用【文档】工具,如果需要学生记录数据,选用【表格】工具,如果需要学生整理或者梳理信息选用【思维导图】,如果需要学生绘制草图,选用【白板】,如果需要学生提交视频,图片,或者ppt,选用【作业提交】。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG2 = this.aiJson.aiTaskG2 ? this.aiJson.aiTaskG2 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的互动工具列表。你的任务是,根据教案中提到的学生活动,为学生选择一些平台上有的互动工具,允许他们提交“证据”(即过程性成果)来展示他们的学习进度或者证明他们的学习成果。举例:如果学生活动有观看视频回答问题,那么你就为这一活动匹配选择【问答】工具,允许学生回答问题或者提出他们自己的疑问,如果学生活动有需要学生设计实验或者撰写报告,选用【文档】工具,如果需要学生记录数据,选用【表格】工具,如果需要学生整理或者梳理信息选用【思维导图】,如果需要学生绘制草图,选用【白板】,如果需要学生提交视频,图片,或者ppt,选用【作业提交】。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG3 = this.aiJson.aiTaskG3 ? this.aiJson.aiTaskG3 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的目标和评价系统。你最主要的任务是提取教案中目标以及评价标准。你的输出需要符合# 输出格式与要求'
|
|
this.aiJson.aiTaskG3 = this.aiJson.aiTaskG3 ? this.aiJson.aiTaskG3 : '请根据<教学任务教案> 和 #范例 为该教学任务输出学生任务单中的目标和评价系统。你最主要的任务是提取教案中目标以及评价标准。你的输出需要符合# 输出格式与要求'
|
|
|
|
|
|
|
|
+ this.aiJson.agentid = this.aiJson.agentid ? this.aiJson.agentid : 'agentid'
|
|
|
|
+ this.aiJson.sagentid = this.aiJson.sagentid ? this.aiJson.sagentid : ''
|
|
}
|
|
}
|
|
this.loading = false;
|
|
this.loading = false;
|
|
// this.timer2 = setInterval(() => {
|
|
// this.timer2 = setInterval(() => {
|
|
@@ -22533,6 +22643,20 @@ ${msg}
|
|
margin-right: 10px;
|
|
margin-right: 10px;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+.leftBar2{
|
|
|
|
+ width: 400px;
|
|
|
|
+ min-width: 400px;
|
|
|
|
+ height: calc(100% - 50px);
|
|
|
|
+ overflow: auto;
|
|
|
|
+ border-radius: 5px;
|
|
|
|
+ margin: 25px auto;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+ margin-right: 10px;
|
|
|
|
+ background: #fff;
|
|
|
|
+ padding: 5px;
|
|
|
|
+ border-radius: 5px;
|
|
|
|
+}
|
|
|
|
+
|
|
.basic_box {
|
|
.basic_box {
|
|
margin: 0 auto;
|
|
margin: 0 auto;
|
|
position: relative;
|
|
position: relative;
|
|
@@ -26615,6 +26739,7 @@ ol {
|
|
font-size: 16px;
|
|
font-size: 16px;
|
|
background: #f4f4f4;
|
|
background: #f4f4f4;
|
|
border-radius: 5px;
|
|
border-radius: 5px;
|
|
|
|
+ word-break: break-word;
|
|
}
|
|
}
|
|
|
|
|
|
.info_box_t{
|
|
.info_box_t{
|
|
@@ -26644,6 +26769,10 @@ ol {
|
|
margin: 0 5px 0 0;
|
|
margin: 0 5px 0 0;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+.info_radio >>> .el-radio, .el-radio__input{
|
|
|
|
+ line-height: 18px;
|
|
|
|
+ height: 18px;
|
|
|
|
+}
|
|
|
|
|
|
.mode_box{
|
|
.mode_box{
|
|
display: flex;
|
|
display: flex;
|
|
@@ -26710,4 +26839,53 @@ ol {
|
|
.rateSwitch >>> .el-switch__label--right.is-active::before{
|
|
.rateSwitch >>> .el-switch__label--right.is-active::before{
|
|
background-image: url(../../../assets/icon/new/u_op.png);
|
|
background-image: url(../../../assets/icon/new/u_op.png);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+.inter_box{
|
|
|
|
+ min-width: calc(50%);
|
|
|
|
+ min-height: 500px;
|
|
|
|
+ margin-right: 10px;
|
|
|
|
+
|
|
|
|
+}
|
|
|
|
+.inter_box > iframe{
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 100%;
|
|
|
|
+ border: none;
|
|
|
|
+}
|
|
|
|
+.inter_setting{
|
|
|
|
+ display: block;
|
|
|
|
+ background-image: url(../../../assets/icon/course/setting.svg);
|
|
|
|
+ background-size: 100% 100%;
|
|
|
|
+ width: 20px;
|
|
|
|
+ height: 20px;
|
|
|
|
+ cursor: pointer;
|
|
|
|
+ margin-left: 10px;
|
|
|
|
+}
|
|
|
|
+.inter_setting_panel{
|
|
|
|
+ position: absolute;
|
|
|
|
+ left: 110px;
|
|
|
|
+ top: 30px;
|
|
|
|
+ background: #fff;
|
|
|
|
+ border-radius: 5px;
|
|
|
|
+ box-shadow: 0px 0px 2px 1px #00000017;
|
|
|
|
+ padding: 10px;
|
|
|
|
+}
|
|
|
|
+.panel_title{
|
|
|
|
+ text-align: center;
|
|
|
|
+ font-size: 18px;
|
|
|
|
+ margin-bottom: 10px;
|
|
|
|
+}
|
|
|
|
+.panel_tips{
|
|
|
|
+ font-weight: 500;
|
|
|
|
+ font-size: 14px;
|
|
|
|
+ text-align: center;
|
|
|
|
+ margin-bottom: 10px;
|
|
|
|
+ color: #6d6d6d;
|
|
|
|
+}
|
|
|
|
+.panel_input{
|
|
|
|
+ margin-bottom: 10px;
|
|
|
|
+}
|
|
|
|
+.panel_button{
|
|
|
|
+ display: flex;
|
|
|
|
+ justify-content: space-between;
|
|
|
|
+}
|
|
</style>
|
|
</style>
|