From 2fb726588811bb08d98ab9096f558f078fbaf1f4 Mon Sep 17 00:00:00 2001 From: hwj Date: Fri, 10 Apr 2026 17:09:18 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E6=96=B0=E5=A2=9E=E7=94=98?= =?UTF-8?q?=E7=89=B9=E5=9B=BE=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/mes/plan/index.ts | 20 ++ src/views/mes/ganttChart/index.vue | 407 +++++++++++++++++++++++++++++ 2 files changed, 427 insertions(+) create mode 100644 src/views/mes/ganttChart/index.vue diff --git a/src/api/mes/plan/index.ts b/src/api/mes/plan/index.ts index eb1abd67..9ac2b2b3 100644 --- a/src/api/mes/plan/index.ts +++ b/src/api/mes/plan/index.ts @@ -28,6 +28,23 @@ export interface PlanVO { passRate: number } +export interface DevicePlanGanttPlanVO { + planId: number + planStartTime: string + planEndTime: string + latestStartTime: string + planNumber: number + productName: string + deviceName: string +} + +export interface DevicePlanGanttRespVO { + deviceId: number + deviceName: string + deviceCode: string + plans: DevicePlanGanttPlanVO[] +} + // 生产计划 API export const PlanApi = { // 查询生产计划分页 @@ -119,5 +136,8 @@ export const PlanApi = { }, getLastSevenDaysCompletedCount: async (params?: any) => { return await request.get({ url: `/mes/plan/getLastSevenDaysCompletedCount`, params }) + }, + getGanttByDevice: async (params: { startTime: string; endTime: string }) => { + return await request.get({ url: `/mes/plan/gantt-by-device`, params }) } } diff --git a/src/views/mes/ganttChart/index.vue b/src/views/mes/ganttChart/index.vue new file mode 100644 index 00000000..daf8c4fd --- /dev/null +++ b/src/views/mes/ganttChart/index.vue @@ -0,0 +1,407 @@ + + + + +