From db1ca3ed5ae742bdab3f987eb9b6ad250ce26d5b Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期五, 12 十二月 2025 19:59:33 +0800
Subject: [PATCH] feat: 新增渠道包
---
src/views/CustomerManage/CustomerManage.vue | 106 +++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 82 insertions(+), 24 deletions(-)
diff --git a/src/views/CustomerManage/CustomerManage.vue b/src/views/CustomerManage/CustomerManage.vue
index b255d5c..15c62c9 100644
--- a/src/views/CustomerManage/CustomerManage.vue
+++ b/src/views/CustomerManage/CustomerManage.vue
@@ -3,6 +3,24 @@
<AppContainer>
<ProTableQueryFilterBar @on-reset="reset">
<template #query>
+ <QueryFilterItem tip-content="鍚堜綔鐘舵��">
+ <FieldRadio
+ v-model="extraParamState.cooperationStatus"
+ :value-enum="EnumEnterpriseCooperationStatusText"
+ buttonStyle
+ showAllBtn
+ @change="getList()"
+ />
+ </QueryFilterItem>
+ <QueryFilterItem tip-content="绛剧害鐘舵��">
+ <FieldRadio
+ v-model="extraParamState.signStatus"
+ :value-enum="EnumEnterpriseCooperationSignStatusText"
+ buttonStyle
+ showAllBtn
+ @change="getList()"
+ />
+ </QueryFilterItem>
<QueryFilterItem>
<SearchInput
v-model="extraParamState.keywords"
@@ -15,6 +33,7 @@
</template>
<template #btn>
<el-button
+ v-if="checkSubModuleItemShow('pageButton', 'addBtn')"
@click="goAddOrEdit()"
icon="Plus"
type="primary"
@@ -22,7 +41,7 @@
>
</template>
</ProTableQueryFilterBar>
- <ProTableV2 v-bind="proTableProps" :columns="CustomerManageColumns" :operationBtns="operationBtns">
+ <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
</ProTableV2>
</AppContainer>
</LoadingLayout>
@@ -31,43 +50,48 @@
<script setup lang="ts">
import {
ProTableQueryFilterBar,
- OperationBtnType,
+ FieldRadio,
ProTableV2,
SearchInput,
LoadingLayout,
AppContainer,
QueryFilterItem,
useTable,
- useFormDialog,
- defineOperationBtns
} from '@bole-core/components';
-import * as taskServices from '@/services/api/task';
-import {CustomerManageColumns} from './constants';
+import * as enterpriseServices from '@/services/api/enterprise';
+import {
+ EnumEnterpriseCooperationStatusText,
+ EnumEnterpriseCooperationSignStatusText,
+} from '@/constants';
defineOptions({
name: 'CustomerManage',
});
-const operationBtns=defineOperationBtns([
- {
- data: {
- enCode: 'detailBtn',
- name: '鏌ョ湅',
- },
+const operationBtnMap: Record<string, OperationBtnType> = {
+ detailBtn: {
emits: {
onClick: (role) => goDetail(role),
},
},
- {
- data: {
- enCode: 'editBtn',
- name: '缂栬緫',
- },
+ editBtn: {
emits: {
onClick: (role) => goAddOrEdit(role),
},
},
-])
+ insureConfigureBtn: {
+ emits: {
+ onClick: (role) => goInsureProductConfigure(role),
+ },
+ // extraProps: {
+ // hide: (role: API.GetPartyAEnterprisesQueryResultItem) => !role.isConfigured,
+ // },
+ },
+};
+
+const { checkSubModuleItemShow, column, operationBtns } = useAccess({
+ operationBtnMap,
+});
const BaseState = {
loading: true,
@@ -99,16 +123,18 @@
} = useTable(
async ({ pageIndex, pageSize }, extraParamState) => {
try {
- let params: API.GetTaskInfosQuery = {
+ let params: API.GetPartyAEnterprisesQuery = {
pageModel: {
rows: pageSize,
page: pageIndex,
orderInput: extraParamState.orderInput,
},
keywords: extraParamState.keywords,
+ cooperationStatus: extraParamState.cooperationStatus,
+ signStatus: extraParamState.signStatus,
};
- let res = await taskServices.getTaskInfos(params, {
+ let res = await enterpriseServices.getPartyAEnterprises(params, {
showLoading: !state.loading,
});
return res;
@@ -117,14 +143,37 @@
{
defaultExtraParams: {
keywords: '',
- orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
+ cooperationStatus: '' as any as EnumEnterpriseCooperationStatus,
+ signStatus: '' as any as EnumEnterpriseCooperationSignStatus,
+ orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
+ },
+ queryKey: ['enterpriseServices/getPartyAEnterprises'],
+ columnsRenderProps: {
+ cooperationStatus: { type: 'enum', valueEnum: EnumEnterpriseCooperationStatusText },
+ signStatus: { type: 'enum', valueEnum: EnumEnterpriseCooperationSignStatusText },
+ serviceFeeCollectType: {
+ type: 'enum',
+ valueEnum: EnumEnterpriseCooperationServiceFeeCollectTypeText,
+ },
+ invoiceTaxPointRate: {
+ formatter: (row: API.GetPartyAEnterprisesQueryResultItem) => {
+ if (row.invoiceTaxPointRate) {
+ return `${row.invoiceTaxPointRate}%`;
+ }
+ return '';
+ },
+ },
+ isConfigured: {
+ formatter: (row: API.GetPartyAEnterprisesQueryResultItem) =>
+ row.isConfigured ? '宸查厤缃�' : '鏈厤缃�',
+ },
},
}
);
-const router=useRouter();
+const router = useRouter();
-function goAddOrEdit(row?: API.GetTaskInfosQueryResultItem) {
+function goAddOrEdit(row?: API.GetPartyAEnterprisesQueryResultItem) {
router.push({
name: 'AddOrEditCustomer',
params: {
@@ -133,7 +182,7 @@
});
}
-function goDetail(row: API.GetTaskInfosQueryResultItem) {
+function goDetail(row: API.GetPartyAEnterprisesQueryResultItem) {
router.push({
name: 'CustomerDetail',
params: {
@@ -141,4 +190,13 @@
},
});
}
+
+function goInsureProductConfigure(row: API.GetPartyAEnterprisesQueryResultItem) {
+ router.push({
+ name: 'InsureProductConfigure',
+ params: {
+ id: row?.id ?? '',
+ },
+ });
+}
</script>
--
Gitblit v1.9.1