Updates to 03-2025
This commit is contained in:
parent
bfa3bb1df4
commit
9ae662f63e
243 changed files with 12580 additions and 12018 deletions
|
|
@ -41,24 +41,25 @@ class PaymentCreditController extends Controller
|
|||
}
|
||||
|
||||
|
||||
public function store(){
|
||||
public function store()
|
||||
{
|
||||
$data = Request::all();
|
||||
if(isset($data['action']) && $data['action'] === 'add-user-credit'){
|
||||
if(!isset($data['member_id']) || !$user = User::find($data['member_id'])){
|
||||
if (isset($data['action']) && $data['action'] === 'add-user-credit') {
|
||||
if (!isset($data['member_id']) || !$user = User::find($data['member_id'])) {
|
||||
\Session()->flash('alert-error', 'Vertriebspartner nicht gefunden');
|
||||
return back();
|
||||
}
|
||||
if(!isset($data['credit'])){
|
||||
if (!isset($data['credit'])) {
|
||||
\Session()->flash('alert-error', 'Bitte Betrag eingeben');
|
||||
return back();
|
||||
}
|
||||
if(!isset($data['message'])){
|
||||
if (!isset($data['message'])) {
|
||||
\Session()->flash('alert-error', 'Bitte Betreff eingeben');
|
||||
return back();
|
||||
}
|
||||
|
||||
$credit = Util::reFormatNumber($data['credit']);
|
||||
$credit = number_format($credit, 2, '.', '');
|
||||
$credit = number_format($credit, 2, '.', '');
|
||||
Payment::addUserCreditMargin($user, $credit, 3, $data['message']);
|
||||
\Session()->flash('alert-success', "Guthaben hinzugefügt");
|
||||
}
|
||||
|
|
@ -66,11 +67,12 @@ class PaymentCreditController extends Controller
|
|||
return redirect(route('admin_payments_credit'));
|
||||
}
|
||||
|
||||
public function create(){
|
||||
public function create()
|
||||
{
|
||||
$data = Request::all();
|
||||
if(isset($data['action'])){
|
||||
if($data['action'] === 'create_credit'){
|
||||
if(!isset($data['userid'])){
|
||||
if (isset($data['action'])) {
|
||||
if ($data['action'] === 'create_credit') {
|
||||
if (!isset($data['userid'])) {
|
||||
abort(404);
|
||||
}
|
||||
$user = User::findOrFail($data['userid']);
|
||||
|
|
@ -79,7 +81,7 @@ class PaymentCreditController extends Controller
|
|||
\Session()->flash('alert-success', "Gutschrift erstellt");
|
||||
return redirect($data['back']);
|
||||
}
|
||||
if($data['action'] === 'user-credit-status'){
|
||||
if ($data['action'] === 'user-credit-status') {
|
||||
$UserCredit = UserCredit::findOrFail($data['id']);
|
||||
$UserCredit->status = $data['status'];
|
||||
$UserCredit->save();
|
||||
|
|
@ -89,34 +91,38 @@ class PaymentCreditController extends Controller
|
|||
}
|
||||
}
|
||||
|
||||
private function setFilterVars(){
|
||||
if(!session('credit_filter_month')){
|
||||
private function setFilterVars()
|
||||
{
|
||||
if (!session('credit_filter_month')) {
|
||||
session(['credit_filter_month' => intval(date('m'))]);
|
||||
}
|
||||
if(!session('credit_filter_year')){
|
||||
if (!session('credit_filter_year')) {
|
||||
session(['credit_filter_year' => intval(date('Y'))]);
|
||||
}
|
||||
if(Request::get('credit_filter_name')){
|
||||
if (Request::get('credit_filter_name')) {
|
||||
session(['credit_filter_name' => Request::get('credit_filter_name')]);
|
||||
} else {
|
||||
session(['credit_filter_name' => '']);
|
||||
}
|
||||
if(Request::get('credit_filter_month')){
|
||||
if (Request::get('credit_filter_month')) {
|
||||
session(['credit_filter_month' => Request::get('credit_filter_month')]);
|
||||
}
|
||||
if(Request::get('credit_filter_year')){
|
||||
if (Request::get('credit_filter_year')) {
|
||||
session(['credit_filter_year' => Request::get('credit_filter_year')]);
|
||||
}
|
||||
}
|
||||
|
||||
private function makeUserCreditItems(){
|
||||
private function makeUserCreditItems()
|
||||
{
|
||||
$ret = [];
|
||||
$UserCreditItems = UserCreditItem::wherePaid(false)->get();
|
||||
foreach($UserCreditItems as $userCreditItem){
|
||||
if(isset($ret[$userCreditItem->user_id])){
|
||||
foreach ($UserCreditItems as $userCreditItem) {
|
||||
if (isset($ret[$userCreditItem->user_id])) {
|
||||
$ret[$userCreditItem->user_id]['sum'] += $userCreditItem->credit;
|
||||
$ret[$userCreditItem->user_id]['entries'][$userCreditItem->id] = $userCreditItem;
|
||||
}else{
|
||||
if(!isset($userCreditItem->user)){
|
||||
/* gelöschte User nicht anzeigen
|
||||
} else {
|
||||
if (!isset($userCreditItem->user)) {
|
||||
/* gelöschte User nicht anzeigen
|
||||
$user = User::withTrashed()->with(['account' => fn($q) => $q->withTrashed()])->where('id', $userCreditItem->user_id)->first();
|
||||
$ret[$userCreditItem->user_id] = [
|
||||
'user_id' => $userCreditItem->user_id,
|
||||
|
|
@ -128,7 +134,7 @@ class PaymentCreditController extends Controller
|
|||
'entries' => [$userCreditItem->id => $userCreditItem],
|
||||
];
|
||||
*/
|
||||
}else{
|
||||
} else {
|
||||
$ret[$userCreditItem->user_id] = [
|
||||
'user_id' => $userCreditItem->user_id,
|
||||
'm_account' => $userCreditItem->user->account->m_account,
|
||||
|
|
@ -138,20 +144,21 @@ class PaymentCreditController extends Controller
|
|||
'sum' => $userCreditItem->credit,
|
||||
'entries' => [$userCreditItem->id => $userCreditItem],
|
||||
];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return $ret;
|
||||
}
|
||||
}
|
||||
|
||||
public function delete($id, $del){
|
||||
public function delete($id, $del)
|
||||
{
|
||||
|
||||
if($del === 'user_credit_item'){
|
||||
if ($del === 'user_credit_item') {
|
||||
$UserCreditItem = UserCreditItem::findOrFail($id);
|
||||
if($deleteTime = $UserCreditItem->deleteTime()){
|
||||
if ($deleteTime = $UserCreditItem->deleteTime()) {
|
||||
$UserCreditItem->delete();
|
||||
\Session()->flash('alert-success', "Guthaben ist gelöscht");
|
||||
}else{
|
||||
} else {
|
||||
\Session()->flash('alert-error', "Guthaben kann nicht gelöscht werden");
|
||||
}
|
||||
}
|
||||
|
|
@ -160,24 +167,25 @@ class PaymentCreditController extends Controller
|
|||
|
||||
private function initSearch($archive = false, $request = true)
|
||||
{
|
||||
|
||||
|
||||
$this->setFilterVars();
|
||||
|
||||
$date_start = Carbon::parse('01.'.Request::get('credit_filter_month').'.'.Request::get('credit_filter_year'))->format('Y-m-d');
|
||||
$date_end = Carbon::parse('01.'.Request::get('credit_filter_month').'.'.Request::get('credit_filter_year'))->endOfMonth()->format('Y-m-d');
|
||||
$date_start = Carbon::parse('01.' . Request::get('credit_filter_month') . '.' . Request::get('credit_filter_year'))->format('Y-m-d');
|
||||
$date_end = Carbon::parse('01.' . Request::get('credit_filter_month') . '.' . Request::get('credit_filter_year'))->endOfMonth()->format('Y-m-d');
|
||||
$query = UserCredit::with('user', 'user.account')->select('user_credits.*')
|
||||
->whereBetween('date', [$date_start, $date_end]);
|
||||
|
||||
if(Request::get('credit_filter_name')){
|
||||
->whereBetween('date', [$date_start, $date_end]);
|
||||
|
||||
if (Request::get('credit_filter_name')) {
|
||||
$query->whereHas('user.account', function ($query) {
|
||||
return $query->where('first_name', 'LIKE', '%'.Request::get('credit_filter_name').'%')
|
||||
->orWhere('last_name', 'LIKE', '%'.Request::get('credit_filter_name').'%');
|
||||
});
|
||||
return $query->where('first_name', 'LIKE', '%' . Request::get('credit_filter_name') . '%')
|
||||
->orWhere('last_name', 'LIKE', '%' . Request::get('credit_filter_name') . '%');
|
||||
});
|
||||
}
|
||||
return $query;
|
||||
}
|
||||
|
||||
public function datatable(){
|
||||
public function datatable()
|
||||
{
|
||||
|
||||
$query = $this->initSearch();
|
||||
|
||||
|
|
@ -194,57 +202,54 @@ class PaymentCreditController extends Controller
|
|||
})
|
||||
->addColumn('view', function (UserCredit $UserCredit) {
|
||||
$ret = "";
|
||||
if($UserCredit->isCredit()){
|
||||
$ret .= '<a href="'.route('storage_file', [$UserCredit->id, 'credit', 'download']).'" class="btn btn-primary btn-xs"><i class="fa fa-download"></i></a> ';
|
||||
$ret .= '<a href="'.route('storage_file', [$UserCredit->id, 'credit', 'stream']).'" target="_blank" class="btn btn-warning btn-xs"><i class="fa fa-eye"></i></a><br>';
|
||||
if ($UserCredit->isCredit()) {
|
||||
$ret .= '<a href="' . route('storage_file', [$UserCredit->id, 'credit', 'download']) . '" class="btn btn-primary btn-xs"><i class="fa fa-download"></i></a> ';
|
||||
$ret .= '<a href="' . route('storage_file', [$UserCredit->id, 'credit', 'stream']) . '" target="_blank" class="btn btn-warning btn-xs"><i class="fa fa-eye"></i></a><br>';
|
||||
|
||||
$ret .= '<a href="'.route('storage_file', [$UserCredit->id, 'credit_detail', 'html']).'" target="_blank" class="btn btn-secondary btn-xs mt-2"><i class="fa fa-eye"></i></a> ';
|
||||
$ret .= '<a href="'.route('storage_file', [$UserCredit->id, 'credit_detail', 'pdf']).'" target="_blank" class="btn btn-secondary btn-xs mt-2"><i class="fa fa-file-pdf" style="min-width:13.5px"></i></a> ';
|
||||
|
||||
|
||||
}else{
|
||||
$ret .= '<a href="' . route('storage_file', [$UserCredit->id, 'credit_detail', 'html']) . '" target="_blank" class="btn btn-secondary btn-xs mt-2"><i class="fa fa-eye"></i></a> ';
|
||||
$ret .= '<a href="' . route('storage_file', [$UserCredit->id, 'credit_detail', 'pdf']) . '" target="_blank" class="btn btn-secondary btn-xs mt-2"><i class="fa fa-file-pdf" style="min-width:13.5px"></i></a> ';
|
||||
} else {
|
||||
$ret = "-";
|
||||
}
|
||||
return $ret;
|
||||
})
|
||||
|
||||
->addColumn('total', function (UserCredit $UserCredit) {
|
||||
return '<span class="no-line-break">'.$UserCredit->getFormattedTotal()." €</span>";
|
||||
return '<span class="no-line-break">' . $UserCredit->getFormattedTotal() . " €</span>";
|
||||
})
|
||||
->addColumn('credits', function (UserCredit $UserCredit) {
|
||||
$ret = "";
|
||||
if($UserCredit->user_credit_items){
|
||||
foreach($UserCredit->user_credit_items as $user_credit_item){
|
||||
$ret .= nl2br($user_credit_item->getTransMessage())." / ".$user_credit_item->created_at->format('d.m.Y')."<br>";
|
||||
|
||||
if ($UserCredit->user_credit_items) {
|
||||
foreach ($UserCredit->user_credit_items as $user_credit_item) {
|
||||
$ret .= nl2br($user_credit_item->getTransMessage()) . " / " . $user_credit_item->created_at->format('d.m.Y') . "<br>";
|
||||
}
|
||||
}
|
||||
return $ret;
|
||||
})
|
||||
->addColumn('status', function (UserCredit $UserCredit) {
|
||||
return '<a href="#" data-toggle="modal" data-target="#modals-load-content" data-modal="modal-lg"
|
||||
data-id="'.$UserCredit->id.'" data-route="'.route('modal_load').'" data-action="user-credit-status" data-view="">
|
||||
<span class="badge badge-pill badge-'.$UserCredit->getStatusColor().'">'.$UserCredit->getStatusType().' <span class="ion ion-md-cash"></span></span>
|
||||
data-id="' . $UserCredit->id . '" data-route="' . route('modal_load') . '" data-action="user-credit-status" data-view="">
|
||||
<span class="badge badge-pill badge-' . $UserCredit->getStatusColor() . '">' . $UserCredit->getStatusType() . ' <span class="ion ion-md-cash"></span></span>
|
||||
</a>';
|
||||
})
|
||||
->filterColumn('user.account.first_name', function($query, $keyword) {
|
||||
if($keyword != ""){
|
||||
->filterColumn('user.account.first_name', function ($query, $keyword) {
|
||||
if ($keyword != "") {
|
||||
$query->whereHas('user.account', function ($query) use ($keyword) {
|
||||
return $query->where('first_name', 'LIKE', '%'.$keyword.'%');
|
||||
return $query->where('first_name', 'LIKE', '%' . $keyword . '%');
|
||||
});
|
||||
}
|
||||
})
|
||||
->filterColumn('user.account.last_name', function($query, $keyword) {
|
||||
if($keyword != ""){
|
||||
->filterColumn('user.account.last_name', function ($query, $keyword) {
|
||||
if ($keyword != "") {
|
||||
$query->whereHas('user.account', function ($query) use ($keyword) {
|
||||
return $query->where('last_name', 'LIKE', '%'.$keyword.'%');
|
||||
return $query->where('last_name', 'LIKE', '%' . $keyword . '%');
|
||||
});
|
||||
}
|
||||
})
|
||||
->filterColumn('user.email', function($query, $keyword) {
|
||||
if($keyword != ""){
|
||||
->filterColumn('user.email', function ($query, $keyword) {
|
||||
if ($keyword != "") {
|
||||
$query->whereHas('user', function ($query) use ($keyword) {
|
||||
return $query->where('email', 'LIKE', '%'.$keyword.'%');
|
||||
return $query->where('email', 'LIKE', '%' . $keyword . '%');
|
||||
});
|
||||
}
|
||||
})
|
||||
|
|
@ -254,4 +259,4 @@ class PaymentCreditController extends Controller
|
|||
->rawColumns(['total', 'credits', 'status', 'view'])
|
||||
->make(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue