Gestione fatturazione interventi collegati a documenti

This commit is contained in:
MatteoPistorello 2023-05-23 11:05:31 +02:00
parent 749f625ddf
commit 330434d472
4 changed files with 30 additions and 6 deletions

View File

@ -40,8 +40,14 @@ $idconto = ($dir == 'entrata') ? setting('Conto predefinito fatture di vendita')
$where = '';
// Lettura interventi non collegati a preventivi, ordini e contratti
if (!setting('Permetti fatturazione delle attività collegate a contratti, ordini e preventivi')) {
$where = 'AND in_interventi.id_preventivo IS NULL AND in_interventi.id_contratto IS NULL AND in_interventi.id_ordine IS NULL';
if (!setting('Permetti fatturazione delle attività collegate a contratti')) {
$where = ' AND in_interventi.id_contratto IS NULL';
}
if (!setting('Permetti fatturazione delle attività collegate a ordini')) {
$where .= ' AND in_interventi.id_ordine IS NULL';
}
if (!setting('Permetti fatturazione delle attività collegate a preventivi')) {
$where .= ' AND in_interventi.id_preventivo IS NULL';
}
/*

View File

@ -761,8 +761,14 @@ if (!$block_edit) {
if ($dir == 'entrata') {
$where = '';
// Lettura interventi non collegati a preventivi, ordini e contratti
if (!setting('Permetti fatturazione delle attività collegate a contratti, ordini e preventivi')) {
$where = 'AND in_interventi.id_preventivo IS NULL AND in_interventi.id_contratto IS NULL AND in_interventi.id_ordine IS NULL';
if (!setting('Permetti fatturazione delle attività collegate a contratti')) {
$where = ' AND in_interventi.id_contratto IS NULL';
}
if (!setting('Permetti fatturazione delle attività collegate a ordini')) {
$where .= ' AND in_interventi.id_ordine IS NULL';
}
if (!setting('Permetti fatturazione delle attività collegate a preventivi')) {
$where .= ' AND in_interventi.id_preventivo IS NULL';
}
// Lettura interventi non rifiutati, non fatturati

View File

@ -95,8 +95,14 @@ switch (post('op')) {
$where = '';
// Lettura interventi non collegati a preventivi, ordini e contratti
if (!setting('Permetti fatturazione delle attività collegate a contratti, ordini e preventivi')) {
$where = 'AND in_interventi.id_preventivo IS NULL AND in_interventi.id_contratto IS NULL AND in_interventi.id_ordine IS NULL';
if (!setting('Permetti fatturazione delle attività collegate a contratti')) {
$where = ' AND in_interventi.id_contratto IS NULL';
}
if (!setting('Permetti fatturazione delle attività collegate a ordini')) {
$where .= ' AND in_interventi.id_ordine IS NULL';
}
if (!setting('Permetti fatturazione delle attività collegate a preventivi')) {
$where .= ' AND in_interventi.id_preventivo IS NULL';
}
$interventi = $dbo->fetchArray('SELECT *, IFNULL((SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE in_interventi_tecnici.idintervento = in_interventi.id), in_interventi.data_richiesta) AS data, in_statiintervento.descrizione AS stato, in_interventi.codice AS codice_intervento FROM in_interventi INNER JOIN in_statiintervento ON in_interventi.idstatointervento=in_statiintervento.idstatointervento WHERE in_statiintervento.is_completato=1 AND in_statiintervento.is_fatturabile=1 AND in_interventi.id NOT IN (SELECT idintervento FROM co_righe_documenti WHERE idintervento IS NOT NULL) AND in_interventi.id NOT IN (SELECT idintervento FROM co_promemoria WHERE idintervento IS NOT NULL) AND in_interventi.id IN ('.implode(',', $id_records).') '.$where);

View File

@ -36,3 +36,9 @@ INSERT INTO `zz_widgets` (`id`, `name`, `type`, `id_module`, `location`, `class`
INSERT INTO `zz_prints` (`id`, `id_module`, `is_record`, `name`, `title`, `filename`, `directory`, `previous`, `options`, `icon`, `version`, `compatibility`, `order`, `predefined`, `default`, `enabled`, `available_options`) VALUES
(NULL, (SELECT id FROM zz_modules WHERE name = 'Dashboard'), 1, 'Stampa calendario settimanale', 'Stampa calendario settimanale', 'Calendario settimanale', 'dashboard_settimanale', '', '', 'fa fa-print', '', '', 0, 1, 1, 1, NULL);
UPDATE `zz_settings` SET `nome` = 'Permetti fatturazione delle attività collegate a contratti' WHERE `zz_settings`.`nome` = 'Permetti fatturazione delle attività collegate a contratti, ordini e preventivi';
INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES (NULL, 'Permetti fatturazione delle attività collegate a ordini', (SELECT `valore` FROM `zz_settings` AS `a` WHERE `nome` = 'Permetti fatturazione delle attività collegate a contratti'), 'boolean', '1', 'Fatturazione', NULL, NULL);
INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES (NULL, 'Permetti fatturazione delle attività collegate a preventivi', (SELECT `valore` FROM `zz_settings` AS `a` WHERE `nome` = 'Permetti fatturazione delle attività collegate a contratti'), 'boolean', '1', 'Fatturazione', NULL, NULL);