103 lines
2.6 KiB
PHP
103 lines
2.6 KiB
PHP
<?php
|
|
|
|
namespace App\Services;
|
|
|
|
use Response;
|
|
use Schema;
|
|
use Hash;
|
|
use App\Libraries\ListHelper;
|
|
|
|
use Illuminate\Http\Request;
|
|
|
|
use App\Contracts\StationFuelPricesInterface;
|
|
use App\StationFuelPrices;
|
|
use App\Helpers\HttpStatusCode;
|
|
use App\Helpers\CurrentUserHelper;
|
|
use App\Libraries\UuidHelper;
|
|
use App\Libraries\S3;
|
|
|
|
class StationFuelPricesService implements StationFuelPricesInterface
|
|
{
|
|
|
|
public $stationFuelPrices;
|
|
|
|
public function store($station_id, $data)
|
|
{
|
|
$this->stationFuelPrices = new StationFuelPrices;
|
|
|
|
$uuid = new UuidHelper;
|
|
$this->stationFuelPrices->fuel_price_uuid = $uuid->generate_uuid1();
|
|
$this->stationFuelPrices->station_id = $station_id;
|
|
$this->stationFuelPrices->fuel_code = $data['fuel_code'];
|
|
$this->stationFuelPrices->fuel_name = $data['fuel_name'];
|
|
$this->stationFuelPrices->price = $data['price'];
|
|
|
|
|
|
if ($this->stationFuelPrices->save())
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public function getByField($data, $relationship = null, $order_by = null)
|
|
{
|
|
if($relationship)
|
|
{
|
|
$this->stationFuelPrices = StationFuelPrices::with($relationship);
|
|
}
|
|
else
|
|
$this->stationFuelPrices = new StationFuelPrices;
|
|
|
|
if(count($data))
|
|
{
|
|
foreach ($data as $field => $value) {
|
|
$this->stationFuelPrices = $this->stationFuelPrices->where($field,$value);
|
|
}
|
|
}
|
|
|
|
if($order_by != null)
|
|
$this->stationFuelPrices->orderBy($order_by['field'],$order_by['value']);
|
|
|
|
return $this->stationFuelPrices->get();
|
|
}
|
|
|
|
public function update_price($uuid,$price)
|
|
{
|
|
$this->stationFuelPrices = StationFuelPrices::where('fuel_price_uuid',$uuid)->first();
|
|
|
|
|
|
if($this->stationFuelPrices)
|
|
{
|
|
$this->stationFuelPrices->price = $price;
|
|
|
|
if ($this->stationFuelPrices->save())
|
|
{
|
|
return $this->stationFuelPrices;
|
|
}
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
public function delete($station_id,$ids)
|
|
{
|
|
|
|
$this->stationFuelPrices = StationFuelPrices::where('station_id',$station_id)
|
|
->whereNotIn('fuel_code',$ids)
|
|
->update([
|
|
'is_active' => 0
|
|
]);
|
|
|
|
|
|
if($this->stationFuelPrices)
|
|
return true;
|
|
else
|
|
return false;
|
|
|
|
}
|
|
|
|
} |