mirror of
https://github.com/PanJiaChen/vue-element-admin.git
synced 2025-08-10 12:01:57 +08:00
96 lines
3.1 KiB
JavaScript
96 lines
3.1 KiB
JavaScript
// ADempiere-Vue (Frontend) for ADempiere ERP & CRM Smart Business Solution
|
|
// Copyright (C) 2017-Present E.R.P. Consultores y Asociados, C.A.
|
|
// Contributor(s): Elsio Sanchez esanchez@erpya.com www.erpya.com
|
|
// This program is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation, either version 3 of the License, or
|
|
// (at your option) any later version.
|
|
|
|
// This program is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
import {
|
|
listOrderLines
|
|
} from '@/api/ADempiere/form/point-of-sales.js'
|
|
import { isEmptyValue } from '@/utils/ADempiere/valueUtils.js'
|
|
import { showMessage } from '@/utils/ADempiere/notification.js'
|
|
/**
|
|
* Order Line Actions
|
|
*/
|
|
export default {
|
|
listOrderLine({ commit }, params) {
|
|
commit('setListOrderLine', params)
|
|
},
|
|
listOrderLinesFromServer({ commit }, orderUuid) {
|
|
if (isEmptyValue(orderUuid)) {
|
|
return
|
|
}
|
|
listOrderLines({
|
|
orderUuid
|
|
})
|
|
.then(response => {
|
|
const line = response.orderLineList.map(lineItem => {
|
|
return {
|
|
...lineItem,
|
|
quantityOrdered: lineItem.quantity,
|
|
priceActual: lineItem.price,
|
|
discount: lineItem.discountRate,
|
|
product: {
|
|
...lineItem.product,
|
|
priceStandard: lineItem.price,
|
|
help: lineItem.help
|
|
},
|
|
taxIndicator: lineItem.taxRate.taxIndicator,
|
|
grandTotal: lineItem.lineNetAmount
|
|
}
|
|
})
|
|
commit('setListOrderLine', line)
|
|
})
|
|
.catch(error => {
|
|
console.warn(`listOrderLinesFromServer: ${error.message}. Code: ${error.code}.`)
|
|
showMessage({
|
|
type: 'error',
|
|
message: error.message,
|
|
showClose: true
|
|
})
|
|
})
|
|
},
|
|
updateOrderLines({ commit, rootGetters }, params) {
|
|
// const line = rootGetters.getListOrderLine
|
|
const line = rootGetters.posAttributes.currentPointOfSales.currentOrder.lineOrder
|
|
const found = line.map(element => {
|
|
if (element.uuid === params.uuid) {
|
|
return {
|
|
...element,
|
|
uuid: params.uuid,
|
|
lineDescription: params.lineDescription,
|
|
quantityOrdered: params.quantity,
|
|
priceActual: params.price,
|
|
discount: params.discountRate,
|
|
product: {
|
|
description: params.product.description,
|
|
priceStandard: params.price,
|
|
help: params.help,
|
|
name: params.product.name,
|
|
value: params.product.value
|
|
},
|
|
taxIndicator: params.taxRate.taxIndicator,
|
|
grandTotal: params.lineNetAmount
|
|
}
|
|
}
|
|
return {
|
|
...element
|
|
}
|
|
})
|
|
commit('setListOrderLine', found)
|
|
},
|
|
currentLine({ commit }, currentLine) {
|
|
commit('setLine', currentLine)
|
|
}
|
|
}
|