From 35a82aad33a6e3f707d4d86d2a600644fd426413 Mon Sep 17 00:00:00 2001
From: qushaowei <qushaowei@163.com>
Date: 星期三, 28 五月 2025 14:55:04 +0800
Subject: [PATCH] 备件请购

---
 /dev/null                                           |  124 ------
 src/views/eam/spare/EamSparePartRequisitionList.vue |  932 ++++++++++++++++++++++++++++++---------------------
 2 files changed, 544 insertions(+), 512 deletions(-)

diff --git a/src/views/eam/spare/EamSparePartRequisitionList.vue b/src/views/eam/spare/EamSparePartRequisitionList.vue
index cdeeee5..6f72a2d 100644
--- a/src/views/eam/spare/EamSparePartRequisitionList.vue
+++ b/src/views/eam/spare/EamSparePartRequisitionList.vue
@@ -1,38 +1,91 @@
 <template>
   <a-row :gutter="10">
-    <a-col :md="leftColMd" :sm="24" style="margin-bottom: 20px">
+    <a-col
+      :md="leftColMd"
+      :sm="24"
+      style="margin-bottom: 20px"
+    >
       <a-card :bordered="false">
         <!-- 鏌ヨ鍖哄煙 -->
         <div class="table-page-search-wrapper">
           <!-- 鎼滅储鍖哄煙 -->
-          <a-form layout="inline" @keyup.enter.native="searchQuery">
+          <a-form
+            layout="inline"
+            @keyup.enter.native="searchQuery"
+          >
             <a-row :gutter="24">
-              <a-col :md="12" :sm="8">
+              <a-col
+                :md="12"
+                :sm="8"
+              >
                 <a-form-item label="璇疯喘鍗曞彿">
-                  <j-input placeholder="璇疯緭鍏ヨ璐崟鍙�" v-model="queryParam.requisitionCode"></j-input>
+                  <j-input
+                    placeholder="璇疯緭鍏ヨ璐崟鍙�"
+                    v-model="queryParam.requisitionCode"
+                  ></j-input>
                 </a-form-item>
               </a-col>
               <template v-if="toggleSearchStatus">
-                <a-col :xl="6" :lg="7" :md="8" :sm="24">
+                <a-col
+                  :xl="6"
+                  :lg="7"
+                  :md="8"
+                  :sm="24"
+                >
                   <a-form-item label="鐢宠浜�">
-                    <a-input placeholder="璇疯緭鍏ョ敵璇蜂汉" v-model="queryParam.reportUser"></a-input>
+                    <a-input
+                      placeholder="璇疯緭鍏ョ敵璇蜂汉"
+                      v-model="queryParam.reportUser"
+                    ></a-input>
                   </a-form-item>
                 </a-col>
-                <a-col :xl="6" :lg="7" :md="8" :sm="24">
+                <a-col
+                  :xl="6"
+                  :lg="7"
+                  :md="8"
+                  :sm="24"
+                >
                   <a-form-item label="璇疯喘鐘舵��">
-                    <a-input placeholder="璇疯緭鍏ヨ璐姸鎬�" v-model="queryParam.requisitionStatus"></a-input>
+                    <a-input
+                      placeholder="璇疯緭鍏ヨ璐姸鎬�"
+                      v-model="queryParam.requisitionStatus"
+                    ></a-input>
                   </a-form-item>
                 </a-col>
-                <a-col :xl="6" :lg="7" :md="8" :sm="24">
+                <a-col
+                  :xl="6"
+                  :lg="7"
+                  :md="8"
+                  :sm="24"
+                >
                   <a-form-item label="瀹℃牳浜�">
-                    <a-input placeholder="璇疯緭鍏ュ鏍镐汉" v-model="queryParam.approvalUser"></a-input>
+                    <a-input
+                      placeholder="璇疯緭鍏ュ鏍镐汉"
+                      v-model="queryParam.approvalUser"
+                    ></a-input>
                   </a-form-item>
                 </a-col>
               </template>
-              <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
-                <a-col :md="12" :sm="24">
-                  <a-button type="primary" @click="searchQuery" icon="search" style="margin-left: 21px">鏌ヨ</a-button>
-                  <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button>
+              <span
+                style="float: left;overflow: hidden;"
+                class="table-page-search-submitButtons"
+              >
+                <a-col
+                  :md="12"
+                  :sm="24"
+                >
+                  <a-button
+                    type="primary"
+                    @click="searchQuery"
+                    icon="search"
+                    style="margin-left: 21px"
+                  >鏌ヨ</a-button>
+                  <a-button
+                    type="primary"
+                    @click="searchReset"
+                    icon="reload"
+                    style="margin-left: 8px"
+                  >閲嶇疆</a-button>
                 </a-col>
               </span>
             </a-row>
@@ -41,18 +94,42 @@
 
         <!-- 鎿嶄綔鎸夐挳鍖哄煙 -->
         <div class="table-operator">
-          <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button>
-          <a-button type="primary" icon="download" @click="handleExportXls('澶囦欢璇疯喘鍗�')">瀵煎嚭</a-button>
-          <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
-            <a-button type="primary" icon="import">瀵煎叆</a-button>
+          <a-button
+            @click="handleAdd"
+            type="primary"
+            icon="plus"
+          >鏂板</a-button>
+          <a-button
+            type="primary"
+            icon="download"
+            @click="handleExportXls('澶囦欢璇疯喘鍗�')"
+          >瀵煎嚭</a-button>
+          <a-upload
+            name="file"
+            :showUploadList="false"
+            :multiple="false"
+            :headers="tokenHeader"
+            :action="importExcelUrl"
+            @change="handleImportExcel"
+          >
+            <a-button
+              type="primary"
+              icon="import"
+            >瀵煎叆</a-button>
           </a-upload>
         </div>
 
         <!-- table鍖哄煙-begin -->
-        <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
+        <div
+          class="ant-alert ant-alert-info"
+          style="margin-bottom: 16px;"
+        >
           <i class="anticon anticon-info-circle ant-alert-icon">
           </i> 宸查�夋嫨 <a><b>{{ selectedRowKeys1.length }}</b></a>椤�
-          <a style="margin-left: 24px" @click="onClearSelected1">娓呯┖</a>
+          <a
+            style="margin-left: 24px"
+            @click="onClearSelected1"
+          >娓呯┖</a>
         </div>
         <div style="margin-top: 15px">
           <a-table
@@ -67,55 +144,96 @@
             :loading="loading"
             :customRow="customRow"
             :rowSelection="{selectedRowKeys: selectedRowKeys1, onChange: onSelectChange1, type:'radio'}"
-            @change="handleTableChange">
+            @change="handleTableChange"
+          >
 
-          <span slot="action" slot-scope="text, record">
-            <a @click="handleOpen(record)">鏄庣粏</a>
-            <a-divider v-if="record.requisitionStatus !== '3' && record.requisitionStatus !== '5'" type="vertical" />
-            <a-dropdown v-if="record.requisitionStatus === '1' || record.requisitionStatus === '4'">
-              <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a>
-              <a-menu slot="overlay">
-                <a-menu-item>
-                  <a @click="handleConfirm(record)">鎻愪氦</a>
-                </a-menu-item>
-                <a-menu-item>
-                  <a @click="handleEdit(record)">缂栬緫</a>
-                </a-menu-item>
-                <a-menu-item>
-                  <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)">
-                    <a>鍒犻櫎</a>
-                  </a-popconfirm>
-                </a-menu-item>
-              </a-menu>
-            </a-dropdown>
-            <a v-if="record.requisitionStatus === '2'" @click="handleExamine(record)">瀹℃牳</a>
-          </span>
+            <span
+              slot="action"
+              slot-scope="text, record"
+            >
+              <a @click="handleOpen(record)">鏄庣粏</a>
+              <a-divider
+                v-if="record.requisitionStatus !== '3' && record.requisitionStatus !== '5'"
+                type="vertical"
+              />
+              <a-dropdown v-if="record.requisitionStatus === '1' || record.requisitionStatus === '4'">
+                <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a>
+                <a-menu slot="overlay">
+                  <a-menu-item>
+                    <a @click="handleConfirm(record)">鎻愪氦</a>
+                  </a-menu-item>
+                  <a-menu-item>
+                    <a @click="handleEdit(record)">缂栬緫</a>
+                  </a-menu-item>
+                  <a-menu-item>
+                    <a-popconfirm
+                      title="纭畾鍒犻櫎鍚�?"
+                      @confirm="() => handleDelete(record.id)"
+                    >
+                      <a>鍒犻櫎</a>
+                    </a-popconfirm>
+                  </a-menu-item>
+                </a-menu>
+              </a-dropdown>
+              <a
+                v-if="record.requisitionStatus === '2'"
+                @click="handleExamine(record)"
+              >瀹℃牳</a>
+            </span>
 
           </a-table>
         </div>
         <!-- table鍖哄煙-end -->
 
         <!-- 琛ㄥ崟鍖哄煙 -->
-        <eamSparePartRequisition-modal ref="modalForm" @ok="modalFormOk"></eamSparePartRequisition-modal>
+        <eamSparePartRequisition-modal
+          ref="modalForm"
+          @ok="modalFormOk"
+        ></eamSparePartRequisition-modal>
 
-        <eamSparePartRequisitionExamine-modal ref="modalExamine" @ok="modalFormOk2"></eamSparePartRequisitionExamine-modal>
+        <eamSparePartRequisitionExamine-modal
+          ref="modalExamine"
+          @ok="modalFormOk2"
+        ></eamSparePartRequisitionExamine-modal>
 
       </a-card>
     </a-col>
-    <a-col :md="rightColMd" :sm="24" v-if="this.rightColVal === 1">
+    <a-col
+      :md="rightColMd"
+      :sm="24"
+      v-if="this.rightColVal === 1"
+    >
       <a-card :bordered="false">
         <div style="text-align: right;">
-          <a-icon type="close-circle" @click="hideSpareDetailList" />
+          <a-icon
+            type="close-circle"
+            @click="hideSpareDetailList"
+          />
         </div>
         <!-- 鏌ヨ鍖哄煙 -->
         <div class="table-page-search-wrapper">
           <a-form layout="inline">
             <a-row :gutter="24">
-              <a-col :md="9" :sm="24">
-              <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
-                <a-button type="primary" @click="searchQuery2" icon="search">鏌ヨ</a-button>
-                <a-button type="primary" @click="searchReset2" icon="reload" style="margin-left: 8px">閲嶇疆</a-button>
-              </span>
+              <a-col
+                :md="9"
+                :sm="24"
+              >
+                <span
+                  style="float: left;overflow: hidden;"
+                  class="table-page-search-submitButtons"
+                >
+                  <a-button
+                    type="primary"
+                    @click="searchQuery2"
+                    icon="search"
+                  >鏌ヨ</a-button>
+                  <a-button
+                    type="primary"
+                    @click="searchReset2"
+                    icon="reload"
+                    style="margin-left: 8px"
+                  >閲嶇疆</a-button>
+                </span>
               </a-col>
 
             </a-row>
@@ -123,30 +241,61 @@
         </div>
 
         <!-- 鎿嶄綔鎸夐挳鍖哄煙 -->
-        <div class="table-operator" :md="24" :sm="24">
-          <a-button @click="handleAdd2" type="primary" icon="plus">鏂板</a-button>
-          <a-button type="primary" icon="download" @click="handleExportXls('澶囦欢娓呰喘鍗曟槑缁�')">瀵煎嚭</a-button>
-          <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
-            <a-button type="primary" icon="import">瀵煎叆</a-button>
+        <div
+          class="table-operator"
+          :md="24"
+          :sm="24"
+        >
+          <a-button
+            @click="handleAdd2"
+            type="primary"
+            icon="plus"
+          >鏂板</a-button>
+          <a-button
+            type="primary"
+            icon="download"
+            @click="handleExportXls('澶囦欢娓呰喘鍗曟槑缁�')"
+          >瀵煎嚭</a-button>
+          <a-upload
+            name="file"
+            :showUploadList="false"
+            :multiple="false"
+            :headers="tokenHeader"
+            :action="importExcelUrl"
+            @change="handleImportExcel"
+          >
+            <a-button
+              type="primary"
+              icon="import"
+            >瀵煎叆</a-button>
           </a-upload>
           <a-dropdown v-if="selectedRowKeys2.length > 0">
             <a-menu slot="overlay">
-              <a-menu-item key="1" @click="batchDel2">
-                <a-icon type="delete"/>
+              <a-menu-item
+                key="1"
+                @click="batchDel2"
+              >
+                <a-icon type="delete" />
                 鎵归噺鍒犻櫎
               </a-menu-item>
             </a-menu>
             <a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔
-              <a-icon type="down"/>
+              <a-icon type="down" />
             </a-button>
           </a-dropdown>
         </div>
 
         <!-- table鍖哄煙-begin -->
         <div>
-          <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
+          <div
+            class="ant-alert ant-alert-info"
+            style="margin-bottom: 16px;"
+          >
             <i class="anticon anticon-info-circle ant-alert-icon"></i> 宸查�夋嫨 <a style="font-weight: 600">{{ selectedRowKeys2.length }}</a>椤�
-            <a style="margin-left: 24px" @click="onClearSelected2">娓呯┖</a>
+            <a
+              style="margin-left: 24px"
+              @click="onClearSelected2"
+            >娓呯┖</a>
           </div>
 
           <a-table
@@ -161,23 +310,30 @@
             :loading="loading2"
             class="j-table-force-nowrap"
             :rowSelection="{selectedRowKeys: selectedRowKeys2, onChange: onSelectChange2}"
-            @change="handleTableChange2">
+            @change="handleTableChange2"
+          >
 
-          <span slot="action" slot-scope="text, record">
-            <a-dropdown>
-              <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a>
-              <a-menu slot="overlay">
-                <a-menu-item>
-                  <a-popconfirm @click="handleEdit2(record)">
-                    <a>缂栬緫</a>
-                  </a-popconfirm>
-                  <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete2(record.id)">
-                    <a>鍒犻櫎</a>
-                  </a-popconfirm>
-                </a-menu-item>
-              </a-menu>
-            </a-dropdown>
-          </span>
+            <span
+              slot="action"
+              slot-scope="text, record"
+            >
+              <a-dropdown>
+                <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a>
+                <a-menu slot="overlay">
+                  <a-menu-item>
+                    <a-popconfirm @click="handleEdit2(record)">
+                      <a>缂栬緫</a>
+                    </a-popconfirm>
+                    <a-popconfirm
+                      title="纭畾鍒犻櫎鍚�?"
+                      @confirm="() => handleDelete2(record.id)"
+                    >
+                      <a>鍒犻櫎</a>
+                    </a-popconfirm>
+                  </a-menu-item>
+                </a-menu>
+              </a-dropdown>
+            </span>
 
           </a-table>
         </div>
@@ -189,148 +345,148 @@
 </template>
 
 <script>
-  import '@assets/less/TableExpand.less'
-  import EamSparePartRequisitionModal from './modules/EamSparePartRequisitionModal.vue'
-  import EamSparePartRequisitionExamineModal from './modules/EamSparePartRequisitionExamineModal.vue'
-  import { JeecgListMixin } from '@/mixins/JeecgListMixin'
-  import { deleteAction, getAction, postAction } from '@api/manage'
-  import { filterObj } from '@/utils/util'
+import '@assets/less/TableExpand.less'
+import EamSparePartRequisitionModal from './modules/EamSparePartRequisition/EamSparePartRequisitionModal.vue'
+import EamSparePartRequisitionExamineModal from './modules/EamSparePartRequisition/EamSparePartRequisitionExamineModal.vue'
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import { deleteAction, getAction, postAction } from '@api/manage'
+import { filterObj } from '@/utils/util'
 
-  export default {
-    name: "EamSparePartRequisitionList",
-    mixins:[JeecgListMixin],
-    components: {
-      EamSparePartRequisitionModal,
-      EamSparePartRequisitionExamineModal
-    },
-    data () {
-      return {
-        description: '澶囦欢璇疯喘鍗曠鐞嗛〉闈�',
-        model1: {},
-        model2: {},
-        queryParam1: {},
-        queryParam2: {},
-        dataSource: [],
-        dataSource2: [],
-        spareRequisitionId: '',
-        iPagination: {
-          current: 1,
-          pageSize: 10,
-          pageSizeOptions: ['10', '20', '30'],
-          showTotal: (total, range) => {
-            return range[0] + '-' + range[1] + ' 鍏�' + total + '鏉�'
-          },
-          showQuickJumper: true,
-          showSizeChanger: true,
-          total: 0,
+export default {
+  name: "EamSparePartRequisitionList",
+  mixins: [JeecgListMixin],
+  components: {
+    EamSparePartRequisitionModal,
+    EamSparePartRequisitionExamineModal
+  },
+  data() {
+    return {
+      description: '澶囦欢璇疯喘鍗曠鐞嗛〉闈�',
+      model1: {},
+      model2: {},
+      queryParam1: {},
+      queryParam2: {},
+      dataSource: [],
+      dataSource2: [],
+      spareRequisitionId: '',
+      iPagination: {
+        current: 1,
+        pageSize: 10,
+        pageSizeOptions: ['10', '20', '30'],
+        showTotal: (total, range) => {
+          return range[0] + '-' + range[1] + ' 鍏�' + total + '鏉�'
         },
-        iPagination2: {
-          current: 1,
-          pageSize: 10,
-          pageSizeOptions: ['10', '20', '30'],
-          showTotal: (total, range) => {
-            return range[0] + '-' + range[1] + ' 鍏�' + total + '鏉�'
-          },
-          showQuickJumper: true,
-          showSizeChanger: true,
-          total: 0,
+        showQuickJumper: true,
+        showSizeChanger: true,
+        total: 0,
+      },
+      iPagination2: {
+        current: 1,
+        pageSize: 10,
+        pageSizeOptions: ['10', '20', '30'],
+        showTotal: (total, range) => {
+          return range[0] + '-' + range[1] + ' 鍏�' + total + '鏉�'
         },
-        iSorter1: {
-          column: 'createTime',
-          order: 'desc',
+        showQuickJumper: true,
+        showSizeChanger: true,
+        total: 0,
+      },
+      iSorter1: {
+        column: 'createTime',
+        order: 'desc',
+      },
+      iSorter2: {
+        column: 'createTime',
+        order: 'desc',
+      },
+      filters1: {},
+      filters2: {},
+      loading: false,
+      loading2: false,
+      selectedRowKeys1: [],
+      selectedRowKeys2: [],
+      selectionRows1: [],
+      selectionRows2: [],
+      rightColVal: 0,
+      // 楂樼骇鏌ヨ鍙傛暟
+      superQueryParams2: '',
+      // 楂樼骇鏌ヨ鎷兼帴鏉′欢
+      superQueryMatchType2: 'and',
+      // 琛ㄥご
+      columns: [
+        {
+          title: '璇疯喘鍗曞彿',
+          align: "center",
+          dataIndex: 'requisitionCode'
         },
-        iSorter2: {
-          column: 'createTime',
-          order: 'desc',
+        {
+          title: '鐘舵��',
+          align: "center",
+          dataIndex: 'requisitionStatus_dictText'
         },
-        filters1: {},
-        filters2: {},
-        loading: false,
-        loading2: false,
-        selectedRowKeys1: [],
-        selectedRowKeys2: [],
-        selectionRows1: [],
-        selectionRows2: [],
-        rightColVal: 0,
-        // 楂樼骇鏌ヨ鍙傛暟
-        superQueryParams2: '',
-        // 楂樼骇鏌ヨ鎷兼帴鏉′欢
-        superQueryMatchType2: 'and',
-        // 琛ㄥご
-        columns: [
-		   {
-            title: '璇疯喘鍗曞彿',
-            align:"center",
-            dataIndex: 'requisitionCode'
-           },
-          {
-            title: '鐘舵��',
-            align:"center",
-            dataIndex: 'requisitionStatus_dictText'
-          },
-		   {
-            title: '璇疯喘浜�',
-            align:"center",
-            dataIndex: 'reportUser'
-           },
-          {
-            title: '璇疯喘鏃堕棿',
-            align:"center",
-            dataIndex: 'createTime'
-          },
-		   {
-            title: '瀹℃牳浜�',
-            align:"center",
-            dataIndex: 'approvalUser'
-           },
-		   {
-            title: '瀹℃牳鏃堕棿',
-            align:"center",
-            dataIndex: 'approvalTime'
-           },
-          {
-            title: '鎿嶄綔',
-            dataIndex: 'action',
-            align:"center",
-            scopedSlots: { customRender: 'action' },
-          }
-        ],
-        // 瀛愯〃琛ㄥご
-        columns2: [
-          {
-            title: '澶囧搧澶囦欢ID',
-            align:"center",
-            dataIndex: 'partId'
-          },
-          {
-            title: '璇疯喘鏁伴噺',
-            align:"center",
-            dataIndex: 'requisitionNum'
-          },
-          {
-            title: '鎿嶄綔',
-            dataIndex: 'action',
-            align:"center",
-            scopedSlots: { customRender: 'action' },
-          }
-        ],
-		url: {
-          list: "/eam/eamSparePartRequisition/list",
-          list2: "/eam/eamSparePartRequisitionDetail/list",
-          delete: "/eam/eamSparePartRequisition/delete",
-          delete2: "/eam/eamSparePartRequisitionDetail/delete",
-          deleteBatch: "/eam/eamSparePartRequisition/deleteBatch",
-          deleteBatch2: "/eam/eamSparePartRequisitionDetail/deleteBatch",
-          exportXlsUrl: "eam/eamSparePartRequisition/exportXls",
-          exportXlsUrl2: "eam/eamSparePartRequisitionDetail/exportXls",
-          importExcelUrl: "eam/eamSparePartRequisition/importExcel",
-          importExcelUrl2: "eam/eamSparePartRequisitionDetail/importExcel",
-          submit: "eam/eamSparePartRequisition/submitSpareRequisition"
-       },
+        {
+          title: '璇疯喘浜�',
+          align: "center",
+          dataIndex: 'reportUser'
+        },
+        {
+          title: '璇疯喘鏃堕棿',
+          align: "center",
+          dataIndex: 'createTime'
+        },
+        {
+          title: '瀹℃牳浜�',
+          align: "center",
+          dataIndex: 'approvalUser'
+        },
+        {
+          title: '瀹℃牳鏃堕棿',
+          align: "center",
+          dataIndex: 'approvalTime'
+        },
+        {
+          title: '鎿嶄綔',
+          dataIndex: 'action',
+          align: "center",
+          scopedSlots: { customRender: 'action' },
+        }
+      ],
+      // 瀛愯〃琛ㄥご
+      columns2: [
+        {
+          title: '澶囧搧澶囦欢ID',
+          align: "center",
+          dataIndex: 'partId'
+        },
+        {
+          title: '璇疯喘鏁伴噺',
+          align: "center",
+          dataIndex: 'requisitionNum'
+        },
+        {
+          title: '鎿嶄綔',
+          dataIndex: 'action',
+          align: "center",
+          scopedSlots: { customRender: 'action' },
+        }
+      ],
+      url: {
+        list: "/eam/eamSparePartRequisition/list",
+        list2: "/eam/eamSparePartRequisitionDetail/list",
+        delete: "/eam/eamSparePartRequisition/delete",
+        delete2: "/eam/eamSparePartRequisitionDetail/delete",
+        deleteBatch: "/eam/eamSparePartRequisition/deleteBatch",
+        deleteBatch2: "/eam/eamSparePartRequisitionDetail/deleteBatch",
+        exportXlsUrl: "eam/eamSparePartRequisition/exportXls",
+        exportXlsUrl2: "eam/eamSparePartRequisitionDetail/exportXls",
+        importExcelUrl: "eam/eamSparePartRequisition/importExcel",
+        importExcelUrl2: "eam/eamSparePartRequisitionDetail/importExcel",
+        submit: "eam/eamSparePartRequisition/submitSpareRequisition"
+      },
     }
   },
   computed: {
-    importExcelUrl: function(){
+    importExcelUrl: function () {
       return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
     },
     leftColMd() {
@@ -340,203 +496,203 @@
       return this.selectedRowKeys1.length === 0 ? 0 : 12
     }
   },
-    methods: {
-      customRow(record) {
-        return {
-          on: {
-            dblclick:() => {
-              this.handleOpen(record)
-            }
+  methods: {
+    customRow(record) {
+      return {
+        on: {
+          dblclick: () => {
+            this.handleOpen(record)
           }
         }
-      },
-      onSelectChange1(selectedRowKeys, selectionRows) {
-        this.rightColVal = 1
-        this.selectedRowKeys1 = selectedRowKeys
-        this.selectionRows1 = selectionRows
-        this.model1 = Object.assign({}, selectionRows[0])
-        this.spareRequisitionId = selectedRowKeys[0]
-        this.loadData2()
-      },
-      onSelectChange2(selectedRowKeys, selectionRows) {
-        this.selectedRowKeys2 = selectedRowKeys
-        this.selectionRows2 = selectionRows
-      },
-      /**
-       * 鐐瑰嚮褰撳墠琛岃溅闂撮�夐」鍚庤Е鍙戜簨浠�
-       * @param record 褰撳墠琛屾暟鎹�
-       */
-      handleOpen: function (record) {
-        this.rightColVal = 1
-        this.selectedRowKeys1 = [record.id]
-        this.model1 = Object.assign({}, record)
-        this.spareRequisitionId = record.id
-        this.onClearSelected2()
-        this.loadData2()
-      },
-      searchQuery2: function () {
-        this.loadData2(1)
-      },
-      searchReset2: function () {
-        this.queryParam2 = {}
-        this.loadData2(1)
-      },
-      handleTableChange2: function (pagination, filters, sorter) {
-        //鍒嗛〉銆佹帓搴忋�佺瓫閫夊彉鍖栨椂瑙﹀彂
-        if (Object.keys(sorter).length > 0) {
-          this.iSorter2.column = sorter.field
-          this.iSorter2.order = 'ascend' == sorter.order ? 'asc' : 'desc'
+      }
+    },
+    onSelectChange1(selectedRowKeys, selectionRows) {
+      this.rightColVal = 1
+      this.selectedRowKeys1 = selectedRowKeys
+      this.selectionRows1 = selectionRows
+      this.model1 = Object.assign({}, selectionRows[0])
+      this.spareRequisitionId = selectedRowKeys[0]
+      this.loadData2()
+    },
+    onSelectChange2(selectedRowKeys, selectionRows) {
+      this.selectedRowKeys2 = selectedRowKeys
+      this.selectionRows2 = selectionRows
+    },
+    /**
+     * 鐐瑰嚮褰撳墠琛岃溅闂撮�夐」鍚庤Е鍙戜簨浠�
+     * @param record 褰撳墠琛屾暟鎹�
+     */
+    handleOpen: function (record) {
+      this.rightColVal = 1
+      this.selectedRowKeys1 = [record.id]
+      this.model1 = Object.assign({}, record)
+      this.spareRequisitionId = record.id
+      this.onClearSelected2()
+      this.loadData2()
+    },
+    searchQuery2: function () {
+      this.loadData2(1)
+    },
+    searchReset2: function () {
+      this.queryParam2 = {}
+      this.loadData2(1)
+    },
+    handleTableChange2: function (pagination, filters, sorter) {
+      //鍒嗛〉銆佹帓搴忋�佺瓫閫夊彉鍖栨椂瑙﹀彂
+      if (Object.keys(sorter).length > 0) {
+        this.iSorter2.column = sorter.field
+        this.iSorter2.order = 'ascend' == sorter.order ? 'asc' : 'desc'
+      }
+      this.iPagination2 = pagination
+      this.loadData2()
+    },
+    onClearSelected2: function () {
+      this.selectedRowKeys2 = []
+      this.selectionRows2 = []
+    },
+    loadData2: function (arg) {
+      if (!this.url.list2) {
+        this.$message.error('璇疯缃畊rl.list2灞炴��!')
+        return
+      }
+      //鍔犺浇鏁版嵁 鑻ヤ紶鍏ュ弬鏁�1鍒欏姞杞界涓�椤电殑鍐呭
+      if (arg === 1) {
+        this.iPagination2.current = 1
+      }
+      if (this.currentWorkshopId === '') return
+      let params = this.getQueryParams2() //鏌ヨ鏉′欢
+      params.spareRequisitionId = this.spareRequisitionId
+      this.loading2 = true
+      getAction(this.url.list2, params).then((res) => {
+        if (res.success) {
+          this.dataSource2 = res.result.records
+          this.iPagination2.total = res.result.total
+        } else {
+          this.dataSource2 = []
         }
-        this.iPagination2 = pagination
-        this.loadData2()
-      },
-      onClearSelected2: function () {
-        this.selectedRowKeys2 = []
-        this.selectionRows2 = []
-      },
-      loadData2: function (arg) {
-        if (!this.url.list2) {
-          this.$message.error('璇疯缃畊rl.list2灞炴��!')
-          return
-        }
-        //鍔犺浇鏁版嵁 鑻ヤ紶鍏ュ弬鏁�1鍒欏姞杞界涓�椤电殑鍐呭
-        if (arg === 1) {
-          this.iPagination2.current = 1
-        }
-        if (this.currentWorkshopId === '') return
-        let params = this.getQueryParams2() //鏌ヨ鏉′欢
-        params.spareRequisitionId = this.spareRequisitionId
-        this.loading2 = true
-        getAction(this.url.list2, params).then((res) => {
-          if (res.success) {
-            this.dataSource2 = res.result.records
-            this.iPagination2.total = res.result.total
-          }else{
-            this.dataSource2=[]
-          }
-          this.loading2 = false
-        })
-      },
-      getQueryParams2() {
-        //鑾峰彇鏌ヨ鏉′欢
-        let sqp = {}
-        if (this.superQueryParams2) {
-          sqp['superQueryParams'] = encodeURI(this.superQueryParams2)
-          sqp['superQueryMatchType'] = this.superQueryMatchType2
-        }
-        var param = Object.assign(sqp, this.queryParam2, this.iSorter2, this.filters2)
-        param.field = this.getQueryField2()
-        param.pageNo = this.iPagination2.current
-        param.pageSize = this.iPagination2.pageSize
-        return filterObj(param)
-      },
-      getQueryField2() {
-        var str = 'id,'
-        this.columns2.forEach(function(value) {
-          str += ',' + value.dataIndex
-        })
-        return str
-      },
-      hideSpareDetailList: function () {
-        this.selectedRowKeys1 = []
-      },
-      handleEdit2: function(record) {
-        this.$refs.modalForm2.title = '缂栬緫'
+        this.loading2 = false
+      })
+    },
+    getQueryParams2() {
+      //鑾峰彇鏌ヨ鏉′欢
+      let sqp = {}
+      if (this.superQueryParams2) {
+        sqp['superQueryParams'] = encodeURI(this.superQueryParams2)
+        sqp['superQueryMatchType'] = this.superQueryMatchType2
+      }
+      var param = Object.assign(sqp, this.queryParam2, this.iSorter2, this.filters2)
+      param.field = this.getQueryField2()
+      param.pageNo = this.iPagination2.current
+      param.pageSize = this.iPagination2.pageSize
+      return filterObj(param)
+    },
+    getQueryField2() {
+      var str = 'id,'
+      this.columns2.forEach(function (value) {
+        str += ',' + value.dataIndex
+      })
+      return str
+    },
+    hideSpareDetailList: function () {
+      this.selectedRowKeys1 = []
+    },
+    handleEdit2: function (record) {
+      this.$refs.modalForm2.title = '缂栬緫'
+      // this.$refs.modalForm2.roleDisabled = true
+      this.$refs.modalForm2.edit(record)
+    },
+    handleAdd2: function () {
+      if (this.spareRequisitionId === '') {
+        this.$message.error('璇烽�夋嫨涓�涓璐崟!')
+      } else {
         // this.$refs.modalForm2.roleDisabled = true
-        this.$refs.modalForm2.edit(record)
-      },
-      handleAdd2: function () {
-        if (this.spareRequisitionId === '') {
-          this.$message.error('璇烽�夋嫨涓�涓璐崟!')
+        this.$refs.modalForm2.title = '鏂板'
+        this.$refs.modalForm2.edit({ selectedSpareRequisitions: this.spareRequisitionId })
+      }
+    },
+    handleDelete2: function (id) {
+      if (!this.url.delete2) {
+        this.$message.error('璇疯缃畊rl.delete2灞炴��!')
+        return
+      }
+      var that = this
+      deleteAction(that.url.delete2, { spareRequisitionId: this.spareRequisitionId, spareRequisitionDetailId: id }).then((res) => {
+        if (res.success) {
+          that.$message.success(res.message)
+          that.loadData2()
         } else {
-          // this.$refs.modalForm2.roleDisabled = true
-          this.$refs.modalForm2.title = '鏂板'
-          this.$refs.modalForm2.edit({selectedSpareRequisitions:this.spareRequisitionId})
+          that.$message.warning(res.message)
         }
-      },
-      handleDelete2: function (id) {
-        if (!this.url.delete2) {
-          this.$message.error('璇疯缃畊rl.delete2灞炴��!')
-          return
-        }
-        var that = this
-        deleteAction(that.url.delete2, { spareRequisitionId: this.spareRequisitionId, spareRequisitionDetailId: id }).then((res) => {
-          if (res.success) {
-            that.$message.success(res.message)
-            that.loadData2()
-          } else {
-            that.$message.warning(res.message)
-          }
-        })
-      },
-      batchDel2: function() {
-        if (!this.url.deleteBatch2) {
-          this.$message.error('璇疯缃畊rl.deleteBatch2灞炴��!')
-          return
-        }
-        if (this.selectedRowKeys2.length <= 0) {
-          this.$message.warning('璇烽�夋嫨涓�鏉¤褰曪紒')
-          return
-        } else {
-          var ids = ''
-          for (var a = 0; a < this.selectedRowKeys2.length; a++) {
-            ids += this.selectedRowKeys2[a] + ','
-          }
-          var that = this
-          this.$confirm({
-            title: '纭鍒犻櫎',
-            content: '鏄惁鍒犻櫎閫変腑鏁版嵁?',
-            onOk: function() {
-              deleteAction(that.url.deleteBatch2, { spareRequisitionId: that.spareRequisitionId, spareRequisitionDetailIds: ids }).then((res) => {
-                if (res.success) {
-                  that.$message.success(res.message)
-                  that.loadData2()
-                  that.onClearSelected2()
-                } else {
-                  that.$message.warning(res.message)
-                }
-              })
-            }
-          })
-        }
-      },
-      onClearSelected1() {
-        this.selectedRowKeys1 = []
-        this.selectionRows1 = []
-      },
-      handleConfirm(record) {
-        if (!this.url.submit) {
-          this.$message.error('璇疯缃畊rl.submit灞炴��!')
-          return
+      })
+    },
+    batchDel2: function () {
+      if (!this.url.deleteBatch2) {
+        this.$message.error('璇疯缃畊rl.deleteBatch2灞炴��!')
+        return
+      }
+      if (this.selectedRowKeys2.length <= 0) {
+        this.$message.warning('璇烽�夋嫨涓�鏉¤褰曪紒')
+        return
+      } else {
+        var ids = ''
+        for (var a = 0; a < this.selectedRowKeys2.length; a++) {
+          ids += this.selectedRowKeys2[a] + ','
         }
         var that = this
         this.$confirm({
-          title: '纭鎻愪氦',
-          content: '纭畾鎻愪氦鍚�?',
-          onOk: function() {
-            postAction(that.url.submit, record).then((res) => {
+          title: '纭鍒犻櫎',
+          content: '鏄惁鍒犻櫎閫変腑鏁版嵁?',
+          onOk: function () {
+            deleteAction(that.url.deleteBatch2, { spareRequisitionId: that.spareRequisitionId, spareRequisitionDetailIds: ids }).then((res) => {
               if (res.success) {
                 that.$message.success(res.message)
-                that.loadData()
-                // that.onClearSelected1()
+                that.loadData2()
+                that.onClearSelected2()
               } else {
                 that.$message.warning(res.message)
               }
             })
           }
         })
-      },
-      handleExamine: function (record) {
-        this.$refs.modalExamine.examine(record);
-        this.$refs.modalExamine.title = "瀹℃牳";
-        this.$refs.modalExamine.disableSubmit = false;
-      },
-      modalFormOk2: function () {
-        this.loadData()
       }
+    },
+    onClearSelected1() {
+      this.selectedRowKeys1 = []
+      this.selectionRows1 = []
+    },
+    handleConfirm(record) {
+      if (!this.url.submit) {
+        this.$message.error('璇疯缃畊rl.submit灞炴��!')
+        return
+      }
+      var that = this
+      this.$confirm({
+        title: '纭鎻愪氦',
+        content: '纭畾鎻愪氦鍚�?',
+        onOk: function () {
+          postAction(that.url.submit, record).then((res) => {
+            if (res.success) {
+              that.$message.success(res.message)
+              that.loadData()
+              // that.onClearSelected1()
+            } else {
+              that.$message.warning(res.message)
+            }
+          })
+        }
+      })
+    },
+    handleExamine: function (record) {
+      this.$refs.modalExamine.examine(record);
+      this.$refs.modalExamine.title = "瀹℃牳";
+      this.$refs.modalExamine.disableSubmit = false;
+    },
+    modalFormOk2: function () {
+      this.loadData()
     }
   }
+}
 </script>
 <style scoped>
-  @import '~@assets/less/common.less';
+@import '~@assets/less/common.less';
 </style>
\ No newline at end of file
diff --git a/src/views/eam/spare/modules/EamSparePartRequisitionDetailModal.vue b/src/views/eam/spare/modules/EamSparePartRequisitionDetailModal.vue
deleted file mode 100644
index e7c17a2..0000000
--- a/src/views/eam/spare/modules/EamSparePartRequisitionDetailModal.vue
+++ /dev/null
@@ -1,117 +0,0 @@
-<template>
-  <j-modal
-    :title="title"
-    :width="800"
-    :visible="visible"
-    :confirmLoading="confirmLoading"
-    switchFullscreen
-    @ok="handleOk"
-    @cancel="handleCancel"
-    cancelText="鍏抽棴">
-
-    <a-spin :spinning="confirmLoading">
-      <a-form-model ref="form" :model="model" :rules="validatorRules">
-
-        <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="delFlag" label="鍒犻櫎鏍囪">
-          <a-input-number v-model="model.delFlag"/>
-        </a-form-model-item>
-        <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="partId" label="澶囧搧澶囦欢ID">
-          <a-input placeholder="璇疯緭鍏ュ鍝佸浠禝D" v-model="model.partId" />
-        </a-form-model-item>
-        <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="requisitionNum" label="璇疯喘鏁伴噺">
-          <a-input placeholder="璇疯緭鍏ヨ璐暟閲�" v-model="model.requisitionNum" />
-        </a-form-model-item>
-
-      </a-form-model>
-    </a-spin>
-  </j-modal>
-</template>
-
-<script>
-  import { httpAction } from '@api/manage'
-  import moment from "moment"
-
-  export default {
-    name: "EamSparePartRequisitionDetailModal",
-    data () {
-      return {
-        title:"鎿嶄綔",
-        visible: false,
-        model: {},
-        labelCol: {
-          xs: { span: 24 },
-          sm: { span: 5 },
-        },
-        wrapperCol: {
-          xs: { span: 24 },
-          sm: { span: 16 },
-        },
-
-        confirmLoading: false,
-        validatorRules:{
-        },
-        url: {
-          add: "/eam/eamSparePartRequisitionDetail/add",
-          edit: "/eam/eamSparePartRequisitionDetail/edit",
-        },
-      }
-    },
-    created () {
-    },
-    methods: {
-      add () {
-        //鍒濆鍖栭粯璁ゅ��
-        this.edit({});
-      },
-      edit (record) {
-        this.model = Object.assign({}, record);
-        this.visible = true;
-      },
-      close () {
-        this.$emit('close');
-        this.visible = false;
-        this.$refs.form.clearValidate();
-      },
-      handleOk () {
-        const that = this;
-        // 瑙﹀彂琛ㄥ崟楠岃瘉
-         this.$refs.form.validate(valid => {
-          if (valid) {
-            that.confirmLoading = true;
-            let httpurl = '';
-            let method = '';
-            if(!this.model.id){
-              httpurl+=this.url.add;
-              method = 'post';
-            }else{
-              httpurl+=this.url.edit;
-               method = 'put';
-            }
-            httpAction(httpurl,this.model,method).then((res)=>{
-              if(res.success){
-                that.$message.success(res.message);
-                that.$emit('ok');
-              }else{
-                that.$message.warning(res.message);
-              }
-            }).finally(() => {
-              that.confirmLoading = false;
-              that.close();
-            })
-          }else{
-             return false;
-          }
-        })
-      },
-      handleCancel () {
-        this.close()
-      },
-
-
-    }
-  }
-</script>
-
-<style lang="less" scoped>
-
-</style>
\ No newline at end of file
diff --git a/src/views/eam/spare/modules/EamSparePartRequisitionExamineModal.vue b/src/views/eam/spare/modules/EamSparePartRequisitionExamineModal.vue
deleted file mode 100644
index 4aee79f..0000000
--- a/src/views/eam/spare/modules/EamSparePartRequisitionExamineModal.vue
+++ /dev/null
@@ -1,96 +0,0 @@
-<template>
-  <j-modal
-    :title="title"
-    :width="800"
-    :visible="visible"
-    :confirmLoading="confirmLoading"
-    switchFullscreen
-    :cancel="close">
-
-    <a-spin :spinning="confirmLoading">
-      <a-form-model ref="form" :model="model" :rules="validatorRules">
-        <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="requisitionCode" label="璇疯喘鍗曠紪鐮�">
-          <a-input placeholder="璇疯喘鍗曠紪鐮佽嚜鍔ㄧ敓鎴�" v-model="model.requisitionCode" :disabled="true" />
-        </a-form-model-item>
-      </a-form-model>
-    </a-spin>
-
-    <template slot='footer'>
-      <a-popconfirm @confirm="handleReject" title="纭灏嗗綋鍓嶅浠惰璐崟椹冲洖锛�" >
-        <a-button :loading='confirmLoading' :style="{marginRight: '8px'}" >椹冲洖</a-button>
-      </a-popconfirm>
-      <a-popconfirm @confirm="handleOk" title="纭灏嗗綋鍓嶅浠惰璐崟瀹℃牳閫氳繃锛�" >
-        <a-button type='primary' :loading='confirmLoading' :style="{marginRight: '8px'}" >閫氳繃</a-button>
-      </a-popconfirm>
-    </template>
-  </j-modal>
-</template>
-
-<script>
-import { postAction } from '@api/manage'
-
-export default {
-  name: "EamSparePartRequisitionExamineModal",
-  data () {
-    return {
-      title:"瀹℃牳",
-      visible: false,
-      model: {},
-      labelCol: {
-        xs: { span: 24 },
-        sm: { span: 5 },
-      },
-      wrapperCol: {
-        xs: { span: 24 },
-        sm: { span: 16 },
-      },
-
-      confirmLoading: false,
-      validatorRules:{
-      },
-      url: {
-        examine: "eam/eamSparePartRequisition/examineSpareRequisition"
-      },
-    }
-  },
-  created () {
-  },
-  methods: {
-    examine (record) {
-      this.model = Object.assign({}, record);
-      this.visible = true;
-    },
-    close () {
-      this.$emit('close');
-      this.visible = false;
-    },
-    handleOk () {
-      this.handleSubmit("3");
-    },
-    handleReject () {
-      this.handleSubmit("4");
-    },
-    handleSubmit(status) {
-      const that = this;
-      that.model.requisitionStatus = status;
-      postAction(that.url.examine, that.model).then((res) => {
-        if (res.success) {
-          that.$message.success(res.message);
-          that.$emit('ok');
-        } else {
-          that.$message.warning(res.message);
-        }
-      }).catch(() => {
-        that.$message.error('鎿嶄綔澶辫触锛岃绋嶅悗閲嶈瘯');
-      }).finally(() => {
-        that.confirmLoading = false;
-        that.close();
-      });
-    }
-  }
-}
-</script>
-
-<style lang="less" scoped>
-
-</style>
\ No newline at end of file
diff --git a/src/views/eam/spare/modules/EamSparePartRequisitionModal.vue b/src/views/eam/spare/modules/EamSparePartRequisitionModal.vue
deleted file mode 100644
index a6898cf..0000000
--- a/src/views/eam/spare/modules/EamSparePartRequisitionModal.vue
+++ /dev/null
@@ -1,124 +0,0 @@
-<template>
-  <j-modal
-    :title="title"
-    :width="800"
-    :visible="visible"
-    :confirmLoading="confirmLoading"
-    switchFullscreen
-    @ok="handleOk"
-    @cancel="handleCancel"
-    cancelText="鍏抽棴">
-
-    <a-spin :spinning="confirmLoading">
-      <a-form-model ref="form" :model="model" :rules="validatorRules">
-        <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="requisitionCode" label="璇疯喘鍗曠紪鐮�">
-          <a-input placeholder="璇疯喘鍗曠紪鐮佽嚜鍔ㄧ敓鎴�" v-model="model.requisitionCode" :disabled="true" />
-        </a-form-model-item>
-        <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="remark" label="澶囨敞">
-          <a-textarea placeholder="璇疯緭鍏ュ娉�" v-model="model.remark" />
-        </a-form-model-item>
-      </a-form-model>
-    </a-spin>
-  </j-modal>
-</template>
-
-<script>
-import { httpAction, getAction } from '@api/manage'
-import moment from "moment"
-
-export default {
-  name: "EamSparePartRequisitionModal",
-  data() {
-    return {
-      title: "鎿嶄綔",
-      visible: false,
-      model: {},
-      labelCol: {
-        xs: { span: 24 },
-        sm: { span: 5 },
-      },
-      wrapperCol: {
-        xs: { span: 24 },
-        sm: { span: 16 },
-      },
-
-      confirmLoading: false,
-      validatorRules: {},
-      url: {
-        add: "/eam/eamSparePartRequisition/add",
-        edit: "/eam/eamSparePartRequisition/edit",
-        generateRequisitionCode: "sys/sysBusinessCodeRule/generateBusinessCodeSeq"
-      },
-    }
-  },
-  created() {
-  },
-  methods: {
-    add() {
-      const that = this
-      let params = {
-        businessCode: "SpareRequisitionCodeRule"
-      }
-      getAction(that.url.generateRequisitionCode, params).then((res) => {
-        if (res.success) {
-          this.model = {
-            requisitionCode: res.result
-          }
-        } else {
-          that.$message.warning(res.message);
-        }
-      })
-      //鍒濆鍖栭粯璁ゅ��
-      that.edit(this.model);
-    },
-    edit(record) {
-      this.model = Object.assign({}, record);
-      this.visible = true;
-    },
-    close() {
-      this.$emit('close');
-      this.visible = false;
-      this.$refs.form.clearValidate();
-    },
-    handleOk() {
-      const that = this;
-      // 瑙﹀彂琛ㄥ崟楠岃瘉
-      this.$refs.form.validate(valid => {
-        if (valid) {
-          that.confirmLoading = true;
-          let httpurl = '';
-          let method = '';
-          if (!this.model.id) {
-            httpurl += this.url.add;
-            method = 'post';
-          } else {
-            httpurl += this.url.edit;
-            method = 'put';
-          }
-          httpAction(httpurl, this.model, method).then((res) => {
-            if (res.success) {
-              that.$message.success(res.message);
-              that.$emit('ok');
-            } else {
-              that.$message.warning(res.message);
-            }
-          }).finally(() => {
-            that.confirmLoading = false;
-            that.close();
-          })
-        } else {
-          return false;
-        }
-      })
-    },
-    handleCancel() {
-      this.close()
-    },
-
-  }
-}
-</script>
-
-<style lang="less" scoped>
-
-</style>
\ No newline at end of file

--
Gitblit v1.9.3