adjust deliveries by customer

This commit is contained in:
ludo
2023-12-11 21:07:49 +01:00
parent 71ecb13af0
commit 0ff39c1401
8 changed files with 108 additions and 80 deletions

View File

@@ -4,7 +4,7 @@ namespace App\Http\Controllers\Shop;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use App\Repositories\Shop\Articles; use App\Repositories\Shop\Articles;
use App\Repositories\Shop\Homepages; use App\Repositories\Shop\Contents;
use App\Repositories\Shop\TagGroups; use App\Repositories\Shop\TagGroups;
use Illuminate\Http\Request; use Illuminate\Http\Request;
@@ -15,7 +15,7 @@ class HomeController extends Controller
$data = [ $data = [
'display_by_rows' => $request->input('by_rows') ?? false, 'display_by_rows' => $request->input('by_rows') ?? false,
'shelves' => Articles::getArticlesByHomepage(), 'shelves' => Articles::getArticlesByHomepage(),
'text' => Homepages::getHomepage(), 'text' => Contents::getHomepage(),
'tags' => TagGroups::getWithTagsAndCountOffers(), 'tags' => TagGroups::getWithTagsAndCountOffers(),
'no_filter' => true, 'no_filter' => true,
]; ];

View File

@@ -44,7 +44,8 @@ class OrderController extends Controller
$data = [ $data = [
'customer' => $customer ? $customer->toArray() : false, 'customer' => $customer ? $customer->toArray() : false,
'basket' => Baskets::getBasketTotal(), 'basket' => Baskets::getBasketTotal(),
'deliveries' => Deliveries::getAllWithSaleChannel()->toArray(), // 'deliveries' => Deliveries::getAllWithSaleChannel()->toArray(),
'deliveries' => Deliveries::getByCustomer()->toArray(),
'delivery_types' => DeliveryTypes::getWithPrice(Baskets::getWeight()), 'delivery_types' => DeliveryTypes::getWithPrice(Baskets::getWeight()),
]; ];

View File

@@ -0,0 +1,26 @@
<?php
namespace App\Http\Requests\Admin\Shop;
use Illuminate\Foundation\Http\FormRequest;
class StoreCustomerPost extends FormRequest
{
public function authorize()
{
return true;
}
public function rules()
{
return [
'first_name' => 'required',
'last_name' => 'required',
'email' => 'required',
'address' => 'required',
'zipcode' => 'required',
'city' => 'required',
'sale_channels[]' => 'required',
];
}
}

View File

@@ -19,15 +19,15 @@ class Deliveries
public static function getByCustomer($customerId = false) public static function getByCustomer($customerId = false)
{ {
$customer = Customers::get($customerId); $customer = $customerId ? Customers::get($customerId) : Customers::getAuth();
$saleChannels = $customer->sale_channels->pluck('id')->toArray(); $saleChannels = $customer ? $customer->sale_channels->pluck('id')->toArray() : false;
return self::getBySaleChannels($saleChannels); return $saleChannels ? self::getBySaleChannels($saleChannels) : false;
} }
public static function getBySaleChannels($saleChannels) public static function getBySaleChannels($saleChannels)
{ {
return Delivery::bySaleChannels($saleChannels)->get(); return Delivery::bySaleChannels($saleChannels)->with('sale_channel')->get();
} }
public static function getSaleChannelId($deliveryId) public static function getSaleChannelId($deliveryId)

View File

@@ -59,6 +59,8 @@
@include('load.form.save') @include('load.form.save')
@push('js') @push('js')
{!! JsValidator::formRequest('App\Http\Requests\Admin\Shop\StoreArticleNaturePost', '#article_nature-form') !!}
<script> <script>
$(function() { $(function() {
initEditor(); initEditor();

View File

@@ -1,11 +1,9 @@
@extends('layout.index', [ @extends('layout.index', [
'title' => __('shop.customers.title'), 'title' => __('shop.customers.title'),
'subtitle' => __('shop.customers.add'), 'subtitle' => __('shop.customers.add'),
'breadcrumb' => [__('shop.customers.title')] 'breadcrumb' => [__('shop.customers.title')],
]) ])
@section('content') @section('content')
{{ Form::open(['route' => 'Admin.Shop.Customers.store', 'id' => 'customer-form', 'autocomplete' => 'off']) }}
@include('Admin.Shop.Customers.form') @include('Admin.Shop.Customers.form')
</form>
@endsection @endsection

View File

@@ -1,14 +1,9 @@
@extends('layout.index', [ @extends('layout.index', [
'title' => __('shop.customers.title'), 'title' => __('shop.customers.title'),
'subtitle' => __('shop.customers.edit'), 'subtitle' => __('shop.customers.edit'),
'breadcrumb' => [__('shop.customers.title')] 'breadcrumb' => [__('shop.customers.title')],
]) ])
@section('content') @section('content')
{{ Form::open(['route' => 'Admin.Shop.Customers.store', 'id' => 'customer-form', 'autocomplete' => 'off']) }}
<input type="hidden" name="id" value="{{ $customer['id'] }}">
@include('Admin.Shop.Customers.form') @include('Admin.Shop.Customers.form')
</form>
@endsection @endsection

View File

@@ -1,3 +1,6 @@
f{{ Form::open(['route' => 'Admin.Shop.Customers.store', 'id' => 'customer-form', 'autocomplete' => 'off']) }}
<input type="hidden" name="id" value="{{ $customer['id'] ?? false }}">
<div class="row"> <div class="row">
<div class="col-6"> <div class="col-6">
<x-card> <x-card>
@@ -116,6 +119,7 @@
</x-layout.box-collapse> </x-layout.box-collapse>
</div> </div>
</div> </div>
</form>
<x-save /> <x-save />
@@ -123,6 +127,8 @@
@include('load.form.select2') @include('load.form.select2')
@push('js') @push('js')
{!! JsValidator::formRequest('App\Http\Requests\Admin\Shop\StoreCustomerPost', '#customer-form') !!}
<script> <script>
$(function() { $(function() {
initSelect2(); initSelect2();