Rechnungen + Gutschriften

This commit is contained in:
Kevin Adametz 2021-03-31 17:58:25 +02:00
parent 39ef16686a
commit 35ae3da244
33 changed files with 2834 additions and 34 deletions

View file

@ -39,5 +39,9 @@ return [
'countries'=>'Länder',
'logout'=>'Logout',
'system_settings' => 'Systemeinstellungen',
'new_register' => 'neu registrieren'
'new_register' => 'neu registrieren',
'payments' => 'Zahlungen',
'credit' => 'Gutschriften',
'invoice' => 'Rechnungen',
'revenue' => 'Umsätze',
];

View file

@ -53,8 +53,10 @@
<div class="form-group col-12">
<label class="custom-control custom-checkbox m-2">
{!! Form::checkbox('partner_provision', 1, $value->partner_provision, ['class'=>'custom-control-input']) !!}
<span class="custom-control-label">Vertriebspartner Provision berechnen</span>
<span class="custom-control-label">Bekommt Provision von seinen Vertriebspartner</span>
</label>
<em>Auch immer die Provision bei den Staffelpreisen eintragen!<br>Die Provision wird beim Käufer berechnet und nur ein Sponsor mit der Rolle wo diese Checkbox aktiv ist bekommt die Provison gutgeschrieben.</em>
</div>
</div>

View file

@ -0,0 +1,232 @@
@extends('layouts.layout-2')
@section('content')
<div class="card">
<h6 class="card-header">
Zahlungen / offene Gutschriften
</h6>
<div class="card-datatable table-responsive pt-0">
<table class="datatables-style table table-striped table-bordered">
<thead>
<tr>
<th>{{__('Vorname')}}</th>
<th>{{__('Nachname') }}</th>
<th>{{__('E-Mail') }}</th>
<th>{{__('Betrag') }}</th>
<th>{{__('Aus Bestellung')}}</th>
<th>{{__('#')}}</th>
</tr>
</thead>
<tbody>
@foreach ($ShoppingOrderMargins as $ShoppingOrderMargin)
<tr>
<td>{{ $ShoppingOrderMargin->first_name }}</td>
<td>{{ $ShoppingOrderMargin->last_name }}</td>
<td>{{ $ShoppingOrderMargin->email }}</td>
<td>{!! \App\Services\UserMarign::getMontlyPartnerCommissionOpenByID($ShoppingOrderMargin->user_id, null, true) !!} &euro;</td>
<td>
@foreach (\App\Services\UserMarign::getOrderFromPartnerCommissionByID($ShoppingOrderMargin->user_id) as $order)
@if($order->shopping_order)
<a href="{{ route('admin_sales_customers_detail', [$order->shopping_order->id]) }}">
{{$order->shopping_order->shopping_user->billing_firstname }}
{{$order->shopping_order->shopping_user->billing_lastname }}
/ {{ $order->shopping_order->getLastShoppingPayment('reference') }}
/ {{ $order->shopping_order->getFormattedTotalWithoutCredit()."" }}
/ {{ $order->shopping_order->created_at->format("d.m.Y") }}
</a> <br>
@endif
@endforeach
</td>
<td>
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-credit"
data-userid="{{ $ShoppingOrderMargin->user_id }}"
data-email="{{ $ShoppingOrderMargin->email }}"
data-back="{{url()->current()}}"
data-action="create_credit">
<span class="far fa-file-invoice-dollar"></span> <strong>Gutschrift erstellen</strong>
</button>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
<div class="card mt-3">
<h6 class="card-header">
Zahlungen / offene Gutschriften pending
</h6>
<div class="card-datatable table-responsive pt-0">
<table class="datatables-style table table-striped table-bordered">
<thead>
<tr>
<th>{{__('Vorname')}}</th>
<th>{{__('Nachname') }}</th>
<th>{{__('E-Mail') }}</th>
<th>{{__('Betrag') }}</th>
<th>{{__('aus Bestellung')}}</th>
</tr>
</thead>
<tbody>
@foreach ($ShoppingOrderMarginPendings as $ShoppingOrderMarginPending)
<tr>
<td>{{ $ShoppingOrderMarginPending->first_name }}</td>
<td>{{ $ShoppingOrderMarginPending->last_name }}</td>
<td>{{ $ShoppingOrderMarginPending->email }}</td>
<td>{!! \App\Services\UserMarign::getMontlyPartnerCommissionPendingByID($ShoppingOrderMarginPending->user_id, null, true) !!} &euro;</td>
<td>
@foreach (\App\Services\UserMarign::getOrderFromPartnerCommissionPendingByID($ShoppingOrderMarginPending->user_id) as $order)
@if($order->shopping_order)
<a href="{{ route('admin_sales_customers_detail', [$order->shopping_order->id]) }}">
{{$order->shopping_order->shopping_user->billing_firstname }}
{{$order->shopping_order->shopping_user->billing_lastname }}
/ {{ $order->shopping_order->getLastShoppingPayment('reference') }}
/ {{$order->shopping_order->getFormattedTotalWithoutCredit()."" }}
/ {{ $order->shopping_order->created_at->format("d.m.Y") }}
</a> <br>
@endif
@endforeach
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
<div class="card mt-3">
<h6 class="card-header">
Zahlungen / erstellte Gutschriften
</h6>
<div class="col-sm-6 mb-0 mt-2">
{!! Form::open(['url' => route('admin_payments_credit'), 'class' => 'form-horizontal', 'id'=>'form_filter_sales_year']) !!}
<label class="form-label" for="filter_sales_year">Filter Jahr</label>
<select class="custom-select" name="filter_sales_year" id="filter_sales_year">
@foreach($years as $year)
<option value="{{$year}}" @if($active_year == $year) selected @endif>{{$year}}</option>
@endforeach
</select>
{!! Form::close() !!}
</div>
<div class="card-datatable table-responsive pt-0">
<table class="datatables-style table table-striped table-bordered" id="datatable-credit">
<thead>
<tr>
<th>ID</th>
<th>{{__('Vorname')}}</th>
<th>{{__('Nachname') }}</th>
<th>{{__('E-Mail') }}</th>
<th>{{__('Betrag') }}</th>
<th>{{__('Datum') }}</th>
<th>{{__('aus Bestellung')}}</th>
<th>{{__('Status')}}</th>
<th>{{__('Gutschrift')}}</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</div>
<script>
$( document ).ready(function() {
var oTable = $('#datatable-credit').DataTable({
"processing": true,
"serverSide": true,
ajax: {
url: '{!! route( 'admin_payments_credit_datatable') !!}',
data: function(d) {
d.filter_sales_year = $('select[name=filter_sales_year]').val();
}
},
"order": [[0, "desc" ]],
"columns": [
{ data: 'id', searchable: false },
{ data: 'user.account.first_name', name: 'user.account.first_name', orderable: false },
{ data: 'user.account.last_name', name: 'user.account.last_name', orderable: false },
{ data: 'user.email', name: 'user.email', orderable: false },
{ data: 'total', name: 'total' },
{ data: 'date', name: 'date' },
{ data: 'user_margins', name: 'user_margins', orderable: false },
{ data: 'status', name: 'status', searchable: false },
{ data: 'credit', name: 'credit', orderable: false, searchable: false },
],
"bLengthChange": false,
"iDisplayLength": 100,
"language": {
"url": "/js/German.json"
}
});
$('#filter_sales_year').on('change', function(){
oTable.draw();
});
});
/*$('#filter_sales_year').on('change', function(){
$('#form_filter_sales_year').submit();
});*/
$( document ).ready(function() {
$('#modals-credit').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget);
$(this).find(".modal-content input[name='userid']").val(button.data('userid'));
$(this).find(".modal-body #set_credit_send_mail").html(button.data('email'));
});
});
</script>
<div class="modal fade" id="modals-credit">
<div class="modal-dialog">
<form class="modal-content" action="{{ route('admin_payments_credit_create') }}" method="post">
@csrf
<input type="hidden" name="userid" value="">
<input type="hidden" name="action" value="create_credit">
<input type="hidden" name="back" value="{{url()->current()}}">
<div class="modal-header">
<h5 class="modal-title">{{__('Gutschrift')}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
</div>
<div class="modal-body">
<div class="form-group col-sm-12">
{{ Form::select('credit_option', ['create'=>'Gutschrift erstellen'], false, array('data-live-search'=>'false', 'class'=>'selectpicker')) }}
</div>
<div class="form-group col-sm-12">
<label class="form-label" for="credit_date">{{ __('Gutschriftsdatum') }}</label>
{!! Form::text('credit_date', \Carbon::now()->format("d.m.Y"), ['class'=>'form-control datepicker-base']) !!}
</div>
<div class="form-group col-sm-12">
<label class="form-label" for="credit_number">{{ __('Gutschriftsnummer') }}</label>
{!! Form::text('credit_number', App\Services\Invoice::getInvoiceNumber(), ['class'=>'form-control']) !!}
<em> nächste Rechnungsnummer <a href="{{ route('admin_settings') }}"><i class="fa fa-edit"></i></a></em>
</div>
<div class="form-group col-sm-12">
<label class="custom-control custom-checkbox">
{!! Form::checkbox('credit_send_mail', 1, true, ['class'=>'custom-control-input']) !!}
<span class="custom-control-label">Rechnung an <span id="set_credit_send_mail">123</span></span>
</label>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">{{__('close')}}</button>
<button type="submit" class="btn btn-primary">{{__('save')}}</button>
</div>
</form>
</div>
</div>
@endsection

View file

@ -0,0 +1,86 @@
@extends('layouts.layout-2')
@section('content')
<div class="card">
<h6 class="card-header">
Zahlungen / Rechnungen
</h6>
<div class="col-sm-6 mb-0 mt-2">
{!! Form::open(['url' => route('admin_payments_invoice'), 'class' => 'form-horizontal', 'id'=>'form_filter_sales_year']) !!}
<label class="form-label" for="filter_sales_year">Filter Jahr</label>
<select class="custom-select" name="filter_sales_year" id="filter_sales_year">
@foreach($years as $year)
<option value="{{$year}}" @if($active_year == $year) selected @endif>{{$year}}</option>
@endforeach
</select>
{!! Form::close() !!}
</div>
<div class="card-datatable table-responsive pt-0">
<table class="datatables-style table table-striped table-bordered" id="datatable-invoice">
<thead>
<tr>
<th>ID</th>
<th>{{__('Vorname')}}</th>
<th>{{__('Nachname') }}</th>
<th>{{__('E-Mail') }}</th>
<th>{{__('Betrag') }}</th>
<th>{{__('Datum') }}</th>
<th>{{__('Order')}}</th>
<th>{{__('Status')}}</th>
<th>{{__('Rechnung')}}</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</div>
<script>
$( document ).ready(function() {
var oTable = $('#datatable-invoice').DataTable({
"processing": true,
"serverSide": true,
ajax: {
url: '{!! route( 'admin_payments_invoice_datatable') !!}',
data: function(d) {
d.filter_sales_year = $('select[name=filter_sales_year]').val();
}
},
"order": [[0, "desc" ]],
"columns": [
{ data: 'id', searchable: false },
{ data: 'shopping_user.billing_firstname', name: 'shopping_user.billing_firstname', orderable: false },
{ data: 'shopping_user.billing_lastname', name: 'shopping_user.billing_lastname', orderable: false },
{ data: 'shopping_user.billing_email', name: 'shopping_user.billing_email', orderable: false },
{ data: 'total_shipping', name: 'total_shipping' },
{ data: 'created_at', name: 'shopping_orders.created_at' },
{ data: 'shipping_order', name: 'shipping_order', orderable: false },
{ data: 'txaction', name: 'txaction', searchable: false },
{ data: 'invoice', name: 'invoice', orderable: false, searchable: false },
],
"bLengthChange": false,
"iDisplayLength": 100,
"language": {
"url": "/js/German.json"
}
});
$('#filter_sales_year').on('change', function(){
oTable.draw();
});
});
/*$('#filter_sales_year').on('change', function(){
$('#form_filter_sales_year').submit();
});*/
</script>
@endsection

View file

@ -50,6 +50,20 @@
</div>
</div>
<div class="card mb-2">
<div class="card-body">
<h4>Bestellungen Einstellungen</h4>
<div class="form-row">
<div class="form-group col-sm-12">
<label class="form-label">{{ __('Pending in Tagen nach Versand für die Partner Provision') }}*</label>
{{ Form::text('settings[pending_partner_commissions_in_days][val]', \App\Models\Setting::getContentBySlug('pending_partner_commissions_in_days'), array('class'=>'form-control')) }}
{{ Form::hidden('settings[pending_partner_commissions_in_days][type]', 'int') }}
</div>
</div>
<button type="submit" name="action" value="save_prepayment" class="btn btn-primary btn-sm mb-2"><i class="ion ion-ios-save"></i> speichern</button>
</div>
</div>
{!! Form::close() !!}
@endsection

View file

@ -160,7 +160,7 @@
@endif
</p>
<hr>
<h6>{{__('Umsätze')}} {{date('m.Y')}}</h6>
<h6>{{__('Umsätze')}} {{ date('m.Y') }}</h6>
<table class="table table-striped table-bordered">
<tr>
<td class="text-left font-weight-semibold">{{__('Umsatz gesamt')}}:</td>
@ -182,12 +182,18 @@
</tr>
</table>
<hr>
<h6>{{__('Provision')}} {{date('m.Y')}}</h6>
<h6>{{__('Provision')}} {{-- date('m.Y') --}}</h6>
<table class="table table-striped table-bordered">
<tr>
<td class="text-left font-weight-semibold">{{__('Vertriebspartner Provision')}}:</td>
<td class="text-left font-weight-semibold">{{__('Vertriebspartner Provision')}} pending:</td>
<td class="text-right font-weight-bold">
{!! \App\Services\UserMarign::getMontlyPartnerCommission($user, null, true) !!} &euro;*
{!! \App\Services\UserMarign::getMontlyPartnerCommissionPending($user, null, true) !!} &euro;*
</td>
</tr>
<tr>
<td class="text-left font-weight-semibold">{{__('Vertriebspartner Provision')}} bestätigt:</td>
<td class="text-right font-weight-bold">
{!! \App\Services\UserMarign::getMontlyPartnerCommissionOpen($user, null, true) !!} &euro;*
</td>
</tr>
</table>

View file

@ -13,7 +13,6 @@
</li>
@if(Auth::user()->showSideNav())
<li class="sidenav-item @if(Request::is('user/edit', 'user/membership')) open @endif">
<a href="javascript:void(0)" class="sidenav-link sidenav-toggle">
<i class="sidenav-icon ion ion-ios-contact"></i>
@ -28,6 +27,10 @@
</li>
</ul>
</li>
{{-- <li class="sidenav-item Request::is('user/revenue') ? ' active' : '' }} {{ Request::is('user/revenues/*') ? ' active' : '' }}">
<a href="{{ route('user_revenue') }}" class="sidenav-link"><i class="sidenav-icon ion ion-md-cash"></i><div>{{ __('navigation.revenue') }}</div></a>
</li>--}}
@if(Auth::user()->isActiveAccount())
<li class="sidenav-item @if(Request::is('user/team/*')) open @endif">
<a href="javascript:void(0)" class="sidenav-link sidenav-toggle">
@ -101,6 +104,22 @@
</ul>
</li>
<li class="sidenav-item @if(Request::is('admin/payments/*')) open @endif">
<a href="javascript:void(0)" class="sidenav-link sidenav-toggle">
<i class="sidenav-icon ion ion-md-cash"></i>
<div>{{ __('navigation.payments') }}</div>
</a>
<ul class="sidenav-menu">
<li class="sidenav-item{{ Request::is('admin/payments/credit') ? ' active' : '' }}">
<a href="{{ route('admin_payments_credit') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-arrow-dropright-circle"></i><div>{{ __('navigation.credit') }}</div></a>
</li>
<li class="sidenav-item{{ Request::is('admin/payments/invoice') ? ' active' : '' }}">
<a href="{{ route('admin_payments_invoice') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-arrow-dropleft-circle"></i><div>{{ __('navigation.invoice') }}</div></a>
</li>
</ul>
</li>
<li class="sidenav-item @if(Request::is('admin/product/*')) open @endif">
<a href="javascript:void(0)" class="sidenav-link sidenav-toggle">
<i class="sidenav-icon ion ion-md-cube"></i>

View file

@ -0,0 +1,400 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>partner.gruene-seele.bio</title>
<style>
/* roboto-300 - latin */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: url('fonts/roboto-v20-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
}
/* roboto-regular - latin */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
src: url('fonts/roboto-v20-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
}
/* roboto-500 - latin */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 500;
src: url('fonts/roboto-v20-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
}
/* roboto-700 - latin */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 700;
src: url('fonts/roboto-v20-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
}
html {
width: 100%;
height: 100%;
}
body {
position: relative;
width: 100%;
height: 100%;
margin: 0 auto;
padding: 0;
color: #000;
background: #fff;
font-family: 'Roboto', sans-serif;
font-size: 8pt;
font-weight: 400 ;
}
table {
border: none;
}
strong {
font-weight: bold !important;
}
@page {
margin: 0px;
}
@page {
margin-top: 0px;
}
@page {
margin: 75mm 0 40mm 0;
}
.font-weight-bold {
font-weight: bold !important;
}
#address_box {
position: absolute;
top:-30mm;
left: 15mm;
width: 100mm;
height: 45mm;
z-index: 1;
font-size: 8pt;
line-height: 9pt;
letter-spacing: 0.05em;
}
#address_box_top {
font-size: 7pt;
color:#858585;
}
#title_box {
position: absolute;
top:0mm;
left: 15mm;
width: 180mm;
height: 10mm;
z-index: 2;
text-align: center;
}
#title_box .title {
font-size: 15pt;
line-height: 12pt;
}
#title_box .subtitle {
font-size: 9pt;
line-height: 9pt;
}
#detail_box_left {
position: absolute;
top:8mm;
left: 15mm;
width: 90mm;
height: 15mm;
z-index: 3;
font-size: 8pt;
}
#detail_box_right {
position: absolute;
top:8mm;
left: 105mm;
width: 90mm;
height: 15mm;
z-index: 4;
font-size: 8pt;
}
#detail_box_left table, #detail_box_right table {
width: 100%;
line-height: 9pt;
}
#detail_box_left table td {
text-align: left;
}
#detail_box_right table td {
text-align: right;
}
#invoice_box {
position: relative;
padding-top: 20mm;
margin-left: 15mm;
width: 180mm;
font-size: 8pt;
line-height: 8pt;
}
#invoice_box table {
width: 100%;
border-collapse: collapse;
}
#invoice_box table tr {
page-break-after: avoid;
}
#invoice_box table tr td {
vertical-align: top;
padding-top: 2mm;
padding-bottom: 2mm;
padding-left: 1.5mm;
padding-right: 1.5mm;
border-top: 0.5pt dotted #1a1a18;
}
#invoice_box table tfoot tr td {
border-top: none;
}
#invoice_box table tfoot tr.fullline td {
border-top: 0.3pt solid #575755;
}
#invoice_box table tfoot tr.fullline td.no-border {
border-top: none;
}
#invoice_box table tfoot tr td {
padding-top: 1.2mm;
padding-bottom: 1.2mm;
}
#invoice_box table td.small {
width: 1%;
white-space: nowrap;
}
#invoice_box table tr th {
line-height: 12pt;
padding-bottom: 1mm;
padding-left: 1mm;
padding-right: 1mm;
background-color: rgb(212, 212, 212);
}
#invoice_box table td .title {
font-size: 10pt;
}
#invoice_box table td .description {
padding-top: 1mm;
font-size: 9pt;
}
#invoice_box table td .price_net {
padding-top: 1mm;
font-size: 10pt;
padding-bottom: 1mm;
}
#invoice_box table td .price_tax {
padding-top: 0.7mm;
padding-bottom: 0.7mm;
}
#invoice_box table td .price_total {
padding-top: 2mm;
font-size: 11pt;
}
.singel-line-top {
border-top: 1pt solid #1a1a18;
}
.double-line {
border-bottom: 2.5pt double #1a1a18;
}
.dotted-line {
border-bottom: 0.8pt dotted #1a1a18;
}
#footer_box {
position: relative;
top:0mm;
left: 15mm;
width: 180mm;
height: 20mm;
z-index: 6;
font-size: 8pt;
line-height: 8pt;
}
.text-right {
text-align: right;
}
.text-left {
text-align: left;
}
.text-center {
text-align: center;
}
</style>
</head>
<body>
<div id="address_box">
<div id="address_box_top">GRÜNE SEELE GbR Hauptstr. 174 51143 Köln</div>
@if($user->account)
@if($user->account->company)
{{ $user->account->company }}<br>
@else
Firma <br>
@endif
{{ \App\Services\HTMLHelper::getSalutationLang($user->account->salutation) }}
{{ $user->account->first_name }} {{ $user->account->last_name }}<br>
{{ $user->account->address }}<br>
@if($user->account->address_2)
{{ $user->account->address_2 }}<br>
@endif
{{ $user->account->zipcode}} {{ $user->account->city }}<br>
@if($user->account->country)
{{ $user->account->country->getLocated() }}
@endif
@endif
</div>
<div id="title_box">
<div class="title">GUTSCHRIFT</div>
{{-- @if($cancellation)
<div class="subtitle">{{ $invoice->invoice_name }}</div>
@endif--}}
</div>
<div id="detail_box_left">
<table>
<tr>
<td>
{{ __('Gutschriftsnummer') }}: {{ $credit_number }}
</td>
</tr>
</table>
</div>
<div id="detail_box_right">
<table>
<tr>
<td>
{{ __('Datum') }}/{{ __('Leistungsdatum)') }}: {{ $credit_date }}
</td>
</tr>
@if($user->account->tax_number)
<tr>
<td>
{{ __('St.-Nr') }}: {{ $user->account->tax_number}}
</td>
</tr>
@else
@if($user->account->tax_identification_number)
<tr>
<td>
{{ __('USt-IdNr.') }}: {{ $user->account->tax_identification_number}}
</td>
</tr>
@endif
@endif
</table>
</div>
<div id="invoice_box">
<table>
<thead>
<tr>
<th class="text-left" style="width: 75%">Gutschrift aus</th>
<th class="text-right" style="width: 25%">Betrag</th>
</tr>
</thead>
<tbody>
@foreach($user_credits->margins as $margin)
<tr class="item">
<td class="small text-left">
{{ $margin->firstname }} {{ $margin->lastname }} / {{ $margin->reference }} / {{ $margin->created_at }}
</td>
<td class="text-right small">
{{ \App\Services\Util::formatNumber($margin->net) }} &euro;*
</td>
</tr>
@endforeach
</tbody>
<tfoot>
<tr class="fullline">
<td class="text-right">
Zwischensumme
</td>
<td class="text-right">
{{ \App\Services\Util::formatNumber($user_credits->net) }} &euro;*
</td>
</tr>
@if ($user_credits->taxable)
<tr class="">
<td class="text-right">
Mehrwertsteuer: {{ $user_credits->tax_rate }} % <br>
</td>
<td class="text-right">
{{ \App\Services\Util::formatNumber($user_credits->tax) }} &euro;
</td>
</tr>
@else
<tr class="">
<td class="text-right">
Mehrwertsteuer: {{ $user_credits->tax_rate }} % <br>
Gutschriftsempfänger ist Kleinunternehmer nach § 19 (1) UStG.
</td>
<td class="text-right">
{{ \App\Services\Util::formatNumber($user_credits->tax) }} &euro;
</td>
</tr>
@endif
<tr class="fullline">
<td class="text-right">
<b>Auszahlungsbetrag (Brutto):</b>
</td>
<td class="text-right">
<b> {{ \App\Services\Util::formatNumber($user_credits->total) }} &euro;</b>
<br>
<span style="font-size: 0.9em"><em>* Nettobeträge</em></span>
</td>
</tr>
</tfoot>
</table>
</div>
<div id="footer_box">
<div class="text">
</div>
</div>
</body>
</html>

View file

@ -264,10 +264,12 @@
</head>
<body>
<div id="address_box">
<div id="address_box_top">GÜNE SEELE Hauptstr. 174 51143 Köln</div>
<div id="address_box_top">GRÜNE SEELE GbR Hauptstr. 174 51143 Köln</div>
@if($shopping_order->shopping_user->billing_company)
{{ $shopping_order->shopping_user->billing_company }}<br>
@else
Firma <br>
@endif
{{ \App\Services\HTMLHelper::getSalutationLang($shopping_order->shopping_user->billing_salutation) }}
{{ $shopping_order->shopping_user->billing_firstname }} {{ $shopping_order->shopping_user->billing_lastname }}<br>
@ -276,7 +278,9 @@
{{ $shopping_order->shopping_user->billing_address_2 }}<br>
@endif
{{ $shopping_order->shopping_user->billing_zipcode }} {{ $shopping_order->shopping_user->billing_city }}<br>
@if($shopping_order->shopping_user->billing_country)
{{ $shopping_order->shopping_user->billing_country->getLocated() }}
@endif
</div>
<div id="title_box">

View file

@ -0,0 +1,65 @@
@extends('layouts.layout-2')
@section('content')
<div class="card">
<h6 class="card-header">
Berater Bestellungen
</h6>
<div class="col-sm-6 mb-2">
{!! Form::open(['url' => route('user_revenue'), 'class' => 'form-horizontal', 'id'=>'filter_sales_member']) !!}
<label class="form-label" for="filter_user_shop_id">Filter Jahr</label>
<select class="custom-select" name="filter_sales_year" id="filter_sales_year">
@foreach($years as $year)
<option value="{{$year}}" @if($active_year == $year) selected @endif>{{$year}}</option>
@endforeach
</select>
{!! Form::close() !!}
</div>
<div class="card-datatable table-responsive">
<table class="datatables-style table table-striped table-bordered">
<thead>
<tr>
<th>{{__('Vorname')}}</th>
<th>{{__('Nachname') }}</th>
<th>{{__('E-Mail') }}</th>
<th>{{__('Betrag') }}</th>
<th>{{__('Datum') }}</th>
<th>{{__('Order')}}</th>
<th>{{__('Status')}}</th>
</tr>
</thead>
<tbody>
@foreach($values as $value)
<tr>
<td>{{ $value->shopping_user->billing_firstname }}</td>
<td>{{ $value->shopping_user->billing_lastname }}</td>
<td>{{ $value->shopping_user->billing_email }}</td>
<td>{{ $value->getFormattedTotalShipping()."" }}</td>
<td>{{ $value->created_at->format("d.m.Y") }}</td>
<td>@foreach($value->shopping_order_items as $shopping_order_item)
{{ $shopping_order_item->product->name }}<br>
@endforeach
</td>
<td>{!! App\Services\Payment::getShoppingOrderBadge($value) !!}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
<script>
$('#filter_sales_year').on('change', function(){
$('#filter_sales_member').submit();
});
</script>
@endsection

View file

@ -131,9 +131,9 @@
</div>
<div class="form-group col-md-12">
@if($errors->has('phone') || $errors->has('mobil'))
<div class="alert badge-danger block p-2">Bitte {{ __('Phone') }} und/oder {{ __('Mobile Phone') }} angeben!*</div>
<div class="alert badge-danger block p-2">Fehler: Bitte {{ __('Phone') }} und/oder {{ __('Mobile Phone') }} angeben!*</div>
@else
<div class="badge badge-warning">Bitte {{ __('Phone') }} und/oder {{ __('Mobile Phone') }} angeben!*</div>
<div class="badge badge-default">Hinweis: Bitte {{ __('Phone') }} und/oder {{ __('Mobile Phone') }} angeben!*</div>
@endif
</div>
</div>
@ -344,9 +344,9 @@
<div class="row">
<div class="form-group col-md-12">
@if($errors->has('tax_number') || $errors->has('tax_identification_number'))
<div class="alert badge-danger block p-2">Bitte {{ __('Steuernummer') }} und/oder {{ __('USt-ID Nummer') }} angeben!*</div>
<div class="alert badge-danger block p-2">Fehler: Bitte {{ __('Steuernummer') }} und/oder {{ __('USt-ID Nummer') }} angeben!*</div>
@else
<div class="badge badge-warning">Bitte {{ __('Steuernummer') }} und/oder {{ __('USt-ID Nummer') }} angeben!*</div>
<div class="badge badge-default">Hinweis: Bitte {{ __('Steuernummer') }} und/oder {{ __('USt-ID Nummer') }} angeben!*</div>
@endif
</div>
</div>