Files
w4rpservices/app/Library/Helpers/SRPHelper.php

102 lines
2.4 KiB
PHP

<?php
namespace App\Library\Helpers;
//Internal Libraries
use Carbon\Carbon;
//Models
use App\Models\SRP\SrpFleetType;
use App\Models\SRP\SrpPayout;
use App\Models\SRP\SRPShip;
use App\Models\SRP\SrpShipType;
class SRPHelper {
public function GetAllianceSRPActual($start, $end) {
$actual = 0.00;
$actual = SRPShip::where([
'approved' => 'Approved',
])->whereBetween('created_at', [$start, $end])
->sum('paid_value');
return $actual;
}
public function GetAllianceSRPLoss($start, $end) {
$loss = 0.00;
$loss = SRPShip::where([
'approved' => 'Approved',
])->whereBetween('created_at', [$start, $end])
->sum('loss_value');
return $loss;
}
public function GetTimeFrame($months) {
$start = Carbon::now()->startOfMonth();
$start->hour = 23;
$start->minute = 59;
$start->second = 59;
$end = Carbon::now()->subMonths($months);
$end->hour = 23;
$end->minute = 59;
$end->second = 59;
$date = [
'start' => $start,
'end' => $end,
];
return $date;
}
/**
* Returns a set of dates from now until the amount of months has passed
*
* @var integer
* @returns array
*/
public function GetTimeFrameInMonths($months) {
//Declare an array of dates
$dates = array();
//Setup the start of the array as the basis of our start and end dates
$start = Carbon::now()->startOfMonth();
$end = Carbon::now()->endOfMonth();
$end->hour = 23;
$end->minute = 59;
$end->second = 59;
if($months == 1) {
$dates = [
'start' => $start,
'end' => $end,
];
return $dates;
}
//Create an array of dates
for($i = 0; $i < $months; $i++) {
if($i == 0) {
$dates[$i]['start'] = $start;
$dates[$i]['end'] = $end;
}
$start = Carbon::now()->startOfMonth()->subMonths($i);
$end = Carbon::now()->endOfMonth()->subMonths($i);
$end->hour = 23;
$end->minute = 59;
$end->second = 59;
$dates[$i]['start'] = $start;
$dates[$i]['end'] = $end;
}
//Return the dates back to the calling function
return $dates;
}
}
?>