|
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> |
|
2 <html> |
|
3 <head> |
|
4 <title>Ètxelon - Deutes finals</title> |
|
5 <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> |
|
6 </head> |
|
7 |
|
8 <body> |
|
9 |
|
10 <H1 ALIGN=center>Ètxelon</H1> |
|
11 |
|
12 |
|
13 <?php |
|
14 include("getdb.inc"); |
|
15 |
|
16 // Fem la connexió |
|
17 $connexio = mysql_connect($mysql_server, $mysql_user, $mysql_password); |
|
18 mysql_select_db($mysql_db, $connexio); |
|
19 |
|
20 // Crides a funcions per obtenir parametres |
|
21 $habitants = obtenir_habitants($connexio); |
|
22 $num_habitants = count($habitants); |
|
23 $altres = obtenir_altres($connexio); |
|
24 $gent = obtenir_gent($connexio); |
|
25 |
|
26 // Iniciem els deutes de cadascun |
|
27 foreach($gent as $id => $persona) |
|
28 { |
|
29 $deutes[$id]["pagat"] = 0; |
|
30 $deutes[$id]["toca_pagar"] = 0; |
|
31 $deutes[$id]["pagaments"] = 0; |
|
32 } |
|
33 $total_a_pagar = 0; |
|
34 |
|
35 // Obtenim totes les compres i pagaments |
|
36 $compres = obtenir_compres($connexio); |
|
37 $pagaments = obtenir_pagaments($connexio); |
|
38 // Per cada compra... |
|
39 foreach($compres as $data => $compra) |
|
40 { |
|
41 $compradors = obtenir_compradors($data, $connexio); |
|
42 |
|
43 // Calcul dels compradors globals |
|
44 foreach($compradors as $persona => $dades) |
|
45 { |
|
46 $deutes[$persona]["pagat"] += $dades["pagat"]; |
|
47 $deutes[$persona]["toca_pagar"] += $dades["toca_pagar"]; |
|
48 $total_a_pagar += $dades["toca_pagar"]; |
|
49 } |
|
50 |
|
51 $excepcions = obtenir_excepcions($data, $connexio); |
|
52 |
|
53 $max_compradors_ex = 0; |
|
54 if ($excepcions != 0) |
|
55 foreach($excepcions as $key => $value) |
|
56 { |
|
57 $compradors_excepcions[$key] = obtenir_compradors_excepcions($key, $connexio); |
|
58 foreach($compradors_excepcions[$key] as $persona => $dades) |
|
59 { |
|
60 $deutes[$persona]["toca_pagar"] += $dades["toca_pagar"]; |
|
61 $total_a_pagar += $dades["toca_pagar"]; |
|
62 } |
|
63 } |
|
64 } |
|
65 if ($pagaments != 0) |
|
66 foreach($pagaments as $data => $pagament) |
|
67 { |
|
68 $pagadors = obtenir_pagadors($data,$connexio); |
|
69 // Els cobraments seran 'pagaments' negatius. |
|
70 foreach($pagadors as $persona => $dades) |
|
71 $deutes[$persona]["pagaments"] += $dades["pagat"] - $dades["cobrat"]; |
|
72 } |
|
73 ?> |
|
74 |
|
75 <H2>Deutes finals</H2> |
|
76 |
|
77 <!-- Taula de compradors globals --> |
|
78 <TABLE BORDER=1> |
|
79 <CAPTION>Deutes finals</CAPTION> |
|
80 <TR> |
|
81 <TH>Persona |
|
82 <TH>Pagat |
|
83 <TH>Toca pagar |
|
84 <TH>Percentatge a pagar |
|
85 <TH>Balanç |
|
86 <TH>Pagaments |
|
87 <TH>Balanç amb pagaments |
|
88 <?php |
|
89 $suma_pagat = 0; |
|
90 $suma_toca_pagar = 0; |
|
91 $suma_percentatge = 0; |
|
92 $suma_balans = 0; |
|
93 $suma_pagaments = 0; |
|
94 $suma_balans_pagaments = 0; |
|
95 foreach($gent as $key => $value) |
|
96 { |
|
97 if ($deutes[$key]["pagat"] != 0 || $deutes[$key]["toca_pagar"] != 0 || |
|
98 $deutes[$key]["pagaments"] != 0) |
|
99 { |
|
100 // Serveix per calcular el preu que toca pagar a cada un realment |
|
101 echo "<TR>\n\t<TD>"; |
|
102 echo "<A HREF=\"list-persona.php?user_id=$key\">"; |
|
103 echo strtohtml($gent[$key]["nom"]) . "</A>\n"; |
|
104 |
|
105 printf("\t<TD align=right>%s\n", pricetohtml($deutes[$key]["pagat"])); |
|
106 printf("\t<TD align=right>%s\n", pricetohtml($deutes[$key]["toca_pagar"])); |
|
107 printf("\t<TD align=right>%s\n", pricetohtml($deutes[$key]["toca_pagar"] |
|
108 / $total_a_pagar * 100)); |
|
109 printf("\t<TD align=right>%s\n", pricetohtml($deutes[$key]["pagat"] |
|
110 - $deutes[$key]["toca_pagar"])); |
|
111 printf("\t<TD align=right>%s\n", pricetohtml($deutes[$key]["pagaments"])); |
|
112 printf("\t<TD align=right>%s\n", pricetohtml($deutes[$key]["pagat"] |
|
113 - $deutes[$key]["toca_pagar"] + $deutes[$key]["pagaments"])); |
|
114 |
|
115 //echo "\t<TD>" . $deutes[$key]["pagat"] . "\n"; |
|
116 //echo "\t<TD>" . $deutes[$key]["toca_pagar"] . "\n"; |
|
117 //echo "\t<TD>" . ($deutes[$key]["toca_pagar"] / $total_a_pagar * 100) . "\n"; |
|
118 |
|
119 //echo "\t<TD>" . ($deutes[$key]["pagat"] - $deutes[$key]["toca_pagar"]) . "\n"; |
|
120 //echo "\t<TD>" . $deutes[$key]["pagaments"] . "\n"; |
|
121 //echo "\t<TD>" . ($deutes[$key]["pagat"] - $deutes[$key]["toca_pagar"] + $deutes[$key]["pagaments"]) . "\n"; |
|
122 |
|
123 $suma_pagat += $deutes[$key]["pagat"]; |
|
124 $suma_toca_pagar += $deutes[$key]["toca_pagar"]; |
|
125 $suma_percentatge += ($deutes[$key]["toca_pagar"] / $total_a_pagar * 100); |
|
126 $suma_balans += $deutes[$key]["pagat"] - $deutes[$key]["toca_pagar"]; |
|
127 $suma_pagaments += $deutes[$key]["pagaments"]; |
|
128 $suma_balans_pagaments += $deutes[$key]["pagat"] - $deutes[$key]["toca_pagar"] + $deutes[$key]["pagaments"]; |
|
129 } |
|
130 } |
|
131 |
|
132 printf("<TR>\n\t<TH>Total\n"); |
|
133 printf("\t<TD align=right>%s\n", pricetohtml($suma_pagat)); |
|
134 // La suma ha de ser lo mateix que total_a_pagar |
|
135 printf("\t<TD align=right>%s\n", pricetohtml($suma_toca_pagar)); |
|
136 printf("\t<TD align=right>%s\n", pricetohtml($suma_percentatge)); |
|
137 printf("\t<TD align=right>%s\n", pricetohtml($suma_balans)); |
|
138 printf("\t<TD align=right>%s\n", pricetohtml($suma_pagaments)); |
|
139 printf("\t<TD align=right>%s\n", pricetohtml($suma_balans_pagaments)); |
|
140 /* |
|
141 echo "<TR>\n\t<TH>Total\n" . |
|
142 "\t<TD>" . $suma_pagat . "\n" . |
|
143 // La suma ha de ser lo mateix que total_a_pagar |
|
144 "\t<TD>" . $suma_toca_pagar ."\n" . |
|
145 "\t<TD>" . $suma_percentatge . "\n" . |
|
146 "\t<TD>" . $suma_balans . "\n" . |
|
147 "\t<TD>" . $suma_pagaments . "\n" . |
|
148 "\t<TD>" . $suma_balans_pagaments . "\n"; |
|
149 */ |
|
150 ?> |
|
151 </TABLE> |
|
152 |
|
153 <HR WIDTH="70%"> |
|
154 |
|
155 <H2>Llegenda</H2> |
|
156 |
|
157 <ul> |
|
158 <li>El percentatge es calcula segons el que <em>toca pagar</em> respecte al |
|
159 <em>total a pagar</em>. |
|
160 <li>Els pagaments negatius són cobraments del grup. Els positius són pagaments |
|
161 al grup. |
|
162 <li>La suma del <em>percentatge</em> ha de ser <strong>100</strong>. |
|
163 <li>El <em>total pagat</em> ha de ser igual al <em>total a pagar</em>. |
|
164 <li>La suma dels pagaments ha de ser <strong>0</strong> |
|
165 (pagaments = cobraments). |
|
166 <li>El <em>balanç positiu</em> indica diners que s'han de cobrar en un futur, |
|
167 i el <em>negatiu</em> diners que s'han de pagar. |
|
168 <LI>És important <strong>no confondre</strong> el que s'ha <em>pagat</em> (que |
|
169 fa referència a les <em>compres</em>), i els <em>pagaments</em>, que fan |
|
170 referència als préstecs o saldades de deutes. |
|
171 </ul> |
|
172 |
|
173 <HR WIDTH="70%"> |
|
174 <BR> |
|
175 <A HREF="index">Tornar al menú d'inici</A> |
|
176 |
|
177 </body> |
|
178 </html> |