zouyu
2023-09-08 c8ec099f3bf0d9cdc7e670ea2223c71e333d1e34
src/views/standardLibrary/index.vue
@@ -7,8 +7,7 @@
                  <el-input size="small" clearable v-model="filterText" placeholder="输入关键字进行过滤"></el-input>
               </el-col>
               <el-col :span="5">
                  <el-button size="small" type="primary" icon="el-icon-plus"
                     @click="addTreeFormVisible = true"></el-button>
                  <el-button size="small" type="primary" icon="el-icon-plus" @click="addSdantard()"></el-button>
               </el-col>
            </el-row>
            <el-button size="small" type="text">全部</el-button>
@@ -73,12 +72,17 @@
      </div>
      <el-dialog class="addTree" title="添加标准指标" width="28%" :visible.sync="addTreeFormVisible">
         <el-form v-model="addTreeForm" label-position="top">
            <el-form-item label="标准类型">
            <el-form-item :required="true" label="标准类型">
               <el-cascader v-model="addTreeForm.addTypeArr" :options="formTypeOptions"
                  :props="{ ...defaultProps, checkStrictly: true }" clearable @change="changeCascader" />
            </el-form-item>
            <el-form-item v-show="addTreeForm.addTypeArr.length < 2" label="物料名称">
               <el-input @change="changeSample" v-model="addTreeForm.materialName" />
            <el-form-item :required="true" v-show="addTreeForm.addTypeArr.length < 2" label="物料名称">
               <el-select style="width: 100%;" @blur="changeSample" v-model="addTreeForm.materialName"
                  placeholder="请选择">
                  <el-option v-for="item in materialList" :key="item.material" :label="item.material"
                     :value="item.material">
                  </el-option>
               </el-select>
            </el-form-item>
            <el-form-item v-show="addTreeForm.addTypeArr.length < 3" label="执行标准">
               <el-input v-model="addTreeForm.standardName" />
@@ -138,6 +142,7 @@
} from "@/api/standardLibrary";
import {
   addStandardProjectGroupApi,
   getSample
} from "@/api/basicData/index";
export default {
   data() {
@@ -187,7 +192,8 @@
            specificationsName: "",
            materialName: "",
            standardName: "",
         }
         },
         materialList: []
      };
   },
   watch: {
@@ -221,6 +227,11 @@
   },
   methods: {
      async addSdantard() {
         this.addTreeFormVisible = true
         let res = await getSample()
         this.materialList = res.data
      },
      querySearch(queryString, cb) {
         var restaurants = []
         this.projectGroupingOptions.forEach(a => {
@@ -245,22 +256,15 @@
         this.addTreeForm.standardName = ''
      },
      changeSample() {
         let selectType = this.standardTree.filter(item => {
            return item.id === this.addTreeForm.addTypeArr[0]
         })[0];
         if (this.addTreeForm.addTypeArr.length == 1) {
            let samples = selectType.children.filter(item => {
               return item.name === this.addTreeForm.materialName
            })[0]
            if (samples === undefined || samples === []) {
               this.$message({
                  message: '请先在基础数据中添加该【' + this.addTreeForm.materialName + '】样品',
                  type: 'warning'
               });
               return false;
            }
         if (this.addTreeForm.materialName != null && this.addTreeForm.materialName != '') {
            return true
         } else {
            this.$message({
               message: '请先选择物料!',
               type: 'warning'
            });
            return false
         }
         return true
      },
      oneSize() { },
      twoSize() {
@@ -464,14 +468,15 @@
            });
            return
         }
         let handelerSample = this.changeSample()
         if (!handelerSample) {
            return;
         }
         let res = null;
         // return;
         try {
            switch (this.addTreeForm.addTypeArr.length) {
               case 1:
                  let handelerSample = this.changeSample()
                  if (!handelerSample) {
                     return;
                  }
                  res = await addMaterial({
                     ...this.addTreeForm,
                     type: this.addTreeForm.addTypeArr[0],