|
|
@@ -96,9 +96,12 @@ dostęp dla zarządu i os. odp. kwota końcowa
|
|
|
$data['COST_OSPRZET'] = V::get('COST_OSPRZET', 0, $data['projectInfo']);
|
|
|
$data['COST_MATERIALY'] = V::get('COST_MATERIALY', 0, $data['projectInfo']);
|
|
|
|
|
|
+ // TODO: tylko ZATWIERDZONE, OCZEKUJE_ZATWIERDZENIA i OCZEKUJE_OSTATECZNEGO_ZATWIERDZENIA
|
|
|
$data['ordersRaw'] = DB::getPDO()->fetchAll("
|
|
|
select r.ID
|
|
|
, r.ORDER_LABEL
|
|
|
+ , r.ORDER_DATE
|
|
|
+ , r.APPROVE_STATUS
|
|
|
, sum(o.OFFER_PRICE_PER_UNIT * o.OFFER_QUANTITY) as SUM_NETTO
|
|
|
from CRM_LISTA_ZASOBOW_ORDERS r
|
|
|
left join CRM_LISTA_ZASOBOW_OFFERS o on(
|
|
|
@@ -107,6 +110,7 @@ dostęp dla zarządu i os. odp. kwota końcowa
|
|
|
)
|
|
|
where (r.A_STATUS is null or r.A_STATUS not in('DELETED'))
|
|
|
and r.ID_PROJECT = {$idProj}
|
|
|
+ -- and r.APPROVE_STATUS in('ZATWIERDZONE', 'OCZEKUJE_ZATWIERDZENIA', 'OCZEKUJE_OSTATECZNEGO_ZATWIERDZENIA')
|
|
|
group by r.ID
|
|
|
");
|
|
|
|
|
|
@@ -119,8 +123,12 @@ dostęp dla zarządu i os. odp. kwota końcowa
|
|
|
$toFindKoresp[$idOrder] = $labelOrder;
|
|
|
if (count($data['costs']) < $idxOrders + 1) {
|
|
|
$data['costs'][] = array(
|
|
|
- 'cost_zamowienia'=>$order['SUM_NETTO'],
|
|
|
- 'nr_zamowienia'=>$labelOrder,
|
|
|
+ 'data'=>$order['ORDER_DATE'],
|
|
|
+ 'order_approve_status'=>$order['APPROVE_STATUS'],
|
|
|
+ 'order_cost'=>$order['SUM_NETTO'],
|
|
|
+ 'cost_zamowienia'=>$order['SUM_NETTO'],// TODO: RMME -> mved to `order_cost`
|
|
|
+ 'order_nr'=>$labelOrder,
|
|
|
+ 'nr_zamowienia'=>$labelOrder,// TODO: RMME -> mved to `order_nr`
|
|
|
'nr_fv_do_zamowienia'=>array(),
|
|
|
'cost_zaliczki'=>0,
|
|
|
'cost_pracownicy'=>0,
|
|
|
@@ -182,6 +190,32 @@ dostęp dla zarządu i os. odp. kwota końcowa
|
|
|
}
|
|
|
|
|
|
public function budgetView($data, $viewParams) {
|
|
|
+ $styleZyskStrata = 'color: black';
|
|
|
+ if ($data['TODO__sum_zysk_strata'] > 0) $styleZyskStrata = 'color:green';
|
|
|
+ if ($data['TODO__sum_zysk_strata'] < 0) $styleZyskStrata = 'color:red';
|
|
|
+
|
|
|
+ $costs = $data['costs'];
|
|
|
+ foreach ($costs as $idx => $cost) {
|
|
|
+ $cost['is_order'] = ($cost['order_cost'] && $cost['order_nr']);
|
|
|
+ if ($cost['is_order']) {
|
|
|
+ $cost['cell_order_color'] = '#aaa';
|
|
|
+ $cost['cell_order_title'] = '';
|
|
|
+ switch ($cost['order_approve_status']) {
|
|
|
+ case 'ZATWIERDZONE': $cost['cell_order_color'] = 'black'; break;
|
|
|
+ case 'OCZEKUJE_OSTATECZNEGO_ZATWIERDZENIA': $cost['cell_order_color'] = '#777'; break;
|
|
|
+ case 'OCZEKUJE_ZATWIERDZENIA': $cost['cell_order_color'] = '#777'; break;
|
|
|
+ case 'WERSJA_ROBOCZA': $cost['cell_order_color'] = '#aaa'; break;
|
|
|
+ }
|
|
|
+ switch ($cost['order_approve_status']) {
|
|
|
+ case 'ZATWIERDZONE': $cost['cell_order_title'] = "Zamówienie zatwierdzone"; break;
|
|
|
+ case 'OCZEKUJE_OSTATECZNEGO_ZATWIERDZENIA': $cost['cell_order_title'] = "Zamówienie oczekuje ostatecznego zatwierdzenia"; break;
|
|
|
+ case 'OCZEKUJE_ZATWIERDZENIA': $cost['cell_order_title'] = "Zamówienie oczekuje zatwierdzenia"; break;
|
|
|
+ case 'ODRZUCONE': $cost['cell_order_title'] = "Zamówienie odrzucone"; break;
|
|
|
+ case 'WERSJA_ROBOCZA': $cost['cell_order_title'] = "Wersja robocza"; break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $costs[$idx] = $cost;
|
|
|
+ }
|
|
|
?>
|
|
|
<div class="container">
|
|
|
<div class="row">
|
|
|
@@ -197,37 +231,84 @@ dostęp dla zarządu i os. odp. kwota końcowa
|
|
|
</div>
|
|
|
</div>
|
|
|
<h3>Projekt: <?php echo $data['projectLabel']; ?></h3>
|
|
|
- <blockquote style="font-size:1em">
|
|
|
- Data rozpoczęcia umowy: <?php echo $data['POCZATEK_UMOWY']; ?>
|
|
|
- <br>Data zakończenia umowy: <?php echo $data['KONIEC_BUDOWY']; ?>
|
|
|
- <!-- <br>Kwota Umowy (netto): <?php echo $data['M_DIST_COST_PROJECT']; ?> ? == $data['budget'] -->
|
|
|
- <br>Pozostało dni: <?php echo $data['days_to_finish']; ?>
|
|
|
- </blockquote>
|
|
|
<table class="table table-bordered">
|
|
|
<thead>
|
|
|
<tr>
|
|
|
- <th title="Kwota Umowy (netto)">Kwota planowana<br><?php echo UI::price($data['budget']); ?></th>
|
|
|
- <th>Zamówienie</th>
|
|
|
- <th>zaliczki</th>
|
|
|
- <th>ilość pracowników / koszty pracownicze: powiązanie z raportami X współczynnik</th>
|
|
|
- <th>koszty sprzętu / wynajmowany na budowie: rozdział na różne rodzaj sprzętu: koparka itp.
|
|
|
- <br><?php echo UI::price($data['COST_OSPRZET']); ?>
|
|
|
- </th>
|
|
|
- <th>koszty własne: naprawy sprzętu</th>
|
|
|
- <th>koszty materiałów
|
|
|
- <br><?php echo UI::price($data['COST_MATERIALY']); ?>
|
|
|
- </th>
|
|
|
- <th>osprzet</th>
|
|
|
- <th>dodatkowe koszty związane z nadwyżkami - rozbieżności odnośnie ustaleń</th>
|
|
|
+ <td rowspan="6" colspan="1" style="width:80px; text-align:center; vertical-align:middle">data</td>
|
|
|
+ <td rowspan="1" colspan="2" style="text-align:center; vertical-align:middle">data rozpoczęcia umowy</td>
|
|
|
+ <td rowspan="1" colspan="2" style="text-align:center; vertical-align:middle">data zakończenia umowy</td>
|
|
|
+ <td rowspan="1" colspan="2" style="text-align:center; vertical-align:middle">pozostało dni:</td>
|
|
|
+ <td rowspan="2" colspan="2" style="text-align:center; vertical-align:middle">Wartość kosztorysu</td>
|
|
|
+ <td rowspan="3" colspan="2" style="text-align:center; vertical-align:middle">ROBOCIZNA</td>
|
|
|
+ <td rowspan="6" colspan="1" style="text-align:center; vertical-align:middle">Koszty dodatkowe (reprezentacyjne)</td>
|
|
|
+ <td rowspan="4" colspan="2" style="text-align:center; vertical-align:middle">Zamówienia</td>
|
|
|
+ <td rowspan="4" colspan="2" style="text-align:center; vertical-align:middle">Zaliczki</td>
|
|
|
+ <td rowspan="4" colspan="2" style="text-align:center; vertical-align:middle">Zgody wejścia w teren</td>
|
|
|
+ <td rowspan="4" colspan="2" style="text-align:center; vertical-align:middle">Wynajem sprzętu</td>
|
|
|
+ <td rowspan="4" colspan="2" style="text-align:center; vertical-align:middle">Koszty projektu</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td rowspan="1" colspan="2" style="text-align:center; vertical-align:middle"><?php echo $data['POCZATEK_UMOWY']; ?></td>
|
|
|
+ <td rowspan="1" colspan="2" style="text-align:center; vertical-align:middle"><?php echo $data['KONIEC_BUDOWY']; ?></td>
|
|
|
+ <td rowspan="1" colspan="2" style="text-align:center; vertical-align:middle"><?php echo $data['days_to_finish']; ?></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td rowspan="1" colspan="2" style="text-align:center; vertical-align:middle">Kwota Umowy (netto)</td>
|
|
|
+ <td rowspan="1" colspan="1" style="text-align:center; vertical-align:middle">Aneks (netto)</td>
|
|
|
+ <td rowspan="1" colspan="2" style="text-align:center; vertical-align:middle">kary, potrącenia (netto)</td>
|
|
|
+ <td rowspan="1" colspan="2" style="text-align:center; vertical-align:middle">Osprzęt</td>
|
|
|
+ <td rowspan="1" colspan="1" style="text-align:center; vertical-align:middle">Materiały</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th rowspan="3" colspan="1" style="text-align:center; vertical-align:middle; white-space:nowrap"><?php echo UI::price($data['budget']); ?></th>
|
|
|
+ <td rowspan="1" colspan="1" style="text-align:center; vertical-align:middle">Zysk/Strata</td>
|
|
|
+ <th rowspan="3" colspan="1" style="text-align:center; vertical-align:middle; white-space:nowrap"><?php echo UI::price($data['TODO__aneks_netto']); ?></th>
|
|
|
+ <th rowspan="3" colspan="2" style="text-align:center; vertical-align:middle; white-space:nowrap"><?php echo UI::price($data['TODO__kary_netto']); ?></th>
|
|
|
+ <td rowspan="1" colspan="1" style="text-align:center; vertical-align:middle">???</td>
|
|
|
+ <th rowspan="3" colspan="1" style="text-align:center; vertical-align:middle; white-space:nowrap"><?php echo UI::price($data['COST_OSPRZET']); ?></th>
|
|
|
+ <th rowspan="3" colspan="1" style="text-align:center; vertical-align:middle; white-space:nowrap"><?php echo UI::price($data['COST_MATERIALY']); ?></th>
|
|
|
+ <td rowspan="3" colspan="1" style="text-align:center; vertical-align:middle">koszty pracowników</td>
|
|
|
+ <td rowspan="3" colspan="1" style="text-align:center; vertical-align:middle">koszt firmy podwykonawczej</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td rowspan="2" colspan="1" style="text-align:center; vertical-align:middle; white-space:nowrap; <?php echo $styleZyskStrata; ?>"><?php echo UI::price($data['TODO__sum_zysk_strata']); ?></td>
|
|
|
+ <td rowspan="1" colspan="1" style="text-align:center; vertical-align:middle">???</td>
|
|
|
+ <td rowspan="2" colspan="1" style="text-align:center; vertical-align:middle">numer zamówienia (kwota netto)</td>
|
|
|
+ <td rowspan="2" colspan="1" style="text-align:center; vertical-align:middle">numer faktury kwota po weryfikacji</td>
|
|
|
+ <td rowspan="2" colspan="1" style="text-align:center; vertical-align:middle">zaliczka kwota</td>
|
|
|
+ <td rowspan="2" colspan="1" style="text-align:center; vertical-align:middle">rozliczanie zaliczki koszty dzienne</td>
|
|
|
+ <td rowspan="2" colspan="1" style="text-align:center; vertical-align:middle">służebności</td>
|
|
|
+ <td rowspan="2" colspan="1" style="text-align:center; vertical-align:middle">odszkodowania</td>
|
|
|
+ <td rowspan="2" colspan="1" style="text-align:center; vertical-align:middle">Sprzęt własny</td>
|
|
|
+ <td rowspan="2" colspan="1" style="text-align:center; vertical-align:middle">sprzęt wynajęty</td>
|
|
|
+ <td rowspan="2" colspan="1" style="text-align:center; vertical-align:middle">organizacja ruchu</td>
|
|
|
+ <td rowspan="2" colspan="1" style="text-align:center; vertical-align:middle">zajętość pasa drogowego</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td rowspan="1" colspan="1" style="text-align:center; vertical-align:middle">???</td>
|
|
|
</tr>
|
|
|
</thead>
|
|
|
<tbody>
|
|
|
- <?php foreach ($data['costs'] as $cost) : ?>
|
|
|
+ <?php foreach ($costs as $cost) : ?>
|
|
|
<tr>
|
|
|
+ <td style="white-space:nowrap"><?php echo $cost['data']; ?></td>
|
|
|
<td><?php echo UI::price($cost['budget_minus_sum']); ?></td>
|
|
|
- <td style="color:<?php echo ($cost['cost_zamowienia']) ? 'black' : 'silver'; ?>">
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_zysk_strata']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_zysk_strata']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_aneks']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_aneks']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_kary']) ? 'black' : 'silver'; ?>" colspan="2"><?php echo UI::price($cost['TODO__budget_kary']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_???']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_osprzet']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_osprzet']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_materialy']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_materialy']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_koszt_pracownikow']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_koszt_pracownikow']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_koszt_podwykonawcow']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_koszt_podwykonawcow']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_koszt_reprezentacyjny']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_koszt_reprezentacyjny']); ?></td>
|
|
|
+ <td style="color:<?php echo $cost['cell_order_color']; ?>" title="<?php echo $cost['cell_order_title']; ?>">
|
|
|
+ <!-- nr zam/kwota -->
|
|
|
<?php echo UI::price($cost['cost_zamowienia']); ?>
|
|
|
<div style="white-space:nowrap; color:silver">nr: <?php echo $cost['nr_zamowienia']; ?></div>
|
|
|
+ </td>
|
|
|
+ <td>
|
|
|
+ <!-- TODO: nr fv/kwota -->
|
|
|
<?php if (!empty($cost['nr_fv_do_zamowienia'])) : ?>
|
|
|
<?php foreach ($cost['nr_fv_do_zamowienia'] as $idKoresp => $obcyNrFV) : ?>
|
|
|
<?php // TODO: link do edycji koresp by $idKoresp ?>
|
|
|
@@ -235,6 +316,15 @@ dostęp dla zarządu i os. odp. kwota końcowa
|
|
|
<?php endforeach; ?>
|
|
|
<?php endif; ?>
|
|
|
</td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_zaliczki']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_zaliczki']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_rozliczone_zaliczki']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_rozliczone_zaliczki']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_zgoda_sluzebnosci']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_zgoda_sluzebnosci']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_zgoda_odszkodowania']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_zgoda_odszkodowania']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_sprzet_wlasny']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_sprzet_wlasny']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_sprzet_wynajety']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_sprzet_wynajety']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_organizacja_ruchu']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_organizacja_ruchu']); ?></td>
|
|
|
+ <td style="color:<?php echo ($cost['TODO__budget_zajetosc_pasa']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['TODO__budget_zajetosc_pasa']); ?></td>
|
|
|
+<!--
|
|
|
<td style="color:<?php echo ($cost['cost_zaliczki']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['cost_zaliczki']); ?></td>
|
|
|
<td style="color:<?php echo ($cost['cost_pracownicy']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['cost_pracownicy']); ?></td>
|
|
|
<td style="color:<?php echo ($cost['cost_wynajem']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['cost_wynajem']); ?></td>
|
|
|
@@ -242,6 +332,7 @@ dostęp dla zarządu i os. odp. kwota końcowa
|
|
|
<td style="color:<?php echo ($cost['cost_materialy']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['cost_materialy']); ?></td>
|
|
|
<td style="color:<?php echo ($cost['cost_osprzet']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['cost_osprzet']); ?></td>
|
|
|
<td style="color:<?php echo ($cost['cost_dodatkowe']) ? 'black' : 'silver'; ?>"><?php echo UI::price($cost['cost_dodatkowe']); ?></td>
|
|
|
+-->
|
|
|
</tr>
|
|
|
<?php endforeach; ?>
|
|
|
</tbody>
|