import { ref } from 'vue';
|
import { getQuestionProcess } from '/@/api/ai/chat';
|
|
export const useQueryProcess = () => {
|
const processId = ref('');
|
const QUERY_PROCESS_INTERVAL = 1000;
|
const process = ref('');
|
let processTimer = null;
|
let finishProcess = true;
|
|
const queryProcessApi = async () => {
|
const res = await getQuestionProcess({
|
process_id: processId.value,
|
}).catch((err) => {
|
process.value = err;
|
});
|
|
process.value = res.process;
|
finishProcess = true;
|
};
|
|
const queryProcess = () => {
|
processTimer = setInterval(() => {
|
if (!finishProcess) return;
|
finishProcess = false;
|
queryProcessApi();
|
}, QUERY_PROCESS_INTERVAL);
|
};
|
|
const clearQueryProcess = () => {
|
process.value = '';
|
clearInterval(processTimer);
|
};
|
|
return {
|
processId,
|
process,
|
queryProcess,
|
clearQueryProcess
|
};
|
};
|