|
@@ -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
|