智慧农业后台管理页面
guoshilong
2022-10-18 90c20a501209a51d85f6376f995af3336d77d144
数字验证是否大于999999999或长度大于9
9 files modified
138 ■■■■■ changed files
src/util/validate.js 68 ●●●●● patch | view | raw | blame | history
src/views/farm/farmingrecord.vue 1 ●●●● patch | view | raw | blame | history
src/views/farmplant/farmplant.vue 8 ●●●●● patch | view | raw | blame | history
src/views/farmplant/farmproductstock.vue 3 ●●●● patch | view | raw | blame | history
src/views/farmplant/process.vue 3 ●●●● patch | view | raw | blame | history
src/views/stock/stockmanage.vue 21 ●●●● patch | view | raw | blame | history
src/views/stock/stockout.vue 12 ●●●●● patch | view | raw | blame | history
src/views/wel/plant.vue 8 ●●●●● patch | view | raw | blame | history
src/views/wel/stock.vue 14 ●●●●● patch | view | raw | blame | history
src/util/validate.js
@@ -12,6 +12,7 @@
    const urlregex = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/
    return urlregex.test(textval)
}
/**
 * 邮箱
 * @param {*} s
@@ -61,6 +62,7 @@
    const reg = /^[A-Za-z]+$/
    return reg.test(str)
}
/*验证pad还是pc*/
export const vaildatePc = function() {
        const userAgentInfo = navigator.userAgent;
@@ -77,6 +79,7 @@
        }
        return flag;
    }
    /**
     * validate email
     * @param email
@@ -171,6 +174,7 @@
    list.push(msg);
    return list;
}
/**
 * 判断手机号码是否正确
 */
@@ -197,6 +201,7 @@
    list.push(msg);
    return list;
}
/**
 * 判断姓名是否正确
 */
@@ -205,6 +210,7 @@
    if (!regName.test(name)) return false;
    return true;
}
/**
 * 判断是否为整数
 */
@@ -218,6 +224,7 @@
    }
    return true;
}
/**
 * 判断是否为小数
 */
@@ -231,6 +238,7 @@
    }
    return true;
}
/**
 * 判断是否为空
 */
@@ -253,15 +261,65 @@
}
/**
 * 限制数字输入
 * 限制输入为正整数
 * @param rule
 * @param value
 * @param callback
 */
export const limitNum = (rule, value, callback) => {
    if (value>9999999999){
      callback(new Error("限制为9999999999以内"));
const limitNumInt = (rule, value, callback) => {
  var reg = /^[1-9]\d*$/
  if (rule.required) {
    if (value) {
      if (!reg.test(value)) {
        callback(new Error("请输入正整数"))
    }else {
      callback();
        if (value > 999999999) {
          callback(new Error("请输入999999999以内的数"))
        } else {
          callback()
        }
      }
    } else {
      callback(new Error("请输入正整数"))
    }
  } else {
    if (value) {
      if (!reg.test(value)) {
        callback(new Error("请输入正整数"))
      } else {
        if (value > 999999999) {
          callback(new Error("请输入999999999以内的数"))
        } else {
          callback()
        }
      }
    } else {
      callback()
    }
    }
};
const limitNumLength = (rule, value, callback) => {
  if (rule.required) {
    if (value) {
      if (value.toString().length > 9) {
        callback(new Error("限制输入位数为9位"))
      } else {
        callback()
      }
    } else {
      callback(new Error("请输入数字"))
    }
  } else {
    if (value) {
      if (value.toString().length > 9) {
        callback(new Error("限制输入位数为9位"))
      } else {
        callback()
      }
    } else {
      callback()
    }
  }
}
  export {limitNumInt,limitNumLength}
src/views/farm/farmingrecord.vue
@@ -453,6 +453,7 @@
        beforeOpen (done, type) {
            if (["edit", "view"].includes(type)) {
                getDetail(this.form.id).then((res) => {
                    console.log(res.data.data)
                    this.form = res.data.data
                })
            }
src/views/farmplant/farmplant.vue
@@ -80,6 +80,8 @@
import { mapGetters } from "vuex"
import detection from "./detection.vue"
import recovery from "../wel/recovery.vue"
import {limitNumInt} from "@/util/validate";
export default {
    components: {
        recovery,
@@ -389,8 +391,8 @@
                        rules: [
                            {
                                required: false,
                                message: "请输入预计亩产",
                                trigger: "blur",
                                validator: limitNumInt
                            },
                        ],
                        // display:false,
@@ -404,8 +406,8 @@
                        rules: [
                            {
                                required: false,
                                message: "请输入株数",
                                trigger: "blur",
                                validator: limitNumInt
                            },
                        ],
                        // display:false,
@@ -419,8 +421,8 @@
                        rules: [
                            {
                                required: false,
                                message: "请输入株间距",
                                trigger: "blur",
                                validator: limitNumInt
                            },
                        ],
                        // display:false,
src/views/farmplant/farmproductstock.vue
@@ -347,6 +347,7 @@
import { regionData } from 'element-china-area-data'
import { click } from 'ol/events/condition'
import fixed from "@/util/mathHandler"
import {limitNumLength} from "@/util/validate";
export default {
    data () {
@@ -518,8 +519,8 @@
                        rules: [
                            {
                              required: true,
                              message: "请输入销售价格",
                              trigger: ["blur","change"],
                              validator:limitNumLength
                            },
                        ],
                    },
src/views/farmplant/process.vue
@@ -270,6 +270,7 @@
import { mapGetters } from "vuex"
import { regionData } from 'element-china-area-data'
import fixed from "@/util/mathHandler"
import {limitNumLength} from "@/util/validate";
export default {
    data () {
@@ -420,8 +421,8 @@
                        rules: [
                            {
                              required: true,
                              message: "请输入销售价格",
                              trigger: ["blur","change"],
                              validator:limitNumLength
                            },
                        ],
                    },
src/views/stock/stockmanage.vue
@@ -182,21 +182,10 @@
import {add1} from "@/api/stockrecord/stockrecord";
import {mapGetters} from "vuex";
import fixed from "@/util/mathHandler"
import {limitNumInt} from "@/util/validate";
export default {
  data() {
    const validateNum = (rule, value, callback) => {
      if (!/^[1-9]\d*$/.test(value)) {
        callback(new Error("请输入正整数"));
      } else {
        if (value>9999){
          callback(new Error("限制为9999以内"));
        }else {
          callback();
        }
      }
    };
    return {
      formInline: {
        stype: "",
@@ -256,7 +245,7 @@
              required: true,
              // message: "请输入规格",
              trigger: ["blur","change"],
              validator: validateNum
              validator: limitNumInt
            }]
          },
          {
@@ -300,7 +289,7 @@
              required: true,
              // message: "请输入入库数量",
              trigger: ["blur","change"],
              validator: validateNum
              validator: limitNumInt
            }]
          },
          {
@@ -471,7 +460,7 @@
              required: true,
              // message: "请输入入库数量",
              trigger: ["blur","change"],
              validator: validateNum
              validator: limitNumInt
            }]
          },
          {
@@ -644,7 +633,7 @@
              required: true,
              // message: "请输入入库数量",
              trigger: ["blur","change"],
              validator: validateNum
              validator: limitNumInt
            }]
          },
          {
src/views/stock/stockout.vue
@@ -108,17 +108,6 @@
export default {
  data() {
    const validateNum = (rule, value, callback) => {
      if (!/^[1-9]\d*$/.test(value)) {
        callback(new Error("请输入正整数"));
      } else {
        if (value>9999){
          callback(new Error("限制为9999以内"));
        }else {
          callback();
        }
      }
    };
    return {
      formInline: {
        stype: "",
@@ -164,7 +153,6 @@
              required: false,
              // message: "请输入入库数量",
              trigger: "blur",
              validator: validateNum
            }]
          }
        ],
src/views/wel/plant.vue
@@ -19,6 +19,8 @@
import { getStrainList } from "@/api/farmplant/strain";
import { save,getList } from "@/api/farmplant/farmplant";
import { getFarmList } from "../../api/farm/farm";
import {limitNumInt} from "@/util/validate";
export default {
  data() {
    return {
@@ -231,8 +233,8 @@
            rules: [
              {
                required: false,
                message: "请输入预计亩产",
                trigger: ["blur","change"],
                validator: limitNumInt
              },
            ],
          },
@@ -245,8 +247,8 @@
            rules: [
              {
                required: false,
                message: "请输入株数",
                trigger: ["blur","change"],
                validator: limitNumInt
              },
            ],
          },
@@ -259,8 +261,8 @@
            rules: [
              {
                required: false,
                message: "请输入株间距",
                trigger: ["blur","change"],
                validator: limitNumInt
              },
            ],
          },
src/views/wel/stock.vue
@@ -16,6 +16,8 @@
import { mapState } from "vuex";
import { add } from "@/api/stock/stock";
import {limitNumInt} from "@/util/validate";
export default {
  data() {
    return {
@@ -44,13 +46,14 @@
          },
          {
            label: "规格",
            type: "number",
            prop: "specs",
            value:"",
            span: 6,
            span: 7,
            rules: [{
              required: true,
              message: "请输入规格",
              trigger: ["blur","change"]
              // message: "请输入规格",
              trigger: ["blur","change"],
              validator: limitNumInt
            }]
          },
          {
@@ -87,7 +90,8 @@
            rules: [{
              required: true,
              message: "请输入入库数量",
              trigger: ["blur","change"]
              trigger: ["blur","change"],
              validator: limitNumInt
            }]
          },
          {