From 898955b96c60cdcc8a61be7fd76f9803d79a778b Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 02 七月 2026 15:43:14 +0800
Subject: [PATCH] feat: BOM选择产品接口修改
---
src/components/ProcessParamListDialog.vue | 44 ++++++++++++++++++++++++++++++++++++++------
1 files changed, 38 insertions(+), 6 deletions(-)
diff --git a/src/components/ProcessParamListDialog.vue b/src/components/ProcessParamListDialog.vue
index 898abb0..5af24bb 100644
--- a/src/components/ProcessParamListDialog.vue
+++ b/src/components/ProcessParamListDialog.vue
@@ -130,6 +130,7 @@
</el-form-item>
<el-form-item label="鏍囧噯鍊�">
<el-input v-model="selectedParam.standardValue"
+ @input="val => onStandardValueInput(val, selectedParam)"
placeholder="璇疯緭鍏ラ粯璁ゅ��" />
</el-form-item>
<el-form-item label="鏄惁蹇呭~">
@@ -144,9 +145,9 @@
</div>
</div>
<template #footer>
- <el-button @click="selectParamDialogVisible = false">鍙栨秷</el-button>
<el-button type="primary"
@click="handleParamSelectSubmit">纭畾</el-button>
+ <el-button @click="selectParamDialogVisible = false">鍙栨秷</el-button>
</template>
</el-dialog>
<!-- 缂栬緫鍙傛暟瀵硅瘽妗� -->
@@ -175,13 +176,14 @@
<el-form-item label="鏍囧噯鍊�"
prop="standardValue">
<el-input v-model="editParamForm.standardValue"
+ @input="val => onStandardValueInput(val, editParamForm)"
placeholder="璇疯緭鍏ユ爣鍑嗗��" />
</el-form-item>
</el-form>
<template #footer>
- <el-button @click="editParamDialogVisible = false">鍙栨秷</el-button>
<el-button type="primary"
@click="handleEditParamSubmit">纭畾</el-button>
+ <el-button @click="editParamDialogVisible = false">鍙栨秷</el-button>
</template>
</el-dialog>
</el-dialog>
@@ -268,8 +270,32 @@
paramFormat: "",
unit: "",
});
+
+ const onStandardValueInput = (val, target) => {
+ const data = target.value || target;
+ const type = data.paramType || data.parameterType;
+ if (type === 1) {
+ // 鏁板�兼牸寮忥細涓嶈兘杈撳叆涓枃鎴栬嫳鏂囧瓧绗�
+ data.standardValue = val.replace(/[a-zA-Z\u4e00-\u9fa5]/g, "");
+ }
+ };
+
const editParamRules = ref({
- // standardValue: [{ required: true, message: "璇疯緭鍏ユ爣鍑嗗��", trigger: "blur" }],
+ standardValue: [
+ {
+ validator: (rule, value, callback) => {
+ const type =
+ editParamForm.value.paramType || editParamForm.value.parameterType;
+ if (type === 1 && value) {
+ if (/[a-zA-Z\u4e00-\u9fa5]/.test(value)) {
+ return callback(new Error("鏁板�兼牸寮忎笉鑳藉寘鍚腑鑻辨枃瀛楃"));
+ }
+ }
+ callback();
+ },
+ trigger: "blur",
+ },
+ ],
});
const editParamFormRef = ref(null);
@@ -346,7 +372,14 @@
size: paramPage.value.size,
}).then(res => {
if (res.code === 200) {
- filteredParamList.value = res.data?.records || [];
+ const existingParamIds = new Set(
+ (props.paramList || [])
+ .map(item => Number(item.paramId || item.technologyOperationParamId))
+ .filter(id => Number.isFinite(id) && id > 0)
+ );
+ filteredParamList.value = (res.data?.records || []).filter(
+ item => !existingParamIds.has(Number(item.id))
+ );
paramPage.value.total = res.data.total || 0;
} else {
ElMessage.error(res.msg || "鏌ヨ澶辫触");
@@ -376,7 +409,6 @@
addProcessRouteItemParamOrder({
productionOrderId: Number(props.orderId),
productionOrderRoutingOperationId: props.process.id,
- technologyRoutingOperationParamId: props.process.id,
paramId: selectedParam.value.id,
standardValue: selectedParam.value.standardValue || "",
isRequired: selectedParam.value.isRequired || 0,
@@ -641,4 +673,4 @@
.detail-text {
font-weight: 500;
}
-</style>
\ No newline at end of file
+</style>
--
Gitblit v1.9.3