Recherche de matériel

mais n'est plus utilisé car on préfère la recherche plein texte ... */ use Cake\I18n\Date; use Cake\I18n\Time; $r = isset($_results); if ($r) { echo '
'; echo $this->Html->link(' Exporter la liste', [ 'controller' => 'Materiels', 'action' => 'export', 'search' ], [ 'title' => 'Editer le résultat de la recherche', 'style' => 'margin-right: 15px', 'escape' => false ]); echo '
'; } ?>

style="font-size: 14px;" id="i_filter"> Filtres

> '' ]; // FORMULAIRE DE RECHERCHE echo $this->Form->create(); // -------Bouton recherche Haut--------- echo $this->Form->submit('Rechercher', [ 'style' => 'width: 20%' ]); // CHAMP DE RECHERCHE GENERIQUE echo $this->Form->control('s_all', [ 'label' => 'TOUS LES CHAMPS' ]); echo "
OU BIEN, seulement quelques champs spécifiques :

"; // Designation echo $this->Form->control('s_designation', [ 'label' => 'Désignation' ]); // Matériel administratif et/ou technique $typeOptions = []; echo $this->Form->control('s_matostype', [ 'label' => 'Type', 'empty' => 'Tous', 'options' => [ 'A' => 'Administratif', 'T' => 'Technique', 'AT' => 'Administratif et Technique', 'AO' => 'Administratif seulement', 'TO' => 'Technique seulement' ], 'style' => 'width: 280px' ]); // DOMAINE echo $this->Form->control('s_sur_categorie_id', [ 'label' => 'Domaine', 'empty' => 'Tous', $selected, 'options' => $s_sur_categories, 'style' => 'width: 200px' ]); // CATEGORIES // by default, ALL categs $categs = $s_categories; // if a domaine is selected, reduce the categories list to this domaine if ($this->request->getData('s_sur_categorie_id') !== null && $this->request->getData('s_sur_categorie_id') != '') { $categs = $categs->where([ 'sur_categorie_id =' => $this->request->getData('s_sur_categorie_id') ]); } echo $this->Form->control('s_categorie_id', [ 'label' => 'Catégorie', 'empty' => 'Toutes', 'style' => 'width: 200px', 'options' => $categs ]); // SOUS-CATEGORIES // by default, list is empty $souscategs = []; // if a categ is selected, update sous-categs list for this categ (only) if ($this->request->getData('s_categorie_id') !== null && ($this->request->getData('s_categorie_id') != '')) { $souscategs = $s_sous_categories; $souscategs = $souscategs->where([ 'categorie_id' => $this->request->getData('s_categorie_id') ]); } echo $this->Form->control('s_sous_categorie_id', [ 'label' => 'Sous-catégorie', 'empty' => 'Toutes', 'style' => 'width: 200px', 'options' => $souscategs ]); $options = [ 'CREATED' => 'Créé', 'VALIDATED' => 'Validé', 'TOBEARCHIVED' => 'À archiver' ]; if (in_array($role, [ 'Administration', 'Administration Plus', 'Super Administrateur' ])) { $options['ARCHIVED'] = 'Archivé'; } // STATUT echo $this->Form->control('s_status', [ 'label' => 'Statut', 'empty' => 'Tous', $selected, 'options' => $options, 'style' => 'width: 200px' ]); // Groupe metier et thematique echo $this->Form->control('s_groupes_metier_id', [ 'label' => $configuration->nom_groupe_metier, 'empty' => 'Tous', $selected, 'options' => $s_groupes_metiers, 'style' => 'width: 200px' ]); echo $this->Form->control('s_groupes_thematique_id', [ 'label' => $configuration->nom_groupe_thematique, 'empty' => 'Tous', $selected, 'options' => $s_groupes_thematiques, 'style' => 'width: 200px' ]); // Autres champs echo $this->Form->control('s_numero_commande', [ 'label' => 'N° BC' ]); echo $this->Form->control('s_numero_laboratoire', [ 'label' => 'N° interne (labo)', 'empty' => 'Tous', 'style' => 'width: 200px', //'options' => $s_numero_laboratoire ]); $orgas = $s_organismes; echo $this->Form->control('s_organisme_id', [ 'label' => 'Organisme', 'empty' => 'Toutes', 'style' => 'width: 200px', 'options' => $orgas ]); echo $this->Form->control('s_fournisseur_id', [ 'label' => 'Fournisseur', 'empty' => 'Tous', 'style' => 'width: 200px', 'options' => $s_fournisseurs ]); $salle = $s_salles; echo $this->Form->control('s_salle', [ 'label' => 'Détail lieu de stockage', 'empty' => 'Toutes', 'style' => 'width: 200px', 'options' => $salle ]); echo $this->Form->control('s_nom_responsable', [ 'label' => 'Nom du propriétaire', 'empty' => 'Toutes', 'options' => $s_nomresp ]); echo $this->Form->control('s_numero_inventaire_organisme', [ 'label' => 'N° inventaire organisme' ]); echo $this->Form->control('s_numero_inventaire_old', [ 'label' => 'N° inventaire (ancien)' ]); if (in_array($role, [ 'Responsable', 'Administration', 'Administration Plus', 'Super Administrateur' ])) { // Date acquisition echo "DATE d'achat:"; echo $this->Form->control('s_date_acquisition', [ 'placeholder' => 'Cliquez pour selectionner une date', 'label' => '- Date exacte', 'class' => 'datepicker' ]); echo $this->Form->control('s_periode_acquisition1', [ 'placeholder' => 'Cliquez pour selectionner une date', 'label' => '- Date Début', 'class' => 'datepicker' ]); echo $this->Form->control('s_periode_acquisition2', [ 'placeholder' => 'Cliquez pour selectionner une date', 'label' => '- Date Fin', 'class' => 'datepicker' ]); echo "MONTANT :"; echo $this->Form->control('s_prix_ht', [ 'label' => '- Montant exact' ]); echo $this->Form->control('s_prix_ht_sup', [ 'label' => '- Montant sup. ou égal à' ]); echo $this->Form->control('s_prix_ht_inf', [ 'label' => '- Montant inf. ou égal à' ]); } /* // CHAMP DE RECHERCHE GENERIQUE echo $this->Form->control('s_all', [ 'label' => 'TOUS LES CHAMPS' ]); */ // -------Bouton recherche Bas--------- echo $this->Form->submit('Rechercher', [ 'style' => 'width: 20%' ]); echo '


'; ?>

style="font-size: 14px;" id="i_result"> Résultats

> request->getSession()->write("resultTri", $_results); ?> year-$time->month-$time->day"); // On extrait la date pour la vérification de fin de garantie $today = $today->format('Ymd'); // On formatte la date initialement en 31-12-2000 en un format qui pourra etre comparé : 20001231 foreach ($_results as $materiel) : if ($materiel->date_fin_garantie !== NULL) { $timeFin = new time($materiel->date_fin_garantie); $dateFin = new date("$timeFin->year-$timeFin->month-$timeFin->day"); $dateFin = $dateFin->format('Ymd'); } if (isset($materiel->date_fin_garantie)) $styleLien = ($today >= $dateFin) ? 'style="color: #FF0000"' : ''; else $styleLien = ''; ?> '; * * echo ''; * echo ''; * * echo ''; * * $cat = $categories->find()->where(['id =' => $materiel->categorie_id])->first(); * echo ''; * echo ''; * echo ''; * echo ''; * echo ''; * echo ''; */ // Le code au-dessous est presque le même code mais en plus joli et plus compact //debug($materiel); ?> '. ($materiel->has('organisme') ? h($materiel->organisme->nom) : '') .'' ?> '. ($materiel->has('numero_inventaire_organisme') ? h($materiel->organisme->nom) : '') .'' ?> '. ($materiel->has('status') ? h($materiel->status) : '') .''; echo ''; echo ''; //echo ''; //echo ''; //echo ''; ?>
Paginator->sort('designation','Désignation') ?> Paginator->sort('numero_laboratoire', 'N° interne (labo)') ?> Paginator->sort('hors_service', 'HS') ?> Paginator->sort('categorie_id', 'Catégorie') ?> Paginator->sort('nom_responsable', $configuration->nom_responsable) ?> Paginator->sort('status', 'Statut') ?> Paginator->sort('date_acquisition', 'Date') ?> Paginator->sort('prix_ht', 'Prix (HT)') ?> Paginator->sort('fournisseur', 'Fournisseur') ?> Paginator->sort('lieu_detail', 'Salle') ?>
status, [ 'CREATED', 'VALIDATED' ])) { if (($role == 'Utilisateur' && (in_array($username, [ $materiel->nom_createur, $materiel->nom_responsable ]))) || (in_array($role, [ 'Administration', 'Administration Plus', 'Super Administrateur' ])) || ($role == 'Responsable' && ((isset($priviledgedUser->groupes_metier_id) && $priviledgedUser->groupes_metier_id != $idGmNa && $materiel->groupes_metier_id == $priviledgedUser->groupes_metier_id) || (isset($priviledgedUser->groupe_thematique_id) && $priviledgedUser->groupe_thematique_id != $idGtNa && $materiel->groupes_thematique_id == $priviledgedUser->groupe_thematique_id)))) { echo $this->Html->link('', [ 'action' => 'edit', $materiel->id ], [ 'title' => 'Éditer', 'style' => 'margin: 0 2px', 'escape' => false ]); } } else { if (in_array($role, [ 'Administration Plus', 'Super Administrateur' ])) { echo $this->Html->link('', [ 'action' => 'edit', $materiel->id ], [ 'title' => 'Éditer', 'style' => 'margin: 0 2px', 'escape' => false ]); } } if (in_array($role, [ 'Administration', 'Administration Plus', 'Super Administrateur' ]) || ($role == 'Responsable' && ((isset($priviledgedUser->groupes_metier_id) && $priviledgedUser->groupes_metier_id != $idGmNa && $materiel->groupes_metier_id == $priviledgedUser->groupes_metier_id) || (isset($priviledgedUser->groupe_thematique_id) && $priviledgedUser->groupe_thematique_id != $idGtNa && $materiel->groupes_thematique_id == $priviledgedUser->groupe_thematique_id)))) { if (h($materiel->status) == 'CREATED') { echo $this->Html->link('', [ 'action' => 'statusValidated', $materiel->id ], [ 'title' => 'Valider', 'style' => 'margin: 0 2px', 'escape' => false, 'confirm' => 'Êtes-vous sur de vouloir valider ' . $materiel->designation . ' ?' ]); } else if (h($materiel->status) == 'VALIDATED') { echo $this->Html->link('', [ 'action' => 'statusToBeArchived', $materiel->id ], [ 'title' => 'Demander la sortie de l\'inventaire', 'style' => 'margin: 0 2px', 'escape' => false, 'confirm' => 'Êtes-vous sur de vouloir faire une demande d\'archive ' . $materiel->designation . ' ?' ]); } else if (h($materiel->status) == 'TOBEARCHIVED' && $role != 'Responsable' && $role != 'Super Administrateur') { echo $this->Html->link('', [ 'action' => 'statusArchived', $materiel->id ], [ 'title' => 'Sortir de l\'inventaire', 'style' => 'margin: 0 2px', 'escape' => false, 'confirm' => 'Êtes-vous sur de vouloir archivé ' . $materiel->designation . ' ?' ]); } } /* * ACTION 'delete' */ // Seul un materiel CREATED peut être supprimer if ($materiel->status == 'CREATED') { if (($role != 'Utilisateur' && $role != 'Responsable') || in_array($username, [ $materiel->nom_createur, $materiel->nom_responsable ]) || ($role == 'Responsable' && ((isset($priviledgedUser->groupes_metier_id) && $priviledgedUser->groupes_metier_id != $idGmNa && $materiel->groupes_metier_id == $priviledgedUser->groupes_metier_id) || (isset($priviledgedUser->groupe_thematique_id) && $priviledgedUser->groupe_thematique_id != $idGtNa && $materiel->groupes_thematique_id == $priviledgedUser->groupe_thematique_id)))) { echo $this->Html->link(__(''), [ 'action' => 'delete', $materiel->id ], [ 'title' => 'Supprimer', 'style' => 'margin: 0 2px', 'escape' => false, 'confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $materiel->designation) ]); } } /* * echo ''; * echo $this->Html->link ( h($materiel->designation), [ * 'action' => 'view', * $materiel->id * ], ['title' => 'Détails']); * echo ''; * echo $materiel->numero_laboratoire; * echo ''; * echo ($materiel->hors_service) ? 'HS' : ''; * echo''; * echo $this->Html->link ( $cat['nom'], [ * 'controller' => 'categories', * 'action' => 'view', * $cat['id'] * ]); * echo ''; * echo $materiel->nom_responsable; * echo ''; * echo $materiel->status; * echo ''; * echo $materiel->date_acquisition; * echo ''; * echo $materiel->fournisseur; * echo ''; * echo $materiel->lieu_detail; * echo ' has('designation') ? $this->Html->link($materiel->designation, ['controller' => 'Materiels', 'action' => 'view', $materiel->id]) : '' ?> numero_laboratoire) ?> hors_service) ? 'HS' : '' ?> has('category') ? h($materiel->category->nom) : '' ?> nom_responsable) ?> '. ($materiel->has('date_acquisition') ? h($materiel->date_acquisition) : '') .''. ($materiel->has('prix_ht') ? number_format(h($materiel->prix_ht),2,'.',',').'€' : '') .''. ($materiel->has('prix_ht') ? sprintf("%09.2f", h($materiel->prix_ht)).'€' : '') .''. ($materiel->has('prix_ht') ? money_format('%.2n', h($materiel->prix_ht)) : '') .''. ($materiel->has('prix_ht') ? money_format('%= (#6.2n', h($materiel->prix_ht)).'€' : '') .'has('fournisseur') ? h($materiel->fournisseur->nom) : ''?> has('lieu_detail') ? h($materiel->lieu_detail) : ''?>
Form->end(); ?>
element('menu') ?>
value = TOUS * - categ ==> value = TOUTES * - scateg ==> value = Aucune * * Event domaine change : * - si select <> "Tous" ==> categ value = from domaine (select="Toutes") * - si select = "Tous" ==> categ value = TOUTES (select="Toutes") * - dans tous les cas, vider scateg (select="Toutes") * * Event categ change : * - si select <> "Toutes" ==> domaine select = from categ, et scateg values = from categ (select="Toutes") * - si select = "Toutes" ==> vider scateg (select="Toutes") * * Event scateg change : RIEN A FAIRE */ ?>