Fix campo idsede_destinazione in aggiunta e modifica dell'attività

Inserimento permetti inserimento sessioni anche per altri tecnici.
This commit is contained in:
Luca 2019-12-09 17:47:07 +01:00
parent 85487dbbe2
commit 0d92cf9ee2
7 changed files with 37 additions and 33 deletions

View File

@ -115,10 +115,15 @@ switch ($resource) {
if (empty($filter)) {
$where[] = 'deleted_at IS NULL';
//come tecnico posso aprire attività solo a mio nome
$user = Auth::user();
if ($user['gruppo'] == 'Tecnici' && !empty($user['idanagrafica'])) {
$where[] = 'an_anagrafiche.idanagrafica='.$user['idanagrafica'];
if (setting('Permetti inserimento sessioni degli altri tecnici')){
}else{
//come tecnico posso aprire attività solo a mio nome
$user = Auth::user();
if ($user['gruppo'] == 'Tecnici' && !empty($user['idanagrafica'])) {
$where[] = 'an_anagrafiche.idanagrafica='.$user['idanagrafica'];
}
}
}

View File

@ -68,7 +68,7 @@ switch (post('op')) {
$idtipointervento = post('idtipointervento');
$idstatointervento = post('idstatointervento');
$data_richiesta = post('data_richiesta');
$data_scadenza = post('data_scadenza');
$data_scadenza = post('data_scadenza') ?: null;
$anagrafica = Anagrafica::find($idanagrafica);
$tipo = TipoSessione::find($idtipointervento);

View File

@ -301,7 +301,7 @@ if (!empty($id_intervento)) {
<script type="text/javascript">
$(document).ready(function(){
if(!$("#bs-popup #idanagrafica").val()){
$("#bs-popup #idsede").prop("disabled", true);
$("#bs-popup #idsede_destinazione").prop("disabled", true);
$("#bs-popup #idpreventivo").prop("disabled", true);
$("#bs-popup #idcontratto").prop("disabled", true);
$("#bs-popup #idimpianti").prop("disabled", true);
@ -325,7 +325,7 @@ if (!empty($id_intervento)) {
if (!empty($id_intervento)) {
echo '
$("#bs-popup #idsede").prop("disabled", true);
$("#bs-popup #idsede_destinazione").prop("disabled", true);
$("#bs-popup #idpreventivo").prop("disabled", true);
$("#bs-popup #idcontratto").prop("disabled", true);
$("#bs-popup #idimpianti").prop("disabled", true);
@ -365,8 +365,8 @@ if (!empty($id_intervento)) {
var value = !$(this).val() ? true : false;
var placeholder = !$(this).val() ? "<?php echo tr('Seleziona prima un cliente...'); ?>" : "<?php echo tr("Seleziona un'opzione"); ?>";
$("#bs-popup #idsede").prop("disabled", value);
$("#bs-popup #idsede").selectReset(placeholder);
$("#bs-popup #idsede_destinazione").prop("disabled", value);
$("#bs-popup #idsede_destinazione").selectReset(placeholder);
$("#bs-popup #idpreventivo").prop("disabled", value);
$("#bs-popup #idpreventivo").selectReset(placeholder);
@ -389,8 +389,8 @@ if (!empty($id_intervento)) {
}
});
$('#bs-popup #idsede').change( function(){
session_set('superselect,idsede', $(this).val(), 0);
$('#bs-popup #idsede_destinazione').change( function(){
session_set('superselect,idsede_destinazione', $(this).val(), 0);
$("#bs-popup #idimpianti").selectReset();
if (($(this).val())) {

View File

@ -312,7 +312,7 @@ include $structure->filepath('ajax_righe.php');
$('#idanagrafica').change( function(){
session_set('superselect,idanagrafica', $(this).val(), 0);
$("#idsede").selectReset();
$("#idsede_destinazione").selectReset();
$("#idpreventivo").selectReset();
$("#idcontratto").selectReset();

View File

@ -45,7 +45,7 @@ echo '
</div>
</div>';
if ($show_costi) {
echo '
<div class="row">';
@ -55,6 +55,7 @@ if ($show_costi) {
{[ "type": "number", "label": "'.tr('Km').'", "name": "km", "value": "'.$sessione['km'].'"]}
</div>';
if ($show_costi) {
// Sconto ore
echo '
<div class="col-md-4">
@ -81,9 +82,12 @@ if ($show_costi) {
<div class="col-md-4">
{[ "type": "number", "label": "'.tr('Addebito diritto ch.').'", "name": "prezzo_dirittochiamata", "value": "'.$sessione['prezzo_dirittochiamata'].'" ]}
</div>
</div>';
}
echo'
</div>';
}
echo '

View File

@ -3,23 +3,10 @@
include_once __DIR__.'/../../../core.php';
// TODO: aggiornare con la funzione months()
$mesi = [
tr('Gennaio'),
tr('Febbraio'),
tr('Marzo'),
tr('Aprile'),
tr('Maggio'),
tr('Giugno'),
tr('Luglio'),
tr('Agosto'),
tr('Settembre'),
tr('Ottobre'),
tr('Novembre'),
tr('Dicembre'),
];
$mesi = months();
// Righe inserite
$qp = "SELECT *, DATE_FORMAT( data_richiesta, '%m-%Y') AS mese, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento = in_interventi.idtipointervento ) AS tipointervento, idanagrafica AS idcliente, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica = in_interventi.idanagrafica) AS ragione_sociale FROM in_interventi WHERE id NOT IN (SELECT idintervento FROM in_interventi_tecnici) AND idstatointervento IN (SELECT idstatointervento FROM in_statiintervento WHERE completato = 0) ORDER BY DATE_FORMAT( data_richiesta, '%Y-%m') ASC, ragione_sociale ASC";
$qp = "SELECT IF(data_scadenza IS NULL, data_richiesta, data_scadenza) AS data, id, codice, richiesta, data_richiesta, data_scadenza, DATE_FORMAT(IF(data_scadenza IS NULL, data_richiesta, data_scadenza), '%m%Y') AS mese, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento = in_interventi.idtipointervento ) AS tipointervento, idanagrafica AS idcliente, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica = in_interventi.idanagrafica) AS ragione_sociale FROM in_interventi WHERE id NOT IN (SELECT idintervento FROM in_interventi_tecnici) AND idstatointervento IN (SELECT idstatointervento FROM in_statiintervento WHERE completato = 0) ORDER BY DATE_FORMAT( IF(data_scadenza IS NULL, data_richiesta, data_scadenza), '%Y-%m') ASC, ragione_sociale ASC";
$rsp = $dbo->fetchArray($qp);
$n = $dbo->fetchNum($qp);
@ -39,7 +26,7 @@ if (!empty($n)) {
echo "
<h4>
<a class='clickable' onclick=\"if( $('#t1_".$i."').css('display') == 'none' ){ $(this).children('i').removeClass('fa-plus-circle'); $(this).children('i').addClass('fa-minus-circle'); }else{ $(this).children('i').addClass('fa-plus-circle'); $(this).children('i').removeClass('fa-minus-circle'); } $('#t1_".$i."').slideToggle();\">
<i class='fa ".$class."'></i> ".$mesi[intval(date('m', strtotime($r['data_richiesta']))) - 1].' '.date('Y', strtotime($r['data_richiesta'])).'
<i class='fa ".$class."'></i> ".$mesi[intval(date('m', strtotime($r['data'])))].' '.date('Y', strtotime($r['data'])).'
</a>
</h4>';
@ -51,6 +38,7 @@ if (!empty($n)) {
<th width="70">'.tr('Codice').'</th>
<th width="120">'.tr('Cliente').'</th>
<th width="70"><small>'.tr('Data richiesta').'</small></th>
<th width="70"><small>'.tr('Data scadenza').'</small></th>
<th width="200">'.tr('Tipo intervento').'</th>
<th>'.tr('Descrizione').'</th>
<th width="100">'.tr('Sede').'</th>
@ -65,6 +53,7 @@ if (!empty($n)) {
<td><a target="_blank" >'.Modules::link(Modules::get('Interventi')['id'], $r['id'], $r['codice']).'</a></td>
<td>'.$r['ragione_sociale'].'</td>
<td>'.Translator::dateToLocale($r['data_richiesta']).'</td>
<td>'.((empty($r['data_scadenza'])) ? " - " : Translator::dateToLocale($r['data_scadenza'])).'</td>
<td>'.$r['tipointervento'].'</td>
<td>'.nl2br($r['richiesta']).'</td>
';

View File

@ -9,3 +9,9 @@ INSERT INTO `dt_causalet` (`id`, `descrizione`, `predefined`) VALUES (NULL, 'Con
UPDATE `zz_widgets` SET `name` = 'Attività nello stato da programmare', `text` = 'Attività nello stato da programmare' WHERE `zz_widgets`.`name` = 'Attività in programmazione';
UPDATE `in_statiintervento` SET `descrizione` = 'Programmato' WHERE `in_statiintervento`.`descrizione` = 'In Programmazione' AND `in_statiintervento`.`codice` = 'WIP';
-- Uniformo le date scadenza non settate correttamente
UPDATE `in_interventi` SET `data_scadenza` = NULL WHERE `data_scadenza` = '0000-00-00 00:00:00';
-- Permetti inserimento sessioni anche per altri tecnici
INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `created_at`, `updated_at`, `order`, `help`) VALUES (NULL, 'Permetti inserimento sessioni degli altri tecnici', '0', 'boolean', '1', 'Interventi', NULL, NULL, NULL, 'Permette al tecnico l\'inserimento delle sessioni di lavoro anche per gli altri tecnici.');