Guthaben aufladen, löschen, Ansichten

This commit is contained in:
Kevin Adametz 2021-04-26 16:07:03 +02:00
parent 6ac9fcc4d2
commit 3754f1c571
27 changed files with 603 additions and 89 deletions

View file

@ -696,9 +696,10 @@
<label class="mt-0 fs-14 fw-400">BIC*</label>
{!! Form::text('elv_bic', (isset($payment_data['bic']) ? $payment_data['bic'] : ''), ['class' => 'form-control', 'id'=>'elv_bic', 'placeholder'=>'Beisp.: PBNKDEFF']) !!}
</div>
@if($shopping_user->abo_options)
{{-- @if($shopping_user->abo_options)
<p>Automatische Verlängerung wurde ausgewählt. Dein SEPA-Mandart wird gespeichert und die jährliche Zahlung automatisch ausgeführt.</p>
@endif
--}}
</div>
</div>
</div>

View file

@ -0,0 +1,45 @@
{!! Form::open(['url' => route('admin_payments_paycredit'), 'class' => 'modal-content', 'enctype' => 'multipart/form-data']) !!}
<div class="modal-header">
<h5 class="modal-title">
{{ __('Guthaben') }}
<span class="font-weight-light">aufladen</span>
</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
</div>
<div class="modal-body">
<input type="hidden" name="action" value="{{$data['action']}}">
<input type="hidden" name="id" value="{{$data['id']}}">
<div class="form-row">
<div class="form-group col-12">
<label for="member_id" class="form-label">{{ __('Vertriebspartner auswählen') }}*</label>
<select class="selectpicker" name="member_id" data-style="btn-light" data-live-search="true" required>
{!! HTMLHelper::getMembersOptions(0, true) !!}
</select>
</div>
<div class="form-group col-12">
<label class="form-label" for="credit">{{ __('Betrag') }}</label>
{{ Form::text('credit', '', array('placeholder'=>__('in Euro'), 'class'=>'form-control', 'required'=>true)) }}
</div>
<div class="form-group col-12">
<label class="form-label" for="message">{{ __('Mitteilung') }}</label>
{{ Form::textarea('message', '' , array('placeholder'=>__('Mitteilung'), 'class'=>'form-control', 'rows'=>4, 'required'=>true)) }}
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">schließen</button>
<button type="submit" class="btn btn-primary">{{__('Guthaben aufladen')}}</button>
</div>
{!! Form::close() !!}
<script type="text/javascript">
$( document ).ready(function() {
});
</script>

View file

@ -1,7 +1,7 @@
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">
{{ __('Staffelprovision') }} <strong>{{$user->user_level->name}}
{{ __('Staffelprovision') }} <strong>{{$user->user_level->name}}</strong>
</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
</div>

View file

@ -0,0 +1,72 @@
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">
{{ __('Zahlungen / Guthaben') }}
<strong>
@if($user->account)
{{ $user->account->first_name }}
{{ $user->account->last_name }}
@endif
</strong>
</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
</div>
<div class="modal-body">
<input type="hidden" name="action" value="{{$data['action']}}">
<input type="hidden" name="id" value="{{$data['id']}}">
<input type="hidden" name="view" value="{{$data['view']}}">
<table class="table table-striped" style="border-top: 0">
<thead>
<tr>
<th style="width: 55%">Mitteilung</th>
<th>Betrag</th>
<th>altes Guthaben</th>
<th>neues Guthaben</th>
<th>Datum</th>
<th>Aktion</th>
</tr>
</thead>
<tbody>
@if($user && $user->user_pay_credits)
@foreach($user->user_pay_credits as $user_pay_credit)
<tr>
@if($user_pay_credit->status === 3)
<th scope="row"> {!! nl2br($user_pay_credit->message) !!}</th>
@else
<th scope="row">{{ trans('payment.'.$user_pay_credit->message) }}</th>
@endif
<td><div class="no-line-break">{{ formatNumber($user_pay_credit->credit) }} </div></td>
<td><div class="no-line-break">{{ formatNumber($user_pay_credit->old_credit_total) }} </div></td>
<td><div class="no-line-break">{{ formatNumber($user_pay_credit->new_credit_total) }} </div></td>
<td><div class="no-line-break">{{ formatDate($user_pay_credit->created_at) }}</div></td>
@if($user_pay_credit->shopping_order_id)
<td><a class="btn btn-secondary btn-xs" href="{{ route('admin_sales_users_detail', [$user_pay_credit->shopping_order_id]) }}"><i class="ion ion-ios-redo"></i></a></td>
@else
@if($user_pay_credit->status === 3 && $deleteTime = $user_pay_credit->deleteTime())
<td><div class="no-line-break"><a class="btn btn-danger btn-xs" href="{{ route('admin_payments_paycredit_delete', [$user_pay_credit->id]) }}"><i class="ion ion-ios-trash"></i></a> noch {{ $deleteTime }} min.</div>
</td>
@else
<td>-</td>
@endif
@endif
</tr>
@endforeach
@endif
</tbody>
</table>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">schließen</button>
</div>
</div>
<script type="text/javascript">
$( document ).ready(function() {
});
</script>

View file

@ -4,6 +4,15 @@
<div class="card">
<h6 class="card-header">
Zahlungen / Guthaben
<div class="float-right">
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-load-content"
data-id="new"
data-action="add-user-pay-credit"
data-back="{{url()->current()}}"
data-route="{{ route('modal_load') }}"><span class="far fa-plus-circle"></span> Guthaben aufladen
</button>
</div>
</h6>
{{-- <div class="col-sm-6 mb-0 mt-2">
{!! Form::open(['url' => route('admin_payments_paycredit'), 'class' => 'form-horizontal', 'id'=>'form_filter_user_status']) !!}
@ -17,8 +26,18 @@
</div>
--}}
<div class="card-datatable table-responsive pt-0">
@if(isset($add_credit_error) && $add_credit_error)
<div class="col-sm-12">
<div class="alert alert-danger p-2 mt-2">
<ul>
<li>{{ $add_credit_error }}</li>
</ul>
</div>
</div>
@endif
<div class="card-datatable table-responsive pt-2">
<table class="datatables-style table table-striped table-bordered" id="datatable-pay-credit">
<thead>
<tr>
@ -39,7 +58,6 @@
</div>
<script>
$( document ).ready(function() {
var oTable = $('#datatable-pay-credit').DataTable({
"processing": true,

View file

@ -199,8 +199,13 @@
</table>
<p class="text-right" style="font-size: 0.9em"><i>* Nettobeträge</i></p>
<hr>
<p><span class="ion ion-md-checkmark-circle-outline text-secondary"></span>
{{__('Guthaben')}} bis {{ $user->getPaymentAccountDateFormat(false) }}: <strong>{{ $user->getFormattedPaymentCredit() }} &euro;</strong>
<p>
<div class="float-right">
<a class="btn btn-sm btn-secondary" href="{{ route('user_payment_paycredit') }}">zur Übersicht</a>
</div>
<span class="ion ion-md-checkmark-circle-outline text-secondary"></span>
{{__('Guthaben')}}: <strong>{{ $user->getFormattedPaymentCredit() }} &euro;</strong>
</p>
<hr>
@else

View file

@ -19,6 +19,14 @@
<div>{{ __('navigation.my_account') }}</div>
</a>
<ul class="sidenav-menu">
<li class="sidenav-item Request::is('user/payment/paycredit') ? ' active' : '' }} {{ Request::is('user/payment/paycredit') ? ' active' : '' }}">
<a href="{{ route('user_payment_paycredit') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-cash"></i><div>{{ __('navigation.paycredit') }}</div></a>
</li>
{{--
<li class="sidenav-item Request::is('user/payment/credit') ? ' active' : '' }} {{ Request::is('user/payment/credit') ? ' active' : '' }}">
<a href="{{ route('user_payment_credit') }}" class="sidenav-link"><i class="sidenav-icon ion ion-md-cash"></i><div>{{ __('navigation.credit') }}</div></a>
</li>
--}}
<li class="sidenav-item{{ Request::is('user/edit') ? ' active' : '' }}">
<a href="{{ route('user_edit') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-create"></i><div>{{ __('navigation.my_data') }}</div></a>
</li>
@ -27,9 +35,7 @@
</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">
@ -210,6 +216,11 @@
<i class="sidenav-icon ion ion-ios-settings"></i>
<div>Tools</div>
</a>
<ul class="sidenav-menu">
<li class="sidenav-item{{ Request::is('sysadmin/tools/pay_credits') ? ' active' : '' }}">
<a href="{{ route('sysadmin_tools', ['pay_credits']) }}" class="sidenav-link"><i class="sidenav-icon ion ion-md-contact"></i><div>Kunden</div></a>
</li>
</ul>
{{-- <ul class="sidenav-menu">
<li class="sidenav-item{{ Request::is('sysadmin/tools/customers') ? ' active' : '' }}">
<a href="{{ route('sysadmin_tools_customers') }}" class="sidenav-link"><i class="sidenav-icon ion ion-md-contact"></i><div>Kunden</div></a>

View file

@ -0,0 +1,76 @@
@extends('layouts.layout-2')
@section('content')
@if ($errors->any())
<div class="row">
<div class="col-sm-12">
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
</div>
</div>
@endif
<h4 class="font-weight-bold mb-4">
Kunden
</h4>
{!! Form::open(['url' => url()->current(), 'class' => '']) !!}
<div class="card mb-4">
<div class="card-body">
<!-- Controls -->
<div class="form-group mb-1">
<label class="form-label" for="description">Description</label>
{{ Form::textarea('text', $text, array('class'=>'form-control', 'rows'=>1)) }}
</div>
<button type="submit" name="action" value="store" class="btn btn-primary"><i class="ion"></i> store</button>
</div>
@if(count($values)>0)
<div class="card-body">
<div class="card-datatable table-responsive">
<table class="table table-striped table-bordered">
<thead>
<tr>
<th style="max-width: 60px;">ID</th>
<th>{{__('shopping_user_id')}}</th>
<th>{{__('total_shipping')}}</th>
<th>{{__('payment_credit')}}</th>
<th>{{__('txaction')}}</th>
</tr>
</thead>
<tbody>
@foreach($values as $shopping_order)
<tr>
<td>{{$shopping_order->id}}</td>
<td>{{$shopping_order->auth_user_id}}</td>
<td>{{$shopping_order->total_shipping}}</td>
<td>{{$shopping_order->payment_credit}}</td>
<td>{{$shopping_order->txaction}}</td>
</tr>
@endforeach
</tbody>
</table>
<!-- Controls -->
</div>
</div>
@endif
</div>
{!! Form::close() !!}
@endsection

View file

@ -41,7 +41,7 @@
</table>
</div>
<div class="text-left mt-3">
@if(!$user->isAboOption())
{{-- @if(!$user->isAboOption())
<hr>
<label class="custom-control custom-checkbox">
<input type="checkbox" class="custom-control-input" name="abo_options">
@ -54,6 +54,7 @@
Ist die Mitgliedschaft vor dem {!! Carbon::parse($user->payment_account)->modify('-'.config('main.abo_booking_days').' days')->format('d.m.Y') !!} bezahlt, wird das SEPA Mandart nicht ausgeführt!</p>
<hr>
@endif
--}}
<button type="submit" class="btn btn-secondary">{{ __('wählen und weiter zur Kasse') }}</button>&nbsp;
<br><br>
<em class="small text-center"> <i class="fa fa-lock"></i> Du wirst auf unseren checkout weitergeletet, die Verbindung ist SSL verschlüsselt.</em>

View file

@ -0,0 +1,47 @@
@extends('layouts.layout-2')
@section('content')
<h4 class="font-weight-bold py-2 mb-2">
{{ __('navigation.my_account') }} / {{ __('navigation.paycredit') }}
</h4>
<div class="card">
<div class="card-datatable table-responsive">
<table class="datatables-style table table-striped table-bordered">
<thead>
<tr>
<th style="width: 55%">Mitteilung</th>
<th>Betrag</th>
<th>altes Guthaben</th>
<th>neues Guthaben</th>
<th>Datum</th>
</tr>
</thead>
<tbody>
@if($user && $user->user_pay_credits)
@foreach($user->user_pay_credits as $user_pay_credit)
<tr>
@if($user_pay_credit->status === 3)
<th scope="row"> {!! nl2br($user_pay_credit->message) !!}</th>
@else
<th scope="row">{{ trans('payment.'.$user_pay_credit->message) }}
@if($user_pay_credit->shopping_order_id)
<a class="btn btn-outline-secondary btn-xs" href="{{ route('admin_sales_users_detail', [$user_pay_credit->shopping_order_id]) }}"><i class="ion ion-ios-redo"></i></a>
@endif
</th>
@endif
<td><div class="no-line-break">{{ formatNumber($user_pay_credit->credit) }} </div></td>
<td><div class="no-line-break">{{ formatNumber($user_pay_credit->old_credit_total) }} </div></td>
<td><div class="no-line-break">{{ formatNumber($user_pay_credit->new_credit_total) }} </div></td>
<td><div class="no-line-break">{{ formatDate($user_pay_credit->created_at) }}</div></td>
</tr>
@endforeach
@endif
</tbody>
</table>
</div>
</div>
<script>
</script>
@endsection