wupengfei
4 天以前 f873a599918eb31e4e6e937601294100f03ef73b
src/views/CustomerManage/CustomerManage.vue
@@ -32,14 +32,16 @@
          </QueryFilterItem>
        </template>
        <template #btn>
          <el-button @click="goAddOrEdit()" icon="Plus" type="primary">新增客户</el-button>
          <el-button
            v-if="checkSubModuleItemShow('pageButton', 'addBtn')"
            @click="goAddOrEdit()"
            icon="Plus"
            type="primary"
            >新增客户</el-button
          >
        </template>
      </ProTableQueryFilterBar>
      <ProTableV2
        v-bind="proTableProps"
        :columns="CustomerManageColumns"
        :operationBtns="operationBtns"
      >
      <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
      </ProTableV2>
    </AppContainer>
  </LoadingLayout>
@@ -55,11 +57,8 @@
  AppContainer,
  QueryFilterItem,
  useTable,
  useFormDialog,
  defineOperationBtns,
} from '@bole-core/components';
import * as enterpriseServices from '@/services/api/enterprise';
import { CustomerManageColumns } from './constants';
import {
  EnumEnterpriseCooperationStatusText,
  EnumEnterpriseCooperationSignStatusText,
@@ -69,26 +68,30 @@
  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) => false,
    },
  },
};
const { checkSubModuleItemShow, column, operationBtns } = useAccess({
  operationBtnMap,
});
const BaseState = {
  loading: true,
@@ -148,6 +151,18 @@
    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 '';
        },
      },
    },
  }
);
@@ -171,4 +186,13 @@
    },
  });
}
function goInsureProductConfigure(row: API.GetPartyAEnterprisesQueryResultItem) {
  router.push({
    name: 'InsureProductConfigure',
    params: {
      id: row?.id ?? '',
    },
  });
}
</script>