From 9689c0418e2a71a36ae2ebef79a0db329ca428bf Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期一, 20 四月 2026 11:33:16 +0800
Subject: [PATCH] feat: 添加厚度字段
---
src/views/qualityManagement/processInspection/components/formDia.vue | 30 +++++++++-
src/views/inventoryManagement/stockManagement/New.vue | 15 ++++
src/views/salesManagement/deliveryLedger/index.vue | 1
src/views/basicData/product/ProductSelectDialog.vue | 1
src/views/procurementManagement/procurementReport/index.vue | 4 +
src/views/qualityManagement/finalInspection/components/formDia.vue | 8 ++
src/views/qualityManagement/rawMaterialInspection/index.vue | 4 +
src/views/inventoryManagement/stockManagement/Qualified.vue | 1
src/views/qualityManagement/finalInspection/index.vue | 4 +
src/views/qualityManagement/processInspection/index.vue | 4 +
src/views/inventoryManagement/dispatchLog/Record.vue | 5 +
src/views/qualityManagement/nonconformingManagement/components/formDia.vue | 36 +++++++++++
src/views/qualityManagement/rawMaterialInspection/components/formDia.vue | 30 +++++++++-
src/views/inventoryManagement/stockManagement/Unqualified.vue | 1
src/views/inventoryManagement/stockReport/index.vue | 5 +
src/views/qualityManagement/nonconformingManagement/index.vue | 4 +
src/views/inventoryManagement/receiptManagement/Record.vue | 3 +
17 files changed, 148 insertions(+), 8 deletions(-)
diff --git a/src/views/basicData/product/ProductSelectDialog.vue b/src/views/basicData/product/ProductSelectDialog.vue
index 70ebdb6..5c19f7a 100644
--- a/src/views/basicData/product/ProductSelectDialog.vue
+++ b/src/views/basicData/product/ProductSelectDialog.vue
@@ -32,6 +32,7 @@
<el-table-column prop="parentName" label="浜у搧瀹氭��" min-width="120" show-overflow-tooltip />
<el-table-column prop="model" label="鍨嬪彿鍚嶇О" min-width="200" />
<el-table-column prop="thickness" label="鍘氬害" min-width="160" :formatter="formatThicknessTo15" />
+ <el-table-column prop="unit" label="鍗曚綅" min-width="160" />
</el-table>
<div class="mt-3 flex justify-end">
diff --git a/src/views/inventoryManagement/dispatchLog/Record.vue b/src/views/inventoryManagement/dispatchLog/Record.vue
index a7a8a4b..7f290a9 100644
--- a/src/views/inventoryManagement/dispatchLog/Record.vue
+++ b/src/views/inventoryManagement/dispatchLog/Record.vue
@@ -67,6 +67,11 @@
show-overflow-tooltip
/>
<el-table-column
+ label="鍘氬害(mm)"
+ prop="thickness"
+ show-overflow-tooltip
+ />
+ <el-table-column
label="鍗曚綅"
prop="unit"
show-overflow-tooltip
diff --git a/src/views/inventoryManagement/receiptManagement/Record.vue b/src/views/inventoryManagement/receiptManagement/Record.vue
index 3f90edf..9f07296 100644
--- a/src/views/inventoryManagement/receiptManagement/Record.vue
+++ b/src/views/inventoryManagement/receiptManagement/Record.vue
@@ -67,6 +67,9 @@
<el-table-column label="瑙勬牸鍨嬪彿"
prop="model"
show-overflow-tooltip/>
+ <el-table-column label="鍘氬害(mm)"
+ prop="thickness"
+ show-overflow-tooltip />
<el-table-column label="鍗曚綅"
prop="unit"
show-overflow-tooltip/>
diff --git a/src/views/inventoryManagement/stockManagement/New.vue b/src/views/inventoryManagement/stockManagement/New.vue
index 1f86fd6..1f171ef 100644
--- a/src/views/inventoryManagement/stockManagement/New.vue
+++ b/src/views/inventoryManagement/stockManagement/New.vue
@@ -38,6 +38,13 @@
</el-form-item>
<el-form-item
+ label="鍘氬害(mm)"
+ prop="thickness"
+ >
+ <el-input v-model="formState.thickness" disabled />
+ </el-form-item>
+
+ <el-form-item
label="搴撳瓨鏁伴噺"
prop="qualitity"
>
@@ -101,6 +108,7 @@
productName: "",
productModelName: "",
unit: "",
+ thickness: "",
qualitity: 0,
warnNum: 0,
remark: '',
@@ -126,7 +134,11 @@
productModelId: undefined,
productName: "",
productModelName: "",
- description: '',
+ unit: "",
+ thickness: "",
+ qualitity: 0,
+ warnNum: 0,
+ remark: '',
};
isShow.value = false;
};
@@ -140,6 +152,7 @@
formState.value.productModelName = product.model;
formState.value.productModelId = product.id;
formState.value.unit = product.unit;
+ formState.value.thickness = product.thickness ?? "";
showProductSelectDialog.value = false;
// 瑙﹀彂琛ㄥ崟楠岃瘉鏇存柊
proxy.$refs["formRef"]?.validateField('productModelId');
diff --git a/src/views/inventoryManagement/stockManagement/Qualified.vue b/src/views/inventoryManagement/stockManagement/Qualified.vue
index a958f42..0f8e6ac 100644
--- a/src/views/inventoryManagement/stockManagement/Qualified.vue
+++ b/src/views/inventoryManagement/stockManagement/Qualified.vue
@@ -25,6 +25,7 @@
<el-table-column align="center" label="搴忓彿" type="index" width="60" />
<el-table-column label="浜у搧澶х被" prop="productName" show-overflow-tooltip />
<el-table-column label="瑙勬牸鍨嬪彿" prop="model" show-overflow-tooltip />
+ <el-table-column label="鍘氬害(mm)" prop="thickness" show-overflow-tooltip />
<el-table-column label="鍗曚綅" prop="unit" show-overflow-tooltip />
<el-table-column label="搴撳瓨鏁伴噺" prop="qualitity" show-overflow-tooltip />
<el-table-column label="鍐荤粨鏁伴噺" prop="lockedQuantity" show-overflow-tooltip />
diff --git a/src/views/inventoryManagement/stockManagement/Unqualified.vue b/src/views/inventoryManagement/stockManagement/Unqualified.vue
index 55662be..38a95ae 100644
--- a/src/views/inventoryManagement/stockManagement/Unqualified.vue
+++ b/src/views/inventoryManagement/stockManagement/Unqualified.vue
@@ -22,6 +22,7 @@
<el-table-column align="center" label="搴忓彿" type="index" width="60" />
<el-table-column label="浜у搧澶х被" prop="productName" show-overflow-tooltip />
<el-table-column label="瑙勬牸鍨嬪彿" prop="model" show-overflow-tooltip />
+ <el-table-column label="鍘氬害(mm)" prop="thickness" show-overflow-tooltip />
<el-table-column label="鍗曚綅" prop="unit" show-overflow-tooltip />
<el-table-column label="搴撳瓨鏁伴噺" prop="qualitity" show-overflow-tooltip />
<el-table-column label="鍐荤粨鏁伴噺" prop="lockedQuantity" show-overflow-tooltip />
diff --git a/src/views/inventoryManagement/stockReport/index.vue b/src/views/inventoryManagement/stockReport/index.vue
index 89773cf..2850269 100644
--- a/src/views/inventoryManagement/stockReport/index.vue
+++ b/src/views/inventoryManagement/stockReport/index.vue
@@ -185,6 +185,11 @@
prop="model"
show-overflow-tooltip
/>
+ <el-table-column
+ label="鍘氬害(mm)"
+ prop="thickness"
+ show-overflow-tooltip
+ />
<el-table-column
label="鍗曚綅"
prop="unit"
diff --git a/src/views/procurementManagement/procurementReport/index.vue b/src/views/procurementManagement/procurementReport/index.vue
index 93eb7d9..748f237 100644
--- a/src/views/procurementManagement/procurementReport/index.vue
+++ b/src/views/procurementManagement/procurementReport/index.vue
@@ -115,6 +115,10 @@
prop: 'specificationModel',
},
{
+ label: '鍘氬害(mm)',
+ prop: 'thickness',
+ },
+ {
label: '閲囪喘鏁伴噺',
prop: 'purchaseNum',
width: 120,
diff --git a/src/views/qualityManagement/finalInspection/components/formDia.vue b/src/views/qualityManagement/finalInspection/components/formDia.vue
index 5f4c975..a6013f9 100644
--- a/src/views/qualityManagement/finalInspection/components/formDia.vue
+++ b/src/views/qualityManagement/finalInspection/components/formDia.vue
@@ -49,6 +49,11 @@
</el-select>
</el-form-item>
</el-col>
+ <el-col :span="12">
+ <el-form-item label="鍘氬害(mm)锛�" prop="thickness">
+ <el-input v-model="form.thickness" placeholder="璇疯緭鍏�" disabled/>
+ </el-form-item>
+ </el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="12">
@@ -149,6 +154,7 @@
quantity: "",
checkCompany: "",
checkResult: "",
+ thickness:""
},
rules: {
checkTime: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" },],
@@ -258,6 +264,7 @@
if (selectedModel) {
form.value.model = selectedModel.model || '';
form.value.unit = selectedModel.unit || '';
+ form.value.thickness = selectedModel.thickness || ''
}
}
@@ -311,6 +318,7 @@
const handleChangeModel = (value) => {
form.value.model = modelOptions.value.find(item => item.id == value)?.model || '';
form.value.unit = modelOptions.value.find(item => item.id == value)?.unit || '';
+ form.value.thickness = modelOptions.value.find(item => item.id == value)?.thickness || '';
}
const findNodeById = (nodes, productId) => {
diff --git a/src/views/qualityManagement/finalInspection/index.vue b/src/views/qualityManagement/finalInspection/index.vue
index db44222..15bfd2d 100644
--- a/src/views/qualityManagement/finalInspection/index.vue
+++ b/src/views/qualityManagement/finalInspection/index.vue
@@ -113,6 +113,10 @@
prop: "model",
},
{
+ label: "鍘氬害(mm)",
+ prop: "thickness",
+ },
+ {
label: "鍗曚綅",
prop: "unit",
},
diff --git a/src/views/qualityManagement/nonconformingManagement/components/formDia.vue b/src/views/qualityManagement/nonconformingManagement/components/formDia.vue
index 0c6562c..ee5a7d6 100644
--- a/src/views/qualityManagement/nonconformingManagement/components/formDia.vue
+++ b/src/views/qualityManagement/nonconformingManagement/components/formDia.vue
@@ -45,9 +45,16 @@
<el-row :gutter="30">
<el-col :span="12">
<el-form-item label="鍗曚綅锛�" prop="unit">
- <el-input v-model="form.unit" placeholder="璇疯緭鍏�" clearable/>
+ <el-input v-model="form.unit" placeholder="鑷姩甯﹀嚭" readonly class="readonly-display"/>
</el-form-item>
</el-col>
+ <el-col :span="12">
+ <el-form-item label="鍘氬害锛�" prop="thickness">
+ <el-input v-model="form.thickness" placeholder="鑷姩甯﹀嚭" readonly class="readonly-display"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="30">
<el-col :span="12">
<el-form-item label="鏁伴噺锛�" prop="quantity">
<el-input-number :step="0.01" :min="0" style="width: 100%" v-model="form.quantity" placeholder="璇疯緭鍏�" clearable :precision="2"/>
@@ -149,6 +156,7 @@
productId: "",
model: "",
unit: "",
+ thickness: "",
quantity: "",
checkCompany: "",
checkResult: "",
@@ -165,6 +173,7 @@
productId: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
model: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
unit: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
+ thickness: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
quantity: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
checkCompany: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
checkResult: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
@@ -199,6 +208,7 @@
productId: '',
model: '',
unit: '',
+ thickness: '',
quantity: '',
productName: '',
};
@@ -220,9 +230,22 @@
};
const getModels = (value) => {
form.value.productName = findNodeById(productOptions.value, value);
+ form.value.model = '';
+ form.value.unit = '';
+ form.value.thickness = '';
modelList({ id: value }).then((res) => {
modelOptions.value = res;
})
+};
+const handleChangeModel = (modelId) => {
+ const selectedModel = modelOptions.value.find(item => item.id === modelId);
+ if (!selectedModel) {
+ form.value.unit = '';
+ form.value.thickness = '';
+ return;
+ }
+ form.value.unit = selectedModel.unit || '';
+ form.value.thickness = selectedModel.thickness ?? '';
};
const findNodeById = (nodes, productId) => {
for (let i = 0; i < nodes.length; i++) {
@@ -285,4 +308,15 @@
<style scoped>
+:deep(.readonly-display .el-input__wrapper) {
+ background-color: var(--el-disabled-bg-color);
+ box-shadow: 0 0 0 1px var(--el-disabled-border-color) inset;
+}
+
+:deep(.readonly-display .el-input__inner) {
+ color: var(--el-disabled-text-color);
+ -webkit-text-fill-color: var(--el-disabled-text-color);
+ cursor: not-allowed;
+}
+
</style>
\ No newline at end of file
diff --git a/src/views/qualityManagement/nonconformingManagement/index.vue b/src/views/qualityManagement/nonconformingManagement/index.vue
index 55d2472..631b362 100644
--- a/src/views/qualityManagement/nonconformingManagement/index.vue
+++ b/src/views/qualityManagement/nonconformingManagement/index.vue
@@ -144,6 +144,10 @@
prop: "model",
},
{
+ label: "鍘氬害(mm)",
+ prop: "thickness",
+ },
+ {
label: "鍗曚綅",
prop: "unit",
},
diff --git a/src/views/qualityManagement/processInspection/components/formDia.vue b/src/views/qualityManagement/processInspection/components/formDia.vue
index c1185d2..d9dbee3 100644
--- a/src/views/qualityManagement/processInspection/components/formDia.vue
+++ b/src/views/qualityManagement/processInspection/components/formDia.vue
@@ -62,9 +62,16 @@
<el-row :gutter="30">
<el-col :span="12">
<el-form-item label="鍗曚綅锛�" prop="unit">
- <el-input v-model="form.unit" placeholder="璇疯緭鍏�" disabled/>
+ <el-input v-model="form.unit" placeholder="鑷姩甯﹀嚭" readonly class="readonly-display"/>
</el-form-item>
</el-col>
+ <el-col :span="12">
+ <el-form-item label="鍘氬害锛�" prop="thickness">
+ <el-input v-model="form.thickness" placeholder="鑷姩甯﹀嚭" readonly class="readonly-display"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="30">
<el-col :span="12">
<el-form-item label="鏁伴噺锛�" prop="quantity">
<el-input-number :step="0.01" :min="0" style="width: 100%" v-model="form.quantity" placeholder="璇疯緭鍏�" clearable :precision="2" :disabled="processQuantityDisabled"/>
@@ -158,6 +165,7 @@
model: "",
testStandardId: "",
unit: "",
+ thickness: "",
quantity: "",
checkCompany: "",
checkResult: "",
@@ -170,6 +178,7 @@
productModelId: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
testStandardId: [{required: false, message: "璇烽�夋嫨鎸囨爣", trigger: "change"}],
unit: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
+ thickness: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
quantity: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
checkCompany: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
checkResult: [{ required: true, message: "璇疯緭鍏�", trigger: "change" }],
@@ -242,6 +251,7 @@
model: "",
testStandardId: "",
unit: "",
+ thickness: "",
quantity: "",
checkCompany: "",
checkResult: "",
@@ -326,6 +336,7 @@
const getModels = (value) => {
form.value.productModelId = undefined;
form.value.unit = undefined;
+ form.value.thickness = undefined;
modelOptions.value = [];
currentProductId.value = value
form.value.productName = findNodeById(productOptions.value, value);
@@ -338,8 +349,10 @@
};
const handleChangeModel = (value) => {
- form.value.model = modelOptions.value.find(item => item.id == value)?.model || '';
- form.value.unit = modelOptions.value.find(item => item.id == value)?.unit || '';
+ const selectedModel = modelOptions.value.find(item => item.id == value);
+ form.value.model = selectedModel?.model || '';
+ form.value.unit = selectedModel?.unit || '';
+ form.value.thickness = selectedModel?.thickness ?? '';
}
const findNodeById = (nodes, productId) => {
@@ -460,4 +473,15 @@
<style scoped>
+:deep(.readonly-display .el-input__wrapper) {
+ background-color: var(--el-disabled-bg-color);
+ box-shadow: 0 0 0 1px var(--el-disabled-border-color) inset;
+}
+
+:deep(.readonly-display .el-input__inner) {
+ color: var(--el-disabled-text-color);
+ -webkit-text-fill-color: var(--el-disabled-text-color);
+ cursor: not-allowed;
+}
+
</style>
\ No newline at end of file
diff --git a/src/views/qualityManagement/processInspection/index.vue b/src/views/qualityManagement/processInspection/index.vue
index cbeab71..0441ec4 100644
--- a/src/views/qualityManagement/processInspection/index.vue
+++ b/src/views/qualityManagement/processInspection/index.vue
@@ -118,6 +118,10 @@
prop: "model",
},
{
+ label: "鍘氬害(mm)",
+ prop: "thickness",
+ },
+ {
label: "鍗曚綅",
prop: "unit",
},
diff --git a/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue b/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue
index 7e373bf..5170b60 100644
--- a/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue
+++ b/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue
@@ -72,9 +72,16 @@
<el-row :gutter="30">
<el-col :span="12">
<el-form-item label="鍗曚綅锛�" prop="unit">
- <el-input v-model="form.unit" disabled/>
+ <el-input v-model="form.unit" placeholder="鑷姩甯﹀嚭" readonly class="readonly-display"/>
</el-form-item>
</el-col>
+ <el-col :span="12">
+ <el-form-item label="鍘氬害锛�" prop="thickness">
+ <el-input v-model="form.thickness" placeholder="鑷姩甯﹀嚭" readonly class="readonly-display"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="30">
<el-col :span="12">
<el-form-item label="鏁伴噺锛�" prop="quantity">
<el-input-number :step="0.01" :min="0" style="width: 100%" v-model="form.quantity" placeholder="璇疯緭鍏�"
@@ -169,6 +176,7 @@
model: "",
testStandardId: "",
unit: "",
+ thickness: "",
quantity: "",
checkCompany: "",
checkResult: "",
@@ -181,6 +189,7 @@
productModelId: [{required: true, message: "璇烽�夋嫨浜у搧鍨嬪彿", trigger: "change"}],
testStandardId: [{required: false, message: "璇烽�夋嫨鎸囨爣", trigger: "change"}],
unit: [{required: false, message: "璇疯緭鍏�", trigger: "blur"}],
+ thickness: [{required: false, message: "璇疯緭鍏�", trigger: "blur"}],
quantity: [{required: true, message: "璇疯緭鍏�", trigger: "blur"}],
checkCompany: [{required: false, message: "璇疯緭鍏�", trigger: "blur"}],
checkResult: [{required: true, message: "璇烽�夋嫨妫�娴嬬粨鏋�", trigger: "change"}],
@@ -252,6 +261,7 @@
model: "",
testStandardId: "",
unit: "",
+ thickness: "",
quantity: "",
checkCompany: "",
checkResult: "",
@@ -334,6 +344,7 @@
const getModels = (value) => {
form.value.productModelId = undefined;
form.value.unit = undefined;
+ form.value.thickness = undefined;
modelOptions.value = [];
currentProductId.value = value
form.value.productName = findNodeById(productOptions.value, value);
@@ -346,8 +357,10 @@
};
const handleChangeModel = (value) => {
- form.value.model = modelOptions.value.find(item => item.id == value)?.model || '';
- form.value.unit = modelOptions.value.find(item => item.id == value)?.unit || '';
+ const selectedModel = modelOptions.value.find(item => item.id == value);
+ form.value.model = selectedModel?.model || '';
+ form.value.unit = selectedModel?.unit || '';
+ form.value.thickness = selectedModel?.thickness ?? '';
}
const findNodeById = (nodes, productId) => {
@@ -464,4 +477,15 @@
<style scoped>
+:deep(.readonly-display .el-input__wrapper) {
+ background-color: var(--el-disabled-bg-color);
+ box-shadow: 0 0 0 1px var(--el-disabled-border-color) inset;
+}
+
+:deep(.readonly-display .el-input__inner) {
+ color: var(--el-disabled-text-color);
+ -webkit-text-fill-color: var(--el-disabled-text-color);
+ cursor: not-allowed;
+}
+
</style>
\ No newline at end of file
diff --git a/src/views/qualityManagement/rawMaterialInspection/index.vue b/src/views/qualityManagement/rawMaterialInspection/index.vue
index 26504b0..3ba4df4 100644
--- a/src/views/qualityManagement/rawMaterialInspection/index.vue
+++ b/src/views/qualityManagement/rawMaterialInspection/index.vue
@@ -120,6 +120,10 @@
prop: "model",
},
{
+ label: "鍘氬害(mm)",
+ prop: "thickness",
+ },
+ {
label: "鍗曚綅",
prop: "unit",
},
diff --git a/src/views/salesManagement/deliveryLedger/index.vue b/src/views/salesManagement/deliveryLedger/index.vue
index 0eb60cc..21a0c5a 100644
--- a/src/views/salesManagement/deliveryLedger/index.vue
+++ b/src/views/salesManagement/deliveryLedger/index.vue
@@ -36,6 +36,7 @@
<el-table-column label="瀹㈡埛鍚嶇О" prop="customerName" show-overflow-tooltip />
<el-table-column label="浜у搧鍚嶇О" prop="productName" show-overflow-tooltip />
<el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" show-overflow-tooltip />
+ <el-table-column label="鍘氬害(mm)" prop="thickness" show-overflow-tooltip />
<el-table-column label="鍙戣揣鏃堕棿" prop="shippingDate" show-overflow-tooltip />
<el-table-column label="鍙戣揣杞︾墝鍙�" prop="shippingCarNumber" show-overflow-tooltip />
<el-table-column label="蹇�掑叕鍙�" prop="expressCompany" show-overflow-tooltip />
--
Gitblit v1.9.3