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('只能输入正数'));
                  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 @@
   }
}
// 处理有效日期输入,只允许正整数
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) {