| 
														
															@@ -1,7 +1,7 @@ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 <!-- BOM清单 --> 
														 | 
														
														 | 
														
															 <!-- BOM清单 --> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 <template> 
														 | 
														
														 | 
														
															 <template> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   <div class="product-management"> 
														 | 
														
														 | 
														
															   <div class="product-management"> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-    <template v-if="!addOrUpdateVisible && !changeFormVisible && !attachVisible && !detailVisible && !craftsVisible && !drawVisible && !changeVisible && !noticeChangeVisible"> 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    <template v-if="!addOrUpdateVisible && !changeFormVisible && !attachVisible && !detailVisible && !craftsVisible && !drawVisible && !changeVisible && !noticeChangeVisible && !importVisible"> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       <el-form :inline="true" :model="dataForm" @keyup.enter.native="search()"> 
														 | 
														
														 | 
														
															       <el-form :inline="true" :model="dataForm" @keyup.enter.native="search()"> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         <el-form-item label="名称"> 
														 | 
														
														 | 
														
															         <el-form-item label="名称"> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           <el-input v-model="dataForm.productName" placeholder="物料名称" clearable/> 
														 | 
														
														 | 
														
															           <el-input v-model="dataForm.productName" placeholder="物料名称" clearable/> 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -26,6 +26,8 @@ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           <el-button @click="search()">查询</el-button> 
														 | 
														
														 | 
														
															           <el-button @click="search()">查询</el-button> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           <el-button v-if="isAuth('pro:product:save')" type="primary" @click="addOrUpdateHandle(0, false)">新建</el-button> 
														 | 
														
														 | 
														
															           <el-button v-if="isAuth('pro:product:save')" type="primary" @click="addOrUpdateHandle(0, false)">新建</el-button> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           <el-button v-if="isAuth('pro:product:noteChangeConfig')" type="primary" @click="setNoticeChangeHandel()">变更通知人设置</el-button> 
														 | 
														
														 | 
														
															           <el-button v-if="isAuth('pro:product:noteChangeConfig')" type="primary" @click="setNoticeChangeHandel()">变更通知人设置</el-button> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          <el-button type="primary" @click="importFromExcel">导入清单</el-button> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          <el-button type="primary" @click="templateDownload">清单模板下载</el-button> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         </el-form-item> 
														 | 
														
														 | 
														
															         </el-form-item> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       </el-form> 
														 | 
														
														 | 
														
															       </el-form> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       <el-table 
														 | 
														
														 | 
														
															       <el-table 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -263,10 +265,28 @@ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     <attach-detail v-if="attachVisible" ref="attachDetail" @onChose="onChose"/> 
														 | 
														
														 | 
														
															     <attach-detail v-if="attachVisible" ref="attachDetail" @onChose="onChose"/> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     <notice-change-setting v-if="noticeChangeVisible" ref="noticeChangeSetting" @onChose="onChose"/> 
														 | 
														
														 | 
														
															     <notice-change-setting v-if="noticeChangeVisible" ref="noticeChangeSetting" @onChose="onChose"/> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     <change-form v-if="changeFormVisible" ref="changeForm" @refreshDataList="getDataList" @onChose="onChose"/> 
														 | 
														
														 | 
														
															     <change-form v-if="changeFormVisible" ref="changeForm" @refreshDataList="getDataList" @onChose="onChose"/> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      <el-dialog title="导入清单" :visible.sync="importVisible"> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        <el-upload 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          class="upload-demo" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          ref="upload" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          :on-remove="handleRemove" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          action="#" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          :limit="1" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          :file-list="fileList" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          :auto-upload="false" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          :http-request="handleUpload" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          > 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          <el-button slot="trigger" size="small" type="primary">选取文件</el-button> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          <el-button size="small" type="success" @click="submitUpload">开始上传</el-button> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        </el-upload> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      </el-dialog> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   </div> 
														 | 
														
														 | 
														
															   </div> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 </template> 
														 | 
														
														 | 
														
															 </template> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 <script> 
														 | 
														
														 | 
														
															 <script> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  import Vue from 'vue' 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   import AddOrUpdate from './product-add-or-update' 
														 | 
														
														 | 
														
															   import AddOrUpdate from './product-add-or-update' 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   import Detail from './product-detail' 
														 | 
														
														 | 
														
															   import Detail from './product-detail' 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   import { getDictList } from '@/api/dict' 
														 | 
														
														 | 
														
															   import { getDictList } from '@/api/dict' 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -277,6 +297,8 @@ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   import NoticeChangeSetting from './product-notice-change-setting' 
														 | 
														
														 | 
														
															   import NoticeChangeSetting from './product-notice-change-setting' 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   import ChangeForm from './product-change' 
														 | 
														
														 | 
														
															   import ChangeForm from './product-change' 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   import {bomStateOption, writeStateOption} from '@/utils/enums' 
														 | 
														
														 | 
														
															   import {bomStateOption, writeStateOption} from '@/utils/enums' 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  import UploadComponent from '@/views/modules/common/upload-component-v2' 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 export default { 
														 | 
														
														 | 
														
															 export default { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     name: 'product-management', 
														 | 
														
														 | 
														
															     name: 'product-management', 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     components: { 
														 | 
														
														 | 
														
															     components: { 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -286,7 +308,8 @@ export default { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       AddOrUpdate, 
														 | 
														
														 | 
														
															       AddOrUpdate, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       Detail, 
														 | 
														
														 | 
														
															       Detail, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       NoticeChangeSetting, 
														 | 
														
														 | 
														
															       NoticeChangeSetting, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-      ChangeForm 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      ChangeForm, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      UploadComponent 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     }, 
														 | 
														
														 | 
														
															     }, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     data () { 
														 | 
														
														 | 
														
															     data () { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       return { 
														 | 
														
														 | 
														
															       return { 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -298,6 +321,7 @@ export default { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         changeVisible: false, 
														 | 
														
														 | 
														
															         changeVisible: false, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         noticeChangeVisible: false, 
														 | 
														
														 | 
														
															         noticeChangeVisible: false, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         changeFormVisible: false, 
														 | 
														
														 | 
														
															         changeFormVisible: false, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        importVisible: false, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         dataForm: {}, 
														 | 
														
														 | 
														
															         dataForm: {}, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         dataList: [], 
														 | 
														
														 | 
														
															         dataList: [], 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         pageIndex: 1, 
														 | 
														
														 | 
														
															         pageIndex: 1, 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -307,7 +331,9 @@ export default { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         dataListSelections: [], 
														 | 
														
														 | 
														
															         dataListSelections: [], 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         optionsType: [], 
														 | 
														
														 | 
														
															         optionsType: [], 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         bomStateOption: bomStateOption, 
														 | 
														
														 | 
														
															         bomStateOption: bomStateOption, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        writeStateOption: writeStateOption 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        writeStateOption: writeStateOption, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        importForm: {}, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        fileList: [] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       } 
														 | 
														
														 | 
														
															       } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     }, 
														 | 
														
														 | 
														
															     }, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     created () { 
														 | 
														
														 | 
														
															     created () { 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -607,6 +633,48 @@ export default { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             } 
														 | 
														
														 | 
														
															             } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           }) 
														 | 
														
														 | 
														
															           }) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         }).catch(() => {}) 
														 | 
														
														 | 
														
															         }).catch(() => {}) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      }, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      importFromExcel () { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        this.importVisible = true 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      }, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      handleUpload (file) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        if (file == null) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          this.$message.error('请上传清单文件') 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          return 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        console.log(this.fileList) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        const formData = new FormData() 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        formData.append('importFile', file.file) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        this.$http({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          url: this.$http.adornUrl(`/biz-service/product/importExcel`), 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          method: 'POST', 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          data: formData 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        }).then(({data}) => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          if (data && data.code === '200') { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            this.$message({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+              message: '导入成功', 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+              type: 'success', 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+              duration: 1500, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+              onClose: () => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                this.importVisible = false 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+              } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            }) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          } else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            this.$message.error(data.msg) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        }) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      }, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          // 上传 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      submitUpload () { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        this.$refs.upload.submit() 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      }, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          // 移除 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      handleRemove (file, fileList) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        this.$emit('input', fileList) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      }, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      templateDownload () { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        location.href = this.$http.adornUrl(`/biz-service/product/template/download?_token=${Vue.cookie.get('token')}`) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       } 
														 | 
														
														 | 
														
															       } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     } 
														 | 
														
														 | 
														
															     } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   } 
														 | 
														
														 | 
														
															   } 
														 |