diff --git a/ops-platform/components.d.ts b/ops-platform/components.d.ts index a6347d7..3d053cc 100644 --- a/ops-platform/components.d.ts +++ b/ops-platform/components.d.ts @@ -13,6 +13,7 @@ declare module 'vue' { ElCol: typeof import('element-plus/es')['ElCol'] ElContainer: typeof import('element-plus/es')['ElContainer'] ElDialog: typeof import('element-plus/es')['ElDialog'] + ElDrawer: typeof import('element-plus/es')['ElDrawer'] ElForm: typeof import('element-plus/es')['ElForm'] ElFormItem: typeof import('element-plus/es')['ElFormItem'] ElHeader: typeof import('element-plus/es')['ElHeader'] diff --git a/ops-platform/src/views/auth/LoginView.vue b/ops-platform/src/views/auth/LoginView.vue index e9365e5..9353ce1 100644 --- a/ops-platform/src/views/auth/LoginView.vue +++ b/ops-platform/src/views/auth/LoginView.vue @@ -1,6 +1,6 @@ diff --git a/tenant-platform/src/views/apps/AppListView.vue b/tenant-platform/src/views/apps/AppListView.vue index a1db724..78682c2 100644 --- a/tenant-platform/src/views/apps/AppListView.vue +++ b/tenant-platform/src/views/apps/AppListView.vue @@ -7,22 +7,24 @@ - - - - - - - - - - - +
+ + + + + + + + + + + +
- + @@ -43,7 +45,7 @@ diff --git a/tenant-platform/src/views/auth/LoginView.vue b/tenant-platform/src/views/auth/LoginView.vue index a1bffb6..2fa04e5 100644 --- a/tenant-platform/src/views/auth/LoginView.vue +++ b/tenant-platform/src/views/auth/LoginView.vue @@ -90,10 +90,18 @@ onMounted(loadCaptcha) display: flex; align-items: center; justify-content: center; - background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + padding: 16px; + background: + radial-gradient(circle at top left, rgba(102, 126, 234, 0.35), transparent 35%), + radial-gradient(circle at bottom right, rgba(118, 75, 162, 0.32), transparent 32%), + linear-gradient(135deg, #667eea 0%, #764ba2 100%); } .login-card { - width: 400px; + width: min(420px, calc(100vw - 32px)); + box-sizing: border-box; + border-radius: 18px; + box-shadow: 0 20px 50px rgba(15, 23, 42, 0.18); + backdrop-filter: blur(8px); } .title { text-align: center; @@ -117,4 +125,33 @@ onMounted(loadCaptcha) justify-content: space-between; font-size: 14px; } + +@media (max-width: 767px) { + .login-page { + align-items: flex-start; + padding-top: 12vh; + } + + .login-card { + width: 100%; + } + + .captcha-row { + flex-direction: column; + align-items: stretch; + gap: 8px; + } + + .captcha-img { + width: 100%; + height: 44px; + object-fit: cover; + } + + .links { + flex-direction: column; + gap: 8px; + align-items: center; + } +} diff --git a/tenant-platform/src/views/im/ImManagementView.vue b/tenant-platform/src/views/im/ImManagementView.vue index 93e5dd5..52c410a 100644 --- a/tenant-platform/src/views/im/ImManagementView.vue +++ b/tenant-platform/src/views/im/ImManagementView.vue @@ -2,8 +2,8 @@
- - + +
{{ item.value }} @@ -16,11 +16,12 @@ -
+
新增用户 刷新
+
@@ -64,6 +65,7 @@ +
-
+
创建群组 刷新
+
@@ -115,6 +118,7 @@ +
@@ -138,13 +142,14 @@ -
+
新增过滤规则 刷新
+
@@ -174,6 +179,7 @@ +
@@ -213,6 +219,7 @@ +
@@ -235,6 +242,7 @@ +
-
+
刷新
+
@@ -272,6 +281,7 @@ +
查看接入说明
- - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + +
@@ -486,58 +498,60 @@
- - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + +
@@ -547,45 +561,47 @@
- - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + +
@@ -629,11 +645,13 @@ 回调发送失败只记录日志,不会中断消息发送、撤回等主流程。 接收方建议按 `callbackId` 去重。 - - - - - +
+ + + + + +
@@ -1722,6 +1740,18 @@ function userAvatarFallback(row: ImUser) { margin-bottom: 12px; } +.table-wrap { + overflow-x: auto; +} + +.responsive-toolbar { + flex-wrap: wrap; +} + +.stat-grid { + margin-bottom: 16px; +} + .toolbar-space-between { display: flex; align-items: center; @@ -1812,4 +1842,59 @@ function userAvatarFallback(row: ImUser) { word-break: break-word; line-height: 1.5; } + +@media (max-width: 767px) { + .stat-grid :deep(.el-col) { + margin-bottom: 12px; + } + + .toolbar-space-between { + flex-direction: column; + align-items: stretch; + } + + .toolbar-group { + width: 100%; + } + + .toolbar-group :deep(.el-button), + .toolbar-group :deep(.el-select), + .toolbar-group :deep(.el-input), + .toolbar-group :deep(.el-switch) { + width: 100%; + } + + .responsive-toolbar :deep(.el-button), + .responsive-toolbar :deep(.el-select), + .responsive-toolbar :deep(.el-input), + .responsive-toolbar :deep(.el-radio-group) { + width: 100%; + } + + .responsive-toolbar :deep(.el-radio-group) { + display: flex; + flex-wrap: wrap; + } + + .responsive-toolbar :deep(.el-radio-button) { + flex: 1 1 32%; + } + + .table-wrap :deep(.el-table) { + min-width: 920px; + } + + .section-head { + flex-direction: column; + align-items: stretch; + } + + .section-head .toolbar-group { + justify-content: flex-start; + } + + .search-results { + max-height: 240px; + } +} diff --git a/tenant-platform/src/views/layout/MainLayout.vue b/tenant-platform/src/views/layout/MainLayout.vue index 0a620ab..e23fd3d 100644 --- a/tenant-platform/src/views/layout/MainLayout.vue +++ b/tenant-platform/src/views/layout/MainLayout.vue @@ -1,6 +1,6 @@ diff --git a/tenant-platform/src/views/logs/OperationLogView.vue b/tenant-platform/src/views/logs/OperationLogView.vue new file mode 100644 index 0000000..ba142c0 --- /dev/null +++ b/tenant-platform/src/views/logs/OperationLogView.vue @@ -0,0 +1,162 @@ + + + + + diff --git a/tenant-platform/src/views/push/PushConfigView.vue b/tenant-platform/src/views/push/PushConfigView.vue new file mode 100644 index 0000000..2945a73 --- /dev/null +++ b/tenant-platform/src/views/push/PushConfigView.vue @@ -0,0 +1,307 @@ + + + + + diff --git a/tenant-platform/src/views/update/StoreGuideView.vue b/tenant-platform/src/views/update/StoreGuideView.vue index 8a54407..b2caf23 100644 --- a/tenant-platform/src/views/update/StoreGuideView.vue +++ b/tenant-platform/src/views/update/StoreGuideView.vue @@ -125,8 +125,8 @@ const STORE_GUIDES = [ urlLabel: '查看鸿蒙官方文档', steps: [ { title: '确认鸿蒙应用页', description: '准备独立的鸿蒙应用市场详情页。' }, - { title: '复制跳转链接', description: '把市场详情页链接填写到应用商店配置。' }, - { title: '回到版本管理页', description: '鸿蒙版本仅记录版本号和跳转页。' }, + { title: '复制跳转链接', description: '如需市场跳转,再把详情页链接填写到应用商店配置。' }, + { title: '回到版本管理页', description: '鸿蒙版本仅记录版本号和跳转页,不填也可继续。' }, ], hint: '鸿蒙应用配置只维护市场跳转页,不参与 Android 审核上传。', enabled: true, @@ -139,10 +139,10 @@ const STORE_GUIDES = [ urlLabel: '查看 Apple 官方文档', steps: [ { title: '创建 API Key', description: '保存 Team ID / Key ID / p8 私钥。' }, - { title: '补充 Bundle ID', description: '回到版本管理页保存包名与链接。' }, - { title: '提交审核', description: '支持审核后自动发布。' }, + { title: '补充 Bundle ID', description: '回到版本管理页保存包名;链接可选。' }, + { title: '提交审核', description: '支持审核后自动发布,链接不填也能继续走流程。' }, ], - hint: 'iOS 可填写 App Store 链接。', + hint: 'iOS 的 App Store 链接可选填写,需要跳转时再补。', enabled: true, }, { diff --git a/tenant-platform/src/views/update/VersionManagementView.vue b/tenant-platform/src/views/update/VersionManagementView.vue index e70cac7..3f43484 100644 --- a/tenant-platform/src/views/update/VersionManagementView.vue +++ b/tenant-platform/src/views/update/VersionManagementView.vue @@ -6,7 +6,7 @@ -
+
Android iOS @@ -16,6 +16,7 @@ 刷新
+
@@ -33,13 +34,25 @@ @@ -69,10 +82,14 @@ v-if="row.publishStatus === 'PUBLISHED'" link type="warning" size="small" @click="openGrayDialog(row, 'app')">灰度 + 修改强更 下架 + @click="promptUnpublishApp(row.id)">下架 +
-
+
刷新
+
@@ -126,10 +145,11 @@ 发布 重新上架 灰度 - 下架 + 下架 +
@@ -226,7 +246,7 @@ :closable="false" style="margin-bottom:16px" /> -
+
刷新 保存配置
@@ -235,7 +255,7 @@ 比例 - 成员 + 成员 @@ -245,9 +265,15 @@ + + + + + + 同步后本地选择 @@ -260,11 +286,36 @@ + + + +
+ 刷新 +
+
+ + + + + + + + + + + + + + + + +
+
- + @@ -293,7 +344,7 @@ - + @@ -359,7 +410,7 @@ - +

版本 {{ submitStoreVersion.versionName }} @@ -414,7 +465,7 @@ @@ -451,10 +502,10 @@ - + - + @@ -466,6 +517,12 @@ + + + + + + @@ -475,17 +532,17 @@