X7ROOT File Manager
Current Path:
/home/gfecatvj/sites/restate/platform/plugins/location/src
home
/
gfecatvj
/
sites
/
restate
/
platform
/
plugins
/
location
/
src
/
📁
..
📁
Facades
📁
Forms
📁
Http
📄
Location.php
(1.94 KB)
📁
Models
📄
Plugin.php
(331 B)
📁
Providers
📁
Repositories
📁
Seeders
📁
Tables
Editing: Location.php
<?php namespace Botble\Location; use Botble\Base\Enums\BaseStatusEnum; use Botble\Location\Repositories\Interfaces\CityInterface; use Botble\Location\Repositories\Interfaces\StateInterface; class Location { /** * @var StateInterface */ public $stateRepository; /** * @var CityInterface */ public $cityRepository; /** * Location constructor. * @param StateInterface $stateRepository * @param CityInterface $cityRepository */ public function __construct(StateInterface $stateRepository, CityInterface $cityRepository) { $this->stateRepository = $stateRepository; $this->cityRepository = $cityRepository; } /** * @return \Illuminate\Config\Repository|mixed */ public function getStates() { $states = $this->stateRepository->advancedGet([ 'condition' => [ 'status' => BaseStatusEnum::PUBLISHED, ], 'order_by' => ['order' => 'DESC'], ]); return $states->pluck('name', 'id')->all(); } /** * @param $stateId * @return \Illuminate\Config\Repository|mixed */ public function getCitiesByState($stateId) { $cities = $this->cityRepository->advancedGet([ 'condition' => [ 'status' => BaseStatusEnum::PUBLISHED, 'state_id' => $stateId, ], 'order_by' => ['order' => 'DESC'], ]); return $cities->pluck('name', 'id')->all(); } /** * @param $cityId * @return string */ public function getCityNameById($cityId) { $city = $this->cityRepository->findById($cityId); return $city ? $city->name : null; } /** * @param $stateId * @return string */ public function getStateNameById($stateId) { $state = $this->stateRepository->findById($stateId); return $state ? $state->name : null; } }
Upload File
Create Folder