feat: ichat获取返回结果
This commit is contained in:
parent
2ec6a4b0ce
commit
58403f3fb8
|
@ -11,6 +11,14 @@ export default {
|
|||
data
|
||||
);
|
||||
}
|
||||
},
|
||||
get: {
|
||||
name: "获取结果",
|
||||
req: async function (tid) {
|
||||
return await http.get(
|
||||
`${config.API_URL}/ichat/workchain/ask/?ichat_tid=${tid}`
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -7,7 +7,16 @@
|
|||
<el-button type="primary" size="large" style="margin-left: 10px;" @click="handleAsk">提问</el-button>
|
||||
</el-header>
|
||||
<el-main class="nopadding">
|
||||
<iframe ref="myIframe" frameborder="0" width="100%" height="100%"></iframe>
|
||||
<el-container>
|
||||
<el-aside width="200px">
|
||||
<div style="margin-left:4px; font-size:16px">
|
||||
<p v-for="step in steps" :key="step.id">{{step.msg}}</p>
|
||||
</div>
|
||||
</el-aside>
|
||||
<el-main class="nopadding">
|
||||
<iframe ref="myIframe" width="100%" height="100%" frameborder="0"></iframe>
|
||||
</el-main>
|
||||
</el-container>
|
||||
</el-main>
|
||||
</el-container>
|
||||
</template>
|
||||
|
@ -20,19 +29,31 @@ const plh = ref('请以 查询 开头,提出您的查询统计分析需求');
|
|||
const input = ref(null);
|
||||
|
||||
const myIframe = ref(null);
|
||||
const ichatTid = ref(null);
|
||||
const steps = ref([]);
|
||||
|
||||
const handleAsk = () => {
|
||||
if (input.value) {
|
||||
const loading = ElLoading.service({
|
||||
fullscreen: true,
|
||||
text: "正在查询...请稍等",
|
||||
});
|
||||
API.ichat.workchain.ask.req({input: input.value}).then(res=>{
|
||||
myIframe.value.srcdoc = res.content;
|
||||
ichatTid.value = res.ichat_tid;
|
||||
getTaskStatus();
|
||||
}).catch(err=>{
|
||||
}).finally(()=>{
|
||||
loading.close();
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
const getTaskStatus = () => {
|
||||
const interval = setInterval(() => {
|
||||
API.ichat.workchain.get.req(ichatTid.value).then(res=>{
|
||||
steps.value = res.steps;
|
||||
if(res.state == "done"){
|
||||
myIframe.value.srcdoc = res.content;
|
||||
}
|
||||
if (res.state != "progress") {
|
||||
clearInterval(interval);
|
||||
}
|
||||
})
|
||||
}, 2000);
|
||||
}
|
||||
</script>
|
Loading…
Reference in New Issue