diff --git a/src/api/erp/mold/index.ts b/src/api/erp/mold/index.ts index dc34c093..0e688282 100644 --- a/src/api/erp/mold/index.ts +++ b/src/api/erp/mold/index.ts @@ -83,7 +83,7 @@ export const MoldBrandApi = { }, getMoldPageWithoutPaging: async () => { - return await request.get({ url: `/erp/mold-brand/mold/page` }) + return await request.get({ url: `/erp/mold-brand/mold/list` }) }, // 新增模具 createMold: async (data) => { diff --git a/src/api/mes/deviceledger/index.ts b/src/api/mes/deviceledger/index.ts index c6ed0460..8294b8a2 100644 --- a/src/api/mes/deviceledger/index.ts +++ b/src/api/mes/deviceledger/index.ts @@ -45,6 +45,10 @@ export const DeviceLedgerApi = { return await request.get({ url: `/mes/device-ledger/page`, params }) }, + getDeviceLedgerList: async (params: any) => { + return await request.get({ url: `/mes/device-ledger/list`, params }) + }, + // 查询设备类型详情 getDeviceLedger: async (id: number) => { return await request.get({ url: `/mes/device-ledger/get?id=` + id }) diff --git a/src/api/mes/taskManagement/index.ts b/src/api/mes/taskManagement/index.ts index ed2a14be..fe87f63c 100644 --- a/src/api/mes/taskManagement/index.ts +++ b/src/api/mes/taskManagement/index.ts @@ -43,5 +43,10 @@ export const TaskManagementApi = { exportTaskManagement: async (params: any) => { return await request.download({ url: `/mes/task-management/export-excel`, params }) + }, + + updateTaskManagementEnabled: async (id: number | string, enabled: string) => { + const data = { id, enabled } + return await request.put({ url: `/mes/task-management/update-enabled`, data }) } } diff --git a/src/assets/imgs/banner.png b/src/assets/imgs/banner.png new file mode 100644 index 00000000..6e60e45f Binary files /dev/null and b/src/assets/imgs/banner.png differ diff --git a/src/views/Home/Index.vue b/src/views/Home/Index.vue index e62b0a4c..b051e335 100644 --- a/src/views/Home/Index.vue +++ b/src/views/Home/Index.vue @@ -1,185 +1,285 @@ diff --git a/src/views/Home/echarts-data.ts b/src/views/Home/echarts-data.ts index 56093f4b..9692ab90 100644 --- a/src/views/Home/echarts-data.ts +++ b/src/views/Home/echarts-data.ts @@ -151,6 +151,228 @@ export const barOptions: EChartsOption = { ] } +export const deviceRepairLineOptions: EChartsOption = { + title: { + text: '设备维修数量统计', + left: 'center' + }, + tooltip: { + trigger: 'axis' + }, + grid: { + left: 40, + right: 20, + bottom: 30, + top: 60, + containLabel: true + }, + xAxis: { + type: 'category', + boundaryGap: false, + data: ['一月', '二月', '三月', '四月', '五月', '六月'] + }, + yAxis: { + type: 'value' + }, + series: [ + { + name: '维修数量', + type: 'line', + smooth: true, + data: [3, 5, 4, 6, 8, 7] + } + ] +} + +export const deviceCategoryPieOptions: EChartsOption = { + title: { + text: '设备分类统计', + left: 'center' + }, + tooltip: { + trigger: 'item' + }, + legend: { + orient: 'vertical', + left: 'left' + }, + series: [ + { + name: '设备类别', + type: 'pie', + radius: '55%', + center: ['50%', '60%'], + data: [ + { value: 12, name: '注塑机' }, + { value: 9, name: '冲床' }, + { value: 6, name: '数控机床' }, + { value: 4, name: '检测设备' }, + { value: 2, name: '其他' } + ] + } + ] +} + +export const deviceDistributionBarOptions: EChartsOption = { + title: { + text: '设备分布统计', + left: 'center' + }, + tooltip: { + trigger: 'axis', + axisPointer: { + type: 'shadow' + } + }, + grid: { + left: 40, + right: 20, + bottom: 30, + top: 60, + containLabel: true + }, + xAxis: { + type: 'category', + data: ['一车间', '二车间', '三车间', '四车间', '五车间'], + axisTick: { + alignWithLabel: true + } + }, + yAxis: { + type: 'value' + }, + series: [ + { + name: '设备数量', + type: 'bar', + data: [10, 8, 6, 5, 4] + } + ] +} + +export const productionOverviewMock = { + orderCount: 9, + runningOrderCount: 12, + startedOrderCount: 12, + shutdownOrderCount: 0, + plannedOutput: 109210, + completedOutput: 1260, + qualifiedRate: 1.15, + alarmRate: 0, + onTimeRate: 0 +} + +export const productionProgressMock = [ + { + id: 'SCGD00000036', + orderNo: 'SCGD00000036', + productName: '大中型模具', + statusText: '生产中', + planStartTime: '2021-05-28 18:40:10', + planEndTime: '2021-06-05 18:40:10', + completeRate: 8.33 + }, + { + id: 'SCGD00000037', + orderNo: 'SCGD00000037', + productName: '大型注塑模具', + statusText: '排产中', + planStartTime: '2021-05-28 18:40:10', + planEndTime: '2021-06-10 18:40:10', + completeRate: 6.86 + }, + { + id: 'SCGD00000033', + orderNo: 'SCGD00000033', + productName: '模具零件加工', + statusText: '生产中', + planStartTime: '2021-04-02 17:50:12', + planEndTime: '2021-04-10 17:50:12', + completeRate: 57.58 + }, + { + id: 'SCGD00000040', + orderNo: 'SCGD00000040', + productName: '试模工单', + statusText: '待开工', + planStartTime: '2021-06-15 08:30:00', + planEndTime: '2021-06-20 18:00:00', + completeRate: 0 + } +] + +export const deviceStatusMock = { + inactive: 2, + active: 0, + total: 2 +} + +export const alarmStatusMock = { + serious: 0, + assignedToMe: 0, + total: 0 +} + +export const deviceOverviewMock = { + deviceTotal: 33, + needRepair: 0, + running: 33, + stop: 0, + utilization: 0, + alarmRate: 0 +} + +export const todoTasksMock = [ + { + id: 'TASK0001', + name: '模具工位点检任务', + type: '点检', + priority: '高', + planTime: '2021-06-13 13:00', + owner: '设备科' + }, + { + id: 'TASK0002', + name: '设备保养任务', + type: '保养', + priority: '中', + planTime: '2021-06-13 15:00', + owner: '保全班' + }, + { + id: 'TASK0003', + name: '注塑机状态巡检', + type: '巡检', + priority: '中', + planTime: '2021-06-14 09:00', + owner: '设备科' + }, + { + id: 'TASK0004', + name: '能耗异常分析', + type: '分析', + priority: '低', + planTime: '2021-06-14 14:00', + owner: '能源管理' + }, + { + id: 'TASK0005', + name: '设备档案核对', + type: '管理', + priority: '低', + planTime: '2021-06-15 10:00', + owner: '设备管理' + }, + { + id: 'TASK0006', + name: '安全隐患排查', + type: '安全', + priority: '高', + planTime: '2021-06-15 16:00', + owner: '安环部' + } +] + export const radarOption: EChartsOption = { legend: { data: [t('workplace.personal'), t('workplace.team')] diff --git a/src/views/Home/types.ts b/src/views/Home/types.ts index e6313d36..06a7bab1 100644 --- a/src/views/Home/types.ts +++ b/src/views/Home/types.ts @@ -1,7 +1,7 @@ export type WorkplaceTotal = { - project: number - access: number - todo: number + project: number + access: number + todo: number } export type Project = { @@ -53,3 +53,55 @@ export type MonthlySales = { estimate: number actual: number } + +export type ProductionOverview = { + orderCount: number + runningOrderCount: number + startedOrderCount: number + shutdownOrderCount: number + plannedOutput: number + completedOutput: number + qualifiedRate: number + alarmRate: number + onTimeRate: number +} + +export type ProductionProgressItem = { + id: string + orderNo: string + productName: string + statusText: string + planStartTime: string + planEndTime: string + completeRate: number +} + +export type DeviceStatusSummary = { + inactive: number + active: number + total: number +} + +export type AlarmStatusSummary = { + serious: number + assignedToMe: number + total: number +} + +export type DeviceOverview = { + deviceTotal: number + needRepair: number + running: number + stop: number + utilization: number + alarmRate: number +} + +export type TodoTask = { + id: string + name: string + type: string + priority: string + planTime: string + owner: string +} diff --git a/src/views/erp/mold/components/MoldList.vue b/src/views/erp/mold/components/MoldList.vue index 62bcd4d6..95d02c4a 100644 --- a/src/views/erp/mold/components/MoldList.vue +++ b/src/views/erp/mold/components/MoldList.vue @@ -1,26 +1,16 @@