Changeset 295 for trunk/finance


Ignore:
Timestamp:
Oct 2, 2010, 7:40:25 PM (14 years ago)
Author:
george
Message:
  • Přidáno: Funkce pro zpožděné generování chybějících dokladů.
Location:
trunk/finance
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/finance/bills.php

    r184 r295  
    2727   
    2828    switch($Bill['Type'])
    29           {
    30           case 'invoice':
     29    {
     30    case 'invoice':
    3131        $Output = '<table width="100%"><tr><td colspan="2">'.
    3232        '<font size="6"><div align="center">Faktura - daňový doklad</font></div>'.
     
    6262        'Datum zdanitel. plnění: '.HumanDate($Bill['TimeCreate']).'<br>'.
    6363        'Datum splatnosti: '.HumanDate($Bill['TimeDue']).'<br>';
    64         if(($Bill['TimeFrom'] != '0000-00-00 00:00:00') and ($Bill['TimeTo'] != '0000-00-00 00:00:00'))
    65           $Output .= 'Fakturované období: '.HumanDate($Bill['TimeFrom']).' - '.HumanDate($Bill['TimeTo']).'<br>';
     64        //if(($Bill['TimeFrom'] != '0000-00-00 00:00:00') and ($Bill['TimeTo'] != '0000-00-00 00:00:00'))
     65        //  $Output .= 'Fakturované období: '.HumanDate($Bill['TimeFrom']).' - '.HumanDate($Bill['TimeTo']).'<br>';
    6666        $Output .= '</td></tr>'.
    6767        '<tr><td colspan="2">'.
     
    8383        '<tr><td colspan="2"><hr></td></tr>'.
    8484        '</table>';
    85             break;
    86           case 'income':
    87                 $Output = '<table width="100%" border="1" cellspacing="0" cellpadding="3"><tr><td width="50%">'.
     85      break;
     86    case 'income':
     87    $Output = '<table width="100%" border="1" cellspacing="0" cellpadding="3"><tr><td width="50%">'.
    8888        '<strong>Firma:</strong><br>'.
    8989        'Ing. Jiří Hajda<br>'.
     
    105105        if($Subject['DIC'] != '') $Output .= 'DIČ: '.$Subject['DIC'].'<br>';
    106106        $Total = 0;
    107                 $Description = '';
     107    $Description = '';
    108108        foreach($Dodavka as $Polozka)
    109109        {
     
    114114        '<tr><td colspan="2"><strong>Částka:</strong> '.$Total.' Kč<br><br>'.
    115115        '</td></tr>'.   
    116         '<tr><td colspan="2"><strong>Účel platby:</strong><br>'.$Description.'</td></tr>'.       
    117                 '<tr><td><br><br>Podpis příjemce:</td><td><br><br>Podpis pokladníka:</td></tr>';
     116        '<tr><td colspan="2"><strong>Účel platby:</strong><br>'.$Description.'</td></tr>'.   
     117    '<tr><td><br><br>Podpis příjemce:</td><td><br><br>Podpis pokladníka:</td></tr>';
    118118        $Output .= '</table>';
    119             break;     
    120     }
    121         return($Output);
     119      break; 
     120    }
     121  return($Output);
    122122  }
    123123
  • trunk/finance/clenove.php

    r207 r295  
    1010  {
    1111    $Finance = $this->System->Modules['Finance'];
    12           $this->System->Modules['Finance']->LoadTariffs(1);
    13           if(!$this->System->Modules['User']->CheckPermission('Finance', 'SubjectList')) return('Nemáte oprávnění');
     12    $this->System->Modules['Finance']->LoadTariffs(1);
     13    if(!$this->System->Modules['User']->CheckPermission('Finance', 'SubjectList')) return('Nemáte oprávnění');
    1414
    15         // Seznam členů
     15  // Seznam členů
    1616    $Output = 'Seznam účastníků:<br>'.
    1717    '<table class="WideTable">'.
    1818    '<tr><th>Zástupce</th><th>Subjekt</th>';
    1919    //<th>Cena za zařízení [Kč]</th>
    20     $Output .= '<th>Měsíční poplatek [Kč]</th><th>Stav účtu [Kč]</th><th>Běžící tarif</th><th>Příští tarif</th></tr>';
     20    $Output .= '<th>Měsíční poplatek [Kč]</th><th>Stav účtu [Kč]</th><th>Běžící tarif</th><th>Příští tarif</th><th>Poznámky</th><th>WWW</th></tr>';
    2121    $TotalDevice = 0;
    2222    $TotalMonth = 0;
    2323    $TotalCash = 0;
    24     $DbResult = $this->Database->query('SELECT MonthlyTotal, Cash, Subject.Id, Subject.Name, NetworkDevice, InternetTariffCurrentMonth, InternetTariffNextMonth, User.Name AS FullName FROM MemberPayment LEFT JOIN Member ON Member.Id=MemberPayment.Member LEFT JOIN Subject ON Subject.Id=Member.Subject JOIN User ON User.Id=Member.ResponsibleUser ORDER BY FullName');
     24    $DbResult = $this->Database->query('SELECT MonthlyTotal, Cash, Subject.Id, Subject.WWW, Subject.Note, Subject.Name, NetworkDevice, InternetTariffCurrentMonth, InternetTariffNextMonth, User.Name AS FullName FROM MemberPayment LEFT JOIN Member ON Member.Id=MemberPayment.Member LEFT JOIN Subject ON Subject.Id=Member.Subject JOIN User ON User.Id=Member.ResponsibleUser ORDER BY FullName');
    2525    while($Row = $DbResult->fetch_assoc())
    2626    {
     
    3232      $Output .= '<tr><td>'.$Row['FullName'].'</td><td><a href="user_state.php?Subject='.$Row['Id'].'">'.$Row['Name'].'</a></td>';
    3333      //<td align="right">'.$Row['network_device'].'</td>
    34       $Output .= '<td align="right">'.$Row['MonthlyTotal'].'</td><td align="right">'.$Row['Cash'].'</td><td align="center">'.$Tarif.'</td><td align="center">'.$PristiTarif.'</td></tr>';
     34      $Output .= '<td align="right">'.$Row['MonthlyTotal'].'</td><td align="right">'.$Row['Cash'].'</td><td align="center">'.$Tarif.'</td><td align="center">'.$PristiTarif.'</td><td>'.$Row['Note'].'</td><td>'.$Row['WWW'].'</td></tr>';
    3535      $TotalDevice += $Row['NetworkDevice'];
    3636      $TotalMonth += ($Row['MonthlyTotal']);
  • trunk/finance/manage.php

    r294 r295  
    5454      case 'MonthlyPayment':
    5555        $Output = $this->ShowMonthlyPayment();
     56        break;
     57      case 'GenerateBills':
     58        $Output = $this->GenerateBills();
    5659        break;
    5760      default:
     
    6871        $Output .= '<a href="clenove.php">Seznam členů</a><br />';
    6972        $Output .= '<a href="zivnost.php">Živnost</a><br />';
     73        $Output .= '<a href="?Operation=GenerateBills">Generovat chybějící doklady</a><br />';
    7074    }
    7175    return($Output);
     
    538542          $BillCode = $Finance->GetNextDocumentLineNumber(6); // Faktury vydané
    539543          $BillId = $this->System->Modules['Bill']->CreateBill($Member['Subject'], array(array('Description' => 'Připojení k síti', 'Price' => $PayPerPeriod, 'Quantity' => 1)), $Period['From'], $Period['To'], $BillCode);
    540           $this->Database->insert('FinanceClaimsLiabilities', array('Value' => $PayPerPeriod, 'Subject' => $Member['Subject'], 'TimeCreation' => 'NOW()', 'Text' => 'Připojení k síti za období '.$TimePeriodText, 'Bill' => 0, 'BillCode' => $BillCode));
     544          $this->Database->insert('FinanceClaimsLiabilities', array('Value' => $PayPerPeriod, 'Subject' => $Member['Subject'], 'TimeCreation' => 'NOW()', 'TimeDue' => 'DATE_ADD(NOW(), INTERVAL 15 DAY)', 'Text' => 'Připojení k síti za období '.$TimePeriodText, 'Bill' => 0, 'BillCode' => $BillCode));
    541545          $Output .= $this->SendPaymentEmail($Member['Id']);
    542546          $this->Database->update('Member', 'Id='.$Member['Id'], array('BillingPeriodLastDate' => TimeToMysqlDateTime($Period['To'])));
     
    616620    } else $Output = 'Uživatel '.$User['Name'].' nemá email.';
    617621  }
     622 
     623  function GenerateBills()
     624  {
     625    // FinanceClaimsLiablities
     626    $DbResult = $this->Database->query('SELECT * FROM FinanceClaimsLiabilities WHERE (BillCode <> "") AND (Value >= 0)');
     627    while($Row = $DbResult->fetch_assoc())
     628    {
     629      $BillId = $this->System->Modules['Bill']->CreateBill($Row['Subject'], array(array('Description' => $Row['Text'], 'Price' => $Row['Value'], 'Quantity' => 1)), MysqlDateTimeToTime($Row['TimeCreation']), MysqlDateTimeToTime($Row['TimeDue']), $Row['BillCode']);
     630      $this->Database->update('FinanceClaimsLiabilities', 'Id='.$Row['Id'], array('Bill' => $BillId));
     631      echo('.');
     632    }
     633
     634    // FinanceOperations
     635  }
    618636}
    619637
Note: See TracChangeset for help on using the changeset viewer.