Files
opensem/app/Repositories/Shop/Deliveries.php

49 lines
1.1 KiB
PHP

<?php
namespace App\Repositories\Shop;
use App\Models\Shop\Delivery;
use App\Traits\Model\Basic;
class Deliveries
{
use Basic;
public static function getSaleChannelId($deliveryId)
{
return $deliveryId ? Deliveries::getField($deliveryId, 'sale_channel_id') : SaleChannels::getDefaultID();
}
public static function getDefault()
{
return Delivery::active()->atHouse()->first();
}
public static function getOptions()
{
return Delivery::orderBy('name', 'asc')->pluck('name', 'id')->toArray();
}
public static function getAll($relations = false)
{
$model = $relations ? Delivery::with($relations) : Delivery::query();
return $model->orderBy('name', 'asc')->get();
}
public static function getAllWithSaleChannel()
{
return Delivery::orderBy('name', 'asc')->active()->public()->with('sale_channel')->get();
}
public static function toggle_active($id, $active)
{
return self::update(['active' => $active], $id);
}
public static function getModel()
{
return Delivery::query();
}
}