|
|
@@ -182,6 +182,7 @@ jQuery(document).ready(function () {
|
|
|
<?php if ($vCost->COST_SELF > 0) : ?>
|
|
|
<td class="cell-cost cell-cost-self_and_child"
|
|
|
data-month_num="<?php echo $month; ?>"
|
|
|
+ data-cost="<?php echo $vCostTotalOut; ?>"
|
|
|
data-proj_path="<?php echo $projectInfo->path; ?>"
|
|
|
data-proj_id="<?php echo $projectInfo->ID_PROJECT; ?>">
|
|
|
<span class="ttip" title="<?php echo $title; ?>"><?php echo $vCostTotalOut; ?></span>
|
|
|
@@ -189,6 +190,7 @@ jQuery(document).ready(function () {
|
|
|
<?php else : ?>
|
|
|
<td class="cell-cost cell-cost-only_child"
|
|
|
data-month_num="<?php echo $month; ?>"
|
|
|
+ data-cost="<?php echo $vCostTotalOut; ?>"
|
|
|
data-proj_path="<?php echo $projectInfo->path; ?>"
|
|
|
data-proj_id="<?php echo $projectInfo->ID_PROJECT; ?>">
|
|
|
<span class="ttip" title="<?php echo $title; ?>"><?php echo $vCostTotalOut; ?></span>
|
|
|
@@ -197,6 +199,7 @@ jQuery(document).ready(function () {
|
|
|
<?php else : ?>
|
|
|
<td class="cell-cost cell-cost-only_self"
|
|
|
data-month_num="<?php echo $month; ?>"
|
|
|
+ data-cost="<?php echo $vCostTotalOut; ?>"
|
|
|
data-proj_path="<?php echo $projectInfo->path; ?>"
|
|
|
data-proj_id="<?php echo $projectInfo->ID_PROJECT; ?>">
|
|
|
<?php echo $vCostTotalOut; ?>
|
|
|
@@ -215,35 +218,107 @@ jQuery(document).ready(function() {
|
|
|
jQuery('#zestawienie-kosztow-projektow')
|
|
|
.find('.cell-cost')
|
|
|
.on('click', function(e) {
|
|
|
- var $n = jQuery(this);
|
|
|
- console.log('node', $n, 'data', $n.data());
|
|
|
+ var $n = jQuery(this),
|
|
|
+ $modal = jQuery('#projectMonthCostDetails'),
|
|
|
+ projId = $n.data('proj_id'),
|
|
|
+ monthNum = $n.data('month_num'),
|
|
|
+ projPath = '' + $n.data('proj_path'),
|
|
|
+ projPathLength = projPath.length,
|
|
|
+ modalBody = document.createElement('table'),
|
|
|
+ totalDescrCell = document.createElement('td'),
|
|
|
+ totalCostCell = document.createElement('td'),
|
|
|
+ totalEmptyCell = document.createElement('td'),
|
|
|
+ totalRow = document.createElement('tr');
|
|
|
+ modalBody.className = 'zestawienie-kosztow-tbl';
|
|
|
+ modalBody.style.width = '100%';
|
|
|
+ // $n.data() = {proj_id: 3943, proj_path: "0-4132-3943", month_num: 2}
|
|
|
+ // table#proj-koresp-info > tbody#row-proj-2055-koresp-by-month-2
|
|
|
+ jQuery('#proj-koresp-info').find('tbody').each(function(i, tbody) {
|
|
|
+ var vPath = jQuery(tbody).data('proj_path'),
|
|
|
+ vMonthNum = jQuery(tbody).data('month_num');
|
|
|
+ if (monthNum != vMonthNum) return;
|
|
|
+ if (projPathLength > vPath.length) return;
|
|
|
+ if (projPath == vPath
|
|
|
+ || (projPathLength < vPath.length && projPath == vPath.substr(0, projPathLength))
|
|
|
+ ) {
|
|
|
+ modalBody.appendChild(tbody.cloneNode(true));
|
|
|
+ }
|
|
|
+ });
|
|
|
+ {
|
|
|
+ totalDescrCell.className = 'p2';
|
|
|
+ totalDescrCell.style.textAlign = 'right';
|
|
|
+ totalDescrCell.setAttribute('colspan', '2');
|
|
|
+ totalDescrCell.appendChild(document.createTextNode('Suma:'));
|
|
|
+ totalCostCell.className = 'cell-cost';
|
|
|
+ totalCostCell.style.textAlign = 'right';
|
|
|
+ totalCostCell.appendChild(document.createTextNode($n.data('cost')));
|
|
|
+ totalRow.appendChild(totalDescrCell);
|
|
|
+ totalRow.appendChild(totalCostCell);
|
|
|
+ modalBody.appendChild(totalRow);
|
|
|
+ }
|
|
|
+ $modal.find('.modal-title').text('Koszty projektu nr ' + projId + ' w miesiącu <?php echo $year; ?>-' + ((monthNum > 9)? monthNum : '0' + monthNum));
|
|
|
+ $modal.find('.modal-body').html(modalBody);
|
|
|
+ $modal.modal({});
|
|
|
})
|
|
|
})
|
|
|
</script>
|
|
|
+ <!-- Button trigger modal -->
|
|
|
+ <button type="button" class="btn btn-primary btn-lg" data-toggle="modal" data-target="#projectMonthCostDetails">
|
|
|
+ Launch demo modal
|
|
|
+ </button>
|
|
|
+
|
|
|
+ <!-- Modal -->
|
|
|
+ <div class="modal fade" id="projectMonthCostDetails" tabindex="-1" role="dialog" aria-labelledby="projectCostDMonthetailsLabel">
|
|
|
+ <div class="modal-dialog" role="document" style="min-width:800px;">
|
|
|
+ <div class="modal-content">
|
|
|
+ <div class="modal-header">
|
|
|
+ <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
|
+ <h4 class="modal-title" id="projectCostDMonthetailsLabel">Modal title</h4>
|
|
|
+ </div>
|
|
|
+ <div class="modal-body">
|
|
|
+ TODO: projectMonthCostDetails...
|
|
|
+ </div>
|
|
|
+ <div class="modal-footer">
|
|
|
+ <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
<table id="proj-koresp-info" style="display:none">
|
|
|
<?php foreach ($this->_costs as $projId => $projectInfo) : ?>
|
|
|
<?php if (!empty($projectInfo->korespByMonth)) : ?>
|
|
|
<?php foreach ($projectInfo->korespByMonth as $kMonth => $vKorespMonthList) : ?>
|
|
|
- <tbody id="row-proj-<?php echo $projectInfo->ID_PROJECT; ?>-koresp-by-month-<?php echo $kMonth; ?>">
|
|
|
+ <tbody id="row-proj-<?php echo $projectInfo->ID_PROJECT; ?>-koresp-by-month-<?php echo $kMonth; ?>"
|
|
|
+ data-month_num="<?php echo $kMonth; ?>"
|
|
|
+ data-proj_path="<?php echo $projectInfo->path; ?>"
|
|
|
+ data-proj_id="<?php echo $projectInfo->ID_PROJECT; ?>">
|
|
|
<tr>
|
|
|
- <td colspan="10">
|
|
|
- Projekt nr <?php echo $projectInfo->ID_PROJECT; ?>
|
|
|
- - miesiąc <?php echo $year; ?>-<?php echo sprintf("%02d", $kMonth); ?>
|
|
|
+ <td style="padding:3px;font-size:1em;background:#eee;"><?php echo $projectInfo->path; ?></td>
|
|
|
+ <td colspan="3" style="padding:3px;font-size:1.2em;background:#eee;">
|
|
|
+ Koszty projektu nr <?php echo $projectInfo->ID_PROJECT; ?>
|
|
|
+ <!-- - miesiąc <?php echo $year; ?>-<?php echo sprintf("%02d", $kMonth); ?> -->
|
|
|
</td>
|
|
|
</tr>
|
|
|
<?php foreach ($vKorespMonthList as $kKorespIdx => $vKorespInfo) : ?>
|
|
|
<?php /*
|
|
|
- [ID] => 41235
|
|
|
- [MONTH] => 2015-02
|
|
|
- [K_ZAWARTOS] => Faktura za pomiar powykonawczy sieci telekomunikacyjnej
|
|
|
- [COST] => 1000.00
|
|
|
- [INCOME] => 0.00
|
|
|
- */ ?>
|
|
|
+ * [ID] => 41235
|
|
|
+ * [MONTH] => 2015-02
|
|
|
+ * [K_ZAWARTOS] => Faktura za pomiar powykonawczy sieci telekomunikacyjnej
|
|
|
+ * [COST] => 1000.00
|
|
|
+ * [INCOME] => 0.00
|
|
|
+ ? [TRANSFER_OPPOSITE_ID_PROJECT] => int
|
|
|
+ */ ?>
|
|
|
<tr>
|
|
|
- <td class="p2 l nr"><?php echo $vKorespInfo->ID; ?></td>
|
|
|
+ <td class="p2 r nr"><?php echo $vKorespInfo->ID; ?></td>
|
|
|
<td class="p2" style="max-width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;" title="<?php echo $projectInfo->M_DIST_DESC; ?>"><?php echo $vKorespInfo->K_ZAWARTOS; ?></td>
|
|
|
<?php $vKorespCostOut = number_format($vKorespInfo->COST, 2); ?>
|
|
|
- <td class="cell-cost cell-cost-only_self"><?php echo $vKorespCostOut; ?></td>
|
|
|
+ <td class="cell-cost cell-cost-only_child"><?php echo $vKorespCostOut; ?></td>
|
|
|
+ <td>
|
|
|
+ <?php $dekretId = V::get('TRANSFER_OPPOSITE_ID_PROJECT', 0, $vKorespInfo) ?>
|
|
|
+ <?php if ($dekretId > 0) : ?>
|
|
|
+ Dekret z projektu nr <?php echo $dekretId; ?>
|
|
|
+ <?php endif; ?>
|
|
|
+ </td>
|
|
|
</tr>
|
|
|
<?php endforeach; ?>
|
|
|
</tbody>
|
|
|
@@ -416,8 +491,8 @@ jQuery(document).ready(function() {
|
|
|
$korespInfo->K_ZAWARTOS = $r->K_ZAWARTOS;
|
|
|
$monthNum = intval(substr($r->MONTH, 5, 2));
|
|
|
if ($r->TRANSFER_OPPOSITE_ID_PROJECT > 0) {
|
|
|
- $korespInfo->COST = $r->INCOME;
|
|
|
- $korespInfo->INCOME = $r->COST;
|
|
|
+ $korespInfo->COST = $r->COST;
|
|
|
+ $korespInfo->INCOME = $r->INCOME;
|
|
|
$korespInfo->TRANSFER_OPPOSITE_ID_PROJECT = $r->TRANSFER_OPPOSITE_ID_PROJECT;
|
|
|
$this->_costs[$r->TRANSFER_OPPOSITE_ID_PROJECT]->korespByMonth[$monthNum][] = $korespInfo;
|
|
|
} else if ($r->ID_PROJECT) {
|