| | |
| | | </div> |
| | | </div> |
| | | </el-card> |
| | | |
| | | <div class="section-title" style="margin-bottom: 10px;">产品结构</div> |
| | | <ProductStructureDetail |
| | | class="product-structure-panel" |
| | | style="margin-bottom: 20px;" |
| | | embedded |
| | | :bom-id="route.query.bomId" |
| | | /> |
| | | <!-- 表格视图 --> |
| | | <div v-if="viewMode === 'table'" class="section-header"> |
| | | <div class="section-title">工艺路线项目列表</div> |
| | |
| | | </template> |
| | | |
| | | <script setup> |
| | | import { ref, computed, getCurrentInstance, onMounted, onUnmounted, nextTick } from "vue"; |
| | | import { ref, computed, getCurrentInstance, onMounted, onUnmounted, nextTick, defineAsyncComponent } from "vue"; |
| | | import ProductSelectDialog from "@/views/basicData/product/ProductSelectDialog.vue"; |
| | | import { findProcessRouteItemList, addOrUpdateProcessRouteItem, sortProcessRouteItem, batchDeleteProcessRouteItem } from "@/api/productionManagement/processRouteItem.js"; |
| | | import { findProductProcessRouteItemList, deleteRouteItem, addRouteItem, addOrUpdateProductProcessRouteItem, sortRouteItem } from "@/api/productionManagement/productProcessRoute.js"; |
| | |
| | | |
| | | const route = useRoute() |
| | | const { proxy } = getCurrentInstance() || {}; |
| | | const ProductStructureDetail = defineAsyncComponent(() => import("@/views/productionManagement/productStructure/Detail/index.vue")); |
| | | |
| | | const routeId = computed(() => route.query.id); |
| | | const orderId = computed(() => route.query.orderId); |
| | |
| | | align-items: center; |
| | | } |
| | | |
| | | .product-structure-panel { |
| | | margin: 12px 0 20px; |
| | | } |
| | | |
| | | /* 工艺路线信息卡片样式 */ |
| | | .route-info-card { |
| | | margin-bottom: 20px; |