gongchunyi
2026-05-09 c5fdece0402a774c68a2c7aca41adda83904de42
src/views/equipmentManagement/measurementEquipment/components/calibrationDia.vue
@@ -37,7 +37,7 @@
               </el-col>
            </el-row>
            <el-row :gutter="30">
               <el-col :span="12">
               <el-col :span="24">
                  <el-form-item label="检定日期:" prop="recordDate">
                     <el-date-picker
                        style="width: 100%"
@@ -50,7 +50,7 @@
                     />
                  </el-form-item>
               </el-col>
               <el-col :span="12">
               <!-- <el-col :span="12">
                  <el-form-item label="有效日期(天):" prop="valid">
                     <el-input
                        v-model="form.valid"
@@ -63,7 +63,7 @@
                        <template #append>日</template>
                     </el-input>
                  </el-form-item>
               </el-col>
               </el-col> -->
            </el-row>
            <el-row :gutter="30">
               <el-col :span="12">
@@ -155,32 +155,32 @@
   rules: {
      code: [{required: true, message: "请输入", trigger: "blur"}],
      name: [{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'
         }
      ],
      // 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"}],
@@ -261,26 +261,24 @@
   }
}
// 处理有效日期输入,只允许正整数
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 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);
//    if (numValue > 0 && !isNaN(numValue)) {
//       form.value.valid = numValue;
//    } else {
//       form.value.valid = '';
//    }
// }
const submitForm = () => {
   proxy.$refs["formRef"].validate(valid => {