moon calc update
This commit is contained in:
@@ -485,58 +485,75 @@ class MoonCalc {
|
|||||||
//Go through each of the items and update the price
|
//Go through each of the items and update the price
|
||||||
foreach($items as $item) {
|
foreach($items as $item) {
|
||||||
//Get the item composition
|
//Get the item composition
|
||||||
$composition = DB::select('SELECT * FROM ItemComposition WHERE ItemId = ?', [$item->ItemId]);
|
$composition = ItemComposition::where('ItemId', $item->ItemId)->first();
|
||||||
|
|
||||||
//Calculate the Batch Price
|
//Calculate the Batch Price
|
||||||
$batchPrice = ( ($composition[0]->Tritanium * $tritaniumPrice) +
|
$batchPrice = ( ($composition->Tritanium * $tritaniumPrice) +
|
||||||
($composition[0]->Pyerite * $pyeritePrice) +
|
($composition->Pyerite * $pyeritePrice) +
|
||||||
($composition[0]->Mexallon * $mexallonPrice) +
|
($composition->Mexallon * $mexallonPrice) +
|
||||||
($composition[0]->Isogen * $isogenPrice) +
|
($composition->Isogen * $isogenPrice) +
|
||||||
($composition[0]->Nocxium * $nocxiumPrice) +
|
($composition->Nocxium * $nocxiumPrice) +
|
||||||
($composition[0]->Zydrine * $zydrinePrice) +
|
($composition->Zydrine * $zydrinePrice) +
|
||||||
($composition[0]->Megacyte * $megacytePrice) +
|
($composition->Megacyte * $megacytePrice) +
|
||||||
($composition[0]->Morphite * $morphitePrice) +
|
($composition->Morphite * $morphitePrice) +
|
||||||
($composition[0]->HeavyWater * $heavyWaterPrice) +
|
($composition->HeavyWater * $heavyWaterPrice) +
|
||||||
($composition[0]->LiquidOzone * $liquidOzonePrice) +
|
($composition->LiquidOzone * $liquidOzonePrice) +
|
||||||
($composition[0]->NitrogenIsotopes * $nitrogenIsotopesPrice) +
|
($composition->NitrogenIsotopes * $nitrogenIsotopesPrice) +
|
||||||
($composition[0]->HeliumIsotopes * $heliumIsotopesPrice) +
|
($composition->HeliumIsotopes * $heliumIsotopesPrice) +
|
||||||
($composition[0]->HydrogenIsotopes * $hydrogenIsotopesPrice) +
|
($composition->HydrogenIsotopes * $hydrogenIsotopesPrice) +
|
||||||
($composition[0]->OxygenIsotopes * $oxygenIsotopesPrice) +
|
($composition->OxygenIsotopes * $oxygenIsotopesPrice) +
|
||||||
($composition[0]->StrontiumClathrates * $strontiumClathratesPrice) +
|
($composition->StrontiumClathrates * $strontiumClathratesPrice) +
|
||||||
($composition[0]->AtmosphericGases * $atmosphericGasesPrice) +
|
($composition->AtmosphericGases * $atmosphericGasesPrice) +
|
||||||
($composition[0]->EvaporiteDeposits * $evaporiteDepositsPirce) +
|
($composition->EvaporiteDeposits * $evaporiteDepositsPirce) +
|
||||||
($composition[0]->Hydrocarbons * $hydrocarbonsPrice) +
|
($composition->Hydrocarbons * $hydrocarbonsPrice) +
|
||||||
($composition[0]->Silicates * $silicatesPrice) +
|
($composition->Silicates * $silicatesPrice) +
|
||||||
($composition[0]->Cobalt * $cobaltPrice) +
|
($composition->Cobalt * $cobaltPrice) +
|
||||||
($composition[0]->Scandium * $scandiumPrice) +
|
($composition->Scandium * $scandiumPrice) +
|
||||||
($composition[0]->Titanium * $titaniumPrice) +
|
($composition->Titanium * $titaniumPrice) +
|
||||||
($composition[0]->Tungsten * $tungstenPrice) +
|
($composition->Tungsten * $tungstenPrice) +
|
||||||
($composition[0]->Cadmium * $cadmiumPrice) +
|
($composition->Cadmium * $cadmiumPrice) +
|
||||||
($composition[0]->Platinum * $platinumPrice) +
|
($composition->Platinum * $platinumPrice) +
|
||||||
($composition[0]->Vanadium * $vanadiumPrice) +
|
($composition->Vanadium * $vanadiumPrice) +
|
||||||
($composition[0]->Chromium * $chromiumPrice)+
|
($composition->Chromium * $chromiumPrice)+
|
||||||
($composition[0]->Technetium * $technetiumPrice) +
|
($composition->Technetium * $technetiumPrice) +
|
||||||
($composition[0]->Hafnium * $hafniumPrice) +
|
($composition->Hafnium * $hafniumPrice) +
|
||||||
($composition[0]->Caesium * $caesiumPrice) +
|
($composition->Caesium * $caesiumPrice) +
|
||||||
($composition[0]->Mercury * $mercuryPrice) +
|
($composition->Mercury * $mercuryPrice) +
|
||||||
($composition[0]->Dysprosium * $dysprosiumPrice) +
|
($composition->Dysprosium * $dysprosiumPrice) +
|
||||||
($composition[0]->Neodymium * $neodymiumPrice) +
|
($composition->Neodymium * $neodymiumPrice) +
|
||||||
($composition[0]->Promethium * $promethiumPrice) +
|
($composition->Promethium * $promethiumPrice) +
|
||||||
($composition[0]->Thulium * $thuliumPrice));
|
($composition->Thulium * $thuliumPrice));
|
||||||
//Calculate the batch price with the refine rate included
|
//Calculate the batch price with the refine rate included
|
||||||
//Batch Price is base price for everything
|
//Batch Price is base price for everything
|
||||||
$batchPrice = $batchPrice * $refineRate;
|
$batchPrice = $batchPrice * $refineRate;
|
||||||
//Calculate the unit price
|
//Calculate the unit price
|
||||||
$price = $batchPrice / $composition[0]->BatchSize;
|
$price = $batchPrice / $composition->BatchSize;
|
||||||
//Calculate the m3 price
|
//Calculate the m3 price
|
||||||
$m3Price = $price / $composition[0]->m3Size;
|
$m3Price = $price / $composition->m3Size;
|
||||||
//Update the prices in the Prices table
|
|
||||||
DB::table('OrePrices')->where('Name', $composition[0]->Name)->update([
|
//Check if an item is in the table
|
||||||
'Name' => $composition[0]->Name,
|
$count = OrePrice::where('Name', $composition->Name)->count();
|
||||||
'ItemId' => $composition[0]->ItemId,
|
if($count == 0) {
|
||||||
'BatchPrice' => $batchPrice,
|
//If the ore wasn't found, then add a new entry
|
||||||
'UnitPrice' => $price,
|
$ore = new OrePrice;
|
||||||
'm3Price' => $m3Price,
|
$ore->Name = $composition->Name;
|
||||||
]);
|
$ore->ItemId = $composition->ItemId;
|
||||||
|
$ore->BatchPrice = $batchPrice;
|
||||||
|
$ore->UnitPrice = $price;
|
||||||
|
$ore->m3Price = $m3Price;
|
||||||
|
$ore->Time = $time;
|
||||||
|
$ore->save();
|
||||||
|
} else {
|
||||||
|
//Update the prices in the Prices table
|
||||||
|
OrePrice::where('Name', $composition->Name)->update([
|
||||||
|
'Name' => $composition->Name,
|
||||||
|
'ItemId' => $composition->ItemId,
|
||||||
|
'BatchPrice' => $batchPrice,
|
||||||
|
'UnitPrice' => $price,
|
||||||
|
'm3Price' => $m3Price,
|
||||||
|
'Time' => $time,
|
||||||
|
]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -567,7 +584,7 @@ class MoonCalc {
|
|||||||
//Calculate the units once we have the size and actual m3 value
|
//Calculate the units once we have the size and actual m3 value
|
||||||
$units = floor($actualm3 / $m3Size);
|
$units = floor($actualm3 / $m3Size);
|
||||||
//Look up the unit price from the database
|
//Look up the unit price from the database
|
||||||
$unitPrice = DB::table('OrePrices')->where('Name', $ore)->value('UnitPrice');
|
$unitPrice = DB::table('ore_prices')->where('Name', $ore)->value('UnitPrice');
|
||||||
//Calculate the total amount from the units and unit price
|
//Calculate the total amount from the units and unit price
|
||||||
$total = $units * $unitPrice;
|
$total = $units * $unitPrice;
|
||||||
//Return the value
|
//Return the value
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Models\Moon;
|
|
||||||
|
|
||||||
use Illuminate\Database\Eloquent\Model;
|
|
||||||
|
|
||||||
class AvgMineralPrices extends Model
|
|
||||||
{
|
|
||||||
//Table Name
|
|
||||||
protected $table = 'avg_mineral_prices';
|
|
||||||
|
|
||||||
//Primary Key
|
|
||||||
public $primaryKey = 'id';
|
|
||||||
|
|
||||||
//Timestamps
|
|
||||||
public $timestamps = true;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Fillable array
|
|
||||||
*
|
|
||||||
* @var array
|
|
||||||
*/
|
|
||||||
protected $fillable = [
|
|
||||||
'Name',
|
|
||||||
'ItemId',
|
|
||||||
'Price',
|
|
||||||
'Time',
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Models\Moon;
|
|
||||||
|
|
||||||
use Illuminate\Database\Eloquent\Model;
|
|
||||||
|
|
||||||
class AvgOrePrices extends Model
|
|
||||||
{
|
|
||||||
//Table Name
|
|
||||||
protected $table = 'avg_ore_prices';
|
|
||||||
|
|
||||||
//Primary Key
|
|
||||||
public $primaryKey = 'id';
|
|
||||||
|
|
||||||
//Timestamps
|
|
||||||
public $timestamps = true;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Fillable array
|
|
||||||
*
|
|
||||||
* @var array
|
|
||||||
*/
|
|
||||||
protected $fillable = [
|
|
||||||
'Name',
|
|
||||||
'ItemId',
|
|
||||||
'BatchPrice',
|
|
||||||
'UnitPrice',
|
|
||||||
'm3Price',
|
|
||||||
'Time',
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -7,7 +7,7 @@ use Illuminate\Database\Eloquent\Model;
|
|||||||
class OrePrice extends Model
|
class OrePrice extends Model
|
||||||
{
|
{
|
||||||
// Table Name
|
// Table Name
|
||||||
protected $table = 'OrePrices';
|
protected $table = 'ore_prices';
|
||||||
|
|
||||||
//Primary Key
|
//Primary Key
|
||||||
public $primaryKey = 'id';
|
public $primaryKey = 'id';
|
||||||
|
|||||||
@@ -76,8 +76,8 @@ class CreateConfigTable extends Migration
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!Schema::hasTable('OrePrices')) {
|
if(!Schema::hasTable('ore_prices')) {
|
||||||
Schema::create('OrePrices', function (Blueprint $table) {
|
Schema::create('ore_prices', function (Blueprint $table) {
|
||||||
$table->increments('id');
|
$table->increments('id');
|
||||||
$table->string('Name');
|
$table->string('Name');
|
||||||
$table->integer('ItemId');
|
$table->integer('ItemId');
|
||||||
@@ -99,6 +99,6 @@ class CreateConfigTable extends Migration
|
|||||||
Schema::dropIfExists('Config');
|
Schema::dropIfExists('Config');
|
||||||
Schema::dropIfExists('ItemComposition');
|
Schema::dropIfExists('ItemComposition');
|
||||||
Schema::dropIfExists('mineral_prices');
|
Schema::dropIfExists('mineral_prices');
|
||||||
Schema::dropIfExists('OrePrices');
|
Schema::dropIfExists('ore_prices');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,12 +3,13 @@
|
|||||||
use Illuminate\Database\Seeder;
|
use Illuminate\Database\Seeder;
|
||||||
use GuzzleHttp\Exception\GuzzleException;
|
use GuzzleHttp\Exception\GuzzleException;
|
||||||
use GuzzleHttp\Client;
|
use GuzzleHttp\Client;
|
||||||
|
use Carbon\Carbon;
|
||||||
|
|
||||||
use App\Models\Moon\Config;
|
use App\Models\Moon\Config;
|
||||||
use App\Models\Moon\Moon;
|
use App\Models\Moon\Moon;
|
||||||
use App\Models\Moon\Price;
|
|
||||||
use App\Models\Moon\ItemComposition;
|
use App\Models\Moon\ItemComposition;
|
||||||
use App\Models\Moon\OrePrice;
|
use App\Models\Moon\OrePrice;
|
||||||
|
use App\Models\Moon\MineralPrice;
|
||||||
|
|
||||||
class OrePricesSeeder extends Seeder
|
class OrePricesSeeder extends Seeder
|
||||||
{
|
{
|
||||||
@@ -29,105 +30,110 @@ class OrePricesSeeder extends Seeder
|
|||||||
//Calculate refine rate
|
//Calculate refine rate
|
||||||
$refineRate = $config->RefineRate / 100.00;
|
$refineRate = $config->RefineRate / 100.00;
|
||||||
//Calculate the current time
|
//Calculate the current time
|
||||||
$time = time();
|
$time = Carbon::now();
|
||||||
//Get the max time from the database
|
|
||||||
$maxTime = DB::table('Prices')->where('ItemId', 34)->max('Time');
|
|
||||||
//Get the price of the basic minerals
|
//Get the price of the basic minerals
|
||||||
$tritaniumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [34, $maxTime]);
|
$tritaniumPrice = MineralPrice::where(['ItemId' => 34])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$tritanium = DB::select( DB::raw('SELECT Price FROM Prices WHERE ItemId= :id AND Time= :time'), array('id' => 34, 'time' => $maxTime));
|
$pyeritePrice = MineralPrice::where(['ItemId' => 35])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$pyeritePrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [35, $maxTime]);
|
$mexallonPrice = MineralPrice::where(['ItemId' => 36])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$mexallonPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [36, $maxTime]);
|
$isogenPrice = MineralPrice::where(['ItemId' => 37])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$isogenPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [37, $maxTime]);
|
$nocxiumPrice = MineralPrice::where(['ItemId' => 38])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$nocxiumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [38, $maxTime]);
|
$zydrinePrice = MineralPrice::where(['ItemId' => 39])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$zydrinePrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [39, $maxTime]);
|
$megacytePrice = MineralPrice::where(['ItemId' => 40])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$megacytePrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [40, $maxTime]);
|
$morphitePrice = MineralPrice::where(['ItemId' => 11399])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$morphitePrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [11399, $maxTime]);
|
$heliumIsotopesPrice = MineralPrice::where(['ItemId' => 16274])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$heliumIsotopesPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16274, $maxTime]);
|
$nitrogenIsotopesPrice = MineralPrice::where(['ItemId' => 17888])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$nitrogenIsotopesPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [17888, $maxTime]);
|
$oxygenIsotopesPrice = MineralPrice::where(['ItemId' => 17887])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$oxygenIsotopesPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [17887, $maxTime]);
|
$hydrogenIsotopesPrice = MineralPrice::where(['ItemId' => 17889])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$hydrogenIsotopesPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [17889, $maxTime]);
|
$liquidOzonePrice = MineralPrice::where(['ItemId' => 16273])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$liquidOzonePrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16273, $maxTime]);
|
$heavyWaterPrice = MineralPrice::where(['ItemId' => 16272])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$heavyWaterPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16272, $maxTime]);
|
$strontiumClathratesPrice = MineralPrice::where(['ItemId' => 16275])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$strontiumClathratesPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16275, $maxTime]);
|
|
||||||
//Get the price of the moongoo
|
//Get the price of the moongoo
|
||||||
$atmosphericGasesPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16634, $maxTime]);
|
$atmosphericGasesPrice = MineralPrice::where(['ItemId' => 16634])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$evaporiteDepositsPirce = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16635, $maxTime]);
|
$evaporiteDepositsPirce = MineralPrice::where(['ItemId' => 16635])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$hydrocarbonsPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16633, $maxTime]);
|
$hydrocarbonsPrice = MineralPrice::where(['ItemId' => 16633])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$silicatesPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16636, $maxTime]);
|
$silicatesPrice = MineralPrice::where(['ItemId' => 16636])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$cobaltPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16640, $maxTime]);
|
$cobaltPrice = MineralPrice::where(['ItemId' => 16640])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$scandiumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16639, $maxTime]);
|
$scandiumPrice = MineralPrice::where(['ItemId' => 16639])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$titaniumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16638, $maxTime]);
|
$titaniumPrice = MineralPrice::where(['ItemId' => 16638])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$tungstenPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16637, $maxTime]);
|
$tungstenPrice = MineralPrice::where(['ItemId' => 16637])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$cadmiumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16643, $maxTime]);
|
$cadmiumPrice = MineralPrice::where(['ItemId' => 16643])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$platinumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16644, $maxTime]);
|
$platinumPrice = MineralPrice::where(['ItemId' => 16644])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$vanadiumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16642, $maxTime]);
|
$vanadiumPrice = MineralPrice::where(['ItemId' => 16642])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$chromiumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16641, $maxTime]);
|
$chromiumPrice = MineralPrice::where(['ItemId' => 16641])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$technetiumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16649, $maxTime]);
|
$technetiumPrice = MineralPrice::where(['ItemId' => 16649])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$hafniumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16648, $maxTime]);
|
$hafniumPrice = MineralPrice::where(['ItemId' => 16648])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$caesiumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16647, $maxTime]);
|
$caesiumPrice = MineralPrice::where(['ItemId' => 16647])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$mercuryPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16646, $maxTime]);
|
$mercuryPrice = MineralPrice::where(['ItemId' => 16646])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$dysprosiumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16650, $maxTime]);
|
$dysprosiumPrice = MineralPrice::where(['ItemId' => 16650])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$neodymiumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16651, $maxTime]);
|
$neodymiumPrice = MineralPrice::where(['ItemId' => 16651])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$promethiumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16652, $maxTime]);
|
$promethiumPrice = MineralPrice::where(['ItemId' => 16652])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
$thuliumPrice = DB::select('SELECT Price FROM Prices WHERE ItemId = ? AND Time = ?', [16653, $maxTime]);
|
$thuliumPrice = MineralPrice::where(['ItemId' => 16653])->whereDate('Time', '>', $pastTime)->avg('Price');
|
||||||
|
|
||||||
|
|
||||||
//Get the item compositions
|
//Get the item compositions
|
||||||
$items = DB::select('SELECT Name,ItemId FROM ItemComposition');
|
$items = DB::select('SELECT Name,ItemId FROM ItemComposition');
|
||||||
//Go through each of the items and update the price
|
//Go through each of the items and update the price
|
||||||
foreach($items as $item) {
|
foreach($items as $item) {
|
||||||
//Get the item composition
|
//Get the item composition
|
||||||
$composition = DB::select('SELECT * FROM ItemComposition WHERE ItemId = ?', [$item->ItemId]);
|
$composition = ItemComposition::where('ItemId', $item->ItemId)->first();
|
||||||
|
|
||||||
//Calculate the Batch Price
|
//Calculate the Batch Price
|
||||||
$batchPrice = ( ($composition[0]->Tritanium * $tritaniumPrice[0]->Price) +
|
$batchPrice = ( ($composition->Tritanium * $tritaniumPrice) +
|
||||||
($composition[0]->Pyerite * $pyeritePrice[0]->Price) +
|
($composition->Pyerite * $pyeritePrice) +
|
||||||
($composition[0]->Mexallon * $mexallonPrice[0]->Price) +
|
($composition->Mexallon * $mexallonPrice) +
|
||||||
($composition[0]->Isogen * $isogenPrice[0]->Price) +
|
($composition->Isogen * $isogenPrice) +
|
||||||
($composition[0]->Nocxium * $nocxiumPrice[0]->Price) +
|
($composition->Nocxium * $nocxiumPrice) +
|
||||||
($composition[0]->Zydrine * $zydrinePrice[0]->Price) +
|
($composition->Zydrine * $zydrinePrice) +
|
||||||
($composition[0]->Megacyte * $megacytePrice[0]->Price) +
|
($composition->Megacyte * $megacytePrice) +
|
||||||
($composition[0]->Morphite * $morphitePrice[0]->Price) +
|
($composition->Morphite * $morphitePrice) +
|
||||||
($composition[0]->HeavyWater * $heavyWaterPrice[0]->Price) +
|
($composition->HeavyWater * $heavyWaterPrice) +
|
||||||
($composition[0]->LiquidOzone * $liquidOzonePrice[0]->Price) +
|
($composition->LiquidOzone * $liquidOzonePrice) +
|
||||||
($composition[0]->NitrogenIsotopes * $nitrogenIsotopesPrice[0]->Price) +
|
($composition->NitrogenIsotopes * $nitrogenIsotopesPrice) +
|
||||||
($composition[0]->HeliumIsotopes * $heliumIsotopesPrice[0]->Price) +
|
($composition->HeliumIsotopes * $heliumIsotopesPrice) +
|
||||||
($composition[0]->HydrogenIsotopes * $hydrogenIsotopesPrice[0]->Price) +
|
($composition->HydrogenIsotopes * $hydrogenIsotopesPrice) +
|
||||||
($composition[0]->OxygenIsotopes * $oxygenIsotopesPrice[0]->Price) +
|
($composition->OxygenIsotopes * $oxygenIsotopesPrice) +
|
||||||
($composition[0]->StrontiumClathrates * $strontiumClathratesPrice[0]->Price) +
|
($composition->StrontiumClathrates * $strontiumClathratesPrice) +
|
||||||
($composition[0]->AtmosphericGases * $atmosphericGasesPrice[0]->Price) +
|
($composition->AtmosphericGases * $atmosphericGasesPrice) +
|
||||||
($composition[0]->EvaporiteDeposits * $evaporiteDepositsPirce[0]->Price) +
|
($composition->EvaporiteDeposits * $evaporiteDepositsPirce) +
|
||||||
($composition[0]->Hydrocarbons * $hydrocarbonsPrice[0]->Price) +
|
($composition->Hydrocarbons * $hydrocarbonsPrice) +
|
||||||
($composition[0]->Silicates * $silicatesPrice[0]->Price) +
|
($composition->Silicates * $silicatesPrice) +
|
||||||
($composition[0]->Cobalt * $cobaltPrice[0]->Price) +
|
($composition->Cobalt * $cobaltPrice) +
|
||||||
($composition[0]->Scandium * $scandiumPrice[0]->Price) +
|
($composition->Scandium * $scandiumPrice) +
|
||||||
($composition[0]->Titanium * $titaniumPrice[0]->Price) +
|
($composition->Titanium * $titaniumPrice) +
|
||||||
($composition[0]->Tungsten * $tungstenPrice[0]->Price) +
|
($composition->Tungsten * $tungstenPrice) +
|
||||||
($composition[0]->Cadmium * $cadmiumPrice[0]->Price) +
|
($composition->Cadmium * $cadmiumPrice) +
|
||||||
($composition[0]->Platinum * $platinumPrice[0]->Price) +
|
($composition->Platinum * $platinumPrice) +
|
||||||
($composition[0]->Vanadium * $vanadiumPrice[0]->Price) +
|
($composition->Vanadium * $vanadiumPrice) +
|
||||||
($composition[0]->Chromium * $chromiumPrice[0]->Price)+
|
($composition->Chromium * $chromiumPrice)+
|
||||||
($composition[0]->Technetium * $technetiumPrice[0]->Price) +
|
($composition->Technetium * $technetiumPrice) +
|
||||||
($composition[0]->Hafnium * $hafniumPrice[0]->Price) +
|
($composition->Hafnium * $hafniumPrice) +
|
||||||
($composition[0]->Caesium * $caesiumPrice[0]->Price) +
|
($composition->Caesium * $caesiumPrice) +
|
||||||
($composition[0]->Mercury * $mercuryPrice[0]->Price) +
|
($composition->Mercury * $mercuryPrice) +
|
||||||
($composition[0]->Dysprosium * $dysprosiumPrice[0]->Price) +
|
($composition->Dysprosium * $dysprosiumPrice) +
|
||||||
($composition[0]->Neodymium * $neodymiumPrice[0]->Price) +
|
($composition->Neodymium * $neodymiumPrice) +
|
||||||
($composition[0]->Promethium * $promethiumPrice[0]->Price) +
|
($composition->Promethium * $promethiumPrice) +
|
||||||
($composition[0]->Thulium * $thuliumPrice[0]->Price));
|
($composition->Thulium * $thuliumPrice));
|
||||||
//Calculate the batch price with the refine rate included
|
|
||||||
|
//Calculate the batch price with the refine rate included
|
||||||
//Batch Price is base price for everything
|
//Batch Price is base price for everything
|
||||||
$batchPrice = $batchPrice * $refineRate;
|
$batchPrice = $batchPrice * $refineRate;
|
||||||
|
|
||||||
//Calculate the unit price
|
//Calculate the unit price
|
||||||
$price = $batchPrice / $composition[0]->BatchSize;
|
$price = $batchPrice / $composition->BatchSize;
|
||||||
|
|
||||||
//Calculate the m3 price
|
//Calculate the m3 price
|
||||||
$m3Price = $price / $composition[0]->m3Size;
|
$m3Price = $price / $composition->m3Size;
|
||||||
|
|
||||||
//Insert the prices into the Prices table
|
//Insert the prices into the Prices table
|
||||||
DB::table('OrePrices')->insert([
|
$ore = new OrePrice;
|
||||||
'Name' => $composition[0]->Name,
|
$ore->Name = $composition->Name;
|
||||||
'ItemId' => $composition[0]->ItemId,
|
$ore->ItemId = $composition->ItemId;
|
||||||
'BatchPrice' => $batchPrice,
|
$ore->BatchPrice = $batchPrice;
|
||||||
'UnitPrice' => $price,
|
$ore->UnitPrice = $price;
|
||||||
'm3Price' => $m3Price,
|
$ore->m3Price = $m3Price;
|
||||||
'Time' => $time
|
$ore->Time = $time;
|
||||||
]);
|
$ore->save();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user