diff --git a/application/WarehouseEShopOrder/WarehouseEShopOrderController.php b/application/WarehouseEShopOrder/WarehouseEShopOrderController.php index e767dbea2..e44560c91 100644 --- a/application/WarehouseEShopOrder/WarehouseEShopOrderController.php +++ b/application/WarehouseEShopOrder/WarehouseEShopOrderController.php @@ -43,7 +43,29 @@ class WarehouseEShopOrderController extends TTCrud { $this->columns[8]['modal']['items'] = $users; } + protected function getAllItemsPerOrderAction() { + $items = WarehouseEShopOrderItemModel::getAll(); + $articles = WarehouseArticleModel::getAll(); + $articlePackets = WarehouseArticlePacketModel::getAll(); + $orderItems = []; + foreach ($items as $item) { + $item = (array) $item; + if (!isset($orderItems[$item['orderId']])) { + $orderItems[$item['orderId']] = []; + } + $orderItems[$item['orderId']][] = [ + 'id' => $item['id'], + 'articleId' => $item['articleId'], + 'articleTitle' => isset($articles[$item['articleId']]) ? $articles[$item['articleId']]->title : null, + 'articlePacketId' => $item['articlePacketId'], + 'articlePacketTitle' => isset($articlePackets[$item['articlePacketId']]) ? $articlePackets[$item['articlePacketId']]->title : null, + 'quantity' => $item['quantity'] + ]; + } + + self::returnJson($orderItems); + } protected function createOrderAction() { //TODO: change this to beforeCreate and afterCreate diff --git a/public/js/pages/WarehouseEShop/WarehouseEShop.js b/public/js/pages/WarehouseEShop/WarehouseEShop.js index 2b43f7568..b2299c39a 100644 --- a/public/js/pages/WarehouseEShop/WarehouseEShop.js +++ b/public/js/pages/WarehouseEShop/WarehouseEShop.js @@ -111,6 +111,13 @@ Vue.component('warehouse-e-shop', { if (response.data.success) { this.window.notify('success', response.data.message || 'Erfolgreich gespeichert'); this.shoppingCart = []; + this.createOrderDialogData = { + deliveryMode: 'singleAddress', + deliveryAddressName: '', + deliveryAddressLine: '', + deliveryAddressPLZ: '', + deliveryAddressCity: '', + } this.createOrderDialog = false; } else { this.window.notify('error', diff --git a/public/js/pages/WarehouseEShopOrder/WarehouseEShopOrder.js b/public/js/pages/WarehouseEShopOrder/WarehouseEShopOrder.js index d83003151..74c258180 100644 --- a/public/js/pages/WarehouseEShopOrder/WarehouseEShopOrder.js +++ b/public/js/pages/WarehouseEShopOrder/WarehouseEShopOrder.js @@ -1,3 +1,4 @@ +// noinspection JSUnusedLocalSymbols Vue.component('warehouse-e-shop-order', { //language=Vue template: ` @@ -5,7 +6,17 @@ Vue.component('warehouse-e-shop-order', { + + @@ -13,7 +24,13 @@ Vue.component('warehouse-e-shop-order', { `, data() { return { - window: window, historyModal: false, historyModalId: null, + window: window, historyModal: false, historyModalId: null, articleItems: null } }, + async mounted() { + const response = await axios.get(`${window['TT_CONFIG']['BASE_PATH']}/WarehouseEShopOrder/getAllItemsPerOrder`); + console.log(response.data); + this.articleItems = response.data; + + } }) diff --git a/public/plugins/vue/tt-components/tt-table-crud.js b/public/plugins/vue/tt-components/tt-table-crud.js index 9d3f212e6..ea8c23aef 100644 --- a/public/plugins/vue/tt-components/tt-table-crud.js +++ b/public/plugins/vue/tt-components/tt-table-crud.js @@ -41,6 +41,12 @@ Vue.component('tt-table-crud', { + + + +