diff --git a/apps/web-antd/src/api/crm/customer/index.ts b/apps/web-antd/src/api/crm/customer/index.ts index 5faf62df..8ef8503c 100644 --- a/apps/web-antd/src/api/crm/customer/index.ts +++ b/apps/web-antd/src/api/crm/customer/index.ts @@ -16,6 +16,7 @@ export namespace CrmCustomerApi { ownerUserId: number; // 负责人的用户编号 ownerUserName?: string; // 负责人的用户名称 ownerUserDept?: string; // 负责人的部门名称 + ownerUserDeptName?: string; // 负责人的部门名称 lockStatus?: boolean; dealStatus?: boolean; mobile: string; // 手机号 @@ -34,6 +35,7 @@ export namespace CrmCustomerApi { creatorName?: string; // 创建人名称 createTime: Date; // 创建时间 updateTime: Date; // 更新时间 + poolDay?: number; // 距离进入公海天数 } export interface CustomerImport { ownerUserId: number; diff --git a/apps/web-antd/src/router/routes/modules/crm.ts b/apps/web-antd/src/router/routes/modules/crm.ts index 9936204d..9d752b89 100644 --- a/apps/web-antd/src/router/routes/modules/crm.ts +++ b/apps/web-antd/src/router/routes/modules/crm.ts @@ -27,7 +27,7 @@ const routes: RouteRecordRaw[] = [ title: '客户详情', activePath: '/crm/customer', }, - component: () => import('#/views/crm/customer/modules/detail.vue'), + component: () => import('#/views/crm/customer/detail/index.vue'), }, { path: 'business/detail/:id', diff --git a/apps/web-antd/src/views/crm/contact/index.vue b/apps/web-antd/src/views/crm/contact/index.vue index de6d1b8a..5cd0b528 100644 --- a/apps/web-antd/src/views/crm/contact/index.vue +++ b/apps/web-antd/src/views/crm/contact/index.vue @@ -34,6 +34,12 @@ function handleRefresh() { gridApi.query(); } +/** 处理场景类型的切换 */ +function handleChangeSceneType(key: number | string) { + sceneType.value = key.toString(); + gridApi.query(); +} + /** 导出表格 */ async function handleExport() { const formValues = await gridApi.formApi.getValues(); @@ -79,12 +85,6 @@ function handleCustomerDetail(row: CrmContactApi.Contact) { push({ name: 'CrmCustomerDetail', params: { id: row.customerId } }); } -/** 处理场景类型的切换 */ -function handleChangeSceneType(key: number | string) { - sceneType.value = key.toString(); - gridApi.query(); -} - const [Grid, gridApi] = useVbenVxeGrid({ formOptions: { schema: useGridFormSchema(), diff --git a/apps/web-antd/src/views/crm/contract/index.vue b/apps/web-antd/src/views/crm/contract/index.vue index 8b1ecd30..c89af36d 100644 --- a/apps/web-antd/src/views/crm/contract/index.vue +++ b/apps/web-antd/src/views/crm/contract/index.vue @@ -35,9 +35,19 @@ function onRefresh() { gridApi.query(); } +/** 处理场景类型的切换 */ +function handleChangeSceneType(key: number | string) { + sceneType.value = key.toString(); + gridApi.query(); +} + /** 导出表格 */ async function handleExport() { - const data = await exportContract(await gridApi.formApi.getValues()); + const formValues = await gridApi.formApi.getValues(); + const data = await exportContract({ + sceneType: sceneType.value, + ...formValues, + }); downloadFileFromBlobPart({ fileName: '合同.xls', source: data }); } @@ -142,11 +152,6 @@ const [Grid, gridApi] = useVbenVxeGrid({ }, } as VxeTableGridOptions, }); - -function onChangeSceneType(key: number | string) { - sceneType.value = key.toString(); - gridApi.query(); -}