From 2bffa686753069d2f0e29883e02cc7d1c5c10693 Mon Sep 17 00:00:00 2001 From: 王彪总 Date: Fri, 23 Oct 2026 22:27:22 +0800 Subject: [PATCH] 业务线 小程序不用写死,从后端接口获取 --- App.vue | 2 +- common/config/env.js | 10 ++++------ common/styles/ui-standard.scss | 57 ++++++++++++++++++++++++++++++++++++++++++++------------- components/unified-task-actions/unified-task-actions.vue | 4 ++-- pages-sub/daily/maintain-manage/add-record.vue | 8 ++++---- pages-sub/daily/maintain-manage/finish-plan-detail.vue | 8 ++++---- pages-sub/daily/maintain-manage/now-list-page.vue | 8 ++++---- pages-sub/daily/maintain-manage/pending-plan-detail.vue | 2 +- pages-sub/daily/maintain-manage/road-detail-list.vue | 2 +- pages-sub/daily/maintain-manage/type-list-page.vue | 10 +++++----- pages-sub/daily/maintain-manage/type-list.vue | 8 ++++---- pages-sub/daily/patrol-manage/add-patrol-record.vue | 6 +++--- pages-sub/daily/patrol-manage/finish-plan-detail.vue | 2 +- pages-sub/daily/patrol-manage/pending-plan-detail.vue | 2 +- pages-sub/daily/quick-order/add-order.vue | 6 +++--- pages-sub/daily/quick-order/index.vue | 2 +- pages-sub/data/tree-archive/addInspect.vue | 13 +++++++------ pages-sub/data/tree-archive/addTree.vue | 22 ++++++++++------------ pages-sub/data/tree-archive/editTree.vue | 24 ++++++++++++++---------- pages-sub/data/tree-archive/index.vue | 22 +++++++++++----------- pages-sub/data/tree-archive/logDetail.vue | 14 +++++++------- pages-sub/data/tree-archive/treeRecord.vue | 6 +++--- pages-sub/problem/ai-manage/index.vue | 2 +- pages-sub/problem/regional-order-manage/add-order.vue | 2 +- pages-sub/problem/regional-order-manage/add-patrol-order.vue | 2 +- pages-sub/problem/regional-order-manage/distribution-order.vue | 2 +- pages-sub/problem/regional-order-manage/index.vue | 27 +++++++++------------------ pages-sub/problem/regional-order-manage/list-detail.vue | 32 ++++++++++++++++---------------- pages-sub/problem/regional-order-manage/list.vue | 8 +------- pages-sub/problem/regional-order-manage/order-detail.vue | 32 ++++++++++++++++---------------- pages-sub/problem/work-order-manage/add-maintain-order.vue | 4 ++-- pages-sub/problem/work-order-manage/add-order.vue | 4 ++-- pages-sub/problem/work-order-manage/distribution-order.vue | 8 ++++---- pages-sub/problem/work-order-manage/index.vue | 2 +- pages-sub/problem/work-order-manage/order-detail.vue | 40 ++++++++++++++++++++-------------------- pages/mine/index.vue | 76 ++++++++++++++++++++++++++++++++++++++++++++++------------------------------ 36 files changed, 256 insertions(+), 223 deletions(-) diff --git a/App.vue b/App.vue index 7c9738b..9c2fb43 100644 --- a/App.vue +++ b/App.vue @@ -153,7 +153,7 @@ page { .common-text-color{ font-size: 26rpx; - color: #4B5563 + color: #1F2937 } // 通用按钮样式(支持任意top值,无需批量生成类名) diff --git a/common/config/env.js b/common/config/env.js index 4b9f83e..a19697f 100644 --- a/common/config/env.js +++ b/common/config/env.js @@ -2,12 +2,10 @@ const env = { // 开发环境 development: { - // baseUrl: 'https://test.jichengshanshui.com.cn:28302', - // https://test.jichengshanshui.com.cn:28302 - - baseUrl: 'http://192.168.1.163:48081', - - uploadUrl: 'http://192.168.1.163:48081', + baseUrl: 'http://192.168.1.55:48081', + uploadUrl:'http://192.168.1.55:48081', + // baseUrl: 'https://test.jichengshanshui.com.cn:28302', + // uploadUrl: 'https://test.jichengshanshui.com.cn:28302', // baseApi:'admin-api', // appApi:'app-api' }, diff --git a/common/styles/ui-standard.scss b/common/styles/ui-standard.scss index 5868890..2bdb032 100644 --- a/common/styles/ui-standard.scss +++ b/common/styles/ui-standard.scss @@ -52,11 +52,11 @@ $j-reject-a: #B91C1C; $j-neutral-a: #565E6B; /* --- 1.5 文本色 --- */ -$j-text-title: #1F2937; // 卡片主标题 -$j-text-label: #9CA3AF; // 标签(浅灰) -$j-text-value: #4B5563; // 内容值 -$j-text-weak: #9CA3AF; // 辅助说明 -$j-text-strong: #1F2937; // 强调值 +$j-text-title: #111827; // 卡片主标题 +$j-text-label: #6B7280; // 标签(次级灰) +$j-text-value: #1F2937; // 内容值(正文黑) +$j-text-weak: #6B7280; // 辅助说明 +$j-text-strong: #111827; // 强调值 /* --- 1.6 字号层级(全站 6 档) --- */ $j-fs-title: 32rpx; // 16px 卡片主标题 @@ -93,10 +93,10 @@ $j-shadow-card: 0 4rpx 16rpx rgba(17, 24, 39, 0.06); $j-shadow-float: 0 -8rpx 28rpx rgba(17, 24, 39, 0.08); /* ========================================================================== - * 2. 信息项:标签自然宽 + 值右对齐(设计稿 .kv) + * 2. 信息项:标签自然宽 + 值左对齐(设计稿 .kv) * -------------------------------------------------------------------------- - * 设计稿不固定标签列宽:标签浅灰靠左,值占满剩余宽度并右对齐, - * 因此各行内容值的右边缘天然对齐,不会参差不齐。 + * 标签浅灰靠左,值紧跟标签之后并左对齐,读起来是「标签:值」一句话, + * 长文本换行也从固定位置起始,不会出现值忽左忽右的观感。 * ========================================================================== */ .u-body-item { display: flex !important; @@ -132,7 +132,7 @@ $j-shadow-float: 0 -8rpx 28rpx rgba(17, 24, 39, 0.08); font-weight: 400 !important; color: $j-text-value !important; line-height: 1.5 !important; - text-align: right; + text-align: left; word-break: break-all; } @@ -357,13 +357,16 @@ $j-shadow-float: 0 -8rpx 28rpx rgba(17, 24, 39, 0.08); * 6. 详情页统一:u-cell 排版收口(设计稿 .card.pad + .kv) * -------------------------------------------------------------------------- * 三类工单(养护 / 区域 / AI)详情都用 up-cell 渲染字段,此处统一层级: - * 标签 26rpx #9CA3AF 左 / 内容值 26rpx #4B5563 右 / 行内 16rpx 上下 + * 标签 26rpx #6B7280 左 / 内容值 26rpx #1F2937 紧跟标签后,左对齐 / 行内 16rpx 上下 * 注意:uview-plus 单元格内部类名为 u-cell__xxx(组件内为 scoped 样式), * 全局层必须带 !important 才生效。 + * 组件默认给 title 加 flex:1、给 value 加 margin-left:auto,值会被推到最右, + * 只改 text-align 不生效,必须同时收回 title 的 flex 并让 value 占满剩余宽度。 * ========================================================================== */ .u-cell__body { display: flex !important; justify-content: space-between !important; + column-gap: $j-sp-sm !important; padding: 16rpx $j-card-pad !important; } @@ -380,8 +383,33 @@ $j-shadow-float: 0 -8rpx 28rpx rgba(17, 24, 39, 0.08); line-height: 1.5 !important; } -/* 标题插槽(#title 自定义 view)同样收到「标签」层级 */ +/* 标签只占自身宽度,值紧随其后: + * 标签与内容之间的距离固定 16rpx(与列表卡片 .u-body-item 的 gap 保持一致) */ +.u-cell__title { + flex: 0 1 auto !important; + min-width: 0; +} + +/* 标题区外层容器:组件默认 flex:1,会把整行剩余宽度都吃掉, + * 导致 value 只能从半行之后开始,看起来像居中/右对齐,这里收回成「按内容宽度」 */ +.u-cell__body__content { + flex: 0 1 auto !important; + min-width: 0; +} + +/* #value 插槽:内容会被直接渲染成 .u-cell__body 的 flex 子元素(不是 u-cell__value), + * 上面那套规则管不到,必须单独补一份,否则插槽渲染的字段仍然贴在最右边 */ +.u-cell__body > view:not(.u-cell__body__content):not(.u-cell__left-icon-wrap):not(.u-cell__right-icon-wrap) { + flex: 1 1 auto !important; + min-width: 0; + text-align: left !important; +} + +/* 标题插槽(#title 自定义 view)同样收到「标签」层级; + * 模板里常给这个 view 写 inline 的 min-width: 200rpx,会把间距撑成一大段, + * 这里用 !important 统一收回,保证所有页面的「标签—内容」距离都是 16rpx */ .u-cell__title > view { + min-width: 0 !important; font-size: $j-fs-label !important; font-weight: 400 !important; color: $j-text-label !important; @@ -389,15 +417,18 @@ $j-shadow-float: 0 -8rpx 28rpx rgba(17, 24, 39, 0.08); } .u-cell__value { + flex: 1 1 auto !important; + min-width: 0; + margin-left: 0 !important; font-size: $j-fs-value !important; font-weight: 400 !important; color: $j-text-value !important; line-height: 1.5 !important; - text-align: right !important; + text-align: left !important; word-break: break-all; } -/* 插槽内的内容值统一走 .common-text-color(App.vue 中定义为 #4B5563) */ +/* 插槽内的内容值统一走 .common-text-color(App.vue 中定义为 #1F2937) */ /* 信息区块统一成卡片:四周留白一致,标题/内容与边框保持固定间距 */ .u-cell-group { diff --git a/components/unified-task-actions/unified-task-actions.vue b/components/unified-task-actions/unified-task-actions.vue index 418df46..2e065a4 100644 --- a/components/unified-task-actions/unified-task-actions.vue +++ b/components/unified-task-actions/unified-task-actions.vue @@ -321,7 +321,7 @@ defineExpose({ open }) } .unified-action-tip { - color: #9CA3AF; + color: #6B7280; font-size: 28rpx; padding: 20rpx 0; } @@ -395,7 +395,7 @@ defineExpose({ open }) // 字数统计贴灰底显示(组件内部写死了白底,需 !important 覆盖) .unified-action-form :deep(.u-textarea__count) { background-color: transparent !important; - color: #9CA3AF; + color: #6B7280; } .unified-action-btns { diff --git a/pages-sub/daily/maintain-manage/add-record.vue b/pages-sub/daily/maintain-manage/add-record.vue index 83f4fc1..847127c 100644 --- a/pages-sub/daily/maintain-manage/add-record.vue +++ b/pages-sub/daily/maintain-manage/add-record.vue @@ -1088,8 +1088,8 @@ export default { diff --git a/pages-sub/daily/patrol-manage/add-patrol-record.vue b/pages-sub/daily/patrol-manage/add-patrol-record.vue index f614187..7bc6c22 100644 --- a/pages-sub/daily/patrol-manage/add-patrol-record.vue +++ b/pages-sub/daily/patrol-manage/add-patrol-record.vue @@ -493,7 +493,7 @@ export default { \ No newline at end of file diff --git a/pages-sub/problem/regional-order-manage/list.vue b/pages-sub/problem/regional-order-manage/list.vue index 71d358d..aad3667 100644 --- a/pages-sub/problem/regional-order-manage/list.vue +++ b/pages-sub/problem/regional-order-manage/list.vue @@ -505,12 +505,6 @@ onMounted(async () => { } } -/* 列表顶部留出吸顶栏高度,避免内容被遮挡 */ -.common-card-list { - /* 原有样式保留,追加顶部内边距 */ - padding: calc(var(--status-bar-height) + 100rpx + 44rpx) 0 30rpx; - box-sizing: border-box; -} /* 第一行筛选布局 */ @@ -566,7 +560,7 @@ onMounted(async () => { } .common-card-list { - padding: calc(var(--status-bar-height) + 160rpx) 0 30rpx; + padding: calc(var(--status-bar-height) + 160rpx) 0 0; box-sizing: border-box; } diff --git a/pages-sub/problem/regional-order-manage/order-detail.vue b/pages-sub/problem/regional-order-manage/order-detail.vue index ce60f06..ebb944b 100644 --- a/pages-sub/problem/regional-order-manage/order-detail.vue +++ b/pages-sub/problem/regional-order-manage/order-detail.vue @@ -30,12 +30,12 @@ - +