| | |
| | | </el-skeleton> |
| | | </div> |
| | | |
| | | <!-- 发货审批:展示对应产品信息 --> |
| | | <div v-if="isShipmentApproval" style="margin: 10px 0 18px;"> |
| | | <el-divider content-position="left">产品信息</el-divider> |
| | | <el-skeleton :loading="shipmentProductLoading" animated> |
| | | <template #template> |
| | | <el-skeleton-item variant="h3" style="width: 30%" /> |
| | | <el-skeleton-item variant="text" style="width: 100%" /> |
| | | <el-skeleton-item variant="text" style="width: 100%" /> |
| | | </template> |
| | | <template #default> |
| | | <el-empty |
| | | v-if="!currentShipmentProduct || !currentShipmentProduct.id" |
| | | description="未查询到对应产品信息" |
| | | /> |
| | | <template v-else> |
| | | <el-descriptions :column="2" border> |
| | | <el-descriptions-item label="产品大类"> |
| | | {{ currentShipmentProduct.productCategory || "-" }} |
| | | </el-descriptions-item> |
| | | <el-descriptions-item label="规格型号"> |
| | | {{ currentShipmentProduct.specificationModel || "-" }} |
| | | </el-descriptions-item> |
| | | <el-descriptions-item label="单位"> |
| | | {{ currentShipmentProduct.unit || "-" }} |
| | | </el-descriptions-item> |
| | | <el-descriptions-item label="数量"> |
| | | {{ currentShipmentProduct.quantity ?? "-" }} |
| | | </el-descriptions-item> |
| | | </el-descriptions> |
| | | </template> |
| | | </template> |
| | | </el-skeleton> |
| | | </div> |
| | | |
| | | |
| | | |
| | | <el-form :model="{ activities }" ref="formRef" label-position="top"> |
| | |
| | | import { getQuotationList } from "@/api/salesManagement/salesQuotation.js"; |
| | | import { getPurchaseByCode } from "@/api/procurementManagement/procurementLedger.js"; |
| | | import { getStockInRecordById } from "@/api/inventoryManagement/stockInRecord.js"; |
| | | import { getSalesProductById } from "@/api/salesManagement/salesLedger.js"; |
| | | const emit = defineEmits(['close']) |
| | | const { proxy } = getCurrentInstance() |
| | | |
| | |
| | | const currentPurchase = ref({}) |
| | | const stockInLoading = ref(false) |
| | | const currentStockIn = ref({}) |
| | | const shipmentProductLoading = ref(false) |
| | | const currentShipmentProduct = ref({}) |
| | | const isQuotationApproval = computed(() => Number(props.approveType) === 6) |
| | | const isPurchaseApproval = computed(() => Number(props.approveType) === 5) |
| | | const isShipmentApproval = computed(() => Number(props.approveType) === 7) |
| | | const isInventoryApproval = computed(() => Number(props.approveType) === 9) |
| | | |
| | | const data = reactive({ |
| | |
| | | currentQuotation.value = {} |
| | | currentPurchase.value = {} |
| | | currentStockIn.value = {} |
| | | currentShipmentProduct.value = {} |
| | | userListNoPageByTenantId().then((res) => { |
| | | userList.value = res.data; |
| | | }); |
| | |
| | | }).finally(() => { |
| | | purchaseLoading.value = false |
| | | }) |
| | | } |
| | | } |
| | | |
| | | // 发货审批:根据审批列表中的 recordId 查询对应产品详情 |
| | | if (isShipmentApproval.value) { |
| | | const recordId = row?.recordId; |
| | | form.value.recordId = recordId ?? form.value.recordId; |
| | | if (recordId) { |
| | | shipmentProductLoading.value = true; |
| | | getSalesProductById({ id: recordId }) |
| | | .then((res) => { |
| | | currentShipmentProduct.value = res?.data || res || {}; |
| | | }) |
| | | .catch((err) => { |
| | | console.error("查询发货产品详情失败:", err); |
| | | proxy.$modal.msgError("查询发货产品详情失败"); |
| | | }) |
| | | .finally(() => { |
| | | shipmentProductLoading.value = false; |
| | | }); |
| | | } |
| | | } |
| | | |
| | |
| | | currentPurchase.value = {} |
| | | stockInLoading.value = false |
| | | currentStockIn.value = {} |
| | | shipmentProductLoading.value = false |
| | | currentShipmentProduct.value = {} |
| | | emit('close') |
| | | }; |
| | | defineExpose({ |
| | |
| | | width: 200px; |
| | | height: 60px; |
| | | } |
| | | </style> |
| | | </style> |