/** * @return array */ public function actionAjaxCustomer($template = null) { \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON; $result = ['more' => false, 'results' => []]; $search = \Yii::$app->request->get('search', []); $user_id = isset($search['user']) && User::USER_GUEST !== intval($search['user']) ? intval($search['user']) : User::USER_GUEST; if (!empty($search['term'])) { $query = Customer::find()->select('id, first_name, middle_name, last_name, email, phone')->where(['user_id' => $user_id])->andWhere('first_name LIKE :term1 OR middle_name LIKE :term2 OR last_name LIKE :term3 OR email LIKE :term4 OR phone LIKE :term5', [':term1' => '%' . trim($search['term']) . '%', ':term2' => '%' . trim($search['term']) . '%', ':term3' => '%' . trim($search['term']) . '%', ':term4' => '%' . trim($search['term']) . '%', ':term5' => '%' . trim($search['term']) . '%'])->asArray(); $result['results'] = array_values($query->all()); } if (!empty($result['results']) && 'simple' === $template) { $result['cards'] = array_reduce($result['results'], function ($result, $item) { /** @var array $item */ $result[$item['id']] = \app\modules\shop\widgets\Customer::widget(['viewFile' => 'customer/backend_list', 'model' => Customer::findOne(['id' => $item['id']])]); return $result; }, []); } return $result; }
/** * @return array */ public function actionAjaxCustomer() { \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON; $result = ['more' => false, 'results' => []]; $search = \Yii::$app->request->get('search', []); if (!empty($search['term'])) { $query = Customer::find()->select('id, first_name, middle_name, last_name, email, phone')->where(['like', 'first_name', trim($search['term'])])->orWhere(['like', 'middle_name', trim($search['term'])])->orWhere(['like', 'last_name', trim($search['term'])])->orWhere(['like', 'email', trim($search['term'])])->orWhere(['like', 'phone', trim($search['term'])])->asArray(); $result['results'] = array_values($query->all()); } return $result; }