diff --git a/mpuniapp/pages/common/login.uvue b/mpuniapp/pages/common/login.uvue index e4fe19d..a874580 100644 --- a/mpuniapp/pages/common/login.uvue +++ b/mpuniapp/pages/common/login.uvue @@ -389,7 +389,8 @@ onUnmounted(() => { align-items: center; box-sizing: border-box; padding-inline: var(--oc-space-16, 16px); - padding-block: 16px 36px; + padding-top: 16px; + padding-bottom: calc(36px + env(safe-area-inset-bottom, 0px)); overflow-x: hidden; } diff --git a/mpuniapp/pages/owner/leads.uvue b/mpuniapp/pages/owner/leads.uvue index 7e17b99..bc15085 100644 --- a/mpuniapp/pages/owner/leads.uvue +++ b/mpuniapp/pages/owner/leads.uvue @@ -522,8 +522,8 @@ onShow(() => { } .primary-cta-btn { - height: 38px; - min-height: 38px; + height: 44px; + min-height: 44px; padding-inline: 16px; border-width: 0; border-radius: var(--oc-radius-btn, 14px); @@ -657,7 +657,8 @@ onShow(() => { .leads-list { flex: 1; padding-inline: var(--oc-space-16, 16px); - padding-block: var(--oc-space-8, 8px); + padding-top: var(--oc-space-8, 8px); + padding-bottom: calc(var(--oc-space-8, 8px) + var(--window-bottom, 0px) + env(safe-area-inset-bottom, 0px)); } /* High-Density Lead Row (76px Height, Fast Scan for Sales) */ diff --git a/mpuniapp/pages/owner/workplace/index.uvue b/mpuniapp/pages/owner/workplace/index.uvue index 3cb04e7..d738dc0 100644 --- a/mpuniapp/pages/owner/workplace/index.uvue +++ b/mpuniapp/pages/owner/workplace/index.uvue @@ -501,8 +501,9 @@ onMounted(() => { } .copy-link-btn { - height: 36px; - padding: 0 12px; + height: 44px; + min-height: 44px; + padding: 0 14px; border-radius: 8px; background-color: var(--bg, #F5F8FC); border: 1px solid var(--border, #E3E7ED); @@ -666,8 +667,9 @@ onMounted(() => { } .pulse-action-btn { - height: 36px; - padding: 0 14px; + height: 44px; + min-height: 44px; + padding: 0 16px; border-radius: 8px; background-color: var(--primary, #0B5CFF); display: flex; diff --git a/mpuniapp/pages/portal/exchange.uvue b/mpuniapp/pages/portal/exchange.uvue index 653da1d..09b4b31 100644 --- a/mpuniapp/pages/portal/exchange.uvue +++ b/mpuniapp/pages/portal/exchange.uvue @@ -35,7 +35,7 @@ - ✓ + {{ t('successTitle') }} {{ t('successDesc') }} @@ -90,7 +90,9 @@ :aria-label="ocrCtaLabel" @click="handleOcrScan" > - 📷 + + + {{ ocrCtaLabel }} @@ -222,7 +224,9 @@ - 🛡 + + + {{ t('privacyTitle') }} @@ -637,10 +641,31 @@ onLoad((options: ExchangePageOptions) => { border-radius: 36px; } -.success-icon-check { - font-size: 28px; - font-weight: 700; - color: var(--oc-success, #12B76A); +.success-icon-tick { + width: 14px; + height: 24px; + border-right: 3px solid var(--oc-success, #12B76A); + border-bottom: 3px solid var(--oc-success, #12B76A); + transform: rotate(45deg); + margin-bottom: 6px; +} + +.ocr-camera-icon { + width: 18px; + height: 14px; + border: 1.5px solid var(--oc-text, #101828); + border-radius: 3px; + display: flex; + align-items: center; + justify-content: center; + margin-right: 6px; +} + +.ocr-camera-lens { + width: 6px; + height: 6px; + border: 1.5px solid var(--oc-text, #101828); + border-radius: 9999px; } .success-title { @@ -1062,8 +1087,22 @@ onLoad((options: ExchangePageOptions) => { padding-block-start: 1px; } -.privacy-shield-icon { - font-size: 18px; +.privacy-shield-badge { + width: 18px; + height: 18px; + border-radius: 5px; + background-color: var(--oc-primary-soft, #EBF5FF); + border: 1px solid var(--oc-primary, #0088FF); + display: flex; + align-items: center; + justify-content: center; +} + +.shield-core-dot { + width: 6px; + height: 6px; + border-radius: 9999px; + background-color: var(--oc-primary, #0088FF); } .privacy-text-wrap { diff --git a/mpuniapp/tests/ui-ux-mobile-pages.test.ts b/mpuniapp/tests/ui-ux-mobile-pages.test.ts index 802b3f7..73ee5c7 100644 --- a/mpuniapp/tests/ui-ux-mobile-pages.test.ts +++ b/mpuniapp/tests/ui-ux-mobile-pages.test.ts @@ -7,6 +7,7 @@ const MP_ROOT = path.resolve('m:/2026项目/CRMmp/mpuniapp'); // 18 个全量页面路由列表 const ALL_PAGES = [ + 'pages/owner/workplace/index.uvue', 'pages/portal/index.uvue', 'pages/portal/exchange.uvue', 'pages/portal/case-detail.uvue', @@ -36,10 +37,11 @@ const ALL_COMPONENTS = [ 'components/image-uploader/image-uploader.uvue', ]; -// 4 个 TabBar 页面 +// 5 个 TabBar 页面 const TABBAR_PAGES = [ - 'pages/owner/hall/index.uvue', + 'pages/owner/workplace/index.uvue', 'pages/owner/card/index.uvue', + 'pages/owner/radar.uvue', 'pages/owner/leads.uvue', 'pages/owner/profile/index.uvue', ]; @@ -49,8 +51,6 @@ const FORM_PAGES = [ 'pages/portal/exchange.uvue', 'pages/common/login.uvue', 'pages/owner/card/edit.uvue', - 'pages/owner/card/cases.uvue', - 'pages/owner/card/articles.uvue', 'pages/owner/leads-detail.uvue', 'pages/owner/nfc/scan.uvue', 'pages/owner/nfc/mode.uvue',