Fix widget Contratti in scadenza
This commit is contained in:
parent
c86355ee5c
commit
b5aebbd5e8
|
@ -19,35 +19,29 @@
|
|||
|
||||
include_once __DIR__.'/../../../core.php';
|
||||
|
||||
$rs = $dbo->fetchArray('SELECT
|
||||
`co_contratti`.`id`,
|
||||
`co_contratti`.`nome`,
|
||||
`co_contratti`.`data_accettazione`,
|
||||
(SUM(`co_righe_contratti`.`qta`) - SUM(`in_interventi_tecnici`.`ore`)) AS ore_rimanenti,
|
||||
DATEDIFF(`data_conclusione`, NOW()) AS giorni_rimanenti,
|
||||
`data_conclusione`,
|
||||
`ore_preavviso_rinnovo`,
|
||||
`giorni_preavviso_rinnovo`,
|
||||
`an_anagrafiche`.`ragione_sociale` AS ragione_sociale
|
||||
FROM
|
||||
`co_contratti`
|
||||
INNER JOIN `an_anagrafiche` ON `an_anagrafiche`.`idanagrafica`=`co_contratti`.`idanagrafica`
|
||||
INNER JOIN `co_righe_contratti` ON (`co_righe_contratti`.`idcontratto`=`co_contratti`.`id` AND `co_righe_contratti`.`um`=\'ore\')
|
||||
INNER JOIN `co_staticontratti` ON `co_contratti`.`idstato`=`co_staticontratti`.`id`
|
||||
LEFT JOIN `co_staticontratti_lang` ON (`co_staticontratti`.`id` = `co_staticontratti_lang`.`id_record` AND `co_staticontratti_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).')
|
||||
LEFT JOIN `in_interventi` ON (`in_interventi`.`id_contratto` = `co_contratti`.`id` AND `in_interventi`.`idstatointervento` IN (SELECT `id` FROM `in_statiintervento` WHERE `in_statiintervento`.`is_completato` = 1))
|
||||
LEFT JOIN `in_interventi_tecnici` ON (`in_interventi_tecnici`.`idintervento` = `in_interventi`.`id`)
|
||||
WHERE
|
||||
`co_contratti`.`rinnovabile` = 1 AND
|
||||
YEAR(`data_conclusione`) > 1970 AND
|
||||
`co_contratti`.`id` NOT IN (SELECT `idcontratto_prev` FROM `co_contratti` contratti) AND
|
||||
`co_staticontratti_lang`.`title` NOT IN ("Concluso", "Rifiutato", "Bozza")
|
||||
GROUP BY
|
||||
`co_contratti`.`id`
|
||||
HAVING
|
||||
(`ore_rimanenti` <= `ore_preavviso_rinnovo` OR DATEDIFF(`data_conclusione`, NOW()) <= ABS(`giorni_preavviso_rinnovo`))
|
||||
ORDER BY
|
||||
`giorni_rimanenti` ASC, `ore_rimanenti` ASC');
|
||||
$rs = $dbo->fetchArray('
|
||||
SELECT
|
||||
`co_contratti`.`id`,
|
||||
((SELECT SUM(`co_righe_contratti`.`qta`) FROM `co_righe_contratti` WHERE `co_righe_contratti`.`um` = "ore" AND `co_righe_contratti`.`idcontratto` = `co_contratti`.`id`) - IFNULL((SELECT SUM(`in_interventi_tecnici`.`ore`) FROM `in_interventi_tecnici` INNER JOIN `in_interventi` ON `in_interventi_tecnici`.`idintervento` = `in_interventi`.`id` WHERE `in_interventi`.`id_contratto` = `co_contratti`.`id` AND `in_interventi`.`idstatointervento` IN (SELECT `in_statiintervento`.`id` FROM `in_statiintervento` WHERE `in_statiintervento`.`is_completato` = 1)),0)) AS `ore_rimanenti`,
|
||||
`co_contratti`.`nome`,
|
||||
DATEDIFF(`data_conclusione`, NOW()) AS giorni_rimanenti,
|
||||
`co_contratti`.`data_accettazione`,
|
||||
`data_conclusione`,
|
||||
`ore_preavviso_rinnovo`,
|
||||
`giorni_preavviso_rinnovo`,
|
||||
(SELECT `ragione_sociale` FROM `an_anagrafiche` WHERE `idanagrafica` = `co_contratti`.`idanagrafica`) AS ragione_sociale
|
||||
FROM
|
||||
`co_contratti`
|
||||
INNER JOIN `co_staticontratti` ON `co_staticontratti`.`id` = `co_contratti`.`idstato`
|
||||
LEFT JOIN `co_staticontratti_lang` ON (`co_staticontratti`.`id` = `co_staticontratti_lang`.`id_record` AND `co_staticontratti_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).')
|
||||
WHERE
|
||||
`rinnovabile` = 1
|
||||
AND YEAR(`data_conclusione`) > 1970
|
||||
AND `co_contratti`.`id` NOT IN (SELECT `idcontratto_prev` FROM `co_contratti` contratti) AND `co_staticontratti_lang`.`title` NOT IN ("Concluso", "Rifiutato", "Bozza")
|
||||
HAVING
|
||||
(`ore_rimanenti` <= `ore_preavviso_rinnovo` OR DATEDIFF(`data_conclusione`, NOW()) <= ABS(`giorni_preavviso_rinnovo`))
|
||||
ORDER BY
|
||||
`giorni_rimanenti` ASC,`ore_rimanenti` ASC');
|
||||
|
||||
if (!empty($rs)) {
|
||||
echo '
|
||||
|
|
Loading…
Reference in New Issue