<?php

/**
 * DelegationCalculator
 *
 * @final
 * @author Tomasz Świenty
 * @version 0.1
 * @copyright Copyright (c) BetaSoft
 */
final class DelegationCalculator {



    /**
     * doc_id
     *
     */
    private $doc_id = NULL;



    /**
     * __construct
     *
     * @param int $doc_id
     * @return void
     */
    public function __construct($doc_id) {

        $this->doc_id = $doc_id;

    }



    /**
     * calculate
     * Kalkulator delegacji.
     * Funkcja powinna zwrócić tablicę w nazwami kluczy jak podane poniżej w sekcji Nazwy kluczy. Po zwróceniu nastąpi aktualizacja pól w formularzu.
     * Skrypt NIE POWINIEN wykonywać operacji ZAPISANIA w bazie - może wykonywać zapytania typu SELECT (NIE INSERT/UPDATE/DELETE etc)
     * Po zwróceniu danych przez skrypt (jeśli nie jest to pusta tablica) następuje aktualizacja beana delegacji o pola zwrócone przez skrypt 
     * i automatycznie umieszczenie wartości w polach formularza.
     *
     * @param string $field nazwa pola z bazy, którego dotyczy operacji kalkulacji czyli może to być lusutr, accomm lub diet__
     * @param array $pData dane z zakładki Rozliczenie w formie tablicy
     *
     * Nazwy kluczy (to są zarówno dane wejściowe jak i wyjściowe jeśli nie chcesz czegoś aktualizować nie zwracaj tego w return)
     * [brecnt] => Liczba śniadań
     * [midcnt] => Liczba obiadów
     * [dincnt] => Liczba kolacji
     * [rorset] => Wnioskuję o rozliczenie z ROR
     * [lusutr] => Wartość brutto ryczałtu za przejazdy
     * [accomm] => Wartość brutto noclegi ryczałt
     * [diet__] => Wartość brutto diet
     * @return array()
     */
    public function calculate($field, $pData) {

        return array();

    }

} // class DelegationCalculator

?>
