Working on manual payouts
This commit is contained in:
parent
d15d10a022
commit
a9efcc8e15
3 changed files with 99 additions and 64 deletions
|
|
@ -515,46 +515,8 @@ class UsersController extends Controller
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
$response = Tipp::getRoundTipps();
|
$sortedPayout = Quota::getPayoutPerUser();
|
||||||
$roundtipps = $response['roundtipps'];
|
|
||||||
$roundData = $response['roundData'];
|
|
||||||
$user_ids = $response['user_ids'];
|
|
||||||
$round_ids = $response['round_ids'];
|
|
||||||
|
|
||||||
$payoutTotal = array();
|
|
||||||
$cnt=0;
|
|
||||||
foreach($round_ids as $round_id) {
|
|
||||||
foreach($user_ids as $user_id) {
|
|
||||||
$key=$round_id."_".$user_id;
|
|
||||||
|
|
||||||
$payout = str_replace(",",".",$roundtipps[$key]['payout']);
|
|
||||||
if (strlen($payout)==0) { $payout=0; }
|
|
||||||
|
|
||||||
if (!array_key_exists($user_id, $payoutTotal)) {
|
|
||||||
$payoutTotal[$user_id]['amount']=0;
|
|
||||||
$payoutTotal[$user_id]['name']=$roundtipps[$key]['user_name'];
|
|
||||||
$payoutTotal[$user_id]['user_id']=$roundtipps[$key]['user_id'];
|
|
||||||
}
|
|
||||||
|
|
||||||
$payoutTotal[$user_id]['amount'] += $payout;
|
|
||||||
|
|
||||||
$payout_ranking = $roundtipps[$key]['ranking_payout'];
|
|
||||||
$payoutTotal[$user_id]['amount'] += $payout_ranking;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$sortedPayout=array();
|
|
||||||
foreach($payoutTotal as $payout) {
|
|
||||||
$payment=array();
|
|
||||||
$payment['user_id']=$payout['user_id'];
|
|
||||||
$payment['name']=$payout['name'];
|
|
||||||
$payment['amount']=$payout['amount'];
|
|
||||||
array_push($sortedPayout,$payment);
|
|
||||||
}
|
|
||||||
|
|
||||||
usort($sortedPayout,array($this,'cmpPayment'));
|
|
||||||
|
|
||||||
//dd($sortedPayout);
|
|
||||||
|
|
||||||
return view ('users.payout_ranking_index',compact('sortedPayout'));
|
return view ('users.payout_ranking_index',compact('sortedPayout'));
|
||||||
}
|
}
|
||||||
|
|
@ -641,41 +603,19 @@ class UsersController extends Controller
|
||||||
return view('users.no_payment');
|
return view('users.no_payment');
|
||||||
}
|
}
|
||||||
|
|
||||||
$response = Tipp::getRoundTipps();
|
|
||||||
$roundtipps = $response['roundtipps'];
|
|
||||||
//$roundData = $response['roundData'];
|
|
||||||
//$user_ids = $response['user_ids'];
|
|
||||||
$round_ids = $response['round_ids'];
|
|
||||||
|
|
||||||
$payouts = array();
|
|
||||||
$cnt=0;
|
|
||||||
foreach($round_ids as $round_id) {
|
|
||||||
|
|
||||||
$key=$round_id."_".$user_id;
|
$payouts = Quota::getPayoutPerUserDetails($user_id);
|
||||||
$payout = $roundtipps[$key]['payout'];
|
|
||||||
|
|
||||||
if (strlen( $payout )>0) {
|
|
||||||
$round = Round::where('id','=',$round_id)->first();
|
|
||||||
|
|
||||||
$item=array();
|
|
||||||
$item['roundname']=$round->name . " (Tagessieg)";
|
|
||||||
$item['payout'] =$payout;
|
|
||||||
array_push($payouts,$item);
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($roundtipps[$key]['ranking_payout']>0) {
|
|
||||||
$item=array();
|
|
||||||
$item['roundname']="Platzierungssieg Rang ".$roundtipps[$key]['rank'];
|
|
||||||
$item['payout']=$roundtipps[$key]['ranking_payout'];
|
|
||||||
array_push($payouts,$item);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$user = User::where('id','=',$user_id)->first();
|
$user = User::where('id','=',$user_id)->first();
|
||||||
|
|
||||||
return view ('users.payout_ranking_detail',compact('payouts','user'));
|
return view ('users.payout_ranking_detail',compact('payouts','user'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public function gshirt_ranking() {
|
public function gshirt_ranking() {
|
||||||
if (Auth::guest()) { return redirect("/"); }
|
if (Auth::guest()) { return redirect("/"); }
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -313,4 +313,92 @@ class Quota extends Model
|
||||||
return $number;
|
return $number;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public static function getPayoutPerUserDetails($userId) {
|
||||||
|
$response = Tipp::getRoundTipps();
|
||||||
|
$roundtipps = $response['roundtipps'];
|
||||||
|
$round_ids = $response['round_ids'];
|
||||||
|
|
||||||
|
$payouts = array();
|
||||||
|
$cnt=0;
|
||||||
|
foreach($round_ids as $round_id) {
|
||||||
|
|
||||||
|
$key=$round_id."_".$userId;
|
||||||
|
$payout = $roundtipps[$key]['payout'];
|
||||||
|
|
||||||
|
if (strlen( $payout )>0) {
|
||||||
|
$round = Round::where('id','=',$round_id)->first();
|
||||||
|
|
||||||
|
$item=array();
|
||||||
|
$item['roundname']=$round->name . " (Tagessieg)";
|
||||||
|
$item['payout'] =$payout;
|
||||||
|
array_push($payouts,$item);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($roundtipps[$key]['ranking_payout']>0) {
|
||||||
|
$item=array();
|
||||||
|
$item['roundname']="Platzierungssieg Rang ".$roundtipps[$key]['rank'];
|
||||||
|
$item['payout']=$roundtipps[$key]['ranking_payout'];
|
||||||
|
array_push($payouts,$item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//TODO: Manuelle Payouts hinzufügen
|
||||||
|
return $payouts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getPayoutPerUser($seasonId=-1)
|
||||||
|
{
|
||||||
|
$season = Season::get($seasonId);
|
||||||
|
|
||||||
|
$response = Tipp::getRoundTipps();
|
||||||
|
$roundtipps = $response['roundtipps'];
|
||||||
|
$user_ids = $response['user_ids'];
|
||||||
|
$round_ids = $response['round_ids'];
|
||||||
|
|
||||||
|
$payoutTotal = array();
|
||||||
|
$cnt = 0;
|
||||||
|
foreach ($round_ids as $round_id) {
|
||||||
|
foreach ($user_ids as $user_id) {
|
||||||
|
$key = $round_id . "_" . $user_id;
|
||||||
|
|
||||||
|
$payout = str_replace(",", ".", $roundtipps[$key]['payout']);
|
||||||
|
if (strlen($payout) == 0) {
|
||||||
|
$payout = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!array_key_exists($user_id, $payoutTotal)) {
|
||||||
|
$payoutTotal[$user_id]['amount'] = 0;
|
||||||
|
$payoutTotal[$user_id]['name'] = $roundtipps[$key]['user_name'];
|
||||||
|
$payoutTotal[$user_id]['user_id'] = $roundtipps[$key]['user_id'];
|
||||||
|
}
|
||||||
|
|
||||||
|
$payoutTotal[$user_id]['amount'] += $payout;
|
||||||
|
|
||||||
|
$payout_ranking = $roundtipps[$key]['ranking_payout'];
|
||||||
|
$payoutTotal[$user_id]['amount'] += $payout_ranking;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$sortedPayout = array();
|
||||||
|
foreach ($payoutTotal as $payout) {
|
||||||
|
$payment = array();
|
||||||
|
$payment['user_id'] = $payout['user_id'];
|
||||||
|
$payment['name'] = $payout['name'];
|
||||||
|
$payment['amount'] = $payout['amount'];
|
||||||
|
array_push($sortedPayout, $payment);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
usort($sortedPayout,array('App\Quota','cmpPayment'));
|
||||||
|
|
||||||
|
//TODO: Manuelle Payouts hinzufügen
|
||||||
|
|
||||||
|
return $sortedPayout;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function cmpPayment($payment1, $payment2) {
|
||||||
|
return ($payment1['amount'] < $payment2['amount']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -49,6 +49,13 @@ class Season extends Model
|
||||||
return $seasons[1];
|
return $seasons[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function get($seasonId) {
|
||||||
|
if ($seasonId==-1) return Season::getCurrent();
|
||||||
|
$season=Season::where('id','=',$seasonId)->first();
|
||||||
|
return $season;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public static function hasQualifications($seasonId=-1) {
|
public static function hasQualifications($seasonId=-1) {
|
||||||
return Season::hasLeagueType($seasonId,League::RANK_QUALIFICATION);
|
return Season::hasLeagueType($seasonId,League::RANK_QUALIFICATION);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue