summaryrefslogtreecommitdiff
path: root/src/sections
diff options
context:
space:
mode:
authorpolo <ordipolo@gmx.fr>2023-02-25 02:27:22 +0100
committerpolo <ordipolo@gmx.fr>2023-02-25 02:27:22 +0100
commit9d8133643773912d54fb0c7d86ef04e6acffa8c9 (patch)
tree8048a9eeded086e9e9c00ce0a68b9454c171d085 /src/sections
parent209c0b93c529356a094d7133a717e8f6ee6d90c6 (diff)
downloadAppliGestionPHP-9d8133643773912d54fb0c7d86ef04e6acffa8c9.zip
lire tables, modifications BDD, création documents et enveloppes latex, suppression de traits.php
Diffstat (limited to 'src/sections')
-rw-r--r--src/sections/1_new_service.php68
1 files changed, 35 insertions, 33 deletions
diff --git a/src/sections/1_new_service.php b/src/sections/1_new_service.php
index 656b45f..d516329 100644
--- a/src/sections/1_new_service.php
+++ b/src/sections/1_new_service.php
@@ -12,7 +12,7 @@ function newService(): int // code de retour, si 0 retour menu principal, si 2 a
12 $NouveauClient = new ZenityForms(ZenitySetup::$nouveau_client_text, ZenitySetup::$nouveau_client_entrees); 12 $NouveauClient = new ZenityForms(ZenitySetup::$nouveau_client_text, ZenitySetup::$nouveau_client_entrees);
13 $MenuEnregistrement = new ZenityList(ZenitySetup::$menu_enregistrement_text, ZenitySetup::$menu_enregistrement_entrees); 13 $MenuEnregistrement = new ZenityList(ZenitySetup::$menu_enregistrement_text, ZenitySetup::$menu_enregistrement_entrees);
14 $Calendrier = new ZenityCalendar(ZenitySetup::$calendar_text); 14 $Calendrier = new ZenityCalendar(ZenitySetup::$calendar_text);
15 $FormulaireDevis = new ZenityForms(ZenitySetup::$formulaire_text, array_merge(ZenitySetup::$formulaire_facture_entrees, ZenitySetup::$formulaire_devis_entrees)); 15 $FormulaireDevis = new ZenityForms(ZenitySetup::$formulaire_text, ZenitySetup::$formulaire_devis_entrees);
16 $FormulaireFacture = new ZenityForms(ZenitySetup::$formulaire_text, ZenitySetup::$formulaire_facture_entrees); 16 $FormulaireFacture = new ZenityForms(ZenitySetup::$formulaire_text, ZenitySetup::$formulaire_facture_entrees);
17 $FormulaireCesu = new ZenityForms(ZenitySetup::$formulaire_text, ZenitySetup::$formulaire_cesu_entrees); 17 $FormulaireCesu = new ZenityForms(ZenitySetup::$formulaire_text, ZenitySetup::$formulaire_cesu_entrees);
18 $FormulaireLocation = new ZenityForms(ZenitySetup::$formulaire_text, ZenitySetup::$formulaire_location_entrees); 18 $FormulaireLocation = new ZenityForms(ZenitySetup::$formulaire_text, ZenitySetup::$formulaire_location_entrees);
@@ -29,7 +29,7 @@ function newService(): int // code de retour, si 0 retour menu principal, si 2 a
29 $client_inconnu = true; 29 $client_inconnu = true;
30 if(exec($QuestionNouveauClient->get()) == '0') // $? = 0 signifie oui, double égal == pour le transtypage 30 if(exec($QuestionNouveauClient->get()) == '0') // $? = 0 signifie oui, double égal == pour le transtypage
31 { 31 {
32 echo "debug: recherche souhaie\n"; 32 echo "choix: recherche d'une client\n";
33 $input = exec($RechercheClient->get()); 33 $input = exec($RechercheClient->get());
34 if($input == '') 34 if($input == '')
35 { 35 {
@@ -57,7 +57,7 @@ function newService(): int // code de retour, si 0 retour menu principal, si 2 a
57 } 57 }
58 else 58 else
59 { 59 {
60 echo "debug: nouveau client\n"; 60 echo "choix: nouveau client\n";
61 } 61 }
62 62
63 // on n'a pas cherché OU on n'a pas trouvé 63 // on n'a pas cherché OU on n'a pas trouvé
@@ -108,22 +108,22 @@ function newService(): int // code de retour, si 0 retour menu principal, si 2 a
108 { 108 {
109 // formulaire - étape 2/3 109 // formulaire - étape 2/3
110 case ZenitySetup::$menu_enregistrement_entrees[0]: // "Devis" 110 case ZenitySetup::$menu_enregistrement_entrees[0]: // "Devis"
111 $Details = new DevisFactures($Client->getID(), 'devis'); 111 $Details = new DevisFactures('devis');
112 $Presta->setTypePresta('devis'); 112 $Presta->setTypePresta('devis');
113 $input = exec($FormulaireDevis->get()); 113 $input = exec($FormulaireDevis->get());
114 break; 114 break;
115 case ZenitySetup::$menu_enregistrement_entrees[1]: // "Facture" 115 case ZenitySetup::$menu_enregistrement_entrees[1]: // "Facture"
116 $Details = new DevisFactures($Client->getID(), 'factures'); // 'factures' est le nom de la table, pas le type de presta 116 $Details = new DevisFactures('factures'); // 'factures' est le nom de la table, pas le type de presta
117 $Presta->setTypePresta('facture'); 117 $Presta->setTypePresta('facture');
118 $input =exec($FormulaireFacture->get()); 118 $input =exec($FormulaireFacture->get());
119 break; 119 break;
120 case ZenitySetup::$menu_enregistrement_entrees[2]: // "CESU" 120 case ZenitySetup::$menu_enregistrement_entrees[2]: // "CESU"
121 $Details = new CESU($Client->getID()); 121 $Details = new CESU();
122 $Presta->setTypePresta('cesu'); 122 $Presta->setTypePresta('cesu');
123 $input = exec($FormulaireCesu->get()); 123 $input = exec($FormulaireCesu->get());
124 break; 124 break;
125 case ZenitySetup::$menu_enregistrement_entrees[3]: // "Location" 125 case ZenitySetup::$menu_enregistrement_entrees[3]: // "Location"
126 $Details = new Locations($Client->getID()); 126 $Details = new Locations();
127 $Presta->setTypePresta('location'); 127 $Presta->setTypePresta('location');
128 $input = exec($FormulaireLocation->get()); 128 $input = exec($FormulaireLocation->get());
129 break; 129 break;
@@ -140,16 +140,27 @@ function newService(): int // code de retour, si 0 retour menu principal, si 2 a
140 echo "debug: annulation lors de l'enregistrement des détails de la prestation\n"; 140 echo "debug: annulation lors de l'enregistrement des détails de la prestation\n";
141 return(0); 141 return(0);
142 } 142 }
143 elseif(isset($Details) && !$Details->hydrateFromForm($input, $Presta)) 143 elseif(isset($Details) && !$Details->hydrateFromForm($input, $Presta)) // echec de l'hydratation
144 { 144 {
145 // messages d'erreur dans hydrateFromForm() 145 echo "debug: erreur de hydrateFromForm()\n"; // messages d'erreur à mettre ici ou dans hydrateFromForm()?
146 return(0); 146 return(0);
147 } 147 }
148 unset($input); 148 unset($input);
149 149
150 // commentaire - étape 3/3 150 // commentaire - étape 3/3
151 $input = exec($CommentairePrestation->get()); 151 $input = exec($CommentairePrestation->get());
152 //~ if($input == '') 152 if($input == '')
153 {
154 echo "debug: pas de commentaire saisi\n";
155 // on n'interrompt pas le script et on enregistre dans tous les cas (annulatation, chaîne vide)
156 }
157 // Cliquer sur annuler (ou appuyer sur échap) revient dont à valider avec une chaîne vide et enregistrer la prestation
158 // la commande 'echo $?' ($? est le code de sortie de la commande précédente) renvoit 1 si on annule avec la touche échap ()
159 // elle renvoit 0 si la fenêtre est fermée correctement, qu'on valide une chaîne vide ou qu'on clique sur Annuler (on ne peut pas savoir)
160 // malheureusement, si les deux commandes sont liées par un '&&' et qu'on annule la saisie, la 2è commande n'est pas exécutée
161 // solution partielle si echo $? ne renvoit rien, c'est qu'echo n'a pas été exécuté parce qu'on a appuyé sur échap (ou que le programme)
162 // 2>&1 semble inutile, pas de sortie d'erreur de zenity --entry
163 //~ if(exec('echo $?') != 1)
153 //~ { 164 //~ {
154 //~ echo "debug: annulation à la saisie d'un commentaire\n"; 165 //~ echo "debug: annulation à la saisie d'un commentaire\n";
155 //~ return(0); 166 //~ return(0);
@@ -167,33 +178,23 @@ function newService(): int // code de retour, si 0 retour menu principal, si 2 a
167 178
168 // -- partie 3: LaTeX -- 179 // -- partie 3: LaTeX --
169 180
170 // créer le chemin et un sous-dossier avec l'année en cours
171 $latex_year_folder = Config::$latex_path . date('Y') . '/';
172 makeFolder($latex_year_folder);
173
174 $pdf_year_folder = Config::$pdf_path . date('Y') . '/';
175 makeFolder($pdf_year_folder);
176
177 // document de la prestation 181 // document de la prestation
178 switch($choix_niv2) 182 switch($choix_niv2)
179 { 183 {
180 case ZenitySetup::$menu_enregistrement_entrees[0]: // "Devis" 184 case ZenitySetup::$menu_enregistrement_entrees[0]: // "Devis"
181 $file_name = 'devis.tex'; 185 $type = 'devis';
182 $template = 'devis'; 186 makeLatexAndPdfDocument($type, $Client, $Presta, $Details);
183 makeLatexAndPdfDocument($file_name, $template, $Client, $Presta, $Details);
184 break; 187 break;
185 case ZenitySetup::$menu_enregistrement_entrees[1]: // "Facture" 188 case ZenitySetup::$menu_enregistrement_entrees[1]: // "Facture"
186 $file_name = 'facture.tex'; 189 $type = 'facture';
187 $template = 'facture'; 190 makeLatexAndPdfDocument($type, $Client, $Presta, $Details);
188 makeLatexAndPdfDocument($file_name, $template, $Client, $Presta, $Details);
189 break; 191 break;
190 case ZenitySetup::$menu_enregistrement_entrees[2]: // "CESU" 192 case ZenitySetup::$menu_enregistrement_entrees[2]: // "CESU"
191 // pas de facture 193 // pas de facture
192 break; 194 break;
193 case ZenitySetup::$menu_enregistrement_entrees[3]: // "Location" 195 case ZenitySetup::$menu_enregistrement_entrees[3]: // "Location"
194 $file_name = 'location.tex'; 196 $type = 'location';
195 $template = 'location'; 197 makeLatexAndPdfDocument($type, $Client, $Presta, $Details);
196 makeLatexAndPdfDocument($file_name, $template, $Client, $Presta, $Details);
197 break; 198 break;
198 case ZenitySetup::$menu_enregistrement_entrees[4]: // "Prestation non vendue" 199 case ZenitySetup::$menu_enregistrement_entrees[4]: // "Prestation non vendue"
199 // pas de facture 200 // pas de facture
@@ -203,13 +204,13 @@ function newService(): int // code de retour, si 0 retour menu principal, si 2 a
203 return(0); 204 return(0);
204 } 205 }
205 206
206 // enveloppe 207 // enveloppe recto
207 $file_name = 'enveloppe_recto.tex'; 208 $type = 'enveloppe_recto';
208 $template = 'enveloppe_recto'; 209 makeLatexAndPdfDocument($type, $Client);
209 makeLatexAndPdfDocument($file_name, $template, $Client); 210
210 $file_name = 'enveloppe_verso.tex'; 211 // le verso ne dépend pas du client mais de l'entreprise
211 $template = 'enveloppe_verso'; 212 $type = 'enveloppe_verso';
212 makeLatexAndPdfDocument($file_name, $template, $Client); 213 makeLatexAndPdfDocument($type);
213 214
214 215
215 // -- partie 4: récapitulatif -- 216 // -- partie 4: récapitulatif --
@@ -221,6 +222,7 @@ function newService(): int // code de retour, si 0 retour menu principal, si 2 a
221 //~ $imprimer_facture = exec('zenity --question --width=250 --title="Base de données mise à jour" --text="Imprimer la facture?"'); 222 //~ $imprimer_facture = exec('zenity --question --width=250 --title="Base de données mise à jour" --text="Imprimer la facture?"');
222 //~ $imprimer_enveloppe = exec('zenity --question --width=250 --title="Base de données mise à jour" --text="Imprimer l\'adresse sur une enveloppe? (insérer une enveloppe DL sans fenêtre dans l\'imprimante"'); 223 //~ $imprimer_enveloppe = exec('zenity --question --width=250 --title="Base de données mise à jour" --text="Imprimer l\'adresse sur une enveloppe? (insérer une enveloppe DL sans fenêtre dans l\'imprimante"');
223 224
225
224 // possibilité de modification 226 // possibilité de modification
225 // zenityQuestion 227 // zenityQuestion
226 if(exec($QuestionModifierPrestation->get()) == '0') 228 if(exec($QuestionModifierPrestation->get()) == '0')