diff --git a/src/renderer/src/utils/ppt-request.js b/src/renderer/src/utils/ppt-request.js index f080ece..2918d0c 100644 --- a/src/renderer/src/utils/ppt-request.js +++ b/src/renderer/src/utils/ppt-request.js @@ -109,7 +109,11 @@ const getBackGroundV2 = async () => { const createOutlineV2 = async (data) => { try { - const response = await req("/api/aipptV2/createOutlineV2", "POST", data); + const response = await request({ + url:"/api/aipptV2/createOutlineV2", + method: "POST", + data + }); console.log("createOutline response:", response); return response.data; @@ -129,6 +133,18 @@ const createPPTV2 = async (data) => { throw error; } }; + +const createPptByOutline = async (data) => { + try { + const response = await req("/api/aipptV2/createPptByOutline", "POST", data); + console.log("createOutline response:", response); + + return response.data; + } catch (error) { + console.error("请求失败:", error); + throw error; + } +}; const getProgressV2 = async (id) => { try { const response = await req(`/api/aipptV2/progressV2?sid=${id}`, "GET"); @@ -139,4 +155,4 @@ const getProgressV2 = async (id) => { } }; -export { createOutline, getBackGround, createPPT, getProgress, getBackGroundV2, createOutlineV2, createPPTV2, getProgressV2, createByOutline }; +export { createOutline, getBackGround, createPPT, getProgress, getBackGroundV2, createOutlineV2, createPPTV2, getProgressV2, createByOutline, createPptByOutline }; diff --git a/src/renderer/src/views/model/index.vue b/src/renderer/src/views/model/index.vue index f869bee..8e2049a 100644 --- a/src/renderer/src/views/model/index.vue +++ b/src/renderer/src/views/model/index.vue @@ -680,6 +680,7 @@ onMounted(async () => { display: flex; flex-wrap: wrap; gap: 15px; + padding: 10px; .content-body-right-item{ &:hover{ cursor: pointer; diff --git a/src/renderer/src/views/prepare/container/pptist-dialog.vue b/src/renderer/src/views/prepare/container/pptist-dialog.vue index 22b2155..0bad55b 100644 --- a/src/renderer/src/views/prepare/container/pptist-dialog.vue +++ b/src/renderer/src/views/prepare/container/pptist-dialog.vue @@ -1,30 +1,123 @@ diff --git a/src/renderer/src/views/teachingDesign/container/center.vue b/src/renderer/src/views/teachingDesign/container/center.vue index ae9fa30..78682c9 100644 --- a/src/renderer/src/views/teachingDesign/container/center.vue +++ b/src/renderer/src/views/teachingDesign/container/center.vue @@ -9,19 +9,31 @@ 生成教学大纲 - + 删除大纲 - + 编辑大纲
- - + +
封面页
+
+
标题:{{ answer.title }}
+
副标题:{{answer.subTitle }}
+
+
目录页
+
+
{{index + 1}}:{{ item.chapterTitle }}
+
+

{{ index + 1 }} - {{ i + 1}} : {{ el.chapterTitle }}

+
+
+
@@ -36,7 +48,7 @@ import emitter from '@/utils/mitt' import * as commUtils from '@/utils/comm.js' import { createChart, sendChart } from '@/api/ai/index' import { completion, addSyllabus, syllabuss, removeSyllabus } from '@/api/mode/index.js' -import TypingEffect from '@/components/typing-effect/index.vue' +import { createOutlineV2 } from '@/utils/ppt-request.js' import useUserStore from '@/store/modules/user' const curMode = ref(2) @@ -64,8 +76,9 @@ emitter.on('selected', (data)=>{ // 回显大纲 const curItem = reactive({}) emitter.on('onShow', (data)=>{ + console.log(data) aiShow.value = false - answer.value = getResult(data.outline) + Object.assign(answer, JSON.parse(data.outline)) Object.assign(curItem, data) curItem.answer = curItem.outline getDetails(data.id) @@ -88,15 +101,14 @@ const params = reactive( // 研读 const loading = ref(false) -const answer = ref('') +const answer = reactive({}) const createAi = async ()=>{ - console.log(selectedData.value) if(selectedData.value.length == 0){ ElMessage.warning('请先选择教学环节后再生成教学大纲') return } - + let str = selectedData.value.map( item => item.name).join('、') let bookV = curNode.roottitle.split('-')[1] + '版' loading.value = true @@ -119,17 +131,17 @@ const createAi = async ()=>{ // 知识库模型 else { const res = await completion(params) + data = res.data } - console.log(data) - emitter.emit('onResult', data.answer) - answer.value = getResult(data.answer) - - onSaveTemp(data.answer) + const res = await createOutlineV2({query: data.answer}) + console.log(res) + emitter.emit('onResult', res) + Object.assign(answer, res.outline) + onSaveTemp(JSON.stringify(res.outline)) } finally { loading.value = false } - } @@ -167,14 +179,9 @@ const delAnswer = () =>{ emitter.emit('resetSelect') }) .catch(() => {}) - + } -// 去掉字符串中的 ### ** -let getResult = (str) => { - let newStr = str.replace(/#+|(\*\*)/g, ''); - return newStr -} // 千帆创建对话 const conversation_id = ref('') @@ -188,7 +195,7 @@ const getChartId = () => { onUnmounted(()=>{ emitter.off('selected') emitter.off('onShow') - + }) const curNode = reactive({}) @@ -227,7 +234,19 @@ onMounted(() => { border-radius: 5px; text-align: left; overflow-y: auto; + padding: 15px; + .con-item{ + display: flex; + flex-direction: column; + margin-top: 15px; + .item-text{ + background: #F2F2F2; + padding: 15px; + border-radius: 5px; + margin-top: 10px; + } + } } } - \ No newline at end of file + diff --git a/src/renderer/src/views/teachingDesign/container/left2.vue b/src/renderer/src/views/teachingDesign/container/left2.vue index 3f4a612..0ac347c 100644 --- a/src/renderer/src/views/teachingDesign/container/left2.vue +++ b/src/renderer/src/views/teachingDesign/container/left2.vue @@ -4,8 +4,11 @@ 教学模式
重置 - 新增 + 新增
@@ -13,33 +16,34 @@
- {{ item.name }} - -
- 添加 - 编辑 -
+ {{ item.name }} + +
+ 添加 + 编辑 +
- - + +
-
+
{{ child.name }} - - 编辑 + + 编辑
- - + +
+ style="border-radius: 10px; padding: 10px 15px"> - -
+ +
删除
@@ -64,7 +68,6 @@
- \ No newline at end of file + diff --git a/src/renderer/src/views/teachingDesign/container/progress-dialog.vue b/src/renderer/src/views/teachingDesign/container/progress-dialog.vue index 5bfe036..7f01c73 100644 --- a/src/renderer/src/views/teachingDesign/container/progress-dialog.vue +++ b/src/renderer/src/views/teachingDesign/container/progress-dialog.vue @@ -1,6 +1,6 @@ @@ -29,5 +29,10 @@ const dAttrs = computed(() => { }) \ No newline at end of file + + diff --git a/src/renderer/src/views/teachingDesign/container/right2.vue b/src/renderer/src/views/teachingDesign/container/right2.vue index 03ce212..300399f 100644 --- a/src/renderer/src/views/teachingDesign/container/right2.vue +++ b/src/renderer/src/views/teachingDesign/container/right2.vue @@ -4,22 +4,74 @@ 课件预览
一键生成 - 编辑课件 + 编辑课件
- + +
+
{{index+1}}
+
+ +