1 | <?php
|
---|
2 |
|
---|
3 | class FinanceOverview extends Page
|
---|
4 | {
|
---|
5 | var $FullTitle = 'Přehled financování sítě';
|
---|
6 | var $ShortTitle = 'Přehled financí';
|
---|
7 |
|
---|
8 | function Show()
|
---|
9 | {
|
---|
10 | $Finance = $this->System->Modules['Finance'];
|
---|
11 | $Output = '<table><tr><td valign="top">';
|
---|
12 |
|
---|
13 | $Output .= '<a href="mesicni-prehled/">Měsíční přehledy</a><br />';
|
---|
14 | $Output .= '<a href="tarify/">Tarify</a><br />';
|
---|
15 | $Output .= '<a href="zarizeni/">Výpis zařízení</a><br />';
|
---|
16 | if($this->System->Models['User']->CheckPermission('Finance', 'SubjectList'))
|
---|
17 | $Output .= '<a href="clenove/">Seznam členů</a><br />';
|
---|
18 | $Output .= '<a href="spotreba/">Spotřeba energie</a><br />';
|
---|
19 | $Output .= '<a href="'.$this->System->Config['Web']['RootFolder'].'/aktuality/?category=9">Investice v síti</a><br />';
|
---|
20 | //$Output .= '<a href="faktury/">Faktury za internet</a><br />';
|
---|
21 | //$Output .= '<a href="inventory.php">Výpis skladových zásob</a><br />';
|
---|
22 |
|
---|
23 | $Output .= '<br /><strong>Souhrn:</strong><br />';
|
---|
24 |
|
---|
25 | $DbResult = $this->Database->query('SELECT * FROM FinanceMonthlyOverall ORDER BY Date DESC LIMIT 0,1');
|
---|
26 | $Row = $DbResult->fetch_array();
|
---|
27 | $Output .= 'Platba za internetovou linku ('.$Finance->RealMaxSpeed.'/'.$Finance->RealMaxSpeed.' kbit/s): <strong>'.$Finance->Internet.' Kč</strong><br />';
|
---|
28 |
|
---|
29 | $DbResult = $this->Database->query('SELECT COUNT(*) FROM Member');
|
---|
30 | $Row2 = $DbResult->fetch_array();
|
---|
31 | $Output .= 'Počet registrovaných klientů: <strong>'.$Row2[0].'</strong><br />';
|
---|
32 |
|
---|
33 | $DbResult = $this->Database->query('SELECT COUNT(*) FROM Member WHERE (BillingPeriod > 1) AND (InternetTariffCurrentMonth > 0)');
|
---|
34 | $Row2 = $DbResult->fetch_array();
|
---|
35 | $Output .= 'Počet platících klientů: <strong>'.$Row2[0].'</strong><br />';
|
---|
36 |
|
---|
37 | //$DbResult = $this->Database->query('SELECT SUM(price) FROM network_devices WHERE used=1');
|
---|
38 | //$Row4 = $DbResult->fetch_array();
|
---|
39 | //$Output .= 'Celková cena zařízení sítě: <strong>'.$Row4[0].' Kč</strong><br />';
|
---|
40 |
|
---|
41 | $DbResult = $this->Database->query('SELECT SUM(Cash) as Cash FROM MemberPayment');
|
---|
42 | $Row4 = $DbResult->fetch_array();
|
---|
43 | $Output .= 'Celkem peněz na účtech: <strong>'.$Row4[0].' Kč</strong><br />';
|
---|
44 | $Output .= 'Stanovená cena jedné kWh: <strong>'.$Finance->kWh.' Kč</strong><br />';
|
---|
45 | //echo('Komunitou stanovený poplatek za správu sítě pro jednoho uživatele: <strong>'.$Sprava.' Kč</strong><br />');
|
---|
46 | $DbResult = $this->Database->query('SELECT SUM(FamilyMemberCount) AS Family FROM Member');
|
---|
47 | $Family = $DbResult->fetch_assoc();
|
---|
48 | $Family = $Family['Family'];
|
---|
49 | $TotalFamily = 600;
|
---|
50 | $Output .= 'V připojených domácnostech celkem <strong>'.$Family.'</strong> občanů ze všech <strong>'.$TotalFamily.'</strong> ('.round($Family / $TotalFamily * 100).' %)<br />';
|
---|
51 | $Output .= 'IČ: <strong>75904535</strong><br />'.
|
---|
52 | 'DIČ: <strong>CZ8303255884</strong><br />'.
|
---|
53 | 'Bankovní účet: <strong>218098370 / 0300</strong><br />'.
|
---|
54 | '<br />';
|
---|
55 |
|
---|
56 | $Output .= '</td><td valign="top">';
|
---|
57 |
|
---|
58 | $UsersPayment = $Finance->TotalInternetPaid;
|
---|
59 | $NetworkManagement = $Finance->Sprava * $Finance->SpravaUsers;
|
---|
60 | $TotalGain = 0;
|
---|
61 | $TotalExpense = 0;
|
---|
62 | $DbResult = $this->Database->query('SELECT SUM(Consumption) FROM network_devices WHERE used=1');
|
---|
63 | $Row = $DbResult->fetch_array();
|
---|
64 | $TotalConsumption = $this->System->Modules['Finance']->W2Kc($Row[0]);
|
---|
65 |
|
---|
66 | $Output .= 'Měsíční vyúčtování:<br />
|
---|
67 | <table class="WideTable">
|
---|
68 | <tr><th>Položka</th><th>Cena [Kč]</th></tr>
|
---|
69 | <tr><th colspan="2">Příjmy</th></tr>';
|
---|
70 | $Output .= '<tr><td>Poplatky účastníků za internet</td><td align="right">'.$UsersPayment.'</td></tr>';
|
---|
71 | $TotalGain += $UsersPayment;
|
---|
72 | $Output .= '<tr><td><strong>Celkem</strong></td><td align="right"><strong>'.$TotalGain.'</strong></td></tr>';
|
---|
73 | $Output .= '<tr><th colspan="2">Výdaje</th></tr><tr><td>Internet</td><td align="right">'.$Finance->Internet.'</td></tr>';
|
---|
74 | $TotalExpense += $Finance->Internet;
|
---|
75 | $Output .= '<tr><td>Správa sítě</td><td align="right">'.$NetworkManagement.'</td></tr>';
|
---|
76 | $TotalExpense += $NetworkManagement;
|
---|
77 | $Output .= '<tr><td>Spotřeba energie</td><td align="right">'.$TotalConsumption.'</td></tr>';
|
---|
78 | $TotalExpense += $TotalConsumption;
|
---|
79 | $Output .= '<tr><td><strong>Celkem</strong></td><td align="right"><strong>'.$TotalExpense.'</strong></td></tr>';
|
---|
80 | $Output .= '<tr><td colspan="2"> </td></tr>';
|
---|
81 | $Output .= '<tr><td><strong>Rozdíl</strong></td><td align="right"><strong>'.($TotalGain - $TotalExpense).'</strong></td></tr>';
|
---|
82 | $Output .= '<tr><td>Převod do dalšího měsíce</td><td align="right">'.($TotalGain - $TotalExpense).'</td></tr>';
|
---|
83 | $Output .= '</table><br />';
|
---|
84 | /* $DbResult = $this->Database->select('', 'cash', 'id='.$Finance->UserIdNetwork);
|
---|
85 | $Row = $DbResult->fetch_array();
|
---|
86 | $NetworkCash = $Row['cash'];
|
---|
87 | $Output .= 'Stav účtu sítě: '.$NetworkCash.' Kč<br /><a href="clenove.php?show=user&id='.$Finance->UserIdNetwork.'">Výpis účtu</a><br />';*/
|
---|
88 |
|
---|
89 | $Output .= '</td></tr></table>';
|
---|
90 |
|
---|
91 | /*
|
---|
92 | echo('Poplatek je odečten z účtu vždy první den v měsíci. Peníze noste nejlépe předem.<br /><br />');
|
---|
93 | echo('<strong>Jak se rozpočítávají finance</strong><br />Internet i zařízení sítě se platí za domácnost. Systém výpočtu vychází z topologie sítě. Síť má stromovou topologii přičemž listy stromu jsou jednotliví uživatelé a kořen stromu je linka do internetu. Dosavadní systém je uzpůsoben tak, aby linky, které jsou nejvíce zatíženy, byly nejlépe zaplaceny a mohlo na nich tak být dražší a výkonější zařízení. Nejvytíženější linky se nazývají páteřní. Proto platí každý uživatel podílově zařízení, které vede od něj až ke kořenu stromu, což je v našem případě server Centrála s trvalým internetovým připojením. Pro jednoduchost je síť rozdělena na segmenty. Segment je část sítě, kterou využívá konstantní počet uživatelů. Každý segment je tvořen skupinou zařízení a má svoji celkovou cenu. Každý uživatel je přirozeně napojen na některý ze segmentů. Podíl klienta na zařízení sítě je vypočten jako součet podílů na jednotlivých segmentech směrem ke kořenu. Podíl na segmentu znamená celková cena segmentu podělená počtem uživatelů využívajících daný segment.<br />');
|
---|
94 | */
|
---|
95 | return($Output);
|
---|
96 | }
|
---|
97 | }
|
---|
98 |
|
---|
99 | ?>
|
---|