diff --git a/src/views/DataAnalyse/components/diagram/api.js b/src/views/DataAnalyse/components/diagram/api.js new file mode 100644 index 00000000..bf7b3c60 --- /dev/null +++ b/src/views/DataAnalyse/components/diagram/api.js @@ -0,0 +1,9 @@ +import request from '@/utils/request' + +/* 同步数据 */ +export function syncProductTest(sn) { + return request({ + url: `/console/surveys/${sn}/sync_product_test`, + method: 'POST', + }) +} diff --git a/src/views/DataAnalyse/components/diagram/newBtnList.vue b/src/views/DataAnalyse/components/diagram/newBtnList.vue index c4233dd9..4831aed8 100644 --- a/src/views/DataAnalyse/components/diagram/newBtnList.vue +++ b/src/views/DataAnalyse/components/diagram/newBtnList.vue @@ -58,7 +58,7 @@ - 同步数据 + 同步数据 @@ -76,9 +76,11 @@ import { message } from 'ant-design-vue' import ColumnConfig from './../../particulars/components/ColumnConfig' import DownloadData from './../../particulars/components/DownloadData' import { addDownloadCenter } from '@/api/download.js' +import { syncProductTest } from './api' import DownloadCenter from '@/views/DownloadCenter/index.vue' import { CaretDownOutlined } from '@ant-design/icons-vue' import { Modal } from 'ant-design-vue' + const props = defineProps({ answer_columns: { type: Array, @@ -105,6 +107,8 @@ const opList = ref([ { value: '1', label: '导出数据' }, { value: '2', label: '删除' } ]) +const syncDataLoading = ref(false); + // 导出选中答卷 const opChange = (e) => { const { key } = e @@ -248,9 +252,16 @@ const noData = () => { } // 同步数据 -function syncData() { - message.success('同步成功!'); - // message.success('同步成功,您还需在产品测试模块导入该问卷哦~'); +async function syncData() { + syncDataLoading.value = true; + try { + await syncProductTest(sn.value); + message.success('同步成功!'); + // message.success('同步成功,您还需在产品测试模块导入该问卷哦~'); + } catch (error) { + console.error('同步数据错误', error) + } + syncDataLoading.value = false; } defineExpose({ delSurveysAnswers })