zouyu
2023-09-08 c8ec099f3bf0d9cdc7e670ea2223c71e333d1e34
src/views/experiment/reportAuditing/index.vue
@@ -1,8 +1,8 @@
<template>
  <div class="content-main">
    <div class="top-bar">
      <el-form ref="form" :inline="true">
        <el-form-item class="sermargin">
      <el-form ref="form" :inline="true" style="margin-top: 10px;">
        <el-form-item>
          <el-input
            v-model="input"
            class="input-form"
@@ -11,22 +11,9 @@
          />
        </el-form-item>
        <el-form-item>
          <el-button type="primary" @click="getData()">查询</el-button>
          <el-button type="primary" plain @click="resetData()">重置</el-button>
          <el-button size="small" type="primary" @click="getData()">查询</el-button>
          <el-button size="small" type="primary" plain @click="resetData()">重置</el-button>
        </el-form-item>
        <el-dropdown>
          <span class="el-dropdown-link">
            高级搜索<i class="el-icon-arrow-down el-icon--right"></i>
          </span>
          <el-dropdown-menu slot="dropdown">
            <el-dropdown-item>高级搜索</el-dropdown-item>
          </el-dropdown-menu>
        </el-dropdown>
      </el-form>
      <el-form>
        <el-button class="rightBtn" type="primary" @click="exportData"
          >审核</el-button
        >
      </el-form>
    </div>
    <div class="library-table">
@@ -34,8 +21,8 @@
        <div class="search-bar">
          <el-radio-group v-model="checkStatus" @change="handleRadioChange">
            <el-radio-button>全部</el-radio-button>
            <el-radio-button label="0">待提交</el-radio-button>
            <el-radio-button label="2">待通过</el-radio-button>
            <el-radio-button label="0">待通过</el-radio-button>
            <el-radio-button label="1">通过</el-radio-button>
          </el-radio-group>
          <el-checkbox v-model="checked" style="margin-left: 20px"
            >仅看我的</el-checkbox
@@ -46,35 +33,47 @@
        <el-table
          ref="reportTable"
          :max-height="800"
          :cell-style="{ textAlign: 'center' }"
          :cell-style="{ textAlign: 'left' }"
          :header-cell-style="{
            border: '0px',
            background: '#f5f7fa',
            color: '#606266',
            boxShadow: 'inset 0 1px 0 #ebeef5',
            textAlign: 'center',
            textAlign: 'left',
          }"
          :data="reportTable"
          style="width: 100%"
        >
          <el-table-column type="selection" label="" min-width="5%" />
          <el-table-column
            prop="materialCode"
            label="样品编号"
            min-width="10%"
          />
          <el-table-column prop="reportCode" label="报告单号" min-width="10%" />
        <el-table-column
          type="index"
          width="50">
        </el-table-column>
          <!-- <el-table-column  label="" min-width="5%" /> -->
          <el-table-column prop="materialCode" label="样品编号" min-width="10%">
            <template slot-scope="scope">
              <span style="color: #409eff">
                {{ scope.row.materialCode }}
              </span>
            </template></el-table-column
          >
          <el-table-column prop="reportCode" label="报告单号" min-width="10%">
            <template slot-scope="scope">
              <span style="color: #409eff">
                {{ scope.row.reportCode }}
              </span>
            </template></el-table-column
          >
          <el-table-column
            prop="materialName"
            label="样品名称"
            min-width="10%"
          />
          <el-table-column prop="status" label="审批状态" min-width="8%">
          <el-table-column prop="status" label="审批状态" min-width="8%" v-model="Auditconclusion">
            <template slot-scope="scope">
              <span>
                <el-tag type="warning">{{
                  scope.row.status == 0 ? "待提交" : "待通过"
                }}</el-tag>
                <el-tag type="warning" v-if="scope.row.status === 0">待通过</el-tag>
                <el-tag type="success" v-else-if="scope.row.status === 1">通过</el-tag>
                <el-tag type="danger" v-else>不通过</el-tag>
              </span>
            </template></el-table-column
          >
@@ -87,8 +86,24 @@
                type="text"
                size="small"
                @click="handleClick(scope.row)"
                >查看详细</el-button
                >查看详细
              </el-button>
            <el-button  type="text" size="small" v-if="scope.row.status === 0" @click="shenHE(scope)">审核</el-button>
            <el-dialog
              title="原始记录审核"
              :visible.sync="checkskipvisible"
              width="30%"
              >
              <el-form :model="form">
                <el-form-item label="请选择审核结果:" :label-width="formLabelWidth">
                </el-form-item>
              </el-form>
              <div slot="footer" class="dialog-footer">
                <el-button @click="checkskipvisible = false">取 消</el-button>
                <el-button style="background-color: rgb(206, 211, 216);" @click="nocheckskip(scope.row)" >不通过</el-button>
                <el-button type="primary" @click="checkskip(scope.row)">通过</el-button>
              </div>
            </el-dialog>
            </template>
          </el-table-column>
        </el-table>
@@ -110,23 +125,33 @@
</template>
<script>
import { selectAllReportCheck } from "@/api/experiment/reportAuditing";
import { selectAllReportCheck,checkApi } from "@/api/experiment/reportAuditing";
export default {
  data() {
    return {
      input: "",
      input: '',
      checkStatus: undefined,
      reportTable: [],
      page: 1,
      total: 0,
      pageSize: 10,
      checked: true,
      checkskipvisible: false,
      form:{},
      formLabelWidth: '120px',
      checked:{},
      usertt:[],
      Auditconclusion:{},
      tableRow: {},
    };
  },
  created() {
    this.getData();
  },
  methods: {
    shenHE(s){
      this.tableRow=s
      this.checkskipvisible=true
    },
    // 状态按钮
    handleRadioChange() {
      this.getData();
@@ -151,6 +176,26 @@
      this.checkStatus = undefined;
      this.getData();
    },
    //通过
     checkskip(row) {
      console.log(this.tableRow);
      this.reportTable[this.tableRow.$index].status=1
      this.transmitData(this.tableRow.row.id,1)
      this.checkskipvisible= false
    },
    //不通过
     nocheckskip(row) {
      console.log(this.tableRow);
      this.reportTable[this.tableRow.$index].status=0
      this.transmitData(this.tableRow.row.id,2)
      this.checkskipvisible= false
    },
    //审核
    async transmitData(id, result) {
      let param={"id":id,"result":result}
     let data = await checkApi(param)
     await this.getData();
    },
    // 查询列表
    async getData() {
      const params = {
@@ -160,6 +205,7 @@
        status: this.checkStatus ? this.checkStatus : undefined,
      };
      const { data } = await selectAllReportCheck(params);
      console.log(data);
      this.reportTable = data.row;
      this.total = data.total;
    },