From 28e9815f11e57efa8c0120e14e3e6e1a38b85483 Mon Sep 17 00:00:00 2001
From: chenyuan <1154693969@qq.com>
Date: Tue, 21 May 2024 19:14:30 +0800
Subject: [PATCH] add task plan
---
src/api/mes/itemrequisition/index.ts | 54 +++
src/api/mes/organization/index.ts | 50 +++
src/api/mes/plan/index.ts | 53 +++
src/api/mes/task/index.ts | 72 ++++
src/utils/dict.ts | 10 +-
src/views/Login/components/LoginForm.vue | 20 +-
.../itemrequisition/ItemRequisitionForm.vue | 163 ++++++++
.../components/ItemRequisitionDetailForm.vue | 116 ++++++
.../components/ItemRequisitionDetailList.vue | 45 ++
src/views/mes/itemrequisition/index.vue | 281 +++++++++++++
.../mes/organization/OrganizationForm.vue | 197 +++++++++
src/views/mes/organization/index.vue | 355 ++++++++++++++++
src/views/mes/plan/PlanForm.vue | 202 +++++++++
src/views/mes/plan/index.vue | 383 ++++++++++++++++++
src/views/mes/task/TaskForm.vue | 152 +++++++
.../mes/task/components/TaskDetailForm.vue | 126 ++++++
.../mes/task/components/TaskDetailList.vue | 133 ++++++
src/views/mes/task/index.vue | 284 +++++++++++++
18 files changed, 2678 insertions(+), 18 deletions(-)
create mode 100644 src/api/mes/itemrequisition/index.ts
create mode 100644 src/api/mes/organization/index.ts
create mode 100644 src/api/mes/plan/index.ts
create mode 100644 src/api/mes/task/index.ts
create mode 100644 src/views/mes/itemrequisition/ItemRequisitionForm.vue
create mode 100644 src/views/mes/itemrequisition/components/ItemRequisitionDetailForm.vue
create mode 100644 src/views/mes/itemrequisition/components/ItemRequisitionDetailList.vue
create mode 100644 src/views/mes/itemrequisition/index.vue
create mode 100644 src/views/mes/organization/OrganizationForm.vue
create mode 100644 src/views/mes/organization/index.vue
create mode 100644 src/views/mes/plan/PlanForm.vue
create mode 100644 src/views/mes/plan/index.vue
create mode 100644 src/views/mes/task/TaskForm.vue
create mode 100644 src/views/mes/task/components/TaskDetailForm.vue
create mode 100644 src/views/mes/task/components/TaskDetailList.vue
create mode 100644 src/views/mes/task/index.vue
diff --git a/src/api/mes/itemrequisition/index.ts b/src/api/mes/itemrequisition/index.ts
new file mode 100644
index 00000000..9f45274a
--- /dev/null
+++ b/src/api/mes/itemrequisition/index.ts
@@ -0,0 +1,54 @@
+import request from '@/config/axios'
+
+// 生产领料 VO
+export interface ItemRequisitionVO {
+ id: number // ID
+ code: string // 编码
+ requisitionDate: Date // 下料时间
+ deliveryDate: Date // 创建时间
+ status: number // 状态
+ processInstanceId: string // 流程实例的编号
+ planId: number // 计划ID
+ remark: string // 备注
+ isEnable: boolean // 是否启用
+}
+
+// 生产领料 API
+export const ItemRequisitionApi = {
+ // 查询生产领料分页
+ getItemRequisitionPage: async (params: any) => {
+ return await request.get({ url: `/mes/item-requisition/page`, params })
+ },
+
+ // 查询生产领料详情
+ getItemRequisition: async (id: number) => {
+ return await request.get({ url: `/mes/item-requisition/get?id=` + id })
+ },
+
+ // 新增生产领料
+ createItemRequisition: async (data: ItemRequisitionVO) => {
+ return await request.post({ url: `/mes/item-requisition/create`, data })
+ },
+
+ // 修改生产领料
+ updateItemRequisition: async (data: ItemRequisitionVO) => {
+ return await request.put({ url: `/mes/item-requisition/update`, data })
+ },
+
+ // 删除生产领料
+ deleteItemRequisition: async (id: number) => {
+ return await request.delete({ url: `/mes/item-requisition/delete?id=` + id })
+ },
+
+ // 导出生产领料 Excel
+ exportItemRequisition: async (params) => {
+ return await request.download({ url: `/mes/item-requisition/export-excel`, params })
+ },
+
+// ==================== 子表(领料明细) ====================
+
+ // 获得领料明细列表
+ getItemRequisitionDetailListByItemRequisitionId: async (itemRequisitionId) => {
+ return await request.get({ url: `/mes/item-requisition/item-requisition-detail/list-by-item-requisition-id?itemRequisitionId=` + itemRequisitionId })
+ }
+}
\ No newline at end of file
diff --git a/src/api/mes/organization/index.ts b/src/api/mes/organization/index.ts
new file mode 100644
index 00000000..ceec5ed2
--- /dev/null
+++ b/src/api/mes/organization/index.ts
@@ -0,0 +1,50 @@
+import request from '@/config/axios'
+
+// 产线工位 VO
+export interface OrganizationVO {
+ id: number // 组织id
+ name: string // 组织名称
+ parentId: number // 父组织id
+ sort: number // 显示顺序
+ workerUserId: number // 负责人
+ machineId: number // 对应机台id
+ phone: string // 联系电话
+ email: string // 邮箱
+ isEnable: boolean // 是否启用
+ status: number // 组织状态
+ orgClass: number // 组织等级
+ orgType: number // 组织类型
+}
+
+// 产线工位 API
+export const OrganizationApi = {
+ // 查询产线工位列表
+ getOrganizationList: async (params) => {
+ return await request.get({ url: `/mes/organization/list`, params })
+ },
+
+ // 查询产线工位详情
+ getOrganization: async (id: number) => {
+ return await request.get({ url: `/mes/organization/get?id=` + id })
+ },
+
+ // 新增产线工位
+ createOrganization: async (data: OrganizationVO) => {
+ return await request.post({ url: `/mes/organization/create`, data })
+ },
+
+ // 修改产线工位
+ updateOrganization: async (data: OrganizationVO) => {
+ return await request.put({ url: `/mes/organization/update`, data })
+ },
+
+ // 删除产线工位
+ deleteOrganization: async (id: number) => {
+ return await request.delete({ url: `/mes/organization/delete?id=` + id })
+ },
+
+ // 导出产线工位 Excel
+ exportOrganization: async (params) => {
+ return await request.download({ url: `/mes/organization/export-excel`, params })
+ }
+}
\ No newline at end of file
diff --git a/src/api/mes/plan/index.ts b/src/api/mes/plan/index.ts
new file mode 100644
index 00000000..363356cf
--- /dev/null
+++ b/src/api/mes/plan/index.ts
@@ -0,0 +1,53 @@
+import request from '@/config/axios'
+
+// 生产计划 VO
+export interface PlanVO {
+ id: number // ID
+ code: string // 计划编码
+ productId: number // 产品ID
+ taskDetailId: number // 任务单明细ID
+ taskId: number // 任务单ID
+ planNumber: number // 数量
+ finishNumber: number // 成品数量
+ status: number // 状态
+ planStartTime: Date // 计划开始时间
+ planEndTime: Date // 计划结束时间
+ startTime: Date // 实际开始时间
+ endTime: Date // 实际结束时间
+ productionManagerId: number // 生产主管ID
+ remark: string // 备注
+ isEnable: boolean // 是否启用
+}
+
+// 生产计划 API
+export const PlanApi = {
+ // 查询生产计划分页
+ getPlanPage: async (params: any) => {
+ return await request.get({ url: `/mes/plan/page`, params })
+ },
+
+ // 查询生产计划详情
+ getPlan: async (id: number) => {
+ return await request.get({ url: `/mes/plan/get?id=` + id })
+ },
+
+ // 新增生产计划
+ createPlan: async (data: PlanVO) => {
+ return await request.post({ url: `/mes/plan/create`, data })
+ },
+
+ // 修改生产计划
+ updatePlan: async (data: PlanVO) => {
+ return await request.put({ url: `/mes/plan/update`, data })
+ },
+
+ // 删除生产计划
+ deletePlan: async (id: number) => {
+ return await request.delete({ url: `/mes/plan/delete?id=` + id })
+ },
+
+ // 导出生产计划 Excel
+ exportPlan: async (params) => {
+ return await request.download({ url: `/mes/plan/export-excel`, params })
+ }
+}
\ No newline at end of file
diff --git a/src/api/mes/task/index.ts b/src/api/mes/task/index.ts
new file mode 100644
index 00000000..36178e52
--- /dev/null
+++ b/src/api/mes/task/index.ts
@@ -0,0 +1,72 @@
+import request from '@/config/axios'
+
+// 生产任务单 VO
+export interface TaskVO {
+ id: number // ID
+ code: string // 编码
+ orderDate: Date // 下达日期
+ deliveryDate: Date // 交货日期
+ status: number // 状态
+ processInstanceId: string // 流程实例的编号
+ remark: string // 备注
+ isEnable: boolean // 是否启用
+}
+
+// 生产任务单 API
+export const TaskApi = {
+ // 查询生产任务单分页
+ getTaskPage: async (params: any) => {
+ return await request.get({ url: `/mes/task/page`, params })
+ },
+
+ // 查询生产任务单详情
+ getTask: async (id: number) => {
+ return await request.get({ url: `/mes/task/get?id=` + id })
+ },
+
+ // 新增生产任务单
+ createTask: async (data: TaskVO) => {
+ return await request.post({ url: `/mes/task/create`, data })
+ },
+
+ // 修改生产任务单
+ updateTask: async (data: TaskVO) => {
+ return await request.put({ url: `/mes/task/update`, data })
+ },
+
+ // 删除生产任务单
+ deleteTask: async (id: number) => {
+ return await request.delete({ url: `/mes/task/delete?id=` + id })
+ },
+
+ // 导出生产任务单 Excel
+ exportTask: async (params) => {
+ return await request.download({ url: `/mes/task/export-excel`, params })
+ },
+
+// ==================== 子表(生产任务单明细) ====================
+
+ // 获得生产任务单明细分页
+ getTaskDetailPage: async (params) => {
+ return await request.get({ url: `/mes/task/task-detail/page`, params })
+ },
+ // 新增生产任务单明细
+ createTaskDetail: async (data) => {
+ return await request.post({ url: `/mes/task/task-detail/create`, data })
+ },
+
+ // 修改生产任务单明细
+ updateTaskDetail: async (data) => {
+ return await request.put({ url: `/mes/task/task-detail/update`, data })
+ },
+
+ // 删除生产任务单明细
+ deleteTaskDetail: async (id: number) => {
+ return await request.delete({ url: `/mes/task/task-detail/delete?id=` + id })
+ },
+
+ // 获得生产任务单明细
+ getTaskDetail: async (id: number) => {
+ return await request.get({ url: `/mes/task/task-detail/get?id=` + id })
+ }
+}
\ No newline at end of file
diff --git a/src/utils/dict.ts b/src/utils/dict.ts
index cffb8836..c2ac9804 100644
--- a/src/utils/dict.ts
+++ b/src/utils/dict.ts
@@ -235,6 +235,14 @@ ERP_MAINTAIN_TYPE = 'maintain_type',// ERP 保养类型
ERP_AUTOCODE_IS_PADDING = "erp_autocode_is_padding",
ERP_AUTOCODE_PADDING_TYPE = "erp_autocode_padding_type",
ERP_AUTOCODE_CYCLEMETHOD = "erp_autocode_cyclemethod",
-ERP_AUTOCODE_PARTTYPE = "erp_autocode_parttype"
+ERP_AUTOCODE_PARTTYPE = "erp_autocode_parttype",
+
+// ========== MES - 生产管理模块 ==========
+MES_ORG_TYPE = "mes_org_type",
+MES_ORG_CLASS = "mes_org_class",
+MES_ORG_STATUS = "mes_org_status",
+
+MES_TASK_STATUS = "mes_task_status",
+MES_PLAN_STATUS = "mes_plan_status",
}
diff --git a/src/views/Login/components/LoginForm.vue b/src/views/Login/components/LoginForm.vue
index a325a446..09d4bca3 100644
--- a/src/views/Login/components/LoginForm.vue
+++ b/src/views/Login/components/LoginForm.vue
@@ -109,7 +109,7 @@
- {{ t('login.otherLogin') }}
+
+
diff --git a/src/views/mes/itemrequisition/ItemRequisitionForm.vue b/src/views/mes/itemrequisition/ItemRequisitionForm.vue
new file mode 100644
index 00000000..b6166025
--- /dev/null
+++ b/src/views/mes/itemrequisition/ItemRequisitionForm.vue
@@ -0,0 +1,163 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/views/mes/itemrequisition/components/ItemRequisitionDetailForm.vue b/src/views/mes/itemrequisition/components/ItemRequisitionDetailForm.vue
new file mode 100644
index 00000000..5372022d
--- /dev/null
+++ b/src/views/mes/itemrequisition/components/ItemRequisitionDetailForm.vue
@@ -0,0 +1,116 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ —
+
+
+
+
+
+ + 添加领料明细
+
+
+
\ No newline at end of file
diff --git a/src/views/mes/itemrequisition/components/ItemRequisitionDetailList.vue b/src/views/mes/itemrequisition/components/ItemRequisitionDetailList.vue
new file mode 100644
index 00000000..7ffd1207
--- /dev/null
+++ b/src/views/mes/itemrequisition/components/ItemRequisitionDetailList.vue
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/mes/itemrequisition/index.vue b/src/views/mes/itemrequisition/index.vue
new file mode 100644
index 00000000..43a60205
--- /dev/null
+++ b/src/views/mes/itemrequisition/index.vue
@@ -0,0 +1,281 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+ 新增
+
+
+ 导出
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 编辑
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/mes/organization/OrganizationForm.vue b/src/views/mes/organization/OrganizationForm.vue
new file mode 100644
index 00000000..bad24739
--- /dev/null
+++ b/src/views/mes/organization/OrganizationForm.vue
@@ -0,0 +1,197 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/views/mes/organization/index.vue b/src/views/mes/organization/index.vue
new file mode 100644
index 00000000..199131f8
--- /dev/null
+++ b/src/views/mes/organization/index.vue
@@ -0,0 +1,355 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+ 新增
+
+
+ 导出
+
+
+ 展开/折叠
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 编辑
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/mes/plan/PlanForm.vue b/src/views/mes/plan/PlanForm.vue
new file mode 100644
index 00000000..3737edbb
--- /dev/null
+++ b/src/views/mes/plan/PlanForm.vue
@@ -0,0 +1,202 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/views/mes/plan/index.vue b/src/views/mes/plan/index.vue
new file mode 100644
index 00000000..a706b89e
--- /dev/null
+++ b/src/views/mes/plan/index.vue
@@ -0,0 +1,383 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+ 新增
+
+
+ 导出
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 编辑
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/mes/task/TaskForm.vue b/src/views/mes/task/TaskForm.vue
new file mode 100644
index 00000000..2f479f0a
--- /dev/null
+++ b/src/views/mes/task/TaskForm.vue
@@ -0,0 +1,152 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/views/mes/task/components/TaskDetailForm.vue b/src/views/mes/task/components/TaskDetailForm.vue
new file mode 100644
index 00000000..346b2b3d
--- /dev/null
+++ b/src/views/mes/task/components/TaskDetailForm.vue
@@ -0,0 +1,126 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/views/mes/task/components/TaskDetailList.vue b/src/views/mes/task/components/TaskDetailList.vue
new file mode 100644
index 00000000..6629dd24
--- /dev/null
+++ b/src/views/mes/task/components/TaskDetailList.vue
@@ -0,0 +1,133 @@
+
+
+
+
+ 新增
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 编辑
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/mes/task/index.vue b/src/views/mes/task/index.vue
new file mode 100644
index 00000000..faf297b7
--- /dev/null
+++ b/src/views/mes/task/index.vue
@@ -0,0 +1,284 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+ 新增
+
+
+ 导出
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 编辑
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file