From d5e65bf5925c8cd1fe0f0bf0b8b857006d64ad94 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 30 一月 2026 15:26:34 +0800
Subject: [PATCH] 进销存升级 1.部分输入框(有效日期、检定周期)输入做下限制(大于0的整数数字)
---
src/views/equipmentManagement/measurementEquipment/components/formDia.vue | 51 +++++++++++++++++++++++++
src/views/equipmentManagement/measurementEquipment/components/calibrationDia.vue | 55 ++++++++++++++++++++++++++-
2 files changed, 102 insertions(+), 4 deletions(-)
diff --git a/src/views/equipmentManagement/measurementEquipment/components/calibrationDia.vue b/src/views/equipmentManagement/measurementEquipment/components/calibrationDia.vue
index b5c1ea1..b7fa07e 100644
--- a/src/views/equipmentManagement/measurementEquipment/components/calibrationDia.vue
+++ b/src/views/equipmentManagement/measurementEquipment/components/calibrationDia.vue
@@ -51,11 +51,14 @@
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="鏈夋晥鏈燂細" prop="valid">
+ <el-form-item label="鏈夋晥鏃ユ湡(澶�)锛�" prop="valid">
<el-input
v-model="form.valid"
- placeholder="璇疯緭鍏�"
+ type="number"
+ placeholder="璇疯緭鍏ユ湁鏁堟湡澶╂暟"
clearable
+ :min="1"
+ @input="handleValidInput"
>
<template #append>鏃�</template>
</el-input>
@@ -152,7 +155,32 @@
rules: {
code: [{required: true, message: "璇疯緭鍏�", trigger: "blur"}],
name: [{required: true, message: "璇疯緭鍏�", trigger: "blur"}],
- valid: [{required: true, message: "璇疯緭鍏�", trigger: "blur"}],
+ valid: [
+ {required: true, message: "璇疯緭鍏�", trigger: "blur"},
+ {
+ validator: (rule, value, callback) => {
+ if (value === '' || value === null || value === undefined) {
+ callback();
+ return;
+ }
+ const numValue = Number(value);
+ if (isNaN(numValue)) {
+ callback(new Error('璇疯緭鍏ユ湁鏁堢殑鏁板瓧'));
+ return;
+ }
+ if (numValue <= 0) {
+ callback(new Error('鍙兘杈撳叆姝f暟'));
+ return;
+ }
+ if (!Number.isInteger(numValue)) {
+ callback(new Error('璇疯緭鍏ユ暣鏁�'));
+ return;
+ }
+ callback();
+ },
+ trigger: 'blur'
+ }
+ ],
recordDate: [{required: true, message: "璇烽�夋嫨", trigger: "change"}],
userId: [{required: true, message: "璇烽�夋嫨", trigger: "change"}],
entryDate: [{required: true, message: "璇烽�夋嫨", trigger: "change"}],
@@ -233,6 +261,27 @@
}
}
+// 澶勭悊鏈夋晥鏃ユ湡杈撳叆锛屽彧鍏佽姝f暣鏁�
+const handleValidInput = (value) => {
+ if (value === '' || value === null || value === undefined) {
+ form.value.valid = '';
+ return;
+ }
+ // 杞崲涓哄瓧绗︿覆骞剁Щ闄ゆ墍鏈夐潪鏁板瓧瀛楃锛堝寘鎷礋鍙枫�佸皬鏁扮偣绛夛級
+ const numStr = String(value).replace(/[^0-9]/g, '');
+ if (numStr === '') {
+ form.value.valid = '';
+ return;
+ }
+ const numValue = parseInt(numStr, 10);
+ // 纭繚鏄鏁存暟锛堝ぇ浜�0锛�
+ if (numValue > 0 && !isNaN(numValue)) {
+ form.value.valid = numValue;
+ } else {
+ form.value.valid = '';
+ }
+}
+
const submitForm = () => {
proxy.$refs["formRef"].validate(valid => {
if (valid) {
diff --git a/src/views/equipmentManagement/measurementEquipment/components/formDia.vue b/src/views/equipmentManagement/measurementEquipment/components/formDia.vue
index d2a1969..8a1e302 100644
--- a/src/views/equipmentManagement/measurementEquipment/components/formDia.vue
+++ b/src/views/equipmentManagement/measurementEquipment/components/formDia.vue
@@ -74,8 +74,11 @@
<el-form-item label="鏈夋晥鏃ユ湡(澶�)锛�" prop="valid">
<el-input
v-model="form.valid"
+ type="number"
placeholder="璇疯緭鍏ユ湁鏁堟湡澶╂暟"
clearable
+ :min="1"
+ @input="handleValidInput"
>
<template #append>鏃�</template>
</el-input>
@@ -192,7 +195,32 @@
instationLocation: [{required: true, message: "璇疯緭鍏�", trigger: "blur"}],
mostDate: [{required: true, message: "璇烽�夋嫨", trigger: "change"}],
cycle: [{required: true, message: "璇烽�夋嫨", trigger: "blur"}],
- valid: [{required: true, message: "璇疯緭鍏�", trigger: "blur"}],
+ valid: [
+ {required: true, message: "璇疯緭鍏�", trigger: "blur"},
+ {
+ validator: (rule, value, callback) => {
+ if (value === '' || value === null || value === undefined) {
+ callback();
+ return;
+ }
+ const numValue = Number(value);
+ if (isNaN(numValue)) {
+ callback(new Error('璇疯緭鍏ユ湁鏁堢殑鏁板瓧'));
+ return;
+ }
+ if (numValue <= 0) {
+ callback(new Error('鍙兘杈撳叆姝f暟'));
+ return;
+ }
+ if (!Number.isInteger(numValue)) {
+ callback(new Error('璇疯緭鍏ユ暣鏁�'));
+ return;
+ }
+ callback();
+ },
+ trigger: 'blur'
+ }
+ ],
unit: [{required: true, message: "璇疯緭鍏�", trigger: "blur"}],
}
})
@@ -254,6 +282,27 @@
}
}
+// 澶勭悊鏈夋晥鏃ユ湡杈撳叆锛屽彧鍏佽姝f暣鏁�
+const handleValidInput = (value) => {
+ if (value === '' || value === null || value === undefined) {
+ form.value.valid = '';
+ return;
+ }
+ // 杞崲涓哄瓧绗︿覆骞剁Щ闄ゆ墍鏈夐潪鏁板瓧瀛楃锛堝寘鎷礋鍙枫�佸皬鏁扮偣绛夛級
+ const numStr = String(value).replace(/[^0-9]/g, '');
+ if (numStr === '') {
+ form.value.valid = '';
+ return;
+ }
+ const numValue = parseInt(numStr, 10);
+ // 纭繚鏄鏁存暟锛堝ぇ浜�0锛�
+ if (numValue > 0 && !isNaN(numValue)) {
+ form.value.valid = numValue;
+ } else {
+ form.value.valid = '';
+ }
+}
+
const submitForm = () => {
proxy.$refs["formRef"].validate(valid => {
if (valid) {
--
Gitblit v1.9.3