From 4be9b07e00bea78ae394aec67062b4db9895b565 Mon Sep 17 00:00:00 2001
From: zhangwencui <1064582902@qq.com>
Date: 星期六, 14 三月 2026 15:46:21 +0800
Subject: [PATCH] BOM产品选择弹窗改接口
---
src/views/basicData/parameterMaintenance/index.vue | 118 ++++++++++++++++++++++++++++------------------------------
1 files changed, 57 insertions(+), 61 deletions(-)
diff --git a/src/views/basicData/parameterMaintenance/index.vue b/src/views/basicData/parameterMaintenance/index.vue
index 367f587..67ed7ef 100644
--- a/src/views/basicData/parameterMaintenance/index.vue
+++ b/src/views/basicData/parameterMaintenance/index.vue
@@ -54,6 +54,7 @@
<el-form-item label="鍙傛暟绫诲瀷"
prop="paramType">
<el-select v-model="formData.paramType"
+ @change="handleParamTypeChange"
placeholder="璇烽�夋嫨鍙傛暟绫诲瀷">
<el-option label="鏁板�兼牸寮�"
value="1" />
@@ -68,7 +69,6 @@
<el-form-item label="鍙栧�兼ā寮�"
prop="valueMode">
<el-select v-model="formData.valueMode"
- @change="handleValueModeChange"
placeholder="璇烽�夋嫨鍙栧�兼ā寮�">
<el-option label="鍗曞��"
value="1" />
@@ -81,23 +81,33 @@
<el-input v-model="formData.unit"
placeholder="璇疯緭鍏ュ崟浣�" />
</el-form-item>
- <el-form-item label="榛樿鍊�"
- v-if="formData.valueMode === '1'"
- prop="defaultValue">
- <el-input v-model="formData.defaultValue"
- placeholder="璇疯緭鍏ラ粯璁ゅ��" />
+ <el-form-item label="鍙栧�兼牸寮�"
+ v-if="formData.paramType == '1' || formData.paramType == '2'"
+ prop="paramFormat">
+ <el-input v-model="formData.paramFormat"
+ placeholder="璇疯緭鍏ュ彇鍊兼牸寮�" />
</el-form-item>
- <el-form-item label="鏈�灏忓��"
- v-if="formData.valueMode === '2'"
- prop="defaultMin">
- <el-input v-model="formData.defaultMin"
- placeholder="璇疯緭鍏ユ渶灏忓��" />
+ <el-form-item label="涓嬫媺瀛楀吀"
+ v-else-if="formData.paramType == '3'"
+ prop="paramFormat">
+ <el-select v-model="formData.paramFormat"
+ placeholder="璇烽�夋嫨鍙栧�兼ā寮�">
+ <el-option v-for="item in dictTypes"
+ :key="item.dictType"
+ :label="item.dictName"
+ :value="item.dictType" />
+ </el-select>
</el-form-item>
- <el-form-item label="鏈�澶у��"
- v-if="formData.valueMode === '2'"
- prop="defaultMax">
- <el-input v-model="formData.defaultMax"
- placeholder="璇疯緭鍏ユ渶澶у��" />
+ <el-form-item label="鏃堕棿鏍煎紡"
+ v-else-if="formData.paramType == '4'"
+ prop="paramFormat">
+ <el-select v-model="formData.paramFormat"
+ placeholder="璇烽�夋嫨鍙栧�兼ā寮�">
+ <el-option label="YYYY-MM-DD"
+ value="YYYY-MM-DD" />
+ <el-option label="YYYY-MM-DD HH:mm:ss"
+ value="YYYY-MM-DD HH:mm:ss" />
+ </el-select>
</el-form-item>
<el-form-item label="鏄惁蹇呭~"
prop="isRequired">
@@ -242,24 +252,14 @@
prop: "unit",
},
{
- label: "榛樿鍊�",
- prop: "defaultValue",
+ label: "鍙栧�兼牸寮�",
+ prop: "paramFormat",
formatData: (val, row) => {
- return row.valueMode === 2 ? "-" : val;
- },
- },
- {
- label: "鏈�灏忓��",
- prop: "defaultMin",
- formatData: (val, row) => {
- return row.valueMode === 1 ? "-" : val;
- },
- },
- {
- label: "鏈�澶у��",
- prop: "defaultMax",
- formatData: (val, row) => {
- return row.valueMode === 1 ? "-" : val;
+ if (row.paramType == "3") {
+ const dict = dictTypes.value.find(item => item.dictType === val);
+ return dict ? "瀛楀吀:" + dict.dictName : val;
+ }
+ return val;
},
},
{
@@ -308,15 +308,6 @@
size: 10,
total: 0,
});
- const handleValueModeChange = val => {
- if (val === "2") {
- formData.defaultMin = "";
- formData.defaultMax = "";
- } else {
- formData.defaultValue = "";
- }
- };
-
// 鎼滅储琛ㄥ崟
const searchForm = reactive({
paramName: "",
@@ -333,9 +324,6 @@
paramType: "",
valueMode: "1",
unit: "",
- defaultValue: "",
- defaultMin: "",
- defaultMax: "",
isRequired: "0",
remark: "",
});
@@ -343,7 +331,20 @@
paramName: [{ required: true, message: "璇疯緭鍏ュ弬鏁板悕绉�", trigger: "blur" }],
paramType: [{ required: true, message: "璇烽�夋嫨鍙傛暟绫诲瀷", trigger: "change" }],
valueMode: [{ required: true, message: "璇烽�夋嫨鍙栧�兼ā寮�", trigger: "change" }],
- unit: [{ required: true, message: "璇疯緭鍏ュ崟浣�", trigger: "blur" }],
+ unit: [
+ {
+ required: false,
+ message: "璇疯緭鍏ュ崟浣�",
+ trigger: "blur",
+ validator: (rule, value, callback) => {
+ if (formData.paramType === "1" && !value) {
+ callback(new Error("鏁板�肩被鍨嬪繀椤诲~鍐欏崟浣�"));
+ } else {
+ callback();
+ }
+ },
+ },
+ ],
});
// const productTypes = ref([]);
const isEdit = ref(false);
@@ -364,13 +365,17 @@
// typeName: [{ required: true, message: "璇疯緭鍏ョ被鍨嬪悕绉�", trigger: "blur" }],
// });
// const isProductTypeEdit = ref(false);
- const handleParameterTypeChange = () => {
- if (formData.parameterType === "鏁板�兼牸寮�") {
- formData.parameterFormat = "#.0000";
- } else if (formData.parameterType === "鏃堕棿鏍煎紡") {
- formData.parameterFormat = "YYYY-MM-DD HH:mm:ss";
+ const handleParamTypeChange = () => {
+ if (formData.paramType === "1") {
+ formData.paramFormat = "#.0000";
+ } else if (formData.paramType === "4") {
+ formData.paramFormat = "YYYY-MM-DD HH:mm:ss";
} else {
- formData.parameterFormat = "";
+ formData.paramFormat = "";
+ }
+ // 瑙﹀彂鍗曚綅瀛楁楠岃瘉
+ if (formRef.value) {
+ formRef.value.validateField("unit");
}
};
// 浜у搧绫诲瀷缁存姢鎸夐挳鐐瑰嚮浜嬩欢 - 宸叉敞閲�
@@ -491,9 +496,6 @@
formData.paramType = "";
formData.valueMode = "1";
formData.unit = "";
- formData.defaultValue = "";
- formData.defaultMin = "";
- formData.defaultMax = "";
formData.isRequired = "0";
formData.remark = "";
dialogVisible.value = true;
@@ -510,12 +512,6 @@
formData.valueMode =
row.valueMode !== undefined ? String(row.valueMode) : "1";
formData.unit = row.unit || "";
- formData.defaultValue =
- row.defaultValue !== undefined ? String(row.defaultValue) : "";
- formData.defaultMin =
- row.defaultMin !== undefined ? String(row.defaultMin) : "";
- formData.defaultMax =
- row.defaultMax !== undefined ? String(row.defaultMax) : "";
formData.isRequired =
row.isRequired !== undefined ? String(row.isRequired) : "0";
formData.remark = row.remark || "";
--
Gitblit v1.9.3