From b6fee5c05b23d692e053a353713c91b9540835c6 Mon Sep 17 00:00:00 2001 From: YunaiV Date: Fri, 10 Oct 2025 20:22:33 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E3=80=90mall=20=E5=95=86=E5=9F=8E?= =?UTF-8?q?=E3=80=91=E5=88=86=E9=94=80=E7=94=A8=E6=88=B7=E7=9A=84=20form?= =?UTF-8?q?=20=E8=BF=81=E7=A7=BB=EF=BC=88ele=20100%=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/mall/trade/brokerage/record/index.ts | 33 +-- .../api/mall/trade/brokerage/user/index.ts | 68 +++--- .../mall/trade/brokerage/withdraw/index.ts | 63 ++---- .../views/mall/trade/brokerage/user/data.ts | 1 + .../views/mall/trade/brokerage/user/index.vue | 2 +- .../api/mall/trade/brokerage/record/index.ts | 33 +-- .../api/mall/trade/brokerage/user/index.ts | 68 +++--- .../mall/trade/brokerage/withdraw/index.ts | 63 ++---- .../views/mall/trade/brokerage/user/data.ts | 30 +++ .../views/mall/trade/brokerage/user/index.vue | 4 +- .../brokerage/user/modules/create-form.vue | 211 +++++++++--------- .../brokerage/user/modules/update-form.vue | 127 ++++++----- 12 files changed, 340 insertions(+), 363 deletions(-) diff --git a/apps/web-antd/src/api/mall/trade/brokerage/record/index.ts b/apps/web-antd/src/api/mall/trade/brokerage/record/index.ts index 86ce41baf..1b6e8b3a4 100644 --- a/apps/web-antd/src/api/mall/trade/brokerage/record/index.ts +++ b/apps/web-antd/src/api/mall/trade/brokerage/record/index.ts @@ -5,28 +5,17 @@ import { requestClient } from '#/api/request'; export namespace MallBrokerageRecordApi { /** 佣金记录 */ export interface BrokerageRecord { - /** 编号 */ - id: number; - /** 用户编号 */ - userId: number; - /** 用户昵称 */ - userNickname: string; - /** 用户头像 */ - userAvatar: string; - /** 佣金金额,单位:分 */ - price: number; - /** 佣金类型 */ - type: number; - /** 关联订单编号 */ - orderId: number; - /** 关联订单号 */ - orderNo: string; - /** 创建时间 */ - createTime: Date; - /** 状态 */ - status: number; - /** 结算时间 */ - settlementTime: Date; + id: number; // 编号 + userId: number; // 用户编号 + userNickname: string; // 用户昵称 + userAvatar: string; // 用户头像 + price: number; // 佣金金额,单位:分 + type: number; // 佣金类型 + orderId: number; // 关联订单编号 + orderNo: string; // 关联订单号 + createTime: Date; // 创建时间 + status: number; // 状态 + settlementTime: Date; // 结算时间 } } diff --git a/apps/web-antd/src/api/mall/trade/brokerage/user/index.ts b/apps/web-antd/src/api/mall/trade/brokerage/user/index.ts index 51c24f25a..4ef235af8 100644 --- a/apps/web-antd/src/api/mall/trade/brokerage/user/index.ts +++ b/apps/web-antd/src/api/mall/trade/brokerage/user/index.ts @@ -5,59 +5,45 @@ import { requestClient } from '#/api/request'; export namespace MallBrokerageUserApi { /** 分销用户 */ export interface BrokerageUser { - /** 编号 */ - id: number; - /** 推广员编号 */ - bindUserId: number; - /** 推广员绑定时间 */ - bindUserTime: Date; - /** 是否启用分销 */ - brokerageEnabled: boolean; - /** 分销资格时间 */ - brokerageTime: Date; - /** 可提现金额,单位:分 */ - price: number; - /** 冻结金额,单位:分 */ - frozenPrice: number; - /** 用户昵称 */ - nickname: string; - /** 用户头像 */ - avatar: string; + id: number; // 编号 + bindUserId: number; // 推广员编号 + bindUserTime: Date; // 推广员绑定时间 + brokerageEnabled: boolean; // 是否启用分销 + brokerageTime: Date; // 分销资格时间 + price: number; // 可提现金额,单位:分 + frozenPrice: number; // 冻结金额,单位:分 + nickname: string; // 用户昵称 + avatar: string; // 用户头像 } /** 创建分销用户请求 */ - export interface CreateRequest { - /** 用户编号 */ - userId: number; - /** 推广员编号 */ - bindUserId: number; + export interface BrokerageUserCreateReqVO { + userId: number; // 用户编号 + bindUserId: number; // 推广员编号 } /** 修改推广员请求 */ - export interface UpdateBindUserRequest { - /** 用户编号 */ - id: number; - /** 推广员编号 */ - bindUserId: number; + export interface BrokerageUserUpdateReqVO { + id: number; // 用户编号 + bindUserId: number; // 推广员编号 } /** 清除推广员请求 */ - export interface ClearBindUserRequest { - /** 用户编号 */ - id: number; + export interface BrokerageUserClearBrokerageUserReqVO { + id: number; // 用户编号 } /** 修改推广资格请求 */ - export interface UpdateBrokerageEnabledRequest { - /** 用户编号 */ - id: number; - /** 是否启用分销 */ - enabled: boolean; + export interface BrokerageUserUpdateBrokerageEnabledReqVO { + id: number; // 用户编号 + enabled: boolean; // 是否启用分销 } } /** 创建分销用户 */ -export function createBrokerageUser(data: MallBrokerageUserApi.CreateRequest) { +export function createBrokerageUser( + data: MallBrokerageUserApi.BrokerageUserCreateReqVO, +) { return requestClient.post('/trade/brokerage-user/create', data); } @@ -78,19 +64,21 @@ export function getBrokerageUser(id: number) { /** 修改推广员 */ export function updateBindUser( - data: MallBrokerageUserApi.UpdateBindUserRequest, + data: MallBrokerageUserApi.BrokerageUserUpdateReqVO, ) { return requestClient.put('/trade/brokerage-user/update-bind-user', data); } /** 清除推广员 */ -export function clearBindUser(data: MallBrokerageUserApi.ClearBindUserRequest) { +export function clearBindUser( + data: MallBrokerageUserApi.BrokerageUserClearBrokerageUserReqVO, +) { return requestClient.put('/trade/brokerage-user/clear-bind-user', data); } /** 修改推广资格 */ export function updateBrokerageEnabled( - data: MallBrokerageUserApi.UpdateBrokerageEnabledRequest, + data: MallBrokerageUserApi.BrokerageUserUpdateBrokerageEnabledReqVO, ) { return requestClient.put( '/trade/brokerage-user/update-brokerage-enable', diff --git a/apps/web-antd/src/api/mall/trade/brokerage/withdraw/index.ts b/apps/web-antd/src/api/mall/trade/brokerage/withdraw/index.ts index 08acdb4fc..12af60518 100644 --- a/apps/web-antd/src/api/mall/trade/brokerage/withdraw/index.ts +++ b/apps/web-antd/src/api/mall/trade/brokerage/withdraw/index.ts @@ -5,52 +5,31 @@ import { requestClient } from '#/api/request'; export namespace MallBrokerageWithdrawApi { /** 佣金提现 */ export interface BrokerageWithdraw { - /** 编号 */ - id: number; - /** 用户编号 */ - userId: number; - /** 提现金额,单位:分 */ - price: number; - /** 手续费,单位:分 */ - feePrice: number; - /** 总金额,单位:分 */ - totalPrice: number; - /** 提现类型 */ - type: number; - /** 用户名称 */ - userName: string; - /** 用户账号 */ - userAccount: string; - /** 银行名称 */ - bankName: string; - /** 银行地址 */ - bankAddress: string; - /** 收款码地址 */ - qrCodeUrl: string; - /** 状态 */ - status: number; - /** 审核备注 */ - auditReason: string; - /** 审核时间 */ - auditTime: Date; - /** 备注 */ - remark: string; - /** 支付转账编号 */ - payTransferId?: number; - /** 转账渠道编码 */ - transferChannelCode?: string; - /** 转账时间 */ - transferTime?: Date; - /** 转账错误信息 */ - transferErrorMsg?: string; + id: number; // 编号 + userId: number; // 用户编号 + price: number; // 提现金额,单位:分 + feePrice: number; // 手续费,单位:分 + totalPrice: number; // 总金额,单位:分 + type: number; // 提现类型 + userName: string; // 用户名称 + userAccount: string; // 用户账号 + bankName: string; // 银行名称 + bankAddress: string; // 银行地址 + qrCodeUrl: string; // 收款码地址 + status: number; // 状态 + auditReason: string; // 审核备注 + auditTime: Date; // 审核时间 + remark: string; // 备注 + payTransferId?: number; // 支付转账编号 + transferChannelCode?: string; // 转账渠道编码 + transferTime?: Date; // 转账时间 + transferErrorMsg?: string; // 转账错误信息 } /** 驳回申请请求 */ export interface RejectRequest { - /** 编号 */ - id: number; - /** 驳回原因 */ - auditReason: string; + id: number; // 编号 + auditReason: string; // 驳回原因 } } diff --git a/apps/web-antd/src/views/mall/trade/brokerage/user/data.ts b/apps/web-antd/src/views/mall/trade/brokerage/user/data.ts index 1c9856e4d..bf7a66a72 100644 --- a/apps/web-antd/src/views/mall/trade/brokerage/user/data.ts +++ b/apps/web-antd/src/views/mall/trade/brokerage/user/data.ts @@ -196,6 +196,7 @@ export function useUserListFormSchema(): VbenFormSchema[] { { label: '一级推广人', value: '1' }, { label: '二级推广人', value: '2' }, ], + allowClear: true, }, }, { diff --git a/apps/web-antd/src/views/mall/trade/brokerage/user/index.vue b/apps/web-antd/src/views/mall/trade/brokerage/user/index.vue index 68f123899..b0e4217ed 100644 --- a/apps/web-antd/src/views/mall/trade/brokerage/user/index.vue +++ b/apps/web-antd/src/views/mall/trade/brokerage/user/index.vue @@ -74,7 +74,7 @@ async function handleClearBindUser(row: MallBrokerageUserApi.BrokerageUser) { duration: 0, }); try { - await clearBindUser({ id: row.id as number }); + await clearBindUser({ id: row.id! }); message.success($t('ui.actionMessage.deleteSuccess', [row.nickname])); handleRefresh(); } finally { diff --git a/apps/web-ele/src/api/mall/trade/brokerage/record/index.ts b/apps/web-ele/src/api/mall/trade/brokerage/record/index.ts index 86ce41baf..1b6e8b3a4 100644 --- a/apps/web-ele/src/api/mall/trade/brokerage/record/index.ts +++ b/apps/web-ele/src/api/mall/trade/brokerage/record/index.ts @@ -5,28 +5,17 @@ import { requestClient } from '#/api/request'; export namespace MallBrokerageRecordApi { /** 佣金记录 */ export interface BrokerageRecord { - /** 编号 */ - id: number; - /** 用户编号 */ - userId: number; - /** 用户昵称 */ - userNickname: string; - /** 用户头像 */ - userAvatar: string; - /** 佣金金额,单位:分 */ - price: number; - /** 佣金类型 */ - type: number; - /** 关联订单编号 */ - orderId: number; - /** 关联订单号 */ - orderNo: string; - /** 创建时间 */ - createTime: Date; - /** 状态 */ - status: number; - /** 结算时间 */ - settlementTime: Date; + id: number; // 编号 + userId: number; // 用户编号 + userNickname: string; // 用户昵称 + userAvatar: string; // 用户头像 + price: number; // 佣金金额,单位:分 + type: number; // 佣金类型 + orderId: number; // 关联订单编号 + orderNo: string; // 关联订单号 + createTime: Date; // 创建时间 + status: number; // 状态 + settlementTime: Date; // 结算时间 } } diff --git a/apps/web-ele/src/api/mall/trade/brokerage/user/index.ts b/apps/web-ele/src/api/mall/trade/brokerage/user/index.ts index 51c24f25a..4ef235af8 100644 --- a/apps/web-ele/src/api/mall/trade/brokerage/user/index.ts +++ b/apps/web-ele/src/api/mall/trade/brokerage/user/index.ts @@ -5,59 +5,45 @@ import { requestClient } from '#/api/request'; export namespace MallBrokerageUserApi { /** 分销用户 */ export interface BrokerageUser { - /** 编号 */ - id: number; - /** 推广员编号 */ - bindUserId: number; - /** 推广员绑定时间 */ - bindUserTime: Date; - /** 是否启用分销 */ - brokerageEnabled: boolean; - /** 分销资格时间 */ - brokerageTime: Date; - /** 可提现金额,单位:分 */ - price: number; - /** 冻结金额,单位:分 */ - frozenPrice: number; - /** 用户昵称 */ - nickname: string; - /** 用户头像 */ - avatar: string; + id: number; // 编号 + bindUserId: number; // 推广员编号 + bindUserTime: Date; // 推广员绑定时间 + brokerageEnabled: boolean; // 是否启用分销 + brokerageTime: Date; // 分销资格时间 + price: number; // 可提现金额,单位:分 + frozenPrice: number; // 冻结金额,单位:分 + nickname: string; // 用户昵称 + avatar: string; // 用户头像 } /** 创建分销用户请求 */ - export interface CreateRequest { - /** 用户编号 */ - userId: number; - /** 推广员编号 */ - bindUserId: number; + export interface BrokerageUserCreateReqVO { + userId: number; // 用户编号 + bindUserId: number; // 推广员编号 } /** 修改推广员请求 */ - export interface UpdateBindUserRequest { - /** 用户编号 */ - id: number; - /** 推广员编号 */ - bindUserId: number; + export interface BrokerageUserUpdateReqVO { + id: number; // 用户编号 + bindUserId: number; // 推广员编号 } /** 清除推广员请求 */ - export interface ClearBindUserRequest { - /** 用户编号 */ - id: number; + export interface BrokerageUserClearBrokerageUserReqVO { + id: number; // 用户编号 } /** 修改推广资格请求 */ - export interface UpdateBrokerageEnabledRequest { - /** 用户编号 */ - id: number; - /** 是否启用分销 */ - enabled: boolean; + export interface BrokerageUserUpdateBrokerageEnabledReqVO { + id: number; // 用户编号 + enabled: boolean; // 是否启用分销 } } /** 创建分销用户 */ -export function createBrokerageUser(data: MallBrokerageUserApi.CreateRequest) { +export function createBrokerageUser( + data: MallBrokerageUserApi.BrokerageUserCreateReqVO, +) { return requestClient.post('/trade/brokerage-user/create', data); } @@ -78,19 +64,21 @@ export function getBrokerageUser(id: number) { /** 修改推广员 */ export function updateBindUser( - data: MallBrokerageUserApi.UpdateBindUserRequest, + data: MallBrokerageUserApi.BrokerageUserUpdateReqVO, ) { return requestClient.put('/trade/brokerage-user/update-bind-user', data); } /** 清除推广员 */ -export function clearBindUser(data: MallBrokerageUserApi.ClearBindUserRequest) { +export function clearBindUser( + data: MallBrokerageUserApi.BrokerageUserClearBrokerageUserReqVO, +) { return requestClient.put('/trade/brokerage-user/clear-bind-user', data); } /** 修改推广资格 */ export function updateBrokerageEnabled( - data: MallBrokerageUserApi.UpdateBrokerageEnabledRequest, + data: MallBrokerageUserApi.BrokerageUserUpdateBrokerageEnabledReqVO, ) { return requestClient.put( '/trade/brokerage-user/update-brokerage-enable', diff --git a/apps/web-ele/src/api/mall/trade/brokerage/withdraw/index.ts b/apps/web-ele/src/api/mall/trade/brokerage/withdraw/index.ts index 08acdb4fc..12af60518 100644 --- a/apps/web-ele/src/api/mall/trade/brokerage/withdraw/index.ts +++ b/apps/web-ele/src/api/mall/trade/brokerage/withdraw/index.ts @@ -5,52 +5,31 @@ import { requestClient } from '#/api/request'; export namespace MallBrokerageWithdrawApi { /** 佣金提现 */ export interface BrokerageWithdraw { - /** 编号 */ - id: number; - /** 用户编号 */ - userId: number; - /** 提现金额,单位:分 */ - price: number; - /** 手续费,单位:分 */ - feePrice: number; - /** 总金额,单位:分 */ - totalPrice: number; - /** 提现类型 */ - type: number; - /** 用户名称 */ - userName: string; - /** 用户账号 */ - userAccount: string; - /** 银行名称 */ - bankName: string; - /** 银行地址 */ - bankAddress: string; - /** 收款码地址 */ - qrCodeUrl: string; - /** 状态 */ - status: number; - /** 审核备注 */ - auditReason: string; - /** 审核时间 */ - auditTime: Date; - /** 备注 */ - remark: string; - /** 支付转账编号 */ - payTransferId?: number; - /** 转账渠道编码 */ - transferChannelCode?: string; - /** 转账时间 */ - transferTime?: Date; - /** 转账错误信息 */ - transferErrorMsg?: string; + id: number; // 编号 + userId: number; // 用户编号 + price: number; // 提现金额,单位:分 + feePrice: number; // 手续费,单位:分 + totalPrice: number; // 总金额,单位:分 + type: number; // 提现类型 + userName: string; // 用户名称 + userAccount: string; // 用户账号 + bankName: string; // 银行名称 + bankAddress: string; // 银行地址 + qrCodeUrl: string; // 收款码地址 + status: number; // 状态 + auditReason: string; // 审核备注 + auditTime: Date; // 审核时间 + remark: string; // 备注 + payTransferId?: number; // 支付转账编号 + transferChannelCode?: string; // 转账渠道编码 + transferTime?: Date; // 转账时间 + transferErrorMsg?: string; // 转账错误信息 } /** 驳回申请请求 */ export interface RejectRequest { - /** 编号 */ - id: number; - /** 驳回原因 */ - auditReason: string; + id: number; // 编号 + auditReason: string; // 驳回原因 } } diff --git a/apps/web-ele/src/views/mall/trade/brokerage/user/data.ts b/apps/web-ele/src/views/mall/trade/brokerage/user/data.ts index 1bdeb63f0..12d01cc0a 100644 --- a/apps/web-ele/src/views/mall/trade/brokerage/user/data.ts +++ b/apps/web-ele/src/views/mall/trade/brokerage/user/data.ts @@ -153,6 +153,36 @@ export function useGridColumns( ]; } +/** 创建分销员表单配置 */ +export function useCreateFormSchema(): VbenFormSchema[] { + return [ + { + fieldName: 'userId', + label: '分销员编号', + component: 'Input', + rules: 'required', + }, + { + fieldName: 'bindUserId', + label: '上级推广员编号', + component: 'Input', + rules: 'required', + }, + ]; +} + +/** 修改分销用户表单配置 */ +export function useUpdateFormSchema(): VbenFormSchema[] { + return [ + { + fieldName: 'bindUserId', + label: '上级推广员编号', + component: 'Input', + rules: 'required', + }, + ]; +} + /** 用户列表弹窗搜索表单配置 */ export function useUserListFormSchema(): VbenFormSchema[] { return [ diff --git a/apps/web-ele/src/views/mall/trade/brokerage/user/index.vue b/apps/web-ele/src/views/mall/trade/brokerage/user/index.vue index ab5977642..d66be3c56 100644 --- a/apps/web-ele/src/views/mall/trade/brokerage/user/index.vue +++ b/apps/web-ele/src/views/mall/trade/brokerage/user/index.vue @@ -73,7 +73,7 @@ async function handleClearBindUser(row: MallBrokerageUserApi.BrokerageUser) { text: $t('ui.actionMessage.deleting', [row.nickname]), }); try { - await clearBindUser({ id: row.id as number }); + await clearBindUser({ id: row.id! }); ElMessage.success($t('ui.actionMessage.deleteSuccess', [row.nickname])); handleRefresh(); } finally { @@ -203,7 +203,7 @@ const [Grid, gridApi] = useVbenVxeGrid({ type: 'primary', link: true, auth: ['trade:brokerage-user:clear-bind-user'], - ifShow: !!row.bindUserId, + ifShow: row.bindUserId > 0, onClick: handleClearBindUser.bind(null, row), }, ]" diff --git a/apps/web-ele/src/views/mall/trade/brokerage/user/modules/create-form.vue b/apps/web-ele/src/views/mall/trade/brokerage/user/modules/create-form.vue index f73b37dc0..0ceb8bc98 100644 --- a/apps/web-ele/src/views/mall/trade/brokerage/user/modules/create-form.vue +++ b/apps/web-ele/src/views/mall/trade/brokerage/user/modules/create-form.vue @@ -1,9 +1,10 @@ + -
- - - - - - - {{ userInfo.user?.nickname }} - - - - - - - - - {{ userInfo.bindUser?.nickname }} - - - - 有 - - - - - {{ formatDate(userInfo.bindUser?.brokerageTime) }} - - -
+ + + + + + + + {{ user?.nickname }} + + + + + + + + + + {{ bindUser?.nickname }} + + + + + + {{ formatDate(bindUser?.brokerageTime) }} + + - \ No newline at end of file + diff --git a/apps/web-ele/src/views/mall/trade/brokerage/user/modules/update-form.vue b/apps/web-ele/src/views/mall/trade/brokerage/user/modules/update-form.vue index b5c7d4f07..f89a7e1c4 100644 --- a/apps/web-ele/src/views/mall/trade/brokerage/user/modules/update-form.vue +++ b/apps/web-ele/src/views/mall/trade/brokerage/user/modules/update-form.vue @@ -4,39 +4,57 @@ import type { MallBrokerageUserApi } from '#/api/mall/trade/brokerage/user'; import { ref } from 'vue'; import { useVbenModal } from '@vben/common-ui'; +import { DICT_TYPE } from '@vben/constants'; import { IconifyIcon } from '@vben/icons'; import { $t } from '@vben/locales'; -import { formatDate } from '@vben/utils'; +import { formatDate, isEmpty } from '@vben/utils'; import { ElAvatar, ElDescriptions, ElDescriptionsItem, + ElDivider, ElInput, ElMessage, - ElTag, } from 'element-plus'; +import { useVbenForm } from '#/adapter/form'; import { getBrokerageUser, updateBindUser, } from '#/api/mall/trade/brokerage/user'; +import { DictTag } from '#/components/dict-tag'; + +import { useUpdateFormSchema } from '../data'; /** 修改分销用户 */ defineOptions({ name: 'BrokerageUserUpdateForm' }); const emit = defineEmits(['success']); -const formData = ref(); +const formData = ref({ + id: undefined, + bindUserId: undefined, +}); + +const [Form, formApi] = useVbenForm({ + commonConfig: { + componentProps: { + class: 'w-full', + }, + formItemClass: 'col-span-2', + labelWidth: 120, + }, + layout: 'horizontal', + schema: useUpdateFormSchema(), + showDefaultActions: false, +}); const [Modal, modalApi] = useVbenModal({ async onConfirm() { - if (!formData.value) { - return; - } - // 未查找到合适的上级 - if (!bindUser.value) { - ElMessage.error('请先查询并确认推广人'); + await formApi.setValues(formData.value); + const { valid } = await formApi.validate(); + if (!valid) { return; } modalApi.lock(); @@ -52,10 +70,6 @@ const [Modal, modalApi] = useVbenModal({ }, onOpenChange: async (isOpen: boolean) => { if (!isOpen) { - formData.value = { - id: 0, - bindUserId: 0, - }; return; } const data = modalApi.getData(); @@ -68,8 +82,9 @@ const [Modal, modalApi] = useVbenModal({ id: data.id, bindUserId: data.bindUserId, }; + await formApi.setValues(formData.value); if (data.bindUserId) { - await handleGetUser(); + await handleSearchUser(data.bindUserId, '上级分销员'); } } finally { modalApi.unlock(); @@ -77,60 +92,70 @@ const [Modal, modalApi] = useVbenModal({ }, }); -const bindUser = ref(); +/** 绑定用户信息 */ +const bindUser = ref(); -/** 查询推广员 */ -async function handleGetUser() { - if (!formData.value) { +/** 查询分销员 */ +async function handleSearchUser(id: number, userType: string) { + if (isEmpty(id)) { + ElMessage.warning(`请先输入${userType}编号后重试!!!`); return; } - if (formData.value.bindUserId === formData.value.id) { + if (formData.value?.bindUserId === formData.value?.id) { ElMessage.error('不能绑定自己为推广人'); return; } - try { - bindUser.value = await getBrokerageUser(formData.value.bindUserId); - if (!bindUser.value) { - ElMessage.warning('推广员不存在'); - } - } catch { - ElMessage.warning('推广员不存在'); + + const userData = await getBrokerageUser(id); + if (!userData) { + ElMessage.warning(`${userType}不存在`); + return; } + bindUser.value = userData as MallBrokerageUserApi.BrokerageUser; } \ No newline at end of file +