Changeset 152 for www/finance/index.php


Ignore:
Timestamp:
Feb 16, 2009, 2:09:57 PM (16 years ago)
Author:
george
Message:
  • Upraveno: Další soubory přepracované do nového systému zobrazování.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • www/finance/index.php

    r145 r152  
    11<?php
    2 include_once('../style.php');
     2include_once('../global.php');
    33include_once('include.php');
    44
    5 ShowHeader('Financování sítě', 'Finance');
     5class FinanceOverview extends Page
     6{
     7  var $FullTitle = 'Přehled financování sítě';
     8  var $ShortTitle = 'Přehled financí';
    69
    7 echo('<table><tr><td valign="top">');
     10  function Show()
     11  {
     12    global $Config, $RealMaxSpeed, $Internet, $InternetUsers, $kWh, $TotalInternetPaid, $SpravaUsers, $Sprava, $UserIdNetwork;
    813
    9 echo('<table><tr><td width="30%">');
    10 if(GetMemberByIP(GetRemoteAddress()) > 0) echo('<a href="clenove.php">Vaše finanční operace</a><br /><br /><br />');
    11 echo('<a href="monthly_overall.php">Měsíční přehledy</a><br />'.
    12 '<a href="tarify.php">Tarify</a><br />'.
    13 '<a href="zarizeni.php">Výpis zařízení</a><br />'.
    14 //'<a href="spotreba.php">Spotřeba energie</a><br />'.
    15 '<a href="'.$Config['Web']['RootFolder'].'/aktuality/index.php?category=9">Investice v síti</a><br />'.
    16 //'<a href="faktury/">Faktury za internet</a><br />'.
    17 //'<a href="inventory.php">Výpis skladových zásob</a><br />'.
    18 //'<a href="srovnani.php">Porovnání tarifů s konkurencí</a><br />'.
    19 '</td><td width="50%">');
     14    $Output = '<table><tr><td valign="top">';
    2015
     16    $Output .= '<table><tr><td width="30%">';
     17        if(GetMemberByIP(GetRemoteAddress()) > 0) $Output .= '<a href="user_state.php">Vaše finanční operace</a><br /><br /><br />';
     18       
     19    $Output .= '<a href="monthly_overall.php">Měsíční přehledy</a><br />';
     20    $Output .= '<a href="tarify.php">Tarify</a><br />';
     21    $Output .= '<a href="zarizeni.php">Výpis zařízení</a><br />';
     22    if($this->System->Modules['User']->CheckPermission('Finance', 'SubjectList')) $Output .= '<a href="clenove.php">Seznam členů</a><br />';
     23    $Output .= '<a href="spotreba.php">Spotřeba energie</a><br />';
     24    $Output .= '<a href="'.$Config['Web']['RootFolder'].'/aktuality/index.php?category=9">Investice v síti</a><br />';
     25    //$Output .= '<a href="faktury/">Faktury za internet</a><br />';
     26    //$Output .= '<a href="inventory.php">Výpis skladových zásob</a><br />';
     27    $Output .= '</td><td width="50%">';
    2128
    22 /*
    23 $CenaBezDPH = 11000;
    24 $JednorazoveBezDPH = 29800;
    25 DB_Query('SELECT COUNT(*) FROM users WHERE inet=1 AND role=0');
    26 $Row = DB_Row();
    27 echo('<table style="border-style: dotted; border-width: 1; border-color: red; font-size: small;"><tr><td>'.
    28 'Měsíční poplatek za internet při navýšení rychlosti na 1024/1024 kb/s: '.round($CenaBezDPH*1.19).' / '.$Row[0].' = <strong>'.round($CenaBezDPH*1.19/$Row[0]).' Kč</strong></td></tr></table>');
    29 */
    30 /*
    31 DB_Query('SELECT COUNT(*) FROM users WHERE fast_inet=1 AND role=0');
    32 $Row = DB_Row();
    33 echo('Při <a href="clenove.php">'.$Row[0].'</a> zájemcích včetně DPH: jednorázově: <strong>'.round(29800*1.19/$Row[0]).' Kč</strong>'.
    34 ' měsíčně: <strong>'.round(8900*1.19/$Row[0]).' Kč</strong>');
    35 */
     29    $Output .= '</td></tr></table><br />';
    3630
    37 echo('</td></tr></table><br />');   
     31    $Output .= '<strong>Souhrn:</strong><br />';
    3832
    39 echo('<strong>Souhrn:</strong><br />');
     33    $DbResult = $this->Database->query("SELECT * FROM finance_monthly_overall ORDER BY date DESC LIMIT 0,1");
     34    $Row = $DbResult->fetch_array();
     35    $Output .= 'Platba za internetovou linku ('.$RealMaxSpeed.'/'.$RealMaxSpeed.' kbit/s): <strong>'.$Internet.' Kč</strong><br />';
    4036
    41 $DbResult = $Database->query("SELECT * FROM finance_monthly_overall ORDER BY date DESC LIMIT 0,1");
    42 $Row = $DbResult->fetch_array();
    43 echo('Poplatek za hlavní internetovou linku ('.$RealMaxSpeed.'/'.$RealMaxSpeed.' kbit/s): <strong>'.$Internet.' Kč</strong><br />');
     37    $DbResult = $this->Database->query("SELECT COUNT(*) FROM users WHERE role=2");
     38    $Row2 = $DbResult->fetch_array();
     39    $Output .= 'Počet účastníků: <strong>'.$Row2[0].'</strong><br />';
    4440
    45 $DbResult = $Database->query("SELECT COUNT(*) FROM users WHERE role=2");
    46 $Row2 = $DbResult->fetch_array();
    47 echo('Počet připojených účastníků: <strong>'.$Row2[0].'</strong><br />');
     41    $DbResult = $this->Database->query("SELECT SUM(price) FROM network_devices WHERE used=1");
     42    $Row4 = $DbResult->fetch_array();
     43    $Output .= 'Celková cena zařízení sítě: <strong>'.$Row4[0].' Kč</strong><br />';
    4844
    49 //echo('Předpokládané rozmezí měsíčního poplateku za internet pro jednoho uživatele: <strong>300 - 500 Kč</strong><br />');
     45    $DbResult = $this->Database->query('SELECT SUM((SELECT COALESCE(SUM(Value), 0) FROM FinanceCashFlow WHERE Subject=users.id) + (SELECT COALESCE(SUM(-Value), 0) FROM FinanceClaimsLiabilities WHERE Subject=users.id)) as Cash FROM users WHERE role=2');
     46    $Row4 = $DbResult->fetch_array();
     47    $Output .= 'Celkem peněz na účtech: <strong>'.$Row4[0].' Kč</strong><br />';
     48    $Output .= 'Stanovená cena jedné kWh: <strong>'.$kWh.' Kč</strong><br />';
     49    //echo('Komunitou stanovený poplatek za správu sítě pro jednoho uživatele: <strong>'.$Sprava.' Kč</strong><br />');
     50    $DbResult = $this->Database->query("SELECT SUM(family) FROM users WHERE role=2");
     51    $Row5 = $DbResult->fetch_array();
     52    $TotalFamily = 600;
     53    $Output .= 'V připojených domácnostech celkem <strong>'.$Row5[0].'</strong> občanů ze všech <strong>'.$TotalFamily.'</strong> ('.round($Row5[0] / $TotalFamily * 100).' %)<br />';
     54    $Output .= 'IČ: <strong>75904535</strong><br />'.
     55    'DIČ: <strong>CZ8303255884</strong><br />'.
     56    'Bankovní účet: <strong>218098370 / 0300</strong><br />'.
     57    '<br />';
    5058
    51 //echo('Aktuální poplatek za internet pro jednoho uživatele: <strong>'.round($Internet/$InternetUsers).' Kč</strong><br />');
     59    $Output .= '</td><td valign="top">';
    5260
    53 $DbResult = $Database->query("SELECT SUM(price) FROM network_devices WHERE used=1");
    54 $Row4 = $DbResult->fetch_array();
    55 echo('Celková cena zařízení sítě: <strong>'.$Row4[0].' Kč</strong><br />');
    56 $DbResult = $Database->query("SELECT SUM(cash) FROM users");
    57 $Row4 = $DbResult->fetch_array();
    58 echo('Celkem peněz na účtech: <strong>'.$Row4[0].' Kč</strong><br />');
    59 echo('Stanovená cena jedné kWh: <strong>'.$kWh.' Kč</strong><br />');
    60 //echo('Komunitou stanovený poplatek za správu sítě pro jednoho uživatele: <strong>'.$Sprava.' Kč</strong><br />');
    61 $DbResult = $Database->query("SELECT SUM(family) FROM users WHERE role=2");
    62 $Row5 = $DbResult->fetch_array();
    63 $TotalFamily = 600;
    64 echo('V připojených domácnostech celkem <strong>'.$Row5[0].'</strong> občanů ze všech <strong>'.$TotalFamily.'</strong> ('.round($Row5[0] / $TotalFamily * 100).' %)<br />');
    65 echo('IČ: <strong>75904535</strong><br />'.
    66 'DIČ: <strong>CZ8303255884</strong><br />'.
    67 'Bankovní účet: <strong>218098370 / 0300</strong><br />'.
    68 '<br />');
     61    $UsersPayment = $TotalInternetPaid;
     62    $NetworkManagement = $Sprava * $SpravaUsers;
     63    $TotalGain = 0;
     64    $TotalExpense = 0;
     65    $DbResult = $this->Database->query("SELECT SUM(consumption) FROM network_devices WHERE used=1");
     66    $Row = $DbResult->fetch_array();
     67    $TotalConsumption = W2Kc($Row[0]);
    6968
    70 echo('</td><td valign="top">');
     69    $Output .= 'Měsíční vyúčtování:<br />
     70    <table border="1" cellspacing="0" cellpadding="3">
     71    <tr><th>Položka</th><th>Cena [Kč]</th></tr>
     72    <tr><th colspan="2">Příjmy</th></tr>';
     73    $Output .= '<tr><td>Poplatky účastníků za internet</td><td align="right">'.$UsersPayment.'</td></tr>';
     74    $TotalGain += $UsersPayment;
     75    $Output .= '<tr><td><strong>Celkem</strong></td><td align="right"><strong>'.$TotalGain.'</strong></td></tr>';
     76    $Output .= '<tr><th colspan="2">Výdaje</th></tr><tr><td>Internet</td><td align="right">'.$Internet.'</td></tr>';
     77    $TotalExpense += $Internet;
     78    $Output .= '<tr><td>Správa sítě</td><td align="right">'.$NetworkManagement.'</td></tr>';
     79    $TotalExpense += $NetworkManagement;
     80    $Output .= '<tr><td>Spotřeba energie</td><td align="right">'.$TotalConsumption.'</td></tr>';
     81    $TotalExpense += $TotalConsumption;
     82    $Output .= '<tr><td><strong>Celkem</strong></td><td align="right"><strong>'.$TotalExpense.'</strong></td></tr>';
     83    $Output .= '<tr><td colspan="2">&nbsp;</td></tr>';
     84    $Output .= '<tr><td><strong>Rozdíl</strong></td><td align="right"><strong>'.($TotalGain - $TotalExpense).'</strong></td></tr>';
     85    $Output .= '<tr><td>Převod do dalšího měsíce</td><td align="right">'.($TotalGain - $TotalExpense).'</td></tr>';
     86    $Output .= '</table><br />';
     87    $DbResult = $this->Database->select('users', 'cash', 'id='.$UserIdNetwork);
     88    $Row = $DbResult->fetch_array();
     89    $NetworkCash = $Row['cash'];
     90    $Output .= 'Stav účtu sítě: '.$NetworkCash.' Kč<br /><a href="clenove.php?show=user&amp;id='.$UserIdNetwork.'">Výpis účtu</a><br />';
    7191
    72 $UsersPayment = $TotalInternetPaid;
    73 $NetworkManagement = $Sprava * $SpravaUsers;
    74 $TotalGain = 0;
    75 $TotalExpense = 0;
    76 $DbResult = $Database->query("SELECT SUM(consumption) FROM network_devices WHERE used=1");
    77 $Row = $DbResult->fetch_array();
    78 $TotalConsumption = W2Kc($Row[0]);
    79 //$Users
    80 
    81 echo('Měsíční vyúčtování:<br />
    82 <table border="1" cellspacing="0" cellpadding="3">
    83 <tr><th>Položka</th><th>Cena [Kč]</th></tr>
    84 <tr><th colspan="2">Příjmy</th></tr>');
    85 echo('<tr><td>Poplatky účastníků za internet</td><td align="right">'.$UsersPayment.'</td></tr>');
    86 $TotalGain += $UsersPayment;
    87 echo('<tr><td><strong>Celkem</strong></td><td align="right"><strong>'.$TotalGain.'</strong></td></tr>');
    88 echo('<tr><th colspan="2">Výdaje</th></tr>
    89 <tr><td>Internet</td><td align="right">'.$Internet.'</td></tr>');
    90 $TotalExpense += $Internet;
    91 echo('<tr><td>Správa sítě</td><td align="right">'.$NetworkManagement.'</td></tr>');
    92 $TotalExpense += $NetworkManagement;
    93 echo('<tr><td>Spotřeba energie</td><td align="right">'.$TotalConsumption.'</td></tr>');
    94 $TotalExpense += $TotalConsumption;
    95 echo('<tr><td><strong>Celkem</strong></td><td align="right"><strong>'.$TotalExpense.'</strong></td></tr>');
    96 echo('<tr><td colspan="2">&nbsp;</td></tr>');
    97 echo('<tr><td><strong>Rozdíl</strong></td><td align="right"><strong>'.($TotalGain - $TotalExpense).'</strong></td></tr>');
    98 echo('<tr><td>Převod do dalšího měsíce</td><td align="right">'.($TotalGain - $TotalExpense).'</td></tr>');
    99 echo('</table><br />');
    100 $DbResult = $Database->select('users', 'cash', 'id='.$UserIdNetwork);
    101 $Row = $DbResult->fetch_array();
    102 $NetworkCash = $Row['cash'];
    103 //echo('Stav účtu sítě: '.$NetworkCash.' Kč<br />');
    104 //<a href="clenove.php?show=user&amp;id='.$UserIdNetwork.'">Výpis účtu</a><br />');
    105 
    106 echo('</td></tr></table>');
     92    $Output .= '</td></tr></table>';
    10793
    10894/*
     
    11096echo('<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 />');
    11197*/
    112 ShowFooter();
     98    return($Output);
     99  }
     100}
     101
     102$System->AddModule(new FinanceOverview());
     103$System->Modules['FinanceOverview']->GetOutput();
     104
    113105?>
Note: See TracChangeset for help on using the changeset viewer.