Aggiunta al volo dich. intento da fattura

This commit is contained in:
Luca 2022-03-07 15:41:04 +01:00
parent 80fe5f4e49
commit 93d85ffb85
3 changed files with 47 additions and 16 deletions

View File

@ -17,6 +17,8 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
use Carbon\Carbon;
include_once __DIR__.'/../../../core.php';
switch ($resource) {
@ -358,25 +360,54 @@ switch ($resource) {
*/
case 'dichiarazioni_intento':
$query = "SELECT id, CONCAT('Prot. ', numero_protocollo, ' con data fine ', DATE_FORMAT(data_fine, '%d/%m/%Y'),' - utilizzati ',REPLACE(REPLACE(REPLACE(FORMAT(SUM(totale),2), ',', '#'), '.', ','), '#', '.'), ' su ' , REPLACE(REPLACE(REPLACE(FORMAT(SUM(massimale),2), ',', '#'), '.', ','), '#', '.'), ' &euro;' ) AS descrizione FROM co_dichiarazioni_intento |where| ORDER BY data";
foreach ($elements as $element) {
$filter[] = 'id='.prepare($element);
}
if (isset($superselect['idanagrafica']) && isset($superselect['data'])) {
//$query = "SELECT id, CONCAT('N. prot. ', numero_protocollo, ' (periodo dal ', DATE_FORMAT(data_inizio, '%d/%m/%Y'), ' al ' ,DATE_FORMAT(data_fine, '%d/%m/%Y'),') (utilizzati ',REPLACE(REPLACE(REPLACE(FORMAT(SUM(totale),2), ',', '#'), '.', ','), '#', '.'), ' su ' , REPLACE(REPLACE(REPLACE(FORMAT(SUM(massimale),2), ',', '#'), '.', ','), '#', '.'), ' &euro;)' ) AS descrizione, data_inizio, data_fine FROM co_dichiarazioni_intento |where| ORDER BY `data`, `id`";
$where[] = '( '.prepare($superselect['data']).' BETWEEN data_inizio AND data_fine)';
$query = "SELECT id, numero_protocollo, data_inizio, data_fine, massimale, totale FROM co_dichiarazioni_intento |where| ORDER BY data";
//$where[] = 'data_inizio < NOW()';
//$where[] = 'data_fine > NOW()';
if (empty($filter)) {
$where[] = 'deleted_at IS NULL';
}
$where[] = 'id_anagrafica='.prepare($superselect['idanagrafica']);
if (!empty($search)) {
$search_fields[] = 'numero_protocollo LIKE '.prepare('%'.$search.'%');
$search_fields[] = 'numero_progressivo LIKE '.prepare('%'.$search.'%');
foreach ($elements as $element) {
$filter[] = 'id='.prepare($element);
}
//$where[] = '( '.prepare($superselect['data']).' BETWEEN data_inizio AND data_fine)';
//$where[] = 'data_inizio < NOW()';
//$where[] = 'data_fine > NOW()';
if (empty($filter)) {
$where[] = 'deleted_at IS NULL';
}
$where[] = 'id_anagrafica='.prepare($superselect['idanagrafica']);
if (!empty($search)) {
$search_fields[] = 'numero_protocollo LIKE '.prepare('%'.$search.'%');
$search_fields[] = 'numero_progressivo LIKE '.prepare('%'.$search.'%');
}
$data = AJAX::selectResults($query, $where, $filter, $search_fields, $limit, $custom);
$rs = $data['results'];
foreach ($rs as $k => $r) {
$currentDate = date('Y-m-d', strtotime($superselect['data']));
$startDate = date('Y-m-d', strtotime($r['data_inizio']));
$endDate = date('Y-m-d', strtotime($r['data_fine']));
$rs[$k] = array_merge($r, [
'text' => tr('N. prot.').' '.$r['numero_protocollo'].' - '.Translator::numberToLocale($r['totale']).'/'.Translator::numberToLocale($r['massimale']).' &euro; ['.Translator::dateToLocale($r['data_fine']).']',
'disabled' => (($currentDate < $startDate) || ($currentDate > $endDate)),
]);
}
$results = [
'results' => $rs,
'recordsFiltered' => $data['recordsFiltered'],
];
}
break;

View File

@ -162,7 +162,7 @@ switch ($resource) {
// Utilizzo dell'impostazione per disabilitare articoli con quantità <= 0
$permetti_movimenti_sotto_zero = setting('Permetti selezione articoli con quantità minore o uguale a zero in Documenti di Vendita') ? true : $superselect['permetti_movimento_a_zero'];
// IVA da impostazioni
// Eventuali articoli disabilitati
foreach ($rs as $k => $r) {
// Lettura movimenti delle mie sedi
$qta_sede = $dbo->fetchOne('SELECT SUM(mg_movimenti.qta) AS qta FROM mg_movimenti LEFT JOIN an_sedi ON an_sedi.id = mg_movimenti.idsede WHERE mg_movimenti.idarticolo = '.prepare($r['id']).' AND idsede = '.prepare($superselect['idsede_partenza']))['qta'];

View File

@ -441,7 +441,7 @@ elseif ($record['stato'] == 'Bozza') {
}
echo '
{[ "type": "select", "label": "'.tr("Dichiarazione d'intento").'", "name": "id_dichiarazione_intento", "help": "'.tr('Elenco delle dichiarazioni d\'intento definite all\'interno dell\'anagrafica del cliente').'.", "ajax-source": "dichiarazioni_intento", "select-options": {"idanagrafica": '.$record['idanagrafica'].', "data": "'.$record['data'].'"},"value": "$id_dichiarazione_intento$" ]}
{[ "type": "select", "label": "'.tr("Dichiarazione d'intento").'", "name": "id_dichiarazione_intento", "help": "'.tr('Elenco delle dichiarazioni d\'intento definite all\'interno dell\'anagrafica del cliente').'.", "ajax-source": "dichiarazioni_intento", "select-options": {"idanagrafica": '.$record['idanagrafica'].', "data": "'.$record['data'].'"},"value": "$id_dichiarazione_intento$", "icon-after": "add|'.Modules::get('Anagrafiche')['id'].'|id_plugin='.Plugins::get('Dichiarazioni d\'Intento')['id'].'&id_parent='.$record['idanagrafica'].'", "extra": "'.((intval($block_edit)) ? 'disabled' : '').'" ]}
</div>';
}
echo '