src/api/index.ts | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/stores/craftModel.ts | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/dashboard/components/DeviceStatusInfo.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/dashboard/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/api/index.ts
@@ -112,7 +112,6 @@ procedureId: number page: number pageSize: number number: string } /** src/stores/craftModel.ts
@@ -1,8 +1,10 @@ import { ref, computed } from 'vue' import { ref, watch } from 'vue' import { defineStore } from 'pinia' import type { CraftModel } from '@/api/craftModel' import { apiGetCraftModelList } from '@/api' import { useTasksStore } from '@/stores/tasks' const watcher = ref() export const useCraftModelStore = defineStore('craftModel', () => { const craftModelList = ref<CraftModel[]>() @@ -12,13 +14,21 @@ apiGetCraftModelList({ procedureId: taskStore.activeTask?.Procedure.ID, page: 1, pageSize: 999, number: taskStore.activeTask?.Procedure?.processModelNumber pageSize: 999 }).then((res) => { craftModelList.value = res.data ?? [] }) } } if (!watcher.value) { watch( () => taskStore.activeTask, () => { getCraftModelList() } ) } return { craftModelList, getCraftModelList } }) src/views/dashboard/components/DeviceStatusInfo.vue
@@ -73,6 +73,7 @@ import type { PLCResponse } from '@/api/plc' import { useTasksStore } from '@/stores/tasks' import { storeToRefs } from 'pinia' import type { TasksGroupByChannel } from '@/api/task' export interface DeviceStatusInfoProps { plc?: PLCResponse @@ -143,11 +144,31 @@ return `${days}天${hours}时${m}分` } /** * 获取某任务所在通道的运行中的任务 * @param channelMap * @param channelNumber */ function getChannelRunningTask(channelMap?: TasksGroupByChannel, channelNumber?: number) { if (!channelMap || !channelNumber) { return } const channel = channelMap[channelNumber] if (channel) { const taskList = channel?.Tasks ?? [] return taskList.find((ele) => ele.Procedure.Status === 2) } } // 工序运行时间 const taskStore = useTasksStore() const { activeTask } = storeToRefs(taskStore) const { activeTask, channels } = storeToRefs(taskStore) // 工序运行时间: 使用当前选中任务所在通道的正处于运行中的任务来展示 const runningTime = computed(() => { return getTaskRunningTime(activeTask?.value?.Procedure?.realStartTime, activeTask?.value?.Procedure?.realEndTime) const runningTask = getChannelRunningTask(channels?.value, activeTask?.value?.Channel) return getTaskRunningTime(runningTask?.Procedure?.realStartTime, runningTask?.Procedure?.realEndTime) }) </script> src/views/dashboard/index.vue
@@ -15,12 +15,14 @@ <ProcessingInfo style="margin-top: 6px" :task="activeTask"></ProcessingInfo> </el-tab-pane> <el-tab-pane label="工艺信息" name="工艺信息"> <ProcessInfo v-for="item in craftModelStore.craftModelList" :key="item.ID" :craft-model="item" @detail="openCraftModelDetailModal" ></ProcessInfo> <el-scrollbar always> <ProcessInfo v-for="item in craftModelStore.craftModelList" :key="item.ID" :craft-model="item" @detail="openCraftModelDetailModal" ></ProcessInfo> </el-scrollbar> </el-tab-pane> <el-tab-pane label="物料清单" name="物料清单"> <InputMaterialsList @@ -152,13 +154,10 @@ // 切换任务时获取对应任务的工艺模型信息 const craftModelStore = useCraftModelStore() watch(activeTask, () => { craftModelStore.getCraftModelList() }) craftModelStore.getCraftModelList() const showCraftModelDetail = ref(false) function openCraftModelDetailModal() { console.log(1) showCraftModelDetail.value = true }