当前位置: 首页>>代码示例>>PHP>>正文


PHP Contact::setSearchable方法代码示例

本文整理汇总了PHP中app\Contact::setSearchable方法的典型用法代码示例。如果您正苦于以下问题:PHP Contact::setSearchable方法的具体用法?PHP Contact::setSearchable怎么用?PHP Contact::setSearchable使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在app\Contact的用法示例。


在下文中一共展示了Contact::setSearchable方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: searchablecontact

 public function searchablecontact(Request $request)
 {
     $type = 1;
     $tri = 'none';
     $actif = 'contact';
     $contact = new Contact();
     if (isset($request->nom) && !empty($request->nom)) {
         $contact = new Contact();
         $contact->setSearchable(['columns' => ['nom_contact' => 10, 'prenoms_contact' => 10]]);
         $query = $request->nom;
         $mode = 'nom';
         $tri = 'none';
         $contact = $contact->search($query)->where('etat', 1)->orderBy('nom_contact', 'asc')->get();
     } elseif ($request->tel && !empty($request->tel)) {
         $contact->setSearchable(['columns' => ['tel_contact' => 10]]);
         $query = $request->tel;
         $mode = 'tel';
         $tri = 'none';
         $contact = $contact->search($query)->where('etat', 1)->orderBy('nom_contact', 'asc')->get();
     } elseif ($request->adresse && !empty($request->adresse)) {
         $contact->setSearchable(['columns' => ['adresse_contact' => 30]]);
         $query = $request->adresse;
         $mode = 'adresse';
         $tri = 'none';
         $contact = $contact->search($query)->where('etat', 1)->orderBy('nom_contact', 'asc')->get();
     }
     // Tri des résultats de la recherche contact
     if (isset($_GET['sort'])) {
         $query = $_GET['query'];
         // Tri sur recherche par nom
         if ($_GET['mode'] == 'nom') {
             $mode = 'nom';
             if ($_GET['sort'] == 'pays_clt') {
                 $tri = 'pays';
                 $contact->setSearchable(['columns' => ['nom_contact' => 10, 'prenoms_contact' => 10]]);
                 $contact = $contact->search($query)->where('etat', 1)->get();
                 foreach ($contact as $key => $value) {
                     var_dump($value->nom_contact . ' ' . $value->prenoms_contact);
                 }
                 dd();
                 return view('contact.contact', compact('actif', 'contact', 'type', 'tri', 'query', 'mode'));
             } elseif ($_GET['sort'] == 'ville_siege_clt') {
                 $tri = "ville";
             } elseif ($_GET['sort'] == 'statut') {
                 $tri = "client";
             } elseif ($_GET['sort'] == 'nom_clt') {
                 $tri = "alpha";
             } elseif ($_GET['sort'] == 'created_at') {
                 $tri = "ajout";
             } elseif ($_GET['sort'] == 'updated_at') {
                 $tri = "modif";
             } elseif ($_GET['sort'] == 'notes') {
                 $note = DB::table('societes')->join('contacts', 'societes.id', '=', 'contacts.societe_id')->join('notes', 'contacts.id', '=', 'notes.contact_id')->select('societes.*', 'notes.*')->where('societes.etat', 1)->get();
                 $societe = $societe->search($query)->sortable()->where('etat', 1)->get();
                 $tri = 'notes';
                 // Tri des contacts sans note
                 foreach ($societes as $key => $value) {
                     $exist = 0;
                     foreach ($note as $keyn => $valuen) {
                         if ($value->nom_clt == $valuen->nom_clt) {
                             $exist = 1;
                         }
                     }
                     if ($exist == 0) {
                         $societe[] = $value;
                     }
                 }
             }
             $contact->setSearchable(['columns' => ['nom_contact' => 10, 'prenoms_contact' => 10]]);
             $contact = $contact->search($query)->sortable()->where('etat', 1)->get();
         }
         // Tri sur recherche par adresse
         if ($_GET['mode'] == 'adresse') {
             $mode = 'adresse';
             if ($_GET['sort'] == 'pays_clt') {
                 $tri = 'pays';
             } elseif ($_GET['sort'] == 'ville_siege_clt') {
                 $tri = "ville";
             } elseif ($_GET['sort'] == 'statut') {
                 $tri = "client";
             } elseif ($_GET['sort'] == 'nom_clt') {
                 $tri = "alpha";
             } elseif ($_GET['sort'] == 'created_at') {
                 $tri = "ajout";
             } elseif ($_GET['sort'] == 'updated_at') {
                 $tri = "modif";
             } elseif ($_GET['sort'] == 'notes') {
                 $tri = "notes";
             }
             $societe->setSearchable(['columns' => ['adresse_siege_clt' => 10]]);
             $contact = $contact->search($query)->sortable()->where('etat', 1)->get();
         }
     }
     return view('contact.contact', compact('actif', 'contact', 'type', 'tri', 'query', 'mode'));
 }
开发者ID:blackdavinci,项目名称:crm-ftz,代码行数:95,代码来源:SearchController.php


注:本文中的app\Contact::setSearchable方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。