| | |
| | | clearable |
| | | prefix-icon="Search"/> |
| | | </div> |
| | | |
| | | <div class="search-item"> |
| | | <span class="search_title">生产订单号:</span> |
| | | <el-input v-model="searchForm.productOrderNpsNo" |
| | | style="width: 240px" |
| | | placeholder="请输入" |
| | | @change="handleQuery" |
| | | clearable |
| | | prefix-icon="Search"/> |
| | | </div> |
| | | |
| | | <div class="search-item"> |
| | | <el-button type="primary" |
| | | @click="handleQuery">搜索 |
| | |
| | | :tableData="tableData" |
| | | :page="page" |
| | | :tableLoading="tableLoading" |
| | | :rowClassName="rowClassName" |
| | | @pagination="pagination"> |
| | | <template #completionStatus="{ row }"> |
| | | <el-progress :percentage="toProgressPercentage(row?.completionStatus)" |
| | |
| | | :isEdit="true" |
| | | :row="currentReportRowData" |
| | | @refreshData="getList"/> |
| | | <GranulationForm |
| | | v-if="granulationFormVisible" |
| | | v-model:isShow="granulationFormVisible" |
| | | :isEdit="true" |
| | | :row="currentReportRowData" |
| | | @refreshData="getList"/> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | const CopperPrintingForm = defineAsyncComponent(() => import("./components/CopperPrintingForm.vue")); |
| | | const VoltageSortingForm = defineAsyncComponent(() => import("./components/VoltageSortingForm.vue")); |
| | | const ProductionRecordForm = defineAsyncComponent(() => import("./components/ProductionRecordForm.vue")); |
| | | const GranulationForm = defineAsyncComponent(() => import("./components/GranulationForm.vue")); |
| | | const tableColumn = ref([ |
| | | { |
| | | label: "优先级", |
| | |
| | | // width: "80", |
| | | // }, |
| | | { |
| | | label: "工单编号", |
| | | label: "工单编号1", |
| | | prop: "workOrderNo", |
| | | width: "140", |
| | | }, |
| | |
| | | const editDialogVisible = ref(false); |
| | | const copperPrintingFormVisible = ref(false); |
| | | const voltageSortingFormVisible = ref(false); |
| | | const granulationFormVisible = ref(false); |
| | | const transferCardVisible = ref(false); |
| | | const transferCardData = ref([]); |
| | | const transferCardQrUrl = ref(""); |
| | |
| | | productProcessRouteItemId: "", |
| | | userId: "", |
| | | productMainId: null, |
| | | otherData: {} |
| | | otherData: { |
| | | rows: [], |
| | | } |
| | | }); |
| | | const productionRecordFormRef = ref(); |
| | | |
| | |
| | | scrapQty: [ |
| | | {validator: validateScrapQty, trigger: 'blur'} |
| | | ] |
| | | }; |
| | | |
| | | const rowClassName = ({row}) => { |
| | | if (Number(row.completionStatus) > 0 && Number(row.actualQualifiedRate) < Number(row.processQualifiedRate)) { |
| | | return 'danger-row'; |
| | | } |
| | | return ''; |
| | | }; |
| | | |
| | | // 处理本次生产数量输入,限制必须大于等于1 |
| | |
| | | const data = reactive({ |
| | | searchForm: { |
| | | workOrderNo: "", |
| | | productOrderNpsNo: "", |
| | | }, |
| | | }); |
| | | const {searchForm} = toRefs(data); |
| | |
| | | voltageSortingFormVisible.value = true |
| | | return; |
| | | } |
| | | if (row.processName === '造粒') { |
| | | granulationFormVisible.value = true |
| | | return; |
| | | } |
| | | processParamList.value = await getProcessParamList(row) |
| | | reportForm.planQuantity = row.planQuantity; |
| | | reportForm.quantity = row.quantity !== undefined && row.quantity !== null ? row.quantity : null; |
| | |
| | | |
| | | const handleReport = async () => { |
| | | const data = await productionRecordFormRef.value.submitData() |
| | | reportForm.otherData = JSON.stringify(data || {}); |
| | | reportForm.otherData.rows = data || []; |
| | | reportFormRef.value?.validate((valid) => { |
| | | if (!valid) { |
| | | return false; |
| | |
| | | const submitData = { |
| | | ...reportForm, |
| | | quantity: quantity, |
| | | scrapQty: scrapQty |
| | | scrapQty: scrapQty, |
| | | otherData: JSON.stringify(reportForm.otherData) |
| | | }; |
| | | |
| | | // console.log(submitData); |
| | |
| | | } |
| | | </style> |
| | | |
| | | <style lang="scss"> |
| | | <style lang="scss" scoped> |
| | | :deep(.danger-row td) { |
| | | color: #e95a66 !important; |
| | | } |
| | | |
| | | @media print { |
| | | @page { |
| | | size: landscape; |