Commit 51fb59d9bcecb5638b99357bf42b979db164bb4c
1 parent
c95206aa
Exists in
master
and in
2 other branches
Bugfix et Améliorations Emprunt
Showing
3 changed files
with
53 additions
and
10 deletions
Show diff stats
README.md
... | ... | @@ -53,11 +53,11 @@ Logiciel testé et validé sur les configurations suivantes : |
53 | 53 | |
54 | 54 | VERSION ACTUELLE |
55 | 55 | |
56 | -Date: 03/06/2019 | |
57 | -Version: 2.12.25 | |
56 | +Date: 04/06/2019 | |
57 | +Version: 2.12.26 | |
58 | 58 | Author: EP |
59 | 59 | Commentaire: |
60 | - LDAP CACHED v3 | |
60 | + Bugfix et Améliorations Emprunt | |
61 | 61 | |
62 | 62 | IMPORTANT : |
63 | 63 | - Pour connaitre la version actuelle, taper "./VERSION" |
... | ... | @@ -93,6 +93,9 @@ La liste ci-dessous n'est plus à jour, elle est désormais en ligne ici : https |
93 | 93 | |
94 | 94 | ----------------------------------------------------------------------------------------------------------- |
95 | 95 | |
96 | +03/06/2019 Version: 2.12.24-25 (EP) | |
97 | + LDAP CACHED v3 | |
98 | + | |
96 | 99 | 24/05/2019 Version: 2.12.22-23 (EP) |
97 | 100 | Bugfix QrCode : http et https bien gérés |
98 | 101 | Update du script install/installation.sh pour etre plus logique | ... | ... |
src/Model/Table/EmpruntsTable.php
... | ... | @@ -56,9 +56,10 @@ class EmpruntsTable extends AppTable |
56 | 56 | |
57 | 57 | $validator->boolean('emprunt_interne')->allowEmpty('emprunt_interne'); |
58 | 58 | |
59 | - //$validator->notEmpty('nom_emprunteur_int', 'Le champ doit être rempli'); | |
59 | + /* | |
60 | 60 | $validator->notEmpty('nom_emprunteur_int', 'Le champ doit être rempli', function ($context) { |
61 | 61 | //dump($context); |
62 | + debug($context); | |
62 | 63 | //if ($context['providers']['entity']['emprunt_interne'] !== null) { |
63 | 64 | if ( !empty($context['data']) && !is_null($context['data']['emprunt_interne']) ) { |
64 | 65 | return $context['data']['emprunt_interne']; |
... | ... | @@ -66,7 +67,6 @@ class EmpruntsTable extends AppTable |
66 | 67 | } |
67 | 68 | }); |
68 | 69 | |
69 | - //$validator->notEmpty('email_emprunteur_int', "Cet Email n'est pas valide"); | |
70 | 70 | $validator->notEmpty('email_emprunteur_int', "Cet Email n'est pas valide", function ($context) { |
71 | 71 | //if ($context['providers']['entity']['emprunt_interne'] !== null) { |
72 | 72 | if ( !empty($context['data']) && !is_null($context['data']['emprunt_interne']) ) { |
... | ... | @@ -74,9 +74,9 @@ class EmpruntsTable extends AppTable |
74 | 74 | //return $context['providers']['entity']['emprunt_interne']; |
75 | 75 | } |
76 | 76 | }); |
77 | - | |
78 | - | |
79 | - | |
77 | + */ | |
78 | + | |
79 | + // Ce champ s'appelle "Pièce" (emprunt interne) | |
80 | 80 | $validator->notEmpty('e_lieu_detail', 'Le champ doit être rempli pour un emprunt interne.', |
81 | 81 | function ($context) { |
82 | 82 | //if ($context['providers']['entity']['emprunt_interne'] !== null) { |
... | ... | @@ -93,9 +93,11 @@ class EmpruntsTable extends AppTable |
93 | 93 | 'provider' => 'table' |
94 | 94 | ]); |
95 | 95 | |
96 | + // Ce champ s'appelle "Lieu" (emprunt externe) | |
96 | 97 | $validator->notEmpty('laboratoire', 'Le champ doit être rempli pour un emprunt externe.', |
97 | 98 | function ($context) { |
98 | 99 | if ( !empty($context['data']) && !is_null($context['data']['emprunt_interne']) ) { |
100 | + //debug($context['data']['emprunt_interne']); | |
99 | 101 | return ! $context['data']['emprunt_interne']; |
100 | 102 | } |
101 | 103 | } |
... | ... | @@ -131,7 +133,13 @@ class EmpruntsTable extends AppTable |
131 | 133 | */ |
132 | 134 | } |
133 | 135 | } |
134 | - ); | |
136 | + )->add('email_emprunteur_ext', 'valid', [ | |
137 | + 'rule' => [ | |
138 | + 'check_mail' | |
139 | + ], | |
140 | + 'message' => "Cet email n'est pas valide", | |
141 | + 'provider' => 'table' | |
142 | + ]); | |
135 | 143 | |
136 | 144 | $validator->allowEmpty('commentaire')->add('commentaire', 'valid', [ |
137 | 145 | 'rule' => [ |
... | ... | @@ -141,6 +149,24 @@ class EmpruntsTable extends AppTable |
141 | 149 | 'provider' => 'table' |
142 | 150 | ]); |
143 | 151 | |
152 | + | |
153 | + | |
154 | + /* | |
155 | + $validator->notEmpty('site_id', 'Il faut préciser le site', | |
156 | + function ($context) { | |
157 | + if ( !empty($context['data']) && !is_null($context['data']['emprunt_interne']) ) { | |
158 | + return $context['data']['emprunt_interne']; | |
159 | + } | |
160 | + } | |
161 | + )->add('site_id', 'valid', [ | |
162 | + 'rule' => function ($data, $provider) { | |
163 | + return ($data != 9); | |
164 | + }, | |
165 | + 'message' => "Il faut préciser le site (pour un emprunt interne)", | |
166 | + 'provider' => 'table' | |
167 | + ]); | |
168 | + */ | |
169 | + | |
144 | 170 | return $validator; |
145 | 171 | } |
146 | 172 | |
... | ... | @@ -166,6 +192,7 @@ class EmpruntsTable extends AppTable |
166 | 192 | } |
167 | 193 | return true; |
168 | 194 | }; |
195 | + | |
169 | 196 | |
170 | 197 | $rules->add($checkReturnDateIsAfterLoanDate, [ |
171 | 198 | 'errorField' => 'date_retour_emprunt', |
... | ... | @@ -176,9 +203,22 @@ class EmpruntsTable extends AppTable |
176 | 203 | 'materiel_id' |
177 | 204 | ], 'Materiels')); |
178 | 205 | |
206 | + /* (EP) ne sert à rien, c'est toujours le cas | |
179 | 207 | $rules->add($rules->existsIn([ |
180 | 208 | 'site_id' |
181 | 209 | ], 'Sites')); |
210 | + */ | |
211 | + // (EP 4/6/19) Le site doit etre précisé, on ne laisse pas N/A (id=9) | |
212 | + $checkSiteIsGiven = function ($entity) { | |
213 | + // Si emprunt externe, ne pas appliquer cette règle | |
214 | + if (! $entity->emprunt_interne) return TRUE; | |
215 | + return ($entity->site_id != 9); | |
216 | + }; | |
217 | + $rules->add($checkSiteIsGiven, [ | |
218 | + 'errorField' => 'site_id', | |
219 | + 'message' => 'Il faut préciser le site' | |
220 | + ]); | |
221 | + | |
182 | 222 | |
183 | 223 | return $rules; |
184 | 224 | } | ... | ... |
src/Template/Materiels/view.ctp
... | ... | @@ -622,7 +622,7 @@ $bStyle = 'margin:0'; |
622 | 622 | <th><?=__('N°')?></th> |
623 | 623 | <th><?=__('Emprunteur')?></th> |
624 | 624 | <th><?=__('Type d\'Emprunt')?></th> |
625 | - <th><?=__('Où')?></th> | |
625 | + <th><?=__('Lieu')?></th> | |
626 | 626 | <th><?=__('Date de l\'emprunt')?></th> |
627 | 627 | <th><?=__('Date de retour')?></th> |
628 | 628 | </tr> | ... | ... |