SetStartStatus(); //Setup helper classes $hFinances = new FinanceHelper(); $sHelper = new StructureTaxHelper(); $start = Carbon::now()->startOfMonth()->subMonth(); $end = Carbon::now()->endOfMOnth()->subMonth(); $end->hour = 23; $end->minute = 59; $end->second = 59; //Get the set of corporations from the structure table $corps = CorpStructure::select('corporation_id')->groupBy('corporation_id')->get(); $this->line('Got all of the corps with markets.' . sizeof($corps)); foreach($corps as $corp) { $finalTaxes = $sHelper->GetTaxes($corp->corporation_id, 'Market', $start, $end); if($finalTaxes < 0.00) { $finalTaxes = 0.00; } $finalTaxes = number_format($finalTaxes, 2, '.', ','); //Get the info about the structures from the database $info = CorpStructure::where(['corporation_id' => $corp->corporation_id])->first(); $character = UserToCorporation::where(['character_id' => $info->character_id])->first(); //Store the value in the database $bill = new MonthlyMarketTax; $bill->character_id = $info->character_id; $bill->character_name = $character->character_name; $bill->corporation_id = $corp->corporation_id; $bill->corporation_name = $character->corporation_name; $bill->tax_owed = $finalTaxes; $bill->month = $start->month; $bill->year = $start->year; $bill->save(); //Retrieve the token for main character to send mails from $token = EsiToken::where(['character_id' => 93738489])->first(); //Create a new esi container and authentication $config = config('esi'); $authentication = new EsiAuthentication([ 'client_id' => $config['client_id'], 'secret' => $config['secret'], 'refresh_token' => $token->refresh_token, ]); $esi = new Eseye($authentication); //Send a mail out with the bill $subject = 'Market Taxes Owed'; $body = 'Year ' . $start->year . ' ' . 'Month: ' . $start->month . '
Market Taxes Owed: ' . $finalTaxes . '
Please remit to Spatial Forces'; try { $this->line('Attemping to send the mail.'); $esi->setBody(['\"approved_cost\": 0, \"body\": \"Test\", \"recipients\": [ { \"recipient_id\": 92626011, \"recipient_type\": \"character\" } ], \"subject\": \"Test\"']) //$esi->setBody([ // 'approved_cost' => 50000, // 'body' => $body, // 'recipients' => [ // 'recipient_id' => (int)$info->character_id, // 'recipient_type' => 'character', // ], // 'subject' => $subject,]) ->invoke('post', '/characters/{character_id}/mail/', [ 'character_id'=> 93738489, ]); $this->line('Mail sent.'); } catch(RequestFailedException $e) { $this->line('Error is ' . $e); } } //Mark the job as finished $task->SetStopStatus(); } }