| | |
| | | <ProcessInfo |
| | | v-for="item in craftModelStore.craftModelList" |
| | | :key="item.ID" |
| | | :task="activeTask" |
| | | :active-arr="activeArr" |
| | | :craft-model="item" |
| | | @detail="openCraftModelDetailModal" |
| | | @update="updateCraft" |
| | | ></ProcessInfo> |
| | | </div> |
| | | <div class="craft-loaded-tip"> |
| | |
| | | <BigButton class="btn" bg-color="red">红灯呼叫</BigButton> |
| | | </template> |
| | | </DashboardLayout> |
| | | <CraftDetailModal v-model="showCraftModelDetail" @close="showCraftModelDetail = false"></CraftDetailModal> |
| | | <CraftDetailModal |
| | | v-model="showCraftModelDetail" |
| | | :active-arr="activeArr" |
| | | :craft-model="currentCraftModelInfo" |
| | | @renew="updateCraft" |
| | | @close="showCraftModelDetail = false" |
| | | ></CraftDetailModal> |
| | | <MaterialDetails v-model="showMaterialDetail" :material="currentMaterialInfo"></MaterialDetails> |
| | | </template> |
| | | <script setup lang="ts"> |
| | | import { computed, ref } from 'vue' |
| | | import ChannelCollapse from '@/views/dashboard/components/ChannelCollapse.vue' |
| | | import type { Task, Material } from '@/api/task' |
| | | |
| | | import type { Worker, Order, Task, Material } from '@/api/task' |
| | | import type { CraftModel } from '@/api/craftModel' |
| | | import PersonInfo from '@/views/dashboard/components/PersonInfo.vue' |
| | | import ProcessInfo from '@/views/dashboard/components/ProcessInfo.vue' |
| | | import ColorInfo from '@/views/dashboard/components/ColorInfo.vue' |
| | |
| | | import { useCraftModelStore } from '@/stores/craftModel' |
| | | import CraftDetailModal from '@/views/dashboard/components/CraftDetailModal.vue' |
| | | import MaterialDetails from '@/views/dashboard/components/MaterialDetails.vue' |
| | | |
| | | import { updateCraftParams } from '@/api' |
| | | import { Loading } from '@element-plus/icons-vue' |
| | | |
| | | defineOptions({ |
| | |
| | | craftModelStore.getCraftModelList() |
| | | |
| | | const showCraftModelDetail = ref(false) |
| | | function openCraftModelDetailModal() { |
| | | // 当前要展示的工艺详情 |
| | | const currentCraftModelInfo = ref<CraftModel>() |
| | | const activeArr = ref([]) |
| | | function openCraftModelDetailModal(craftModel: CraftModel) { |
| | | currentCraftModelInfo.value = craftModel |
| | | showCraftModelDetail.value = true |
| | | } |
| | | // 更新工艺 |
| | | function updateCraft(craftModel: CraftModel) { |
| | | if (activeTask?.value?.Procedure?.ID) { |
| | | activeArr.value.push(craftModel.number) |
| | | updateCraftParams({ procedureId: activeTask!.value.Procedure.ID }).then( |
| | | (res) => { |
| | | if (res.code == 200) { |
| | | editActive(craftModel) |
| | | ElMessage({ |
| | | message: '更新成功!', |
| | | type: 'success' |
| | | }) |
| | | } |
| | | }, |
| | | (err) => { |
| | | console.error(err, '----err') |
| | | setTimeout(() => { |
| | | editActive(craftModel) |
| | | }, 500) |
| | | } |
| | | ) |
| | | } |
| | | } |
| | | function editActive(craftModel: CraftModel) { |
| | | for (let i in activeArr.value) { |
| | | if (activeArr.value[i] == craftModel.number) { |
| | | activeArr.value.splice(i, 1) |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 是否展示物料详情弹窗 |
| | | const showMaterialDetail = ref(false) |