lyh
6 天以前 366d9edd9d846c99214ec06ed496b027258d3cb4
二保批量领取作废  添加保养规范按钮权限
已修改4个文件
228 ■■■■ 文件已修改
src/views/eam/base/EamMaintenanceStandardList.vue 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/eam/base/modules/EamMaintenanceStandardModal.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/eam/maintenance/EamInspectionOrderList.vue 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/eam/maintenance/EamSecondMaintenanceOrderList.vue 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/eam/base/EamMaintenanceStandardList.vue
@@ -44,29 +44,29 @@
      <!-- 操作按钮区域 -->
      <div class="table-operator">
        <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
        <a-button v-has="'standard:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
        <a-upload name="file" :showUploadList="false" :multiple="true" :headers="tokenHeader"
                  :action="inspectionImportExcel"
                  @change="handleImportExcel">
          <a-button type="primary" icon="import">点检标准导入</a-button>
          <a-button v-has="'standard:pointInspection'" type="primary" icon="import">点检标准导入</a-button>
        </a-upload>
        <a-button type="primary" icon="download" @click="handleTemplateXlsDownload(url.inspectionXlsDownloadUrl)">
        <a-button v-has="'standard:pointInspectionDownload'" type="primary" icon="download" @click="handleTemplateXlsDownload(url.inspectionXlsDownloadUrl)">
          点检标准模板下载
        </a-button>
        <a-upload name="file" :showUploadList="false" :multiple="true" :headers="tokenHeader"
                  :action="secondMaintenanceImportExcel"
                  @change="handleImportExcel">
          <a-button type="primary" icon="import">二保标准导入</a-button>
          <a-button v-has="'standard:secondMaintenance'"  type="primary" icon="import">二保标准导入</a-button>
        </a-upload>
        <a-button type="primary" icon="download"
        <a-button v-has="'standard:secondMaintenanceDownload'"  type="primary" icon="download"
                  @click="handleTemplateXlsDownload(url.secondMaintenanceXlsDownloadUrl)">二保标准模板下载
        </a-button>
        <a-upload name="file" :showUploadList="false" :multiple="true" :headers="tokenHeader"
                  :action="thirdMaintenanceImportExcel"
                  @change="handleImportExcel">
          <a-button type="primary" icon="import">三保标准导入</a-button>
          <a-button v-has="'standard:ThirdMaintenance'" type="primary" icon="import">三保标准导入</a-button>
        </a-upload>
        <a-button type="primary" icon="download" @click="handleTemplateXlsDownload(url.thirdMaintenanceXlsDownloadUrl)">
        <a-button v-has="'standard:ThirdMaintenanceDownload'" type="primary" icon="download" @click="handleTemplateXlsDownload(url.thirdMaintenanceXlsDownloadUrl)">
          三保标准模板下载
        </a-button>
        <a-dropdown v-if="selectedRowKeys.length > 0">
@@ -95,30 +95,30 @@
               :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" :customRow='clickThenSelect'
               @change="handleTableChange">
        <span slot="action" slot-scope="text, record">
          <a v-if="record.standardStatus === 'START'" @click.stop="handleUpgrade(record)">升版</a>
          <a v-has="'standard:upgrade'" v-if="record.standardStatus === 'START'" @click.stop="handleUpgrade(record)">升版</a>
          <template v-if="record.standardStatus === 'WAIT_SUBMIT'">
              <a @click.stop="handleEdit(record)">编辑</a>
              <a v-has="'standard:edit'" @click.stop="handleEdit(record)">编辑</a>
              <a-divider type="vertical"/>
              <a-divider v-has="'standard:edit'" type="vertical"/>
              <a-popconfirm title="确定发起流程吗?" @confirm="() => startProcess(record.id)">
                  <a @click.stop="event=>event.stopPropagation()">发起流程</a>
                  <a v-has="'standard:saveFlow'" @click.stop="event=>event.stopPropagation()">发起流程</a>
              </a-popconfirm>
              <a-divider type="vertical"/>
              <a-divider v-has="'standard:saveFlow'" type="vertical"/>
              <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
                  <a @click.stop="event=>event.stopPropagation()">删除</a>
                  <a  v-has="'standard:del'" @click.stop="event=>event.stopPropagation()">删除</a>
              </a-popconfirm>
          </template>
          <template v-if="record.standardStatus != 'WAIT_SUBMIT'">
            <a-divider type="vertical" v-if="record.standardStatus=='START'"/>
            <a-divider v-has="'standard:delete'" type="vertical" v-if="record.standardStatus=='START'"/>
          <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
            <a @click.stop="event=>event.stopPropagation()">删除</a>
            <a v-has="'standard:delete'" @click.stop="event=>event.stopPropagation()">删除</a>
          </a-popconfirm>
          </template>
        </span>
src/views/eam/base/modules/EamMaintenanceStandardModal.vue
@@ -1,5 +1,5 @@
<template>
  <j-modal :title="title" :width="1200" :visible="visible" :confirmLoading="confirmLoading" switchFullscreen
  <j-modal :title="title" :width="1200" :visible="visible" :confirmLoading="confirmLoading" switchFullscreen centered
           @ok="handleOk" @cancel="handleCancel" cancelText="关闭">
    <a-spin :spinning="spinning">
      <a-form-model ref="form" :model="model" :rules="validatorRules" :labelCol="labelCol" :wrapperCol="wrapperCol">
src/views/eam/maintenance/EamInspectionOrderList.vue
@@ -39,14 +39,14 @@
    <!-- 操作按钮区域 -->
    <div class="table-operator" v-if="isDisplayOperation">
      <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
      <a-button v-has="'eam:inspection:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
      <a-dropdown v-if="selectedRowKeys.length > 0">
        <a-menu slot="overlay">
          <a-menu-item key="1" @click="batchZf('ABOLISH')">
          <a-menu-item key="1" @click="batchZf('ABOLISH')" v-has="'eam:inspection:abolish'">
            <a-icon type="snippets"/>
            作废
          </a-menu-item>
          <a-menu-item key="2" @click="batchLq('UNDER_INSPECTION')">
          <a-menu-item key="2" @click="batchLq('UNDER_INSPECTION')" v-has="'eam:inspection:collect'">
            <a-icon type="form"/>
            领取
          </a-menu-item>
@@ -71,21 +71,21 @@
               @change="handleTableChange">
        <span slot="action" slot-scope="text, record">
          <template v-if=" record.inspectionStatus === 'WAIT_INSPECTION'">
            <a @click="handleEdit(record)">编辑</a>
            <a v-has="'eeam:inspection:edit'" @click="handleEdit(record)">编辑</a>
          <a-divider type="vertical"/>
          <a-divider v-has="'eeam:inspection:edit'" type="vertical"/>
          <a-popconfirm title="确定领取吗?" @confirm="() => handleInspection(record.id)">
          <a-popconfirm v-has="'eam:inspection:collect'" title="确定领取吗?" @confirm="() => handleInspection(record.id)">
            <a>领取</a>
          </a-popconfirm>
          <a-divider type="vertical"/>
          <a-divider v-has="'eam:inspection:collect'" type="vertical"/>
          <a-dropdown>
            <a class="ant-dropdown-link">更多 <a-icon type="down"/></a>
            <a-menu slot="overlay">
              <a-menu-item>
                <a-popconfirm title="确定作废吗?" @confirm="() => handleAbolish(record.id)">
                <a-popconfirm v-has="'eam:inspection:abolish'" title="确定作废吗?" @confirm="() => handleAbolish(record.id)">
                  <a>作废</a>
                </a-popconfirm>
              </a-menu-item>
src/views/eam/maintenance/EamSecondMaintenanceOrderList.vue
@@ -39,12 +39,53 @@
    <!-- 操作按钮区域 -->
    <div class="table-operator" v-if="isDisplayOperation">
      <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
      <a-dropdown v-if="selectedRowKeys.length > 0">
        <a-menu slot="overlay">
          <a-menu-item key="1" @click="handlerBatchAbolish">
            <a-icon type="delete" />
            作废
          </a-menu-item>
          <a-menu-item key="2" @click="handlerBatchCollect">
            <a-icon type="form" />
            领取
          </a-menu-item>
        </a-menu>
        <a-button style="margin-left: 8px"> 批量操作
          <a-icon type="down" />
        </a-button>
      </a-dropdown>
    </div>
    <!-- table区域-begin -->
    <div>
      <a-table size="middle" bordered rowKey="id" :columns="columns" :dataSource="dataSource" :pagination="ipagination"
               :loading="loading" :scroll="{ x: 'max-content' }" @change="handleTableChange">
      <div
        class="ant-alert ant-alert-info"
        style="margin-bottom: 16px;"
        v-if="isDisplayOperation"
      >
        <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
        <a
          style="margin-left: 24px"
          @click="onClearSelected"
        >清空</a>
      </div>
      <a-table
        ref="table"
        size="middle"
        bordered
        rowKey="id"
        :columns="columns"
        :dataSource="dataSource"
        :pagination="ipagination"
        :loading="loading"
        class="j-table-force-nowrap"
        :scroll="{x:'max-content'}"
        :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
        @change="handleTableChange"
      >
        <span slot="action" slot-scope="text, record">
          <template v-if="record.maintenanceStatus === 'WAIT_MAINTENANCE'">
            <a @click="handleEdit(record)">编辑</a>
@@ -58,6 +99,13 @@
            <a-divider type="vertical"/>
            <a @click="handleDetail(record)">详情</a>
            <a-divider type="vertical"/>
            <a-popconfirm title="确定作废吗?" @confirm="() => handlerAbolish(record.id)">
              <a>作废</a>
            </a-popconfirm>
          </template>
          <template v-else>
@@ -210,7 +258,9 @@
        url: {
          list: '/eam/secondMaintenanceOrder/list',
          abolish: '/eam/secondMaintenanceOrder/abolish',
          collect: '/eam/secondMaintenanceOrder/collect'
          collect: '/eam/secondMaintenanceOrder/collect',
          abolishBatch: '/eam/secondMaintenanceOrder/abolishBatch',
          collectBatch: '/eam/secondMaintenanceOrder/collectBatch'
        }
      }
    },
@@ -277,7 +327,129 @@
      handlePrint(record) {
        let href = `${window._CONFIG['domianURL']}/jmreport/view/1094834721929232384?id=` + record.id //网站链接
        window.open(href, '_blank')
      }
      },
      handlerAbolish(id) {
        if (!this.url.abolish) {
          this.$message.error('请设置url.abolish属性!')
          return
        }
        var that = this
        deleteAction(that.url.abolish, { id: id }).then((res) => {
          if (res.success) {
            //重新计算分页问题
            that.reCalculatePage(1)
            // that.$message.success(res.message);
            that.$notification.success({
              message: '消息',
              description: res.message
            })
            that.loadData()
          } else {
            // that.$message.warning(res.message);
            that.$notification.warning({
              message: '消息',
              description: res.message
            })
          }
        })
      },
      handlerBatchAbolish() {
        if (!this.url.abolishBatch) {
          this.$message.error('请设置url.abolishBatch属性!')
          return
        }
        if (this.selectedRowKeys.length <= 0) {
          // this.$message.warning('请选择一条记录!');
          this.$notification.warning({
            message: '消息',
            description: '请选择一条记录'
          })
          return
        } else {
          var ids = ''
          for (var a = 0; a < this.selectedRowKeys.length; a++) {
            ids += this.selectedRowKeys[a] + ','
          }
          var that = this
          this.$confirm({
            title: '确认作废',
            content: '是否作废选中数据,只有待保养状态的数据才可作废成功?',
            onOk: function () {
              that.loading = true
              deleteAction(that.url.abolishBatch, { ids: ids }).then((res) => {
                if (res.success) {
                  //重新计算分页问题
                  that.reCalculatePage(that.selectedRowKeys.length)
                  // that.$message.success(res.message);
                  that.$notification.success({
                    message: '消息',
                    description: res.message
                  })
                  that.loadData()
                  that.onClearSelected()
                } else {
                  // that.$message.warning(res.message);
                  that.$notification.warning({
                    message: '消息',
                    description: res.message
                  })
                }
              }).finally(() => {
                that.loading = false
              })
            }
          })
        }
      },
      //批量领取
      handlerBatchCollect() {
        if (!this.url.collectBatch) {
          this.$message.error('请设置url.abolishBatch属性!')
          return
        }
        if (this.selectedRowKeys.length <= 0) {
          // this.$message.warning('请选择一条记录!');
          this.$notification.warning({
            message: '消息',
            description: '请选择一条记录'
          })
          return
        } else {
          var ids = ''
          for (var a = 0; a < this.selectedRowKeys.length; a++) {
            ids += this.selectedRowKeys[a] + ','
          }
          var that = this
          this.$confirm({
            title: '确认领取',
            content: '是否领取选中数据,只有待保养状态的数据才可领取成功?',
            onOk: function () {
              that.loading = true
              deleteAction(that.url.collectBatch, { ids: ids }).then((res) => {
                if (res.success) {
                  //重新计算分页问题
                  that.reCalculatePage(that.selectedRowKeys.length)
                  // that.$message.success(res.message);
                  that.$notification.success({
                    message: '消息',
                    description: res.message
                  })
                  that.loadData()
                  that.onClearSelected()
                } else {
                  // that.$message.warning(res.message);
                  that.$notification.warning({
                    message: '消息',
                    description: res.message
                  })
                }
              }).finally(() => {
                that.loading = false
              })
            }
          })
        }
      },
    }
  }
</script>