From 0af7df17665cad3e02824042cfe20ebed9dae41e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8?= Date: Mon, 22 Jun 2026 13:45:13 +0800 Subject: [PATCH] bug --- src/api/types/user.d.ts | 1 + src/views/agent/user/index.vue | 2 +- src/views/agent/user/options.ts | 2 +- src/views/capital/fundFlow/index.vue | 4 +- src/views/capital/fundFlow/options.ts | 2 + .../components/marketMaker/index.vue | 458 ++++++++++++++++++ src/views/dashboard/index.vue | 9 + src/views/order/history/options.ts | 1 + src/views/order/rechange/options.ts | 2 + src/views/order/withdraw/options.ts | 2 + src/views/profile/personalCenter/index.vue | 2 +- src/views/profile/user/index.vue | 8 +- src/views/realName/index.vue | 4 +- src/views/system/notice/options.ts | 1 + src/views/trade/exe/index.vue | 32 +- src/views/user/Login.vue | 156 +++++- src/views/user/Register.vue | 1 + src/views/wallet/withdrawOrderList/options.ts | 2 + 18 files changed, 655 insertions(+), 34 deletions(-) create mode 100644 src/views/dashboard/components/marketMaker/index.vue diff --git a/src/api/types/user.d.ts b/src/api/types/user.d.ts index 3d196df..5df4d65 100644 --- a/src/api/types/user.d.ts +++ b/src/api/types/user.d.ts @@ -5,6 +5,7 @@ export interface LoginParams { password: string login_type: number // 1-邮箱登录 2-手机登录 code?: string // 验证码(可选) + device_no?: string // 设备号(可选) } // 登录响应类型 export interface LoginResponse { diff --git a/src/views/agent/user/index.vue b/src/views/agent/user/index.vue index 0134cd6..432a663 100644 --- a/src/views/agent/user/index.vue +++ b/src/views/agent/user/index.vue @@ -344,7 +344,7 @@ const getCustomerList = async (id: string) => { searchForm.value.endTime.length > 0 ? `${searchForm.value.endTime} 23:59:59` : '2026-03-01 23:59:59', - status: searchForm.value.status, + status: searchForm.value.status || '', } const data: any = await getCustomerListApi(params) diff --git a/src/views/agent/user/options.ts b/src/views/agent/user/options.ts index 4ec7b92..10f73b9 100644 --- a/src/views/agent/user/options.ts +++ b/src/views/agent/user/options.ts @@ -1,6 +1,6 @@ export const search = [ // 账号名称 - { prop: 'accountName', label: '账号名称', type: 'input' as const, placeholder: '请输入账号名称', width: '150px' }, + { prop: 'accountName', label: '账号名称', type: 'input' as const, placeholder: '请输入账号名称', width: '240px' }, // 开始时间 { prop: "startTime", label: '注册开始时间', type: 'date' as const, dateType: 'date' as const, placeholder: '请选择注册开始时间', width: '270px', // 时间范围选择器 diff --git a/src/views/capital/fundFlow/index.vue b/src/views/capital/fundFlow/index.vue index 57261d3..3e02e89 100644 --- a/src/views/capital/fundFlow/index.vue +++ b/src/views/capital/fundFlow/index.vue @@ -83,11 +83,11 @@ const getFundDetailList = async () => { page: currentPage.value, page_size: pageSize.value, start_time: - searchForm.value.startTime.length > 0 + searchForm.value.startTime?.length > 0 ? `${searchForm.value.startTime} 0:00:00` : '2026-01-01 0:00:00', end_time: - searchForm.value.endTime.length > 0 + searchForm.value.endTime?.length > 0 ? `${searchForm.value.endTime} 23:59:59` : '2026-03-15 23:59:59', user_name: searchForm.value.username, diff --git a/src/views/capital/fundFlow/options.ts b/src/views/capital/fundFlow/options.ts index 5524e9c..bbb55f1 100644 --- a/src/views/capital/fundFlow/options.ts +++ b/src/views/capital/fundFlow/options.ts @@ -43,6 +43,7 @@ export const search = [ valueFormat: 'YYYY-MM-DD', placeholder: '请选择开始时间', width: '220px', + clearable: false, }, //结束时间 { @@ -53,6 +54,7 @@ export const search = [ valueFormat: 'YYYY-MM-DD', placeholder: '请选择结束时间', width: '220px', + clearable: false, }, ] export const tableColumns = [ diff --git a/src/views/dashboard/components/marketMaker/index.vue b/src/views/dashboard/components/marketMaker/index.vue new file mode 100644 index 0000000..b469069 --- /dev/null +++ b/src/views/dashboard/components/marketMaker/index.vue @@ -0,0 +1,458 @@ + + + + + \ No newline at end of file diff --git a/src/views/dashboard/index.vue b/src/views/dashboard/index.vue index 7ff89f6..5745989 100644 --- a/src/views/dashboard/index.vue +++ b/src/views/dashboard/index.vue @@ -81,6 +81,13 @@ + + @@ -88,6 +95,7 @@ import { onMounted, ref, computed } from 'vue' import { UserFilled, User, TrendCharts, Money, Wallet, Coin, Timer, Operation, Right, List, Goods, Document, Setting } from '@element-plus/icons-vue' import Agent from './components/view/index.vue' +import MarketMakerDashboard from './components/marketMaker/index.vue' import AnimatedNumber from '@/views/agent/user/AnimatedNumber.vue' import { getUserIndex } from '@/api/modules/dashboard' import { useUserStore } from '@/stores/modules/user' @@ -98,6 +106,7 @@ defineOptions({ const userStore = useUserStore() const userId = userStore.userInfo?.id +const userRoleId = userStore.userInfo?.role_id const loginTime = ref('--') diff --git a/src/views/order/history/options.ts b/src/views/order/history/options.ts index b7c647a..c109f5d 100644 --- a/src/views/order/history/options.ts +++ b/src/views/order/history/options.ts @@ -65,6 +65,7 @@ export const search = [ dateType: 'datetimerange' as const, placeholder: '请选择时间范围', format: 'YYYY-MM-DD HH:mm:ss', + clearable: false, valueFormat: 'YYYY-MM-DD HH:mm:ss', startPlaceholder: '开始时间', endPlaceholder: '结束时间', diff --git a/src/views/order/rechange/options.ts b/src/views/order/rechange/options.ts index aa9b710..d11eece 100644 --- a/src/views/order/rechange/options.ts +++ b/src/views/order/rechange/options.ts @@ -34,6 +34,7 @@ export const search = [ dateType: 'date' as const, valueFormat: 'YYYY-MM-DD', placeholder: '请选择开始时间', + clearable: false, width: '260px', }, { @@ -43,6 +44,7 @@ export const search = [ dateType: 'date' as const, valueFormat: 'YYYY-MM-DD', placeholder: '请选择结束时间', + clearable: false, width: '260px', }, ] diff --git a/src/views/order/withdraw/options.ts b/src/views/order/withdraw/options.ts index 62b41e2..1338eee 100644 --- a/src/views/order/withdraw/options.ts +++ b/src/views/order/withdraw/options.ts @@ -14,6 +14,7 @@ export const search = [ dateType: 'datetime' as const, valueFormat: 'YYYY-MM-DD HH:mm:ss', placeholder: '请选择开始时间', + clearable: false, width: '200', }, { @@ -23,6 +24,7 @@ export const search = [ dateType: 'datetime' as const, valueFormat: 'YYYY-MM-DD HH:mm:ss', placeholder: '请选择结束时间', + clearable: false, width: '200', }, ] diff --git a/src/views/profile/personalCenter/index.vue b/src/views/profile/personalCenter/index.vue index 5b1189c..577485a 100644 --- a/src/views/profile/personalCenter/index.vue +++ b/src/views/profile/personalCenter/index.vue @@ -347,7 +347,7 @@ const handleSendCaptcha = async () => { await sendCaptcha(type, receiver, currentState, () => { const params: any = { reg_type: userStore.userInfo!.reg_type, - type: type === 'email' ? 'transfer_code' : 'bindMobile_code' + type: type === 'email' ? 'bindEmail_code' : 'bindMobile_code' }; if (type === 'email') { params.email = receiver; diff --git a/src/views/profile/user/index.vue b/src/views/profile/user/index.vue index d71b09f..c60bf9b 100644 --- a/src/views/profile/user/index.vue +++ b/src/views/profile/user/index.vue @@ -19,12 +19,12 @@ 查看详情 - - + + 修改 - - + + 调整金额 diff --git a/src/views/realName/index.vue b/src/views/realName/index.vue index 65718e3..76e45da 100644 --- a/src/views/realName/index.vue +++ b/src/views/realName/index.vue @@ -37,14 +37,14 @@ 身份证 -
护照 -
+ --> diff --git a/src/views/system/notice/options.ts b/src/views/system/notice/options.ts index e29e6fa..15be8a1 100644 --- a/src/views/system/notice/options.ts +++ b/src/views/system/notice/options.ts @@ -35,6 +35,7 @@ export const search = [ { label: '已发布', value: 2 }, ], width: '220px', + clearable: false, }, ] diff --git a/src/views/trade/exe/index.vue b/src/views/trade/exe/index.vue index d46d58f..537fe9e 100644 --- a/src/views/trade/exe/index.vue +++ b/src/views/trade/exe/index.vue @@ -73,21 +73,31 @@ import { Monitor, Download, Link } from '@element-plus/icons-vue' defineOptions({ name: 'Exe' }) -const downloadUrlMap: Record = { +type DownloadType = 'pc' | 'android' | 'ios' + +const downloadUrlMap: Record = { pc: 'https://adminh5.apimcapital.top/pc/Apim Capital-1.0.24.exe', - android: 'https://adminh5.apimcapital.top/app/xxxx.apk', + android: 'https://adminh5.apimcapital.top/app/app-production-release.apk', ios: 'https://adminh5.apimcapital.top/app/xxxx.apk' } -const handleDownload = (type: 'pc' | 'android' | 'ios') => { - const url = downloadUrlMap[type] - const a = document.createElement('a') - a.href = url - if (type === 'pc') a.download = 'Apim Capital-1.0.24.exe' - if (type === 'android') a.download = 'ApimCapital.apk' - document.body.appendChild(a) - a.click() - document.body.removeChild(a) +const handleDownload = (type: DownloadType) => { + const url: string = downloadUrlMap[type] + // 使用 window.open 在新页签打开下载链接, + // 避免在当前页点击 a.download 时被 SPA 路由拦截跳转到登录页 + const newWindow = window.open(url, '_blank', 'noopener,noreferrer') + // 某些浏览器会拦截弹窗,做一次降级处理 + if (!newWindow) { + const a = document.createElement('a') + a.href = url + a.target = '_blank' + a.rel = 'noopener noreferrer' + if (type === 'pc') a.download = 'Apim Capital-1.0.24.exe' + if (type === 'android') a.download = 'ApimCapital.apk' + document.body.appendChild(a) + a.click() + document.body.removeChild(a) + } } diff --git a/src/views/user/Login.vue b/src/views/user/Login.vue index e3b92d2..6267472 100644 --- a/src/views/user/Login.vue +++ b/src/views/user/Login.vue @@ -36,6 +36,18 @@ + +
+ +
+ 我已阅读并同意 + 《服务条款》、 + 《隐私协议》和 + 《风险提示》 +
+
+
+ 登 录 + + + +
+ +