Modifica prezzi orari sessioni

This commit is contained in:
Thomas Zilio 2019-07-08 17:11:48 +02:00
parent 182ab11130
commit 7eeea9abbc
6 changed files with 56 additions and 29 deletions

View File

@ -46,8 +46,13 @@ $rs = $dbo->fetchArray('SELECT
AND in_interventi.id_preventivo IS NULL
AND NOT in_interventi.id IN (SELECT idintervento FROM co_promemoria WHERE idintervento IS NOT NULL)');
foreach ($rs as $key => $value) {
$rs[$key]['prezzo'] = Translator::numberToLocale(get_costi_intervento($value['id'])['totale']);
$prezzo = get_costi_intervento($value['id'])['totale'];
$rs[$key]['prezzo'] = Translator::numberToLocale($prezzo);
$rs[$key]['descrizione_intervento'] = strip_tags($rs[$key]['descrizione_intervento']);
if($prezzo <= 0){
unset($rs[$key]);
}
}
// Intervento

View File

@ -569,9 +569,9 @@ switch (post('op')) {
$prezzo_km_unitario_tecnico = $rsc[0]['costo_km_tecnico'];
$prezzo_dirittochiamata_tecnico = $rsc[0]['costo_dirittochiamata_tecnico'];
} else {
$prezzo_ore_unitario = $rs[0]['prezzo_ore_unitario'];
$prezzo_km_unitario = $rs[0]['prezzo_km_unitario'];
$prezzo_dirittochiamata = $rs[0]['prezzo_dirittochiamata'];
$prezzo_ore_unitario = post('prezzo_ore_unitario');
$prezzo_km_unitario = post('prezzo_km_unitario');
$prezzo_dirittochiamata = post('prezzo_dirittochiamata');
$prezzo_ore_unitario_tecnico = $rs[0]['prezzo_ore_unitario_tecnico'];
$prezzo_km_unitario_tecnico = $rs[0]['prezzo_km_unitario_tecnico'];
$prezzo_dirittochiamata_tecnico = $rs[0]['prezzo_dirittochiamata_tecnico'];

View File

@ -9,7 +9,7 @@ if ($user['gruppo'] == 'Tecnici') {
$show_costi = !empty($user['idanagrafica']) && setting('Mostra i prezzi al tecnico');
}
$sessione = $dbo->fetchOne('SELECT in_interventi_tecnici.*, an_anagrafiche.ragione_sociale, an_anagrafiche.deleted_at, in_interventi_tecnici.tipo_scontokm AS tipo_sconto_km FROM in_interventi_tecnici INNER JOIN an_anagrafiche ON in_interventi_tecnici.idtecnico = an_anagrafiche.idanagrafica WHERE in_interventi_tecnici.id = '.prepare(get('id_sessione')));
$sessione = $dbo->fetchOne('SELECT in_interventi_tecnici.*, an_anagrafiche.ragione_sociale, an_anagrafiche.deleted_at, in_interventi_tecnici.tipo_scontokm AS tipo_sconto_km, in_interventi_tecnici.prezzo_ore_unitario, in_interventi_tecnici.prezzo_km_consuntivo, in_interventi_tecnici.prezzo_dirittochiamata FROM in_interventi_tecnici INNER JOIN an_anagrafiche ON in_interventi_tecnici.idtecnico = an_anagrafiche.idanagrafica WHERE in_interventi_tecnici.id = '.prepare(get('id_sessione')));
$op = 'edit_sessione';
$button = '<i class="fa fa-edit"></i> '.tr('Modifica');
@ -33,7 +33,7 @@ echo '
echo '
<div class="row">
<div class="col-md-4">
{[ "type": "select", "label": "'.tr('Tipo attività').'", "name": "idtipointerventot", "value": "'.$sessione['idtipointervento'].'", "required": 1, "values": "query=SELECT idtipointervento AS id, descrizione FROM in_tipiintervento ORDER BY descrizione" ]}
{[ "type": "select", "label": "'.tr('Tipo attività').'", "name": "idtipointerventot", "value": "'.$sessione['idtipointervento'].'", "required": 1, "values": "query=SELECT in_tipiintervento.idtipointervento AS id, descrizione, in_tariffe.costo_ore AS prezzo_ore_unitario, in_tariffe.costo_km AS prezzo_km_unitario, in_tariffe.costo_dirittochiamata AS prezzo_dirittochiamata FROM in_tipiintervento JOIN in_tariffe ON in_tipiintervento.idtipointervento = in_tariffe.idtipointervento WHERE in_tariffe.idtecnico = '.prepare($sessione['idtecnico']).' ORDER BY descrizione" ]}
</div>
<div class="col-md-4">
@ -68,6 +68,20 @@ if ($show_costi) {
</div>';
echo'
</div>
<div class="row">
<div class="col-md-4">
{[ "type": "number", "label": "'.tr('Addebito orario').'", "name": "prezzo_ore_unitario", "value": "'.$sessione['prezzo_ore_unitario'].'" ]}
</div>
<div class="col-md-4">
{[ "type": "number", "label": "'.tr('Addebito km').'", "name": "prezzo_km_unitario", "value": "'.$sessione['prezzo_km_consuntivo'].'" ]}
</div>
<div class="col-md-4">
{[ "type": "number", "label": "'.tr('Addebito diritto ch.').'", "name": "prezzo_dirittochiamata", "value": "'.$sessione['prezzo_dirittochiamata'].'" ]}
</div>
</div>';
}
@ -91,5 +105,13 @@ $(document).ready(function () {
$("#orario_inizio").on("dp.change", function (e) {
$("#orario_fine").data("DateTimePicker").minDate(e.date).format(globals.timestampFormat);
});
$("#idtipointerventot").change(function() {
data = $(this).selectData();
$("#prezzo_ore_unitario").val(data.prezzo_ore_unitario);
$("#prezzo_km_unitario").val(data.prezzo_km_unitario);
$("#prezzo_dirittochiamata").val(data.prezzo_dirittochiamata);
});
});
</script>';

View File

@ -5,10 +5,10 @@ include_once __DIR__.'/../../core.php';
$id_conto = get('id_conto');
// Calcolo totale conto da elenco movimenti di questo conto
$query = "SELECT co_movimenti.*, dir FROM co_movimenti
$query = 'SELECT co_movimenti.*, dir FROM co_movimenti
LEFT OUTER JOIN co_documenti ON co_movimenti.iddocumento = co_documenti.id
LEFT OUTER JOIN co_tipidocumento ON co_documenti.idtipodocumento = co_tipidocumento.id
WHERE co_movimenti.idconto=".prepare($id_conto)." AND co_movimenti.data >= ".prepare($_SESSION['period_start'])." AND co_movimenti.data <= ".prepare($_SESSION['period_end'])." ORDER BY co_movimenti.data DESC";
WHERE co_movimenti.idconto='.prepare($id_conto).' AND co_movimenti.data >= '.prepare($_SESSION['period_start']).' AND co_movimenti.data <= '.prepare($_SESSION['period_end']).' ORDER BY co_movimenti.data DESC';
$movimenti = $dbo->fetchArray($query);
if (!empty($movimenti)) {
@ -37,8 +37,8 @@ if (!empty($movimenti)) {
<span>'.$movimento['descrizione'].'</span>';
}
echo "
</td>";
echo '
</td>';
// Data
echo '

View File

@ -10,19 +10,19 @@ $righe = $dbo->fetchArray($query);
echo '
<table class="table table-striped table-hover table-condensed table-bordered">
<tr>
<th>' . tr('Descrizione riga') . '</th>
<th width="100">' . tr('Imponibile') . '</th>
<th>'.tr('Descrizione riga').'</th>
<th width="100">'.tr('Imponibile').'</th>
</tr>';
foreach ($righe as $riga) {
echo '
<tr>
<td>
<span>' . $riga['desc_riga'] . '</span>
<span>'.$riga['desc_riga'].'</span>
</td>
<td class="text-right">
<span>' . moneyFormat($riga['imponibile']) . ' </span>
<span>'.moneyFormat($riga['imponibile']).' </span>
</td>
</tr>';
}
@ -31,8 +31,8 @@ echo '
echo '
<tr>
<th class="text-right">' . tr('Totali') . ': </th>
<th width="100" class="text-right"><span>' . moneyFormat($totale_imponibile) . '</span></th>
<th class="text-right">'.tr('Totali').': </th>
<th width="100" class="text-right"><span>'.moneyFormat($totale_imponibile).'</span></th>
</tr>
</table>

View File

@ -6,14 +6,14 @@ include_once __DIR__.'/../../core.php';
$query1 = 'SELECT * FROM `co_pianodeiconti1` ORDER BY id DESC';
$primo_livello = $dbo->fetchArray($query1);
foreach ($primo_livello as $conto_primo){
foreach ($primo_livello as $conto_primo) {
$totale_attivita = [];
$totale_passivita = [];
$costi = [];
$ricavi = [];
$titolo = $conto_primo['descrizione'] == 'Economico' ? tr('Conto economico') :tr('Stato patrimoniale');
$titolo = $conto_primo['descrizione'] == 'Economico' ? tr('Conto economico') : tr('Stato patrimoniale');
echo '
<hr>
@ -29,7 +29,7 @@ foreach ($primo_livello as $conto_primo){
$query2 = "SELECT * FROM `co_pianodeiconti2` WHERE idpianodeiconti1='".$conto_primo['id']."' ORDER BY numero ASC";
$secondo_livello = $dbo->fetchArray($query2);
foreach ($secondo_livello as $conto_secondo){
foreach ($secondo_livello as $conto_secondo) {
// Livello 2
echo '
<div>
@ -44,15 +44,15 @@ foreach ($primo_livello as $conto_primo){
$query3 = 'SELECT `co_pianodeiconti3`.*, `clienti`.`idanagrafica` AS id_cliente, `fornitori`.`idanagrafica` AS id_fornitore FROM `co_pianodeiconti3` LEFT OUTER JOIN `an_anagrafiche` `clienti` ON `clienti`.`idconto_cliente` = `co_pianodeiconti3`.`id` LEFT OUTER JOIN `an_anagrafiche` `fornitori` ON `fornitori`.`idconto_fornitore` = `co_pianodeiconti3`.`id` WHERE `idpianodeiconti2` = '.prepare($conto_secondo['id']).' ORDER BY numero ASC';
$terzo_livello = $dbo->fetchArray($query3);
foreach ($terzo_livello as $conto_terzo){
foreach ($terzo_livello as $conto_terzo) {
// Se il conto non ha documenti collegati posso eliminarlo
$numero_movimenti = $dbo->fetchNum("SELECT id FROM co_movimenti WHERE idconto = ".prepare($conto_terzo['id']));
$numero_movimenti = $dbo->fetchNum('SELECT id FROM co_movimenti WHERE idconto = '.prepare($conto_terzo['id']));
// Calcolo totale conto da elenco movimenti di questo conto
$query = "SELECT co_movimenti.*, dir FROM co_movimenti
$query = 'SELECT co_movimenti.*, dir FROM co_movimenti
LEFT OUTER JOIN co_documenti ON co_movimenti.iddocumento = co_documenti.id
LEFT OUTER JOIN co_tipidocumento ON co_documenti.idtipodocumento = co_tipidocumento.id
WHERE co_movimenti.idconto=".prepare($conto_terzo['id'])." AND co_movimenti.data >= ".prepare($_SESSION['period_start'])." AND co_movimenti.data <= ".prepare($_SESSION['period_end'])." ORDER BY co_movimenti.data DESC";
WHERE co_movimenti.idconto='.prepare($conto_terzo['id']).' AND co_movimenti.data >= '.prepare($_SESSION['period_start']).' AND co_movimenti.data <= '.prepare($_SESSION['period_end']).' ORDER BY co_movimenti.data DESC';
$movimenti = $dbo->fetchArray($query);
$totale_conto = sum(array_column($movimenti, 'totale'));
@ -75,7 +75,7 @@ foreach ($primo_livello as $conto_primo){
echo '
<tr style="'.(!empty($movimenti) ? '' : 'opacity: 0.5;').'">
<td><span class="clickable" id="movimenti-'.$conto_terzo["id"].'">';
<td><span class="clickable" id="movimenti-'.$conto_terzo['id'].'">';
if (!empty($movimenti)) {
echo '
@ -127,7 +127,7 @@ foreach ($primo_livello as $conto_primo){
// Possibilità di inserire un nuovo conto
echo '
<button type="button" class="btn btn-xs btn-primary" data-toggle="tooltip" title="'.tr("Aggiungi un nuovo conto...").'" onclick="add_conto('.$conto_secondo["id"].')">
<button type="button" class="btn btn-xs btn-primary" data-toggle="tooltip" title="'.tr('Aggiungi un nuovo conto...').'" onclick="add_conto('.$conto_secondo['id'].')">
<i class="fa fa-plus-circle"></i>
</button>
@ -251,7 +251,7 @@ foreach ($primo_livello as $conto_primo){
</tr>';
}
echo '
echo '
</table>';
}
@ -284,7 +284,7 @@ $(document).ready(function(){
});
function add_conto(id) {
launch_modal("'.tr("Nuovo conto").'", "'.$structure->fileurl('add_conto.php').'?id=" + id, 1 );
launch_modal("'.tr('Nuovo conto').'", "'.$structure->fileurl('add_conto.php').'?id=" + id, 1 );
}
function load_movimenti(selector, id_conto) {