From f291d82285096493adb9bdaa9f3d37bb8b8f62e3 Mon Sep 17 00:00:00 2001 From: DaxPay Dev Date: Sun, 5 Jul 2026 23:58:09 +0800 Subject: [PATCH] =?UTF-8?q?feat(ums):=20=E9=93=B6=E8=81=94=E5=95=86?= =?UTF-8?q?=E5=8A=A1=E9=80=9A=E9=81=93=E5=95=86=E6=88=B7=E7=AE=A1=E7=90=86?= =?UTF-8?q?(=E7=AE=A1=E7=90=86=E7=AB=AF)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增银联商务通道商户管理页(umsManage)与创建配置页调整 - api 补充通道商户接口, 新增 umsManage locale 中英文 - ChannelMerchantDetailDispatch 分发银联商务系列产品至管理页 --- .../channel/ums/channel-merchant.api.ts | 116 ++++++- .../en-US/payment/channel/umsManage.json | 9 + .../zh-CN/payment/channel/umsManage.json | 9 + .../channel/ums/config/UmsMchCreateConfig.vue | 318 +++++++++--------- .../UmsDirectChannelMerchantBasicInfo.vue | 119 +++++++ .../ums/manage/UmsDirectKeyConfigEdit.vue | 159 +++++++++ .../channel/ums/manage/UmsDirectMchManage.vue | 171 ++++++++++ .../detail/ChannelMerchantDetailDispatch.vue | 24 +- 8 files changed, 755 insertions(+), 170 deletions(-) create mode 100644 apps/daxpay-admin/src/locales/langs/en-US/payment/channel/umsManage.json create mode 100644 apps/daxpay-admin/src/locales/langs/zh-CN/payment/channel/umsManage.json create mode 100644 apps/daxpay-admin/src/views/payment/channel/ums/manage/UmsDirectChannelMerchantBasicInfo.vue create mode 100644 apps/daxpay-admin/src/views/payment/channel/ums/manage/UmsDirectKeyConfigEdit.vue create mode 100644 apps/daxpay-admin/src/views/payment/channel/ums/manage/UmsDirectMchManage.vue diff --git a/apps/daxpay-admin/src/api/payment/channel/ums/channel-merchant.api.ts b/apps/daxpay-admin/src/api/payment/channel/ums/channel-merchant.api.ts index 16ab13938..2d8b024b9 100644 --- a/apps/daxpay-admin/src/api/payment/channel/ums/channel-merchant.api.ts +++ b/apps/daxpay-admin/src/api/payment/channel/ums/channel-merchant.api.ts @@ -1,15 +1,119 @@ -import type { Result } from '#/types/web'; +import type { MchEntity, Result } from '#/types/web'; import { defHttp } from '#/api/request'; /** - * 银联商务通道商户创建 API + * 银联商务直连通道商户 API */ -export const ChannelMerchantUmsApi = { +export const UmsDirectChannelMerchantApi = { /** - * 创建银联商务通道商户 + * 创建银联商务直连通道商户(同时保存密钥配置) */ - create(data: Record): Promise> { - return defHttp.post({ url: '/admin/ums/channel-merchant/create', data }); + create(data: UmsDirectChannelMerchantCreateParam): Promise> { + return defHttp.post({ url: '/admin/ums/direct-channel-merchant/create', data }); + }, + /** + * 根据通道商户号查询银联商务直连通道商户配置 + */ + findByChannelMchNo(channelMchNo: string): Promise> { + return defHttp.get({ + url: '/admin/ums/direct-channel-merchant/find-by-channel-mch-no', + params: { channelMchNo }, + }); + }, + /** + * 根据通道商户号查询密钥配置 + */ + findKeyConfig(channelMchNo: string): Promise> { + return defHttp.get({ + url: '/admin/ums/direct-channel-merchant/find-key-config', + params: { channelMchNo }, + }); + }, + /** + * 保存密钥配置 + */ + saveKeyConfig(data: UmsDirectKeyConfigParam): Promise> { + return defHttp.post({ url: '/admin/ums/direct-channel-merchant/save-key-config', data }); }, }; + +/** + * 银联商务直连通道商户配置 + */ +export interface UmsDirectChannelMerchantConfig extends MchEntity { + /** 通道商户号(系统生成雪花号) */ + channelMchNo?: string; + /** 所属支付产品 */ + product?: string; + /** 银联商务商户号(mid) */ + merchantNo?: string; + /** 终端号(tid) */ + terminalNo?: string; + /** 订单号前缀 */ + orderPrefix?: string; + /** 是否沙箱环境 */ + sandbox?: boolean; +} + +/** + * 银联商务直连密钥配置 + */ +export interface UmsDirectKeyConfig { + /** 通道商户号 */ + channelMchNo?: string; + /** 商户号 */ + mchNo?: string; + /** 银联商务应用 AppId */ + umsAppId?: string; + /** 应用密钥(HmacSHA256 签名密钥) */ + appKey?: string; + /** 通讯密钥(回调验签密钥) */ + secretKey?: string; + /** 应用密钥是否已配置 */ + appKeyConfigured?: boolean; + /** 通讯密钥是否已配置 */ + secretKeyConfigured?: boolean; +} + +/** + * 银联商务直连密钥配置保存参数 + */ +export interface UmsDirectKeyConfigParam { + /** 通道商户号 */ + channelMchNo: string; + /** 商户号 */ + mchNo?: string; + /** 银联商务应用 AppId */ + umsAppId?: string; + /** 应用密钥 */ + appKey?: string; + /** 通讯密钥 */ + secretKey?: string; +} + +/** + * 银联商务直连通道商户创建参数 + */ +export interface UmsDirectChannelMerchantCreateParam { + /** 商户号 */ + mchNo: string; + /** 通道商户名称 */ + channelMerchantName: string; + /** 所属支付产品 */ + product: string; + /** 银联商务商户号 */ + merchantNo: string; + /** 终端号 */ + terminalNo?: string; + /** 订单号前缀 */ + orderPrefix?: string; + /** 是否沙箱环境 */ + sandbox?: boolean; + /** 银联商务应用 AppId */ + umsAppId: string; + /** 应用密钥 */ + appKey: string; + /** 通讯密钥 */ + secretKey: string; +} diff --git a/apps/daxpay-admin/src/locales/langs/en-US/payment/channel/umsManage.json b/apps/daxpay-admin/src/locales/langs/en-US/payment/channel/umsManage.json new file mode 100644 index 000000000..c7249754b --- /dev/null +++ b/apps/daxpay-admin/src/locales/langs/en-US/payment/channel/umsManage.json @@ -0,0 +1,9 @@ +{ + "manageTitle": "UMS Direct Merchant Management", + "cardDirectKeyConfig": "Key Config", + "cardDirectKeyConfigDesc": "Configure UMS merchant-level App ID and keys", + "directKeyConfigTitle": "UMS Key Configuration", + "keyConfigSection": "Merchant Key Config", + "appKeyConfigured": "Configured (enter new value to change)", + "secretKeyConfigured": "Configured (enter new value to change)" +} diff --git a/apps/daxpay-admin/src/locales/langs/zh-CN/payment/channel/umsManage.json b/apps/daxpay-admin/src/locales/langs/zh-CN/payment/channel/umsManage.json new file mode 100644 index 000000000..3a40c13f0 --- /dev/null +++ b/apps/daxpay-admin/src/locales/langs/zh-CN/payment/channel/umsManage.json @@ -0,0 +1,9 @@ +{ + "manageTitle": "银联商务直连商户管理", + "cardDirectKeyConfig": "密钥配置", + "cardDirectKeyConfigDesc": "配置银联商务商户维度的应用ID和密钥", + "directKeyConfigTitle": "银联商务密钥配置", + "keyConfigSection": "商户密钥配置", + "appKeyConfigured": "已配置(如需修改请直接输入新值)", + "secretKeyConfigured": "已配置(如需修改请直接输入新值)" +} diff --git a/apps/daxpay-admin/src/views/payment/channel/ums/config/UmsMchCreateConfig.vue b/apps/daxpay-admin/src/views/payment/channel/ums/config/UmsMchCreateConfig.vue index 4d2ea0fb1..55eb586e6 100644 --- a/apps/daxpay-admin/src/views/payment/channel/ums/config/UmsMchCreateConfig.vue +++ b/apps/daxpay-admin/src/views/payment/channel/ums/config/UmsMchCreateConfig.vue @@ -1,195 +1,187 @@