Files
w4rpservices/app/Http/Controllers/Structures/StructureController.php

125 lines
4.1 KiB
PHP

<?php
namespace App\Http\Controllers\Structures;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Auth;
use DB;
use Carbon\Carbon;
use App\Library\Structures\StructureTaxHelper;
use App\Library\Esi\Esi;
use App\Library\Lookups\LookupHelper;
use App\User;
use App\Models\User\UserRole;
use App\Models\User\UserPermission;
use App\Models\Corporation\CorpStructure;
use App\Models\Finances\StructureIndustryTaxJournal;
use App\Models\Esi\EsiToken;
use Seat\Eseye\Containers\EsiAuthentication;
use Seat\Eseye\Eseye;
use Seat\Eseye\Exceptions\RequestFailedException;
class StructureController extends Controller
{
public function __construct() {
$this->middleware('auth');
$this->middleware('role:User');
$this->middleware('permission:structure.operator');
}
public function chooseCorpTaxes() {
$this->middleware('role:Admin');
$corps = CorpStructure::pluck('corporation_name', 'corporation_id');
return view('structures.admin.choosecorporation')->with('corps', $corps);
}
public function displayCorpTaxes(Request $request) {
$this->middleware('role:Admin');
$corpId = $request->corpId;
$months = 3;
//Declare the structure tax helper class
$sHelper = new StructureTaxHelper();
//Get the dates we are working with
$dates = $sHelper->GetTimeFrameInMonths($months);
foreach($dates as $date) {
$totalTaxes[] = [
'date' => $date['start']->toFormattedDateString(),
'tax' => number_format($sHelper->GetTaxes($corpId, 'Market', $date['start'], $date['end']), 2, '.', ','),
'revenue' => number_format($sHelper->GetRevenue($corpId, 'Market', $date['start'], $date['end']), 2, '.', ',')
];
}
//Return the view with the data passed to it
return view('structures.admin.choosecorptaxes')->with('totalTaxes', $totalTaxes);
}
public function displayTaxes() {
//Declare new Lookup helper
$helper = new LookupHelper();
//Declare the structure tax helper class
$sHelper = new StructureTaxHelper();
$months = 3;
$totalTaxes = array();
//Get the character's corporation from the lookup table or esi
$corpId = $helper->LookupCharacter(Auth::user()->character_id);
//Get the dates we are working with
$dates = $sHelper->GetTimeFrameInMonths($months);
//Get the market taxes for this month from the database
foreach($dates as $date) {
$totalTaxes[] = [
'date' => $date['start']->toFormattedDateString(),
'tax' => number_format($sHelper->GetTaxes($corpId, 'Market', $date['start'], $date['end']), 2, '.', ','),
'revenue' => number_format($sHelper->GetRevenue($corpId, 'Market', $date['start'], $date['end']), 2, '.', ',')
];
}
return view('structures.user.taxes')->with('totalTaxes', $totalTaxes);
}
public function displayTaxHistory(Request $request) {
//Declare new Lookup helper
$helper = new LookupHelper();
//Get the months from the request
$months = $request->months;
//Get the character's corporation from the lookup table or esi
$corpId = $helper->LookupCharacter(Auth::user()->character_id);
//Declare the structure tax helper class
$sHelper = new StructureTaxHelper();
//Get the dates we are working with
$dates = $sHelper->GetTimeFrameInMonths($months);
//Build the array for displaying the data on the view
$totalTaxes = array();
foreach($dates as $date) {
$totalTaxes[] = [
'date' => $date['start']->toFormattedDateString(),
'tax' => number_format($sHelper->GetTaxes($corpId, 'Market', $date['start'], $date['end']), 2, '.', ','),
'revenue' => number_format($sHelper->GetRevenue($corpId, 'Market', $date['start'], $date['end']), 2, '.', ',')
];
}
return view('structures.user.taxhistory')->with(compact('totalTaxes', 'months'));
}
}