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

@ -2,13 +2,14 @@
namespace App\Http\Controllers;
use Carbon;
use Request;
use App\User;
use App\Services\Invoice;
use Validator;
use App\Services\Util;
use App\Models\UserPayCredit;
use App\Services\Payment;
use App\Models\ShoppingOrder;
class PaymentPayCreditController extends Controller
{
@ -37,15 +38,66 @@ class PaymentPayCreditController extends Controller
}
}
public function store(){
$data = Request::all();
if(isset($data['action']) && $data['action'] === 'add-user-pay-credit'){
$validator = Validator::make(Request::all(), []);
$add_credit_error = false;
if(!isset($data['member_id']) || !$user = User::find($data['member_id'])){
$add_credit_error = 'Vertriebspartner nicht gefunden';
}
if(!isset($data['credit'])){
$add_credit_error = 'Bitte Betrag eingeben';
}
if(!isset($data['message'])){
$add_credit_error = 'Bitte Mitteilung eingeben';
}
if($add_credit_error){
$this->setActiveFilter();
$data = [
'filter_user_status' => $this->filter_user_status,
'add_credit_error' => $add_credit_error,
];
return view('admin.payment.pay_credit.index', $data);
}
$credit = Util::reFormatNumber($data['credit']);
$credit = number_format($credit, 2, '.', '');
Payment::addUserPayCredits($user, $credit, 3, $data['message']);
\Session()->flash('alert-success', "Guthaben aufgeladen");
}
return redirect(route('admin_payments_paycredit'));
}
public function delete($id){
$UserPayCredit = UserPayCredit::findOrFail($id);
if($UserPayCredit->status === 3 && $deleteTime = $UserPayCredit->deleteTime()){
$user = $UserPayCredit->user;
$credit = $UserPayCredit->credit;
$user->payment_credit = $user->payment_credit - $credit;
$user->save();
$UserPayCredit->delete();
\Session()->flash('alert-success', "Guthaben ist gelöscht");
}else{
\Session()->flash('alert-error', "Guthaben kann nicht gelöscht werden");
}
return redirect(route('admin_payments_paycredit'));
}
public function datatable(){
$this->setActiveFilter();
$query = User::with('account')->select('users.*')->where('users.deleted_at', '=', null)
->where('active', true);
//->orderBy('created_at', 'DESC');
return \DataTables::eloquent($query)
@ -71,10 +123,10 @@ class PaymentPayCreditController extends Controller
return '<span class="badge badge-pill badge-danger"><i class="fa fa-times"></i></span></a>';
})
->addColumn('action', function (User $user) {
$ret = '<a href="#" target="_blank" class="btn btn-warning btn-xs"><i class="fa fa-eye"></i></a>';
return $ret;
return '<button class="btn btn-warning btn-sm icon-btn md-btn-flat" title="details" data-modal="modal-xl"
data-toggle="modal" data-target="#modals-load-content" data-id="'.$user->id.'" data-route="'.route('modal_load').'"
data-action="show-user-pay-credits" data-view="customer"><i class="ion ion-md-eye"></i></button>';
})
->orderColumn('id', 'id $1')
->orderColumn('txaction', 'txaction $1')
->orderColumn('payment_credit', 'payment_credit $1')