Updated preorder in SAAS

This commit is contained in:
Prashant Singh 2019-06-29 18:19:39 +05:30
parent 1b43e9c253
commit 1057cd654e
6 changed files with 42 additions and 12 deletions

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
{
"/js/admin.js": "/js/admin.js?id=bc5093aae84319207809",
"/js/admin.js": "/js/admin.js?id=2bab17ad3ee2b7f905ac",
"/css/admin.css": "/css/admin.css?id=195e1b16939f9c233f32"
}

View File

@ -3,6 +3,7 @@
namespace Webkul\SAASPreOrder\Listeners;
use Webkul\SAASPreOrder\Repositories\PreOrderItemRepository;
use Webkul\Sales\Repositories\OrderRepository;
/**
* Invoice event handler
@ -19,15 +20,25 @@ class Invoice
*/
protected $preOrderItemRepository;
/**
* OrderRepository object
*
* @var Object
*/
protected $orderRepository;
/**
* Create a new Order event listener instance.
*
* @param Webkul\SAASPreOrder\Repositories\PreOrderItemRepository $preOrderItemRepository
* @param Webkul\PreOrder\Repositories\PreOrderItemRepository $preOrderItemRepository
* @param Webkul\Sales\Repositories\OrderRepository $orderRepository
* @return void
*/
public function __construct(PreOrderItemRepository $preOrderItemRepository)
public function __construct(PreOrderItemRepository $preOrderItemRepository, OrderRepository $orderRepository)
{
$this->preOrderItemRepository = $preOrderItemRepository;
$this->orderRepository = $orderRepository;
}
/**
@ -44,6 +55,12 @@ class Invoice
$this->preOrderItemRepository->update([
'status' => 'completed',
], $preOrderItem->id);
if (! $item->order_item->qty_to_invoice) {
$this->orderRepository->update([
'status' => 'completed',
], $item->order_item->order_id);
}
} else {
$preOrderItem = $this->preOrderItemRepository->findOneByField('order_item_id', $item->order_item_id);

View File

@ -38,11 +38,11 @@ class SAASPreOrderServiceProvider extends ServiceProvider
], 'public');
$this->publishes([
__DIR__ . '/../Resources/views/shop/products/add-buttons.blade.php' => resource_path('views/vendor/shop/products/add-buttons.blade.php'),
__DIR__ . '/../Resources/views/shop/products/view/product-add.blade.php' => resource_path('views/vendor/shop/products/view/product-add.blade.php'),
// __DIR__ . '/../Resources/views/shop/products/add-buttons.blade.php' => resource_path('views/vendor/shop/products/add-buttons.blade.php'),
// __DIR__ . '/../Resources/views/shop/products/view/product-add.blade.php' => resource_path('views/vendor/shop/products/view/product-add.blade.php'),
__DIR__ . '/../Resources/views/admin/sales/orders' => resource_path('views/vendor/admin/sales/orders'),
__DIR__ . '/../Resources/views/shop/customers/account/orders' => resource_path('views/vendor/shop/customers/account/orders'),
// __DIR__ . '/../Resources/views/shop/customers/account/orders' => resource_path('views/vendor/shop/customers/account/orders'),
]);
//model observer for all the core models of Bagisto

View File

@ -20,7 +20,7 @@ class PreOrderItemRepository extends Repository
function model()
{
return 'Webkul\SAASPreOrder\Contracts\PreOrderItem';
return 'Webkul\PreOrder\Contracts\PreOrderItem';
}
/**
@ -28,6 +28,19 @@ class PreOrderItemRepository extends Repository
* @return boolean
*/
public function havePreOrderItems($orderId)
{
return $this->scopeQuery(function ($query) use ($orderId) {
return $query->leftJoin('order_items', 'pre_order_items.payment_order_item_id', '=', 'order_items.id')
->leftJoin('orders', 'order_items.order_id', '=', 'orders.id')
->where('orders.id', $orderId);
})->count();
}
/**
* @param integer $orderId
* @return boolean
*/
public function isPreOrderPaymentOrder($orderId)
{
return $this->scopeQuery(function ($query) use ($orderId) {
return $query->where('pre_order_items.order_id', $orderId);

View File

@ -31,7 +31,7 @@
</a>
@endif
@if ($order->canShip())
@if ($order->canShip() && ! app('Webkul\PreOrder\Repositories\PreOrderItemRepository')->findOneByField('payment_order_item_id', $item->id))
<a href="{{ route('admin.sales.shipments.create', $order->id) }}" class="btn btn-lg btn-primary">
{{ __('admin::app.sales.orders.shipment-btn-title') }}
</a>
@ -46,7 +46,7 @@
<div class="sale-container">
<?php
$preOrderItemRepository = app('Webkul\SAASPreOrder\Repositories\PreOrderItemRepository');
$preOrderItemRepository = app('Webkul\PreOrder\Repositories\PreOrderItemRepository');
$havePreOrderItems = $preOrderItemRepository->havePreOrderItems($order->id);
?>
@ -296,7 +296,7 @@
</span>
@endif
</div>
@elseif ($preOrderItem = app('Webkul\SAASPreOrder\Repositories\PreOrderItemRepository')->findOneByField('payment_order_item_id', $item->id))
@elseif ($preOrderItem = app('Webkul\PreOrder\Repositories\PreOrderItemRepository')->findOneByField('payment_order_item_id', $item->id))
<div class="pre-order-item-info">
<span class="heading" @if($item->type == 'configurable')style="margin-top: 0"@endif>
{{ __('preorder::app.admin.sales.orders.preorder-payment-information') }}