whj 1 tahun lalu
induk
melakukan
94db0b89b6

+ 16 - 0
src/api/sqarepartmanage/sparepartused.js

@@ -159,6 +159,22 @@ export function exportSparePartUsed (parameter) {
     responseType: 'blob'
   })
 }
+/**
+ * export file
+ * parameter: { }
+ * @param parameter :
+ * @returns {*}
+ */
+export function exportSparePartUsed2 (parameter) {
+  return axios({
+    url: '/sqarepartmanage/spare-part-used/export2?' + stringify(parameter),
+    method: 'get',
+    headers: {
+      'Content-Type': 'application/json;charset=UTF-8'
+    },
+    responseType: 'blob'
+  })
+}
 
 /**
  * page func

+ 91 - 78
src/views/sqarepartmanage/sparepartused/modules/SparePartUsedSelectTable.vue

@@ -1,79 +1,80 @@
 <template>
-    <a-card :bordered="false">
-      <div class="table-page-search-wrapper">
-        <a-form layout="inline">
-          <a-row :gutter="48">
-            <a-col :md="8" :sm="24">
-              <a-form-item label="关键字">
-                <a-input v-model="queryParam.keyword" placeholder="请输入名称/类型名称"/>
-              </a-form-item>
-            </a-col>
-            <a-col :md="8 || 24" :sm="24">
-              <span class="table-page-search-submitButtons">
-                <a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
-                <a-button style="margin-left: 8px" @click="resetSearchForm">重置</a-button>
-              </span>
-            </a-col>
-          </a-row>
-        </a-form>
-      </div>
+  <a-card :bordered="false">
+    <div class="table-page-search-wrapper">
+      <a-form layout="inline">
+        <a-row :gutter="48">
+          <a-col :md="8" :sm="24">
+            <a-form-item label="关键字">
+              <a-input v-model="queryParam.keyword" placeholder="请输入名称/类型名称"/>
+            </a-form-item>
+          </a-col>
+          <a-col :md="8 || 24" :sm="24">
+            <span class="table-page-search-submitButtons">
+              <a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
+              <a-button style="margin-left: 8px" @click="resetSearchForm">重置</a-button>
+            </span>
+          </a-col>
+        </a-row>
+      </a-form>
+    </div>
 
-      <div class="table-operator" v-if="type == 2">
-        <a-button type="primary" icon="plus" @click="handleAdd()">新增</a-button>
-        <a-dropdown v-action:edit v-if="selectedRowKeys.length > 0">
-          <a-menu slot="overlay">
-            <a-popconfirm title="是否要删除所选数据?" @confirm="batchDelete()">
-              <a-menu-item key="1"><a-icon type="delete" /><a>删除</a></a-menu-item>
-            </a-popconfirm>
-          </a-menu>
-          <a-button style="margin-left: 8px">
-            批量操作 <a-icon type="down" />
-          </a-button>
-        </a-dropdown>
-      </div>
+    <div class="table-operator" v-if="type == 2">
+      <a-button type="primary" icon="plus" @click="handleAdd()">新增</a-button>
+      <a-button type="primary" style="margin-left: 8px" @click="handleExport()">导出</a-button>
+      <a-dropdown v-action:edit v-if="selectedRowKeys.length > 0">
+        <a-menu slot="overlay">
+          <a-popconfirm title="是否要删除所选数据?" @confirm="batchDelete()">
+            <a-menu-item key="1"><a-icon type="delete" /><a>删除</a></a-menu-item>
+          </a-popconfirm>
+        </a-menu>
+        <a-button style="margin-left: 8px">
+          批量操作 <a-icon type="down" />
+        </a-button>
+      </a-dropdown>
+    </div>
 
-      <s-table
-        ref="table"
-        size="default"
-        rowKey="id"
-        :columns="columns"
-        :data="loadData"
-        :alert="options.alert"
-        :customRow="options.customRow"
-        :rowSelection="options.rowSelection"
-        showPagination="auto"
-      >
-        <span slot="action" slot-scope="record1">
-          <template>
-            <a @click="handleView(record1)">查看</a>
-            <a-divider type="vertical" />
-            <a @click="handleEdit(record1)">修改</a>
-            <a-divider type="vertical" />
-            <a-popconfirm v-if="record1.status==1" @confirm="handleFeiqi(record1.id)">
-              <a>废弃</a>
-            </a-popconfirm>
-          </template>
-        </span>
-        <span slot="status" slot-scope="text">
-          <badge
-            :status="DictCache.COLOR.SPARE_PART_USED_STATUS[text]"
-            :text="statusMap[text]" />
-        </span>
-      </s-table>
-      <base-form ref="baseModal" @ok="handleOk"/>
-      <detail ref="detailModal"/>
-      <template slot="footer">
-        <a-button :loading="confirmLoading" type="primary" @click="handleCancel()">取消</a-button>
-        <a-button :loading="confirmLoading" type="primary" @click="handleSelect()">选择</a-button>
-      </template>
-    </a-card>
+    <s-table
+      ref="table"
+      size="default"
+      rowKey="id"
+      :columns="columns"
+      :data="loadData"
+      :alert="options.alert"
+      :customRow="options.customRow"
+      :rowSelection="options.rowSelection"
+      showPagination="auto"
+    >
+      <span slot="action" slot-scope="record1">
+        <template>
+          <a @click="handleView(record1)">查看</a>
+          <a-divider type="vertical" />
+          <a @click="handleEdit(record1)">修改</a>
+          <a-divider type="vertical" />
+          <a-popconfirm v-if="record1.status==1" @confirm="handleFeiqi(record1.id)">
+            <a>废弃</a>
+          </a-popconfirm>
+        </template>
+      </span>
+      <span slot="status" slot-scope="text">
+        <badge
+          :status="DictCache.COLOR.SPARE_PART_USED_STATUS[text]"
+          :text="statusMap[text]" />
+      </span>
+    </s-table>
+    <base-form ref="baseModal" @ok="handleOk"/>
+    <detail ref="detailModal"/>
+    <template slot="footer">
+      <a-button :loading="confirmLoading" type="primary" @click="handleCancel()">取消</a-button>
+      <a-button :loading="confirmLoading" type="primary" @click="handleSelect()">选择</a-button>
+    </template>
+  </a-card>
 </template>
 
 <script>
 import { STable, Ellipsis } from '@/components'
 import BaseForm from './BaseForm'
 import Detail from './Detail'
-import { getSparePartUsedPage, deleteSparePartUseds, updateSparePartUsed, fetchSparePartUsed, exportSparePartUsed } from '@/api/sqarepartmanage/sparepartused'
+import { getSparePartUsedPage, deleteSparePartUseds, updateSparePartUsed, fetchSparePartUsed, exportSparePartUsed2 } from '@/api/sqarepartmanage/sparepartused'
 
 export default {
   name: 'SparePartUsedSelectTable',
@@ -133,13 +134,13 @@ export default {
             return record.sbName
           }
         },
-        //{
-         // title: '部件名称',
-          //dataIndex: 'partId',
-          //customRender: (text, record, index) => {
-          //  return record.partName
-         // }
-        //},
+        // {
+        // title: '部件名称',
+        // dataIndex: 'partId',
+        // customRender: (text, record, index) => {
+        //  return record.partName
+        // }
+        // },
         {
           title: '备件名称',
           dataIndex: 'spareId',
@@ -262,11 +263,11 @@ export default {
     handleEdit (record) {
       fetchSparePartUsed({ id: record.id }).then(res => {
         const modal = this.$refs.baseModal
-        modal.base(res.data,{sbId:record.id, modelId: record.modelId})
+        modal.base(res.data, { sbId: record.id, modelId: record.modelId })
       })
     },
     handleFeiqi (id) {
-      updateSparePartUsed({ id: id, status: 2}).then(res => {
+      updateSparePartUsed({ id: id, status: 2 }).then(res => {
         this.$message.info('废弃成功')
         this.handleOk()
         this.$refs.table.clearSelected()
@@ -298,8 +299,8 @@ export default {
         this.isCreated = true
       }
     },
-    handleAdd(){
-      this.$refs.baseModal.base(null,{sbId:this.tableParams.id, modelId:this.tableParams.modelId, repairId:this.tableParams.repairId})
+    handleAdd () {
+      this.$refs.baseModal.base(null, { sbId: this.tableParams.id, modelId: this.tableParams.modelId, repairId: this.tableParams.repairId })
     },
     handleCancel () {
       this.visible = false
@@ -318,6 +319,18 @@ export default {
     mySelect (selectedRowKeys, selectedRows) {
       this.$refs.table.updateSelect(selectedRowKeys, selectedRows)
       this.$refs.table.rowSelection.onChange(selectedRowKeys, selectedRows)
+    },
+    handleExport () {
+      const params = {
+        ...this.tableParams,
+        dataScope: {
+          sortBy: 'desc',
+          sortName: 'update_time'
+        }
+      }
+      exportSparePartUsed2(params).then(file => {
+        this.BaseTool.Util.downLoadExportExcel(file)
+      })
     }
   }
 }