Fixiaobai
2023-09-15 e3f7d6a77966706f7c70383148ce46f39d995202
src/components/view/processInspection.vue
@@ -59,7 +59,8 @@
              <template slot-scope="scope">
                <el-button type="text" size="small" @click="handleClick(scope.row)" style="margin-left: 0;">详情</el-button>
                <el-button type="text" size="small" >查看</el-button>
                <el-button v-if="scope.row.result == null" type="text" size="small" style="margin-left: 0;"  @click="updateInsInfo(scope.row)">编辑</el-button>
                <el-button v-if="scope.row.result == null" type="text" size="small" style="margin-left: 0;"
                  @click="updateInsInfo(scope.row)">编辑</el-button>
              </template>
            </el-table-column>
          </el-table>
@@ -171,8 +172,8 @@
            > -->
          </el-col>
        </el-row>
        <el-table border :data="inspectionItems" max-height="420" :span-method="handleSpanMethod" height="calc(100vh - 550px)"
          style="width: 100%">
        <el-table border :data="inspectionItems" max-height="420" :span-method="handleSpanMethod"
          height="calc(100vh - 550px)" style="width: 100%">
          <el-table-column type="index" label="序号" width="60"></el-table-column>
          <el-table-column label="项目" prop="father"></el-table-column>
          <el-table-column prop="name" label="指标"></el-table-column>
@@ -222,22 +223,11 @@
      </div>
      <el-dialog title="请选择设备" :visible.sync="centerDialogVisible" width="20%">
        <div class="div_device_dialog">
          <el-input placeholder="输入关键字进行过滤" v-model="filterText" style="margin-bottom: 6px;">
          </el-input>
          <el-tree class="filter-tree" :data="materialOptions" :props="defaultProps" default-expand-all highlight-current
            @node-click="nodeClick" :filter-node-method="filterNode" ref="tree">
            <div class="custom-tree-node" slot-scope="{ data }">
              <span><i :class="`node_i ${data.children ? 'el-icon-folder-opened' : 'el-icon-tickets'
                }`
                "></i>
                {{ data.name }}</span>
          <el-select style="width: 100%;" @change="clickNodeSure()" v-model="filterText" placeholder="请选择">
            <el-option v-for="item in materialOptions" :key="item.id" :label="item.device" :value="item.id">
            </el-option>
          </el-select>
            </div>
          </el-tree>
        </div>
        <span slot="footer" class="dialog-footer">
          <el-button @click="centerDialogVisible = false">取 消</el-button>
          <el-button type="primary" @click="clickNodeSure()">确 定</el-button>
        </span>
      </el-dialog>
    </div>
    <div class="newPage" v-if="showUp">
@@ -334,7 +324,10 @@
        children: "children",
        label: "name"
      },
      nodeData: "", // node点击保存当前点击数据
      nodeData: {
        id: 0,
        name: null
      }, // node点击保存当前点击数据
      clickSelectDevice: {
        index: "", // 点击选择存储当前行索引
        rpId: "" // 点击选择存储当前行项目Id
@@ -348,7 +341,7 @@
  },
  mounted() {
    // this.getTableData()
    this.getOptions();
    // this.getOptions();
  },
  methods: {
    handleClick(row){
@@ -386,8 +379,14 @@
      return data.name.indexOf(value) !== -1;
    },
    // 获取设备树内容
    getOptions() {
      this.$axios.get(this.$api.url.rawSelectDevice).then(res => {
    getOptions(row) {
      this.$axios.get(this.$api.url.inspectionItemChooseDev, {
        params: {
          father: row.father,
          name: row.name,
          technologyId: this.processInspectVo.technologyId
        }
      }).then(res => {
        this.materialOptions = res.data;
      });
    },
@@ -396,9 +395,15 @@
      this.centerDialogVisible = true;
      this.clickSelectDevice.index = scope.$index;
      this.clickSelectDevice.rpId = scope.row.id;
      this.options(scope.row)
    },
    // 点击树里面的确定
    clickNodeSure() {
      let select = this.materialOptions.filter(item => {
        return item.id === this.filterText
      })[0]
      this.nodeData.id = select.id
      this.nodeData.name = select.device
      if (this.detailId == null) {
        this.inspectionItems[
          this.clickSelectDevice.index
@@ -421,8 +426,20 @@
      }
    },
    changeState(row, index) {
        console.log(row);
        if(row.did!=null&&row.did!=''){
        let val = row.empiricalValueAddss.filter(item => {
          return item != '' && item != null
        })
        let eq = val.filter(item => {
          return /^[^><=]/.test(item)
        })
        if (eq.length > 0) {
          this.$message({
            message: "输入值[" + eq + "]格式首位应包含>,<或者=",
            type: 'warning'
          });
          return
        }
          let str=""
        row.empiricalValueAddss.forEach(e=>{
            str+=e+","
@@ -434,6 +451,13 @@
      }, {
        headers: { "Content-Type": "application/json" }
      }).then(res => {
          if (res.message === '内控值输入格式有问题!') {
            this.$message({
              message: res.message,
              type: 'warning'
            });
            return
          }
        row.result=res.data.result
        row.username=res.data.username
      })           
@@ -507,7 +531,7 @@
        specificationsModel: val.specificationsModel,
        techfather: val.techfather,
        techname: val.techname,
        technologyId: val.technologyId,
        techId: Number(val.technologyId),
        unit: val.unit
      }, {
        headers: { "Content-Type": "application/json" }
@@ -669,10 +693,12 @@
.node_i {
  color: orange;
}
.div_device_dialog {
  min-height: 400px;
  overflow: auto;
}
.nav {
  display: flex;
  padding: 20px 20px;
@@ -742,5 +768,4 @@
.inspectionProject_span .el-button {
  float: right;
  font-size: 13px !important;
}
</style>
}</style>