From c05b81c7f50df80ab247a05f9f92af2d799e77cd Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期五, 10 四月 2026 15:59:04 +0800
Subject: [PATCH] feat:1.销售添加是否生产 2.生产订单添加备注
---
src/views/productionManagement/productionReporting/index.vue | 42 ++++++++++++++++++++++++++++++++++++++++--
1 files changed, 40 insertions(+), 2 deletions(-)
diff --git a/src/views/productionManagement/productionReporting/index.vue b/src/views/productionManagement/productionReporting/index.vue
index e802f24..a639831 100644
--- a/src/views/productionManagement/productionReporting/index.vue
+++ b/src/views/productionManagement/productionReporting/index.vue
@@ -43,6 +43,7 @@
@selection-change="handleSelectionChange"
:tableLoading="tableLoading"
@pagination="pagination"
+ :rowClassName="rowClassName"
:total="page.total">
<template #productNoSlot="{ row }">
<el-button
@@ -148,6 +149,12 @@
:isEdit="false"
:row="currentReportRowData"
@refreshData="getList"/>
+ <GranulationForm
+ v-if="granulationFormVisible"
+ v-model:isShow="granulationFormVisible"
+ :isEdit="false"
+ :row="currentReportRowData"
+ @refreshData="getList"/>
<Detail
v-if="showDetail"
v-model:isShow="showDetail"
@@ -167,9 +174,10 @@
import {productionProductMainListPage} from "@/api/productionManagement/productionProductMain.js";
import {userListNoPageByTenantId} from "@/api/system/user.js";
import InputModal from "@/views/productionManagement/productionReporting/Input.vue";
-import VoltageSortingForm from "@/views/productionManagement/workOrder/components/VoltageSortingForm.vue";
+const VoltageSortingForm = defineAsyncComponent(() => import("@/views/productionManagement/workOrder/components/VoltageSortingForm.vue"));
const CopperPrintingForm = defineAsyncComponent(() => import("@/views/productionManagement/workOrder/components/CopperPrintingForm.vue"));
+const GranulationForm = defineAsyncComponent(() => import("@/views/productionManagement/workOrder/components/GranulationForm.vue"));
const Detail = defineAsyncComponent(() => import("@/views/productionManagement/productionReporting/components/Detail.vue"));
@@ -223,6 +231,11 @@
width: 120,
},
{
+ label: "鏂欏彿",
+ prop: "materialCode",
+ width: 120,
+ },
+ {
label: "浜у嚭鏁伴噺",
prop: "quantity",
width: 120,
@@ -230,6 +243,16 @@
{
label: "鎶ュ簾鏁伴噺",
prop: "scrapQty",
+ width: 120,
+ },
+ {
+ label: "鍚堟牸鐜�",
+ prop: "actualQualifiedRate",
+ width: 120,
+ },
+ {
+ label: "鏍囧噯鍚堟牸鐜�",
+ prop: "processQualifiedRate",
width: 120,
},
{
@@ -295,6 +318,14 @@
}
handleQuery();
};
+
+const rowClassName = ({row}) => {
+ if (Number(row.actualQualifiedRate) < Number(row.processQualifiedRate)) {
+ return 'danger-row';
+ }
+ return '';
+};
+
const deleteReport = row => {
ElMessageBox.confirm("纭畾鍒犻櫎璇ユ姤宸ュ悧锛�", "鎻愮ず", {
confirmButtonText: "纭畾",
@@ -430,6 +461,7 @@
const isShowInput = ref(false);
const copperPrintingFormVisible = ref(false);
const voltageSortingFormVisible = ref(false);
+const granulationFormVisible = ref(false);
const showDetail = ref(false);
const isShowingId = ref(0);
const showInput = row => {
@@ -457,6 +489,8 @@
copperPrintingFormVisible.value = true;
} else if (row.process === '鐢靛帇鍒嗛��') {
voltageSortingFormVisible.value = true;
+ } else if (row.process === '閫犵矑') {
+ granulationFormVisible.value = true;
} else {
showDetail.value = true;
}
@@ -466,4 +500,8 @@
});
</script>
-<style scoped></style>
+<style scoped>
+:deep(.danger-row td) {
+ color: #e95a66 !important;
+}
+</style>
--
Gitblit v1.9.3