spring
2025-04-10 dab59f7624a2fb8d4114bb67b554ff09d91f810c
src/views/standard/standardLibrary/audit.vue
@@ -2,8 +2,8 @@
  <div class="capacity-scope">
    <div class="search">
      <el-form :model="queryParams" ref="queryParams" size="small" :inline="true">
        <el-form-item label="更新人" prop="name">
          <el-input v-model="queryParams.name" clearable placeholder="请输入" size="small"
        <el-form-item label="更新人" prop="createUserName">
          <el-input v-model="queryParams.createUserName" clearable placeholder="请输入" size="small"
            @keyup.enter.native="refreshTable()"></el-input>
        </el-form-item>
        <el-form-item>
@@ -18,6 +18,10 @@
</template>
<script>
import {
  standardProductListRecordPage,
  productListCheck,
} from "@/api/standard/standardLibrary";
import limsTable from "@/components/Table/lims-table.vue";
export default {
  components: {
@@ -28,22 +32,43 @@
      queryParams: {},
      tableData: [],
      column: [
        { label: "更新原因", prop: "number" },
        { label: "更新时间", prop: "name" },
        { label: "更新人", prop: "remark" },
        { label: "状态", prop: "remark" },
        { label: "更新原因", prop: "remark" },
        { label: "更新时间", prop: "updateTime" },
        { label: "更新人", prop: "createUserName" },
        {
          label: "状态", prop: "checkStatus",
          dataType: "tag",
          formatData: (params) => {
            let obj = this.checkStatusList.find((m) => m.value == params)
            if (obj) {
              return obj.label
            }
          },
          formatType: (params) => {
            let obj = this.checkStatusList.find((m) => m.value == params)
            if (obj) {
              return obj.type
            }
          }
        },
        {
          dataType: "action",
          label: "操作",
          operation: [
            {
              name: "上传附件",
              name: "上传",
              type: "upload",
              accept: '.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.pdf',
              url: '/insReport/inReport',
              url: '/updateRecord/uploadRecordFile',
              uploadIdFun: (row) => {
                return row.id
              }
              },
              handleSuccessUp: () => {
                this.getList()
              },
              disabled: (row) => {
                return row.checkStatus > 1;
              },
            },
            {
              name: "审批",
@@ -51,15 +76,20 @@
              clickFun: (row) => {
                this.handleCheck(row);
              },
              // showHide: (row) => {
              //   return this.checkPermi(["standard:model:del"]);
              // },
              disabled: (row) => {
                return row.checkStatus > 1;
              },
            },
            {
              name: "查看",
              type: "text",
              clickFun: (row) => {
                this.handleLook(row);
                this.$tab.closeRightPage();
                this.$router.push({
                  path: "/audit/auditDetail", query: {
                    auditId: row.id
                  }
                });
              },
            },
            {
@@ -78,14 +108,39 @@
        current: 0,
      },
      tableLoading: false,
      checkStatusList: [
        {
          value: 0,
          label: '未提交',
          type: 'danger'
        },
        {
          value: 1,
          label: '待审核',
          type: 'warning'
        },
        {
          value: 2,
          label: '通过',
          type: 'success'
        },
        {
          value: 3,
          label: '不通过',
          type: 'danger'
        },
      ],
    }
  },
  mounted() {
    this.getList()
  },
  methods: {
    getList() {
      this.tableLoading = true;
      let param = { ...this.queryParams, ...this.page };
      delete param.total;
      selectStandardTemplatePageList({ ...param })
      standardProductListRecordPage({ ...param })
        .then((res) => {
          this.tableLoading = false;
          if (res.code === 200) {
@@ -122,10 +177,26 @@
        beforeClose: (action, instance, done) => {
          if (action === 'confirm') {
            // 通过
            this.refresh();
            productListCheck({
              checkStatus: 2,
              id: row.id
            }).then(res => {
              if (res.code == 200) {
                this.refresh()
                done();
              }
            })
          } else if (action === 'cancel') {
            // 不通过
            this.refresh();
            productListCheck({
              checkStatus: 3,
              id: row.id
            }).then(res => {
              if (res.code == 200) {
                this.refresh()
                done();
              }
            })
          } else if (action === 'close') {
            // 点击“×”按钮,不允许关闭
            done();
@@ -134,11 +205,9 @@
        }
      })
    },
    // 查看
    handleLook(row) { },
    // 下载附件
    handleDown(row) {
      this.$download.saveAs(row.fileUrl, row.fileName);
      this.$download.saveAs(row.filePath, row.fileName);
    },
  }
}