From db273e3e1dce8b6ad5a0652e252e0668450b46c2 Mon Sep 17 00:00:00 2001 From: zhouz <> Date: Fri, 14 Aug 2026 15:42:45 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0LMS=E6=97=A5=E8=AE=A1?= =?UTF-8?q?=E5=88=92=E4=BD=9C=E4=B8=9A=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/lms/daily-plan/work/data.ts | 56 +++++ .../src/views/lms/daily-plan/work/index.vue | 203 ++++++++++++++++++ .../lms/daily-plan/work/modules/operation.vue | 108 ++++++++++ .../lms/daily-plan/work/modules/sort.vue | 61 ++++++ .../lms/daily-plan/work/modules/strategy.vue | 58 +++++ 5 files changed, 486 insertions(+) create mode 100644 nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/data.ts create mode 100644 nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/index.vue create mode 100644 nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/modules/operation.vue create mode 100644 nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/modules/sort.vue create mode 100644 nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/modules/strategy.vue diff --git a/nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/data.ts b/nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/data.ts new file mode 100644 index 00000000..80a93c1a --- /dev/null +++ b/nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/data.ts @@ -0,0 +1,56 @@ +import type { VbenFormSchema } from '#/adapter/form'; +import type { VxeTableGridOptions } from '#/adapter/vxe-table'; +import type { LmsDailyPlanApi } from '#/api/lms/dailyplan'; + +import { DICT_TYPE } from '@vben/constants'; + +const DAILY_PLAN_DICT_TYPE = DICT_TYPE as typeof DICT_TYPE & { + LMS_DAILY_PLAN_ORDER_STATUS: string; + LMS_DAILY_PLAN_WORK_STATUS: string; +}; + +export function useGridFormSchema(): VbenFormSchema[] { + return [ + { + fieldName: 'planOrOrderCode', + label: '计划/订单号', + component: 'Input', + componentProps: { allowClear: true, placeholder: '请输入计划或订单号' }, + }, + { + fieldName: 'materialKeyword', + label: '管芯', + component: 'Input', + componentProps: { allowClear: true, placeholder: '请输入管芯编码或名称' }, + }, + ]; +} + +export function useGridColumns(showWeight: boolean): VxeTableGridOptions['columns'] { + return [ + { field: 'sortSeq', title: '顺序', width: 80, fixed: 'left' }, + ...(showWeight ? [{ field: 'weight', title: '权重', width: 80 }] : []), + { field: 'planCode', title: '日计划编号', minWidth: 150 }, + { field: 'orderCode', title: '订单号', minWidth: 150, slots: { default: 'orderCode' } }, + { field: 'planDate', title: '计划日期', minWidth: 115 }, + { field: 'materialCode', title: '管芯编码', minWidth: 130 }, + { field: 'materialName', title: '管芯名称', minWidth: 140 }, + { field: 'totalQty', title: '需求总量', minWidth: 95 }, + { field: 'stockingProgress', title: '备货进度', minWidth: 115, slots: { default: 'stockingProgress' } }, + { + field: 'stockingStatus', title: '备货状态', minWidth: 105, + cellRender: { name: 'CellDict', props: { type: DAILY_PLAN_DICT_TYPE.LMS_DAILY_PLAN_WORK_STATUS } }, + }, + { field: 'sleevingProgress', title: '套管进度', minWidth: 115, slots: { default: 'sleevingProgress' } }, + { + field: 'sleevingStatus', title: '套管状态', minWidth: 105, + cellRender: { name: 'CellDict', props: { type: DAILY_PLAN_DICT_TYPE.LMS_DAILY_PLAN_WORK_STATUS } }, + }, + { + field: 'orderStatus', title: '订单状态', minWidth: 105, + cellRender: { name: 'CellDict', props: { type: DAILY_PLAN_DICT_TYPE.LMS_DAILY_PLAN_ORDER_STATUS } }, + }, + { field: 'updateTime', title: '修改时间', minWidth: 170, formatter: 'formatDateTime' }, + { title: '操作', width: 310, fixed: 'right', slots: { default: 'actions' } }, + ]; +} diff --git a/nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/index.vue b/nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/index.vue new file mode 100644 index 00000000..60c8df84 --- /dev/null +++ b/nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/index.vue @@ -0,0 +1,203 @@ + + + diff --git a/nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/modules/operation.vue b/nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/modules/operation.vue new file mode 100644 index 00000000..ab6f20d2 --- /dev/null +++ b/nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/lms/daily-plan/work/modules/operation.vue @@ -0,0 +1,108 @@ + + +