智慧农业后台管理页面
guoshilong
2022-11-08 082613d446e29e4ec1c16bfaa52345106a498b23
src/views/wel/farming.vue
@@ -23,6 +23,14 @@
export default {
  data() {
    const validateNum = (rule, value, callback) => {
      if (!/^[1-9]\d*$/.test(value)) {
        callback(new Error("请输入正数"));
      } else {
        callback();
      }
    };
    return {
      title: "农事操作",
      form: {
@@ -39,6 +47,12 @@
            type: "select",
            labelWidth: 110,
            dicUrl: "/api/blade-system/dict-biz/dictionary?code=farmingType",
            dicFormatter:(res)=>{
              let typeList = res.data.filter(e=>{
                return e.dictKey<10
              })
              return typeList
            },
            props: {
              label: "dictValue",
              value: "dictKey",
@@ -47,7 +61,7 @@
              {
                required: true,
                message: "请选择农事类型",
                trigger: "blur",
                trigger: ["blur","change"]
              },
            ],
          },
@@ -66,7 +80,7 @@
              {
                required: true,
                message: "请选择所属地块",
                trigger: "blur",
                trigger: ["blur","change"]
              },
            ],
          },
@@ -86,7 +100,7 @@
              {
                required: true,
                message: "请选择农产品",
                trigger: "blur",
                trigger: ["blur","change"]
              },
            ],
          },
@@ -105,7 +119,7 @@
              {
                required: true,
                message: "请选择农资",
                trigger: "blur",
                trigger: ["blur","change"]
              },
            ],
            display: false,
@@ -126,6 +140,7 @@
            prop: "snum",
            span: 6,
            display: false,
            rules:[{required: false, validator: validateNum, trigger: 'blur'}]
          },
          {
            label: "作业方式",
@@ -148,7 +163,7 @@
              {
                required: true,
                message: "请输入作业方式",
                trigger: "blur",
                trigger: ["blur","change"]
              },
            ],
          },
@@ -163,7 +178,7 @@
              {
                required: true,
                message: "请选择农事操作时间",
                trigger: "blur",
                trigger: ["blur","change"]
              },
            ],
          },
@@ -181,7 +196,7 @@
              {
                required: false,
                message: "请选择操作人",
                trigger: "blur",
                trigger: ["blur","change"]
              },
            ],
          },
@@ -209,13 +224,14 @@
            label: "备注",
            prop: "remarks",
            type: "textarea",
            maxlength:200,
            span: 24,
            labelWidth: 110,
            rules: [
              {
                required: false,
                message: "请输入备注",
                trigger: "blur",
                trigger: ["blur","change"]
              },
            ],
          },
@@ -234,7 +250,14 @@
    "form.type": {
      handler(val) {
        var stockIdcolumn = this.findObject(this.option.column, "stockId");
        if (val === "0" || val == 4 || val == 5 || val == 8 || val == 9) {
        var numColumn = this.findObject(this.option.column,"num")
        var snumColumn = this.findObject(this.option.column,"snum")
        if(typeof val =="undefined"){
          stockIdcolumn.display = false
          numColumn.display =false
          snumColumn.display = false
        }
        else if (val === "0" || val == 4 || val == 5 || val == 8 || val == 9) {
          stockIdcolumn.display = true;
        } else {
          stockIdcolumn.display = false;
@@ -246,10 +269,9 @@
  methods: {
    getDe(val) {
      if (val.value!='') {
        getDetail(val.value
        ).then(res => {
          var amount1 = res.data.data.amount1;
          this.form.num = amount1
        getDetail(val.value,this.$farmId).then(res => {
            var amount1 = res.data.data.amount1;
            this.form.num = amount1
          var numz = this.findObject(this.option.column, "num");
          var numzs = this.findObject(this.option.column, "snum");
          numz.display = true;
@@ -286,11 +308,14 @@
    ,
//初始化
    init() {
      var that = this;
      this.visible = true;
      if (this.$refs.form){
        this.$refs.form.resetForm()
      }
      this.form['operator'] = this.userInfo.user_id;
      //计算当前时间
      this.getNowTime();
      this.visible = true;
      var that = this;
      //获取农地数据
      getLandList(this.$farmId).then((res) => {
        if (res.data.code == 200) {
@@ -310,7 +335,7 @@
        }
      });
      //获取农资
      selectStockFa().then((res) => {
      selectStockFa(this.$farmId).then((res) => {
        if (res.data.code == 200) {
          var stockIdcolumn = that.findObject(that.option.column, "stockId");
          stockIdcolumn.dicData = res.data.data;
@@ -322,9 +347,9 @@
    submit(row, done) {
      var that = this;
      row['tenantId'] = this.userInfo.tenant_id;
      row['deptId'] = this.userInfo.dept_id;
      if (row.snum > row.num) {
        this.$message.warning("使用农资数量大于农资数量");
      row['deptId'] = this.$farmId;
      if (row.snum > row.num || row.snum <=0) {
        this.$message.warning("使用数量小于等于0或大于库存数量");
        done();
      }
      else {
@@ -336,6 +361,7 @@
              type: "success",
              message: "操作成功!",
            });
            that.$emit("refreshOnLoad")
            done();
          },
          (error) => {