/
var
/
www
/
vhosts
/
nabawater
/
backend
/
modules
/
delivery
/
models
/
/var/www/vhosts/nabawater/backend/modules/delivery/models
mkdir
upload
Name
Size
Mode
Actions
DeliveryBoy.php
8153
0644
edit
dl
rm
DeliveryBoySearch.php
5446
0644
edit
dl
rm
Edit:
/var/www/vhosts/nabawater/backend/modules/delivery/models/DeliveryBoySearch.php
(5446B)
<?php namespace backend\modules\delivery\models; use Yii; use yii\data\ArrayDataProvider; use common\helpers\Com; use backend\models\Configuration; use backend\models\Order; use backend\models\Branch; use backend\models\AdminUser; use backend\models\AdminUserBranch; use yii\helpers\Url; use yii\helpers\Json; use yii\web\UploadedFile; /** * Class AreaSearch * @package backend/models */ class DeliveryBoySearch extends DeliveryBoy { /** * * @return array */ public function rules() { if(AdminUser::isVendor()) { return [ [['name', 'email'], 'safe'] ]; } else { return [ [['name', 'email','vendor_key', 'phone_number'], 'safe'] ]; } } /** * * @param type $params * @return ActiveDataProvider */ public function search($params) { $resultData = []; $responseData = Com::getJsonData('GET', Configuration::get(Configuration::DELIVERY_BOY_ACCESS_URL) . "driver/company?company_id=" . Configuration::get(Configuration::COMPANY_KEY), [], 0); /* set flash for sever down */ if ($responseData == null || (isset($responseData) && $responseData->status == 404)) { Yii::$app->session->setFlash('danger', Yii::t('backend', 'Server is down! Please try again some other time!')); } if (isset($responseData->data)) { if(AdminUser::isVendor()) { $vendor = Yii::$app->getUser()->getIdentity(); foreach ($responseData->data as $dataKey => $dataValue) { if($vendor->vendor_key == $dataValue->vendor_key) { $resultData[] = [ 'id' => $dataValue->_id, 'key' => $dataValue->_id, 'name' => $dataValue->name, 'status' => $dataValue->status, 'email' => $dataValue->email, 'phone_number' => $dataValue->phone_number, 'country' => $dataValue->country, 'city' => $dataValue->city, 'address' => $dataValue->address, 'is_approved' => $dataValue->is_approved, 'vendor_key' => (isset($dataValue->vendor_key)) ? $dataValue->vendor_key : '', ]; } } } else { foreach ($responseData->data as $dataKey => $dataValue) { $resultData[] = [ 'id' => $dataValue->_id, 'key' => $dataValue->_id, 'name' => $dataValue->name, 'status' => $dataValue->status, 'email' => $dataValue->email, 'phone_number' => $dataValue->phone_number, 'country' => $dataValue->country, 'city' => $dataValue->city, 'address' => $dataValue->address, 'is_approved' => $dataValue->is_approved, 'vendor_key' => (isset($dataValue->vendor_key)) ? $dataValue->vendor_key : '', ]; } } } else { $resultData = []; } $this->load($params); if(!$this->validate()) { return $dataProvider; } if($this->name != '') { $filterBy = $this->name; // or Finance etc. $resultData = array_filter($resultData, function ($var) use ($filterBy) { return (stripos( strtolower($var['name']) , strtolower($filterBy) ) !== false ); }); } if($this->email != '') { $filterBy = $this->email; // or Finance etc. $resultData = array_filter($resultData, function ($var) use ($filterBy) { return (stripos( strtolower($var['email']) , strtolower($filterBy) ) !== false ); }); } if($this->phone_number != '') { $filterBy = $this->phone_number; // or Finance etc. $resultData = array_filter($resultData, function ($var) use ($filterBy) { return (stripos( strtolower($var['phone_number']) , strtolower($filterBy) ) !== false ); }); } if($this->status != '') { $filterBy = $this->status; // or Finance etc. $resultData = array_filter($resultData, function ($var) use ($filterBy) { return (stripos( strtolower($var['status']) , strtolower($filterBy) ) !== false ); }); } if($this->vendor_key != '') { $filterBy = $this->vendor_key; // or Finance etc. $resultData = array_filter($resultData, function ($var) use ($filterBy) { return ($var['vendor_key'] == $filterBy); }); } /* For Filter */ $dataProvider = new ArrayDataProvider([ 'key' => 'id', 'allModels' => $resultData, 'sort' => [ 'attributes' => ['id', 'name', 'email'], ], 'pagination' => [ 'pageSize' => 10, ], ]); return $dataProvider; } }
Save
cmd:
run