luoyb
2021-02-17 9dcb1c994c3cdbe1a7f13e6bffc0ccf7c5a672aa
feat(信息录入): 工作经历输入项校验

1.必填项验证
2.输入项长度验证
3.开始日期和结束日期逻辑验证
1个文件已修改
59 ■■■■ 已修改文件
src/views/user/Informationinput.vue 59 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/user/Informationinput.vue
@@ -742,7 +742,7 @@
        </el-row>
        <el-row>
          <el-col :span="12">
            <el-form-item label="开始日期">
            <el-form-item label="开始日期" prop="beginDate">
              <el-date-picker
                v-model="workExperienceForm.beginDate"
                type="date"
@@ -752,7 +752,7 @@
            </el-form-item>
          </el-col>
          <el-col :span="12">
            <el-form-item label="结束日期">
            <el-form-item label="结束日期" prop="endDate">
              <el-date-picker
                v-model="workExperienceForm.endDate"
                type="date"
@@ -764,7 +764,7 @@
        </el-row>
        <el-row>
          <el-col :span="24">
            <el-form-item label="主要工作内容">
            <el-form-item label="主要工作内容" prop="jobContent">
              <el-input v-model="workExperienceForm.jobContent" type="textarea" />
            </el-form-item>
          </el-col>
@@ -1858,9 +1858,9 @@
      workExperienceRules: {
        empName: [{ required: true, message: '请选择员工', trigger: 'blur' }],
        workUnit: [{ required: true, message: '请输入工作单位', trigger: 'blur' }, { max: 128, message: '长度不超过128个字符', trigger: 'blur' }],
        beginDate: [{ required: true, message: '请选择开始日期', trigger: 'change' }],
        endDate: [{ required: true, message: '请选择结束日期', trigger: 'change' }],
        jobContent: [{ required: true, message: '请输入主要工作内容', trigger: 'blur' }, { max: 512, message: '长度不超过512个字符', trigger: 'blur' }]
        beginDate: [{ required: true, validator: this.startDate }],
        endDate: [{ required: true, validator: this.endDate }],
        jobContent: [{ max: 512, message: '长度不超过512个字符', trigger: 'blur' }]
      },
      physicalExamRules: {
        empName: [{ required: true, message: '请选择员工', trigger: 'blur' }],
@@ -2922,6 +2922,53 @@
          break
      }
    },
    startDate(rule, value, callback) {
      if (!value) {
        callback(new Error('开始日期不能为空!'))
      } else {
        switch (this.thisShowIndex) {
          case 1:
            // 如果结束日期没选,cb
            if (!this.workExperienceForm.endDate) {
              callback()
            } else {
              // 结束日期有,进行判断
              if (this.compareDate(value, this.workExperienceForm.endDate)) {
                // 如果起始在结束之前
                callback()
              } else {
                callback(new Error('开始始日期不能在结束日期之后,请重新选择'))
              }
            }
            break
        }
      }
    },
    endDate(rule, value, callback) {
      if (!value) {
        callback(new Error('结束日期不能为空!'))
      } else {
        switch (this.thisShowIndex) {
          case 1:
            // 如果起始日期没选,cb
            if (!this.workExperienceForm.beginDate) {
              callback()
            } else {
              // 起始日期有,进行判断
              if (this.compareDate(this.workExperienceForm.beginDate, value)) {
                // 如果起始在结束之前
                callback()
              } else {
                callback(new Error('结束日期不能在开始始日期之前,请重新选择'))
              }
            }
            break
        }
      }
    },
    compareDate(start, end) {
      return new Date(end).getTime() > new Date(start).getTime()
    },
    deleteFrom() {
      this.butDelete()
    },