diff --git a/src/views/clueaccess/accessDetail/accessDetailModal.vue b/src/views/clueaccess/accessDetail/accessDetailModal.vue index c7897d3..dcd4028 100644 --- a/src/views/clueaccess/accessDetail/accessDetailModal.vue +++ b/src/views/clueaccess/accessDetail/accessDetailModal.vue @@ -98,6 +98,8 @@ import { doRequest } from '@/utils/axios/request' //一键复制 import useClipboard from 'vue-clipboard3' import { message } from 'ant-design-vue' +//防抖 +import { useDebounceFn } from '@vueuse/core' const emits = defineEmits<{ (e: 'submit-success'): void @@ -135,7 +137,7 @@ const { submitLoading, validateAndSubmit, resetFields, validateInfos } = useAdmi ) //表单提交处理 -const handleSubmit = () => { +const handleSubmit = useDebounceFn(() => { validateAndSubmit(toRaw(formModel), { onSuccess: (res: any) => { // closeModal() @@ -147,7 +149,7 @@ const handleSubmit = () => { submitLoading.value = false } }) -} +}, 300) //弹窗关闭方法 const handleClose = () => { diff --git a/src/views/clueaccess/channelIdentification.vue b/src/views/clueaccess/channelIdentification.vue index 277da1fc..6d25004 100644 --- a/src/views/clueaccess/channelIdentification.vue +++ b/src/views/clueaccess/channelIdentification.vue @@ -67,6 +67,8 @@ import { doRequest } from '@/utils/axios/request' import { message } from 'ant-design-vue' import { channelIdList, addChannelId, application } from '@/api/clueaccess/clueImport' import type { applicationData } from '@/api/clueaccess/clueImport/types' +//防抖 +import { useDebounceFn } from '@vueuse/core' interface MonitoringList { id?: number | undefined @@ -178,7 +180,7 @@ const handleCheckboxChange = (val: any) => { } // 渠道标识表单提交(应用) -const onSubmit = () => { +const onSubmit = useDebounceFn(() => { formRef.value .validate() .then(() => { @@ -196,7 +198,7 @@ const onSubmit = () => { .catch((error: any) => { return false }) -} +}, 300) const formRef = ref() const inputRef = ref() diff --git a/src/views/controlcenterstation/customerManagement/customerManagementModal.vue b/src/views/controlcenterstation/customerManagement/customerManagementModal.vue index cc6ce67..4a78f99 100644 --- a/src/views/controlcenterstation/customerManagement/customerManagementModal.vue +++ b/src/views/controlcenterstation/customerManagement/customerManagementModal.vue @@ -204,6 +204,8 @@ import type { UnwrapRef } from 'vue' import type { DefaultOptionType, SelectValue } from 'ant-design-vue/es/select' import type { SelectProps } from 'ant-design-vue' import { doRequest } from '@/utils/axios/request' +//防抖 +import { useDebounceFn } from '@vueuse/core' const labelCol: ColProps = { sm: { span: 24 }, md: { span: 12 } } const wrapperCol: ColProps = { sm: { span: 24 }, md: { span: 10 } } @@ -416,7 +418,7 @@ const { submitLoading, validateAndSubmit, resetFields, validateInfos } = useAdmi ) //表单提交处理 -const handleSubmit = () => { +const handleSubmit = useDebounceFn(() => { console.log('111') const isEmpty = formState.selectedCompanys.every((item: optionItem) => { return item.content @@ -444,7 +446,7 @@ const handleSubmit = () => { } }) } -} +}, 300) //弹窗关闭方法 const handleClose = () => { selectedip.length = 0 diff --git a/src/views/controlcenterstation/distributionTaskManagement/distributionTaskManagement.vue b/src/views/controlcenterstation/distributionTaskManagement/distributionTaskManagement.vue index 99c0a80..3ebcc44 100644 --- a/src/views/controlcenterstation/distributionTaskManagement/distributionTaskManagement.vue +++ b/src/views/controlcenterstation/distributionTaskManagement/distributionTaskManagement.vue @@ -142,6 +142,8 @@ import DistributionTaskManagementSearch from '@/views/controlcenterstation/distr import { FormAction } from '@/hooks/form' //停止(即修改分发任务)接口 import { updateDistributeConfigurationmenuDto } from '@/api/controlcenterstation/customerManagement' +//防抖 +import { useDebounceFn } from '@vueuse/core' defineOptions({ name: 'DistributionTaskManagement' }) @@ -253,7 +255,7 @@ const columns: ProColumns[] = [ } ] //开启 -const open = (record: DistributeTaskManagementRecord) => { +const open = useDebounceFn((record: DistributeTaskManagementRecord) => { if (record.executeStatus === 0 || record.executeStatus === 3) { doRequest(performTask(toRaw({ id: record.distributeTaskId })), { onSuccess: (res: any) => { @@ -264,7 +266,7 @@ const open = (record: DistributeTaskManagementRecord) => { } }) } -} +}, 300) //手动任务执行/开启 const manualtaskOpen = (record: DistributeTaskManagementRecord) => { diff --git a/src/views/controlcenterstation/distributionTaskManagement/distributionTaskManagementModal.vue b/src/views/controlcenterstation/distributionTaskManagement/distributionTaskManagementModal.vue index e242192..2df957d 100644 --- a/src/views/controlcenterstation/distributionTaskManagement/distributionTaskManagementModal.vue +++ b/src/views/controlcenterstation/distributionTaskManagement/distributionTaskManagementModal.vue @@ -271,6 +271,8 @@ import { } from '@/api/controlcenterstation/customerManagement' //选择时间 import 'dayjs/locale/zh-cn' +//防抖 +import { useDebounceFn } from '@vueuse/core' // import dayjs, { Dayjs } from 'dayjs' //获取当前账号角色 @@ -555,7 +557,7 @@ const { submitLoading, validateAndSubmit, resetFields, validateInfos } = useAdmi ) //表单提交处理 -const handleSubmit = () => { +const handleSubmit = useDebounceFn(() => { formModel.users = [] formState.selectedCompanys.forEach((item: any) => { formModel.users?.push({ @@ -593,7 +595,7 @@ const handleSubmit = () => { } }) } -} +}, 300) //弹窗关闭方法 const handleClose = () => { diff --git a/src/views/customermanagement/customerList/customerList.vue b/src/views/customermanagement/customerList/customerList.vue index 72098b2..7b2fac2 100644 --- a/src/views/customermanagement/customerList/customerList.vue +++ b/src/views/customermanagement/customerList/customerList.vue @@ -100,6 +100,8 @@ import CustomerListEditModal from '@/views/customermanagement/customerList/custo import { exportClueData, isEffective } from '@/api/customermanagement/customerList' import { remoteFileDownload } from '@/utils/file-utils' import { doRequest } from '@/utils/axios/request' +//防抖 +import { useDebounceFn } from '@vueuse/core' // import { useRoute } from 'vue-router' //删除 // import { doRequest } from '@/utils/axios/request' @@ -329,11 +331,13 @@ const switchChange = (record: any) => { } } // 导出 -function downloadTemplate() { + +// function downloadTemplate() { +const downloadTemplate = useDebounceFn(() => { exportClueData(searchParams).then(res => { remoteFileDownload(res) }) -} +}, 300)