From 304d7ccde0b73a67832b72ba7803d5e5cdec4df6 Mon Sep 17 00:00:00 2001 From: HongxuanG <1359774872@qq.com> Date: Wed, 30 Sep 2026 12:29:45 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E6=89=8B=E5=8A=A8?= =?UTF-8?q?=E8=BF=9B=E4=BB=93=E5=B9=B6=E7=BB=9F=E4=B8=80PDA=E5=AD=97?= =?UTF-8?q?=E5=8F=B7=E6=A0=87=E5=87=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cursor/rules/pda-typography.mdc | 37 ++ src/common/http.api.js | 11 + src/common/pda-typography.scss | 19 + .../storefabric/SearchSelectPopup.vue | 14 +- src/pages.json | 9 +- src/pages/storefabric/storeFabricManualIn.vue | 551 ++++++++++++++++++ src/pages/sys/workbench/index.vue | 20 + 7 files changed, 654 insertions(+), 7 deletions(-) create mode 100644 .cursor/rules/pda-typography.mdc create mode 100644 src/common/pda-typography.scss create mode 100644 src/pages/storefabric/storeFabricManualIn.vue diff --git a/.cursor/rules/pda-typography.mdc b/.cursor/rules/pda-typography.mdc new file mode 100644 index 0000000..bb82b31 --- /dev/null +++ b/.cursor/rules/pda-typography.mdc @@ -0,0 +1,37 @@ +--- +description: PDA 小屏界面字号与排版标准(以手动进仓页为准) +alwaysApply: true +--- + +# PDA 字号标准 + +本项目面向工业 PDA 小屏。新增/改版业务页时,**以后台手动进仓页**(`storeFabricManualIn.vue`)的字号为准,不要用偏小的默认字号。 + +共用变量:`@import '@/common/pda-typography.scss';`(或等价路径)。 + +## 字号(rpx) + +| 用途 | 字号 | 变量 | +|------|------|------| +| 表单标签 / 正文 / 输入值 | **36** | `$pda-font-body` | +| 扫码输入框 | **36** | `$pda-font-body` | +| 占位提示 | **34** | `$pda-font-placeholder` | +| 行内操作(取消/修改) | **34** | `$pda-font-action` | +| 单位角标(如 KG) | **32** | `$pda-font-unit` | +| 顶栏次要文字(设置等) | **32** | `$pda-font-nav-sub` | +| 主按钮文字 | **36** | `$pda-font-button` | +| 弹层标题 / 选项 | **36** | `$pda-font-popup-title` / `$pda-font-popup-item` | +| 弹层取消 / 空态 | **34** | `$pda-font-popup-sub` | + +## 行高与触控 + +- 列表行最小高度约 **100rpx**,可略加上下 padding +- 扫码输入框高度约 **100rpx** +- 主按钮高度约 **92rpx** +- 标签列宽约 **200rpx**(中文四字标签) + +## 注意 + +- 登录环境选择、出仓明细等已放大过的页面,新改动保持不低于上表 +- 不要为了“好看”再缩小字号;宁可少露内容、可滚动,也要可读 +- 选择类弹层(如 `SearchSelectPopup`)与表单页使用同一套字号 diff --git a/src/common/http.api.js b/src/common/http.api.js index 4c2ad0e..6a5d096 100644 --- a/src/common/http.api.js +++ b/src/common/http.api.js @@ -46,6 +46,12 @@ const install = (Vue, vm) => { detailList: (params = {}) => vm.$u.get(gfmWarehouseUrl('getGfmWarehouseList'), params), }, + // PDA 生产进仓(排产单细码扫码进仓) + productionScheduleOrder: { + getScanFineCodeDetail: (params = {}) => vm.$u.get('/produce/productionScheduleOrder/getScanFineCodeDetail', params), + scanInWarehouseFineCode: (params = {}) => vm.$u.putJson('/produce/productionScheduleOrder/scanInWarehouseFineCode', params), + }, + // 营销体系下拉(路径相对 apiurl:.../pda/v1/saleSystem/getSaleSystemDropdownList) saleSystem: { getDropdownList: (params = {}) => vm.$u.get('/saleSystem/getSaleSystemDropdownList', params), @@ -56,6 +62,11 @@ const install = (Vue, vm) => { list: (params = {}) => vm.$u.get('/business_unit/list', params), }, + // 员工枚举(路径相对 apiurl:.../pda/v1/employee/list_enum) + employee: { + listEnum: (params = {}) => vm.$u.get('/employee/list_enum', params), + }, + // 字典明细枚举(路径相对 apiurl:.../pda/v1/dictionaryDetail/getDictionaryDetailEnumList) dictionary: { getDetailEnumList: (params = {}) => vm.$u.get('/dictionaryDetail/getDictionaryDetailEnumList', params), diff --git a/src/common/pda-typography.scss b/src/common/pda-typography.scss new file mode 100644 index 0000000..ab74ca7 --- /dev/null +++ b/src/common/pda-typography.scss @@ -0,0 +1,19 @@ +/** + * PDA 小屏字号标准(以手动进仓页为准) + * 业务页请优先引用这些变量,避免字号再次变小。 + */ + +$pda-font-body: 36rpx; +$pda-font-placeholder: 34rpx; +$pda-font-action: 34rpx; +$pda-font-unit: 32rpx; +$pda-font-nav-sub: 32rpx; +$pda-font-button: 36rpx; +$pda-font-popup-title: 36rpx; +$pda-font-popup-item: 36rpx; +$pda-font-popup-sub: 34rpx; + +$pda-row-min-height: 100rpx; +$pda-scan-input-height: 100rpx; +$pda-button-height: 92rpx; +$pda-label-width: 200rpx; diff --git a/src/components/storefabric/SearchSelectPopup.vue b/src/components/storefabric/SearchSelectPopup.vue index cf7624d..93d6a0e 100644 --- a/src/components/storefabric/SearchSelectPopup.vue +++ b/src/components/storefabric/SearchSelectPopup.vue @@ -84,7 +84,9 @@ export default { }; - diff --git a/src/pages/sys/workbench/index.vue b/src/pages/sys/workbench/index.vue index c0472c7..c646c87 100644 --- a/src/pages/sys/workbench/index.vue +++ b/src/pages/sys/workbench/index.vue @@ -63,6 +63,14 @@ export default { path: '/pages/storefabric/storeFabricWarehouseGroupList', tone: 'tone-stock', bg: '/static/img/workbench/fabric-stock.jpg' + }, + { + name: '手动进仓', + en: 'MANUAL ENTRY', + tag: '进仓', + path: '/pages/storefabric/storeFabricManualIn', + tone: 'tone-in', + bg: '/static/img/workbench/fabric-stock.jpg' } ] }; @@ -281,4 +289,16 @@ page { .tone-stock .menu-card__tag text { color: #2f78e6; } + +.tone-in { + background: #3f51b5; +} + +.tone-in .menu-card__mask { + background: rgba(63, 81, 181, 0.72); +} + +.tone-in .menu-card__tag text { + color: #3f51b5; +}