zhaowei
2025-03-06 ddd818f74d59c1fdeeed29714d660d7e49200c04
src/views/eam/DailyInspectionStandardList.vue
@@ -1,6 +1,6 @@
<template>
  <a-card
    title="自主维护点检标准"
    title=""
    :bordered='false'
  >
    <div class='table-page-search-wrapper'>
@@ -83,6 +83,17 @@
      </a-upload>
      <a-button
        type="primary"
        @click="handleDownload"
        icon="download"
      >模版下载</a-button>
      <a-button
        v-show="selectedRowKeys.length == 1 "
        type="primary"
        @click="handlePrint(selectionRows[0])"
        icon="highlight"
      >模版打印</a-button>
      <a-button
        type="primary"
        @click="searchQuery"
        icon="search"
      >查询</a-button>
@@ -92,6 +103,22 @@
        icon="reload"
        style="margin-left: 8px"
      >重置</a-button>
      <a-button
        v-show="this.selectedRowKeys.length > 0 && this.queryParam.versionStatus == '1'"
        type="primary"
        @click="batchHandleOK"
        icon="reload"
        style="margin-left: 8px"
        v-has="'dailyInspectionStandard:batchHandleOK'"
      >批量通过</a-button>
      <a-button
        v-show="this.selectedRowKeys.length > 0 && this.queryParam.versionStatus == '1'"
        type="primary"
        @click="batchHandleReject"
        icon="reload"
        style="margin-left: 8px"
        v-has="'dailyInspectionStandard:batchHandleReject'"
      >批量驳回</a-button>
    </div>
    <!-- table区域-begin -->
@@ -121,6 +148,24 @@
        :customRow='clickThenSelect'
        @change='handleTableChange'
      >
        <span
          slot="disUda1"
          slot-scope="text"
        >
          <j-ellipsis
            :value="text"
            :length="10"
          />
        </span>
        <span
          slot="teamName"
          slot-scope="text"
        >
          <j-ellipsis
            :value="text"
            :length="10"
          />
        </span>
        <!-- <span
          slot='action'
@@ -228,16 +273,18 @@
import { JeecgListMixin } from '@/mixins/JeecgListMixin'
import { getAction, requestPut } from '@/api/manage'
import { getAction, requestPut, downFile } from '@/api/manage'
import DailyInspectionStandardDetail from './modules/dailyInspectionStandard/DailyInspectionStandardDetail'
import DailylnspectionStandardModal from './modules/dailyInspectionStandard/DailylnspectionStandardModal'
import AuditApprovalModal from './modules/dailyInspectionStandard/AuditApprovalModal'
import '@/assets/less/TableExpand.less'
import JEllipsis from "@/components/jeecg/JEllipsis";
export default {
  name: 'DailyInspectionStandardList',
  mixins: [JeecgListMixin],
  components: {
    JEllipsis,
    DailyInspectionStandardDetail,
    DailylnspectionStandardModal,
    AuditApprovalModal
@@ -260,6 +307,12 @@
          title: '标准编码',
          align: 'center',
          dataIndex: 'num',
        },
        {
          title: '管理制度',
          align: 'center',
          dataIndex: 'disUda1',
          scopedSlots: { customRender: 'disUda1' },
        },
        {
          title: '签审状态',
@@ -291,16 +344,27 @@
          title: '责任班组',
          align: 'center',
          dataIndex: 'teamName',
          scopedSlots: { customRender: 'teamName' },
        },
        // {
        //   title: '派工方式',
        //   align: 'center',
        //   dataIndex: 'assignModeName',
        // },
        {
          title: '派工方式',
          title: '审核结果',
          align: 'center',
          dataIndex: 'assignModeName',
          dataIndex: 'disUda2',
        },
        {
          title: '审核意见',
          align: 'center',
          dataIndex: 'auditFeedback',
        },
        {
          title: '审批结果',
          align: 'center',
          dataIndex: 'disUda3',
        },
        {
          title: '审批意见',
@@ -377,7 +441,7 @@
          align: 'center',
          fixed: 'right',
          scopedSlots: { customRender: 'action' },
          width: 200,
          width: 230,
        }
      ],
      url: {
@@ -386,14 +450,17 @@
        deleteBatch: '/eam/inspectionStandard/deleteBatch',
        versionTakeEffect: "/eam/inspectionStandard/versionTakeEffect",
        importExcelUrl: "/eam/inspectionStandard/importExcel",
        passBatch: '/eam/inspectionStandard/auditApprovalBatch',
        download: '/sys/upload/downloadFile',
        uploadList: '/sys/upload/list',
      },
      version: '1.0',
      dictOptions: {},
      /* 分页参数 */
      ipagination: {
        current: 1,
        pageSize: 5,
        pageSizeOptions: ['5', '10', '50'],
        pageSize: 20,
        pageSizeOptions: ['5', '10', '20', '50'],
        showTotal: (total, range) => {
          return range[0] + '-' + range[1] + ' 共' + total + '条'
        },
@@ -514,7 +581,7 @@
    },
    searchReset() {
      this.inspectionStandardId = '-1'
      this.queryParam = {}
      this.queryParam = { versionStatus: '2' }
      this.loadData(1);
    },
    modalFormOk() {
@@ -523,6 +590,138 @@
      //清空列表选中
      // this.onClearSelected()
    },
    batchHandleReject: function () {
      if (this.selectedRowKeys.length <= 0) {
        // this.$message.warning('请选择一条记录!');
        this.$notification.warning({
          message: '消息',
          description: "请选择一条记录"
        });
        return;
      } else {
        var that = this;
        this.$confirm({
          title: "确认批量驳回",
          content: "是否批量驳回选中数据?",
          onOk: function () {
            that.loading = true;
            that.confirmLoading = true;
            let formData = {};
            let dailyInspectionStandardlist = that.selectionRows
            for (var i = 0; i < dailyInspectionStandardlist.length; i++) {
              let record = dailyInspectionStandardlist[i]
              if (record.approvalStatus == '1') {
                record.approvalStatus = '2'
              } else if (record.approvalStatus == '3') {
                record.approvalStatus = '4'
              } else if (record.approvalStatus == '4') {
                record.approvalStatus = '2'
              }
            }
            formData.dailyInspectionStandardlist = dailyInspectionStandardlist
            requestPut(that.url.passBatch, formData).then((res) => {
              if (res.success) {
                that.$message.success("批量驳回成功!")
                that.loadData(1)
              } else {
                that.$message.warning("批量通过失败!")
              }
            }).finally(() => {
              that.confirmLoading = false;
              that.loading = false;
            })
          }
        });
      }
    },
    batchHandleOK: function () {
      if (this.selectedRowKeys.length <= 0) {
        // this.$message.warning('请选择一条记录!');
        this.$notification.warning({
          message: '消息',
          description: "请选择一条记录"
        });
        return;
      } else {
        var that = this;
        this.$confirm({
          title: "确认批量通过",
          content: "是否批量通过选中数据?",
          onOk: function () {
            that.loading = true;
            that.confirmLoading = true;
            let formData = {};
            let dailyInspectionStandardlist = that.selectionRows
            for (var i = 0; i < dailyInspectionStandardlist.length; i++) {
              let record = dailyInspectionStandardlist[i]
              if (record.approvalStatus == '1') {
                record.approvalStatus = '3'
              } else if (record.approvalStatus == '2') {
                record.approvalStatus = '3'
              } else if (record.approvalStatus == '3') {
                record.approvalStatus = '5'
              } else if (record.approvalStatus == '4') {
                record.approvalStatus = '3'
              }
            }
            formData.dailyInspectionStandardlist = dailyInspectionStandardlist
            requestPut(that.url.passBatch, formData).then((res) => {
              if (res.success) {
                that.$message.success("批量通过成功!")
                that.loadData(1)
              } else {
                that.$message.warning("批量通过失败!")
              }
            }).finally(() => {
              that.confirmLoading = false;
              that.loading = false;
            })
          }
        });
      }
    },
    handleDownload() {
      var params = {}//查询条件
      params.type = "inspection"
      params.pageNo = 1
      params.pageSize = 10
      getAction(this.url.uploadList, params).then((res2) => {
        if (res2.success) {
          if (res2.result.records.length > 0) {
            downFile(this.url.download, { id: res2.result.records[0].id }).then((res) => {
              if (!res) {
                this.$message.warning('文件下载失败')
                return
              } else {
                let fileName = res2.result.records[0].name
                if (typeof window.navigator.msSaveBlob !== 'undefined') {
                  window.navigator.msSaveBlob(new Blob([res]), fileName)
                } else {
                  let url = window.URL.createObjectURL(new Blob([res]))
                  let link = document.createElement('a')
                  link.style.display = 'none'
                  link.href = url
                  link.setAttribute('download', fileName)
                  document.body.appendChild(link)
                  link.click()
                  document.body.removeChild(link) //下载完成移除元素
                  window.URL.revokeObjectURL(url) //释放掉blob对象
                }
              }
            })
          }
        }
      })
    },
    handlePrint(record) {
      let href = `${window._CONFIG['domianURL']}/jmreport/view/934677113625829376?id=` + record.id; //网站链接
      window.open(href, "_blank");
    },
  }
}