| 
					
				 | 
			
			
				@@ -135,7 +135,7 @@ import dealerSubareaScopeList from '@/views/common/dealerSubareaScopeList.vue' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import baseDataModal from '@/views/expenseManagement/expenseReimbursement/baseDataModal.vue' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import viewSelectModal from './viewSelectModal.vue' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import meargeOptionModal from './meargeOptionModal.vue' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import { salesConvertExpenseList, expenseAccountSave, queryBatchCreateBySalesBillSn } from '@/api/salesNew' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { salesConvertExpenseList, expenseAccountSave, queryBatchCreateBySalesBillSn, expenseAccountSaveGroupType, queryBatchCreateBySalesPromoSnListGroupType } from '@/api/salesNew' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   name: 'WaitCostOrder', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   mixins: [commonMixin], 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -242,56 +242,57 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 合并提交 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     handleMerge () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      const _this = this 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      const salesPromoSnList = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      const slen = _this.rowSelectionInfo.selectedRowKeys.length 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      if (!_this.rowSelectionInfo || (_this.rowSelectionInfo && slen < 1)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        _this.$message.warning('请在列表勾选后再进行合并提交操作!') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (!this.hasSelect) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.$message.warning('请先勾选再合并提交!') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // 批量合并提交 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.rowSelectionInfo.selectedRows.map(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        salesPromoSnList.push(item.salesPromoSn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 打开合并选项弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.showMeargeModal = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 确定合并 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    meargeOk (data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      console.log(data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // 打开已合并的待转费用报销单弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      if (!this.hasSelect) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        this.$message.warning('请先勾选再合并提交!') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.showViewModal = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.$refs.viewModal.title = '已合并的待转费用报销单' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.$refs.viewModal.submitType = 'mearge' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.$refs.viewModal.setData(this.rowSelectionInfo && this.rowSelectionInfo.selectedRows) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    // 合并提交 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    meargeSubmit (data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    meargeOk (groupType) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 批量合并 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       const salesPromoSnList = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      data.map(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.rowSelectionInfo.selectedRows.map(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         salesPromoSnList.push(item.salesPromoSn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // 打开转费用单弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.handleExpense(salesPromoSnList) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const params = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        salesPromoSnList: salesPromoSnList, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        groupType: groupType 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 开始合并 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      queryBatchCreateBySalesPromoSnListGroupType(params).then(res => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 打开已合并的待转费用报销单弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (res.status == 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          const list = res.data && res.data.detailList || [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (list.length) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 打开查看弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.showViewModal = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.$refs.viewModal.title = '已合并的待转费用报销单' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.$refs.viewModal.submitType = 'mearge' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.$refs.viewModal.setData(list, res.data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.$message.warning('没有可合并的待转费用报销单!') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    // 直接不合并提交 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 确定合并提交转费用单弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    meargeSubmit (data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.expenseSave(data, 'salesMearge') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 直接提交(不合并) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     handleSave (row) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      const _this = this 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       const salesPromoSnList = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 单个转 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (row) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         salesPromoSnList.push(row.salesPromoSn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        const slen = _this.rowSelectionInfo.selectedRowKeys.length 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (!_this.rowSelectionInfo || (_this.rowSelectionInfo && slen < 1)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          _this.$message.warning('请在列表勾选后再进行提交操作!') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 批量转 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (!this.hasSelect) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.$message.warning('请在列表勾选后再进行提交操作!') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 批量转 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.rowSelectionInfo.selectedRows.map(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           salesPromoSnList.push(item.salesPromoSn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -304,28 +305,34 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       const _this = this 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.spinning = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       const hasExpense = await queryBatchCreateBySalesBillSn({ salesPromoSnList: snList }).then(res => res.data || []) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       let result = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       for (const key in hasExpense) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         result = hasExpense[key] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // 关闭查看弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.$refs.viewModal.spinning = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.showViewModal = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 转费用单弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      _this.expenseSave(result) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      _this.expenseSave(result, 'sales') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    // 打开新建转费用单弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    expenseSave (data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 新建转费用单 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    expenseSave (data, type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 关闭查看弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.$refs.viewModal.spinning = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.showViewModal = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 打开新建转费用单弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.openBaseModal = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        this.$refs.expenseModal.setDetail(data, 'sales') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.$refs.expenseModal.setDetail(data, type) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.spinning = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.spinning = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 转费用单成功 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    expenseSaveOk (params) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      expenseAccountSave(params).then(res => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    expenseSaveOk (params, type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // type: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // sales:不合并 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // salesMearge:合并转 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const fun = type == 'sales' ? expenseAccountSave : expenseAccountSaveGroupType 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      fun(params).then(res => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (res.status == 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.$message.info(res.message) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.openBaseModal = false 
			 |