Aggiunta flag nelle righe ordini per impegnare o meno le quantità
This commit is contained in:
parent
f0c3f12ea4
commit
f9aa58955f
|
@ -123,6 +123,9 @@ if (in_array($module['name'], ['Ordini cliente', 'Ordini fornitore'])) {
|
||||||
<div class="col-md-'.$width.'">
|
<div class="col-md-'.$width.'">
|
||||||
{[ "type": "date", "label": "'.tr('Data prevista evasione').'", "name": "data_evasione", "value": "'.$result['data_evasione'].'" ]}
|
{[ "type": "date", "label": "'.tr('Data prevista evasione').'", "name": "data_evasione", "value": "'.$result['data_evasione'].'" ]}
|
||||||
</div>
|
</div>
|
||||||
|
<div class="col-md-'.$width.'">
|
||||||
|
{[ "type": "checkbox", "label": "'.tr('Articolo confermato').'", "name": "confermato", "value": "'.($options['action'] == 'add' ? setting("Conferma automaticamente le quantità negli ordini cliente") : $result['confermato']).'" ]}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>';
|
</div>';
|
||||||
|
|
|
@ -34,6 +34,7 @@ FROM or_ordini
|
||||||
WHERE idarticolo = '.prepare($articolo->id)."
|
WHERE idarticolo = '.prepare($articolo->id)."
|
||||||
AND (SELECT dir FROM or_tipiordine WHERE or_tipiordine.id=or_ordini.idtipoordine) = '|dir|'
|
AND (SELECT dir FROM or_tipiordine WHERE or_tipiordine.id=or_ordini.idtipoordine) = '|dir|'
|
||||||
AND (or_righe_ordini.qta - or_righe_ordini.qta_evasa) > 0
|
AND (or_righe_ordini.qta - or_righe_ordini.qta_evasa) > 0
|
||||||
|
AND or_righe_ordini.confermato = 1
|
||||||
GROUP BY or_ordini.id
|
GROUP BY or_ordini.id
|
||||||
HAVING qta_ordinata > 0";
|
HAVING qta_ordinata > 0";
|
||||||
|
|
||||||
|
|
|
@ -175,6 +175,7 @@ switch (post('op')) {
|
||||||
|
|
||||||
$articolo->costo_unitario = post('costo_unitario') ?: 0;
|
$articolo->costo_unitario = post('costo_unitario') ?: 0;
|
||||||
$articolo->data_evasione = post('data_evasione') ?: null;
|
$articolo->data_evasione = post('data_evasione') ?: null;
|
||||||
|
$articolo->confermato = post('confermato') ?: 0;
|
||||||
$articolo->setPrezzoUnitario(post('prezzo_unitario'), post('idiva'));
|
$articolo->setPrezzoUnitario(post('prezzo_unitario'), post('idiva'));
|
||||||
$articolo->setSconto(post('sconto'), post('tipo_sconto'));
|
$articolo->setSconto(post('sconto'), post('tipo_sconto'));
|
||||||
|
|
||||||
|
|
|
@ -54,9 +54,9 @@ foreach ($articoli as $elenco) {
|
||||||
$qta_impegnata = $database->fetchOne("SELECT SUM(qta) as qta
|
$qta_impegnata = $database->fetchOne("SELECT SUM(qta) as qta
|
||||||
FROM or_righe_ordini
|
FROM or_righe_ordini
|
||||||
JOIN or_ordini ON or_ordini.id = or_righe_ordini.idordine
|
JOIN or_ordini ON or_ordini.id = or_righe_ordini.idordine
|
||||||
WHERE or_ordini.id != '.prepare($ordine->id).'
|
WHERE idstatoordine = (SELECT id FROM or_statiordine WHERE descrizione = 'Bozza')
|
||||||
AND idstatoordine = (SELECT id FROM or_statiordine WHERE descrizione = 'Bozza')
|
|
||||||
AND idtipoordine IN (SELECT id FROM or_tipiordine WHERE dir = 'entrata')
|
AND idtipoordine IN (SELECT id FROM or_tipiordine WHERE dir = 'entrata')
|
||||||
|
AND confermato = 1
|
||||||
AND idarticolo=".prepare($articolo->id).'
|
AND idarticolo=".prepare($articolo->id).'
|
||||||
GROUP BY idarticolo')['qta'];
|
GROUP BY idarticolo')['qta'];
|
||||||
$qta_impegnata = floatval($qta_impegnata);
|
$qta_impegnata = floatval($qta_impegnata);
|
||||||
|
|
|
@ -137,6 +137,7 @@ foreach ($righe as $riga) {
|
||||||
// Quantità e unità di misura
|
// Quantità e unità di misura
|
||||||
echo '
|
echo '
|
||||||
<td class="text-center">
|
<td class="text-center">
|
||||||
|
<i class="'.($riga->confermato ? 'fa fa-check text-success' : 'fa fa-clock-o text-warning').'"></i>
|
||||||
'.numberFormat($riga->qta_rimanente, 'qta').' / '.numberFormat($riga->qta, 'qta').' '.$riga->um.'
|
'.numberFormat($riga->qta_rimanente, 'qta').' / '.numberFormat($riga->qta, 'qta').' '.$riga->um.'
|
||||||
</td>';
|
</td>';
|
||||||
|
|
||||||
|
|
|
@ -220,3 +220,12 @@ UPDATE `co_documenti` SET `id_banca_azienda` = NULL WHERE `id_banca_azienda` = 0
|
||||||
|
|
||||||
-- Aggiunta unità di misura secondaria per le stampe documenti di vendita
|
-- Aggiunta unità di misura secondaria per le stampe documenti di vendita
|
||||||
ALTER TABLE `mg_articoli` ADD `um_secondaria` varchar(255), ADD `fattore_um_secondaria` DECIMAL(15, 6);
|
ALTER TABLE `mg_articoli` ADD `um_secondaria` varchar(255), ADD `fattore_um_secondaria` DECIMAL(15, 6);
|
||||||
|
|
||||||
|
-- Aggiunta impostazione per impegnare o meno automaticamente le quantità negli ordini
|
||||||
|
INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES (NULL, 'Conferma automaticamente le quantità negli ordini cliente', '1', 'boolean', '1', 'Ordini', NULL, NULL);
|
||||||
|
|
||||||
|
ALTER TABLE `or_righe_ordini` ADD `confermato` BOOLEAN NOT NULL AFTER `id_dettaglio_fornitore`;
|
||||||
|
UPDATE `or_righe_ordini` SET `confermato`=1;
|
||||||
|
|
||||||
|
|
||||||
|
UPDATE `zz_modules` SET `options` = 'SELECT |select| FROM `mg_articoli` LEFT JOIN an_anagrafiche ON mg_articoli.id_fornitore=an_anagrafiche.idanagrafica LEFT JOIN co_iva ON mg_articoli.idiva_vendita=co_iva.id LEFT JOIN (SELECT SUM(qta-qta_evasa) AS qta_impegnata, idarticolo FROM or_righe_ordini INNER JOIN or_ordini ON or_righe_ordini.idordine=or_ordini.id INNER JOIN or_tipiordine ON or_ordini.idtipoordine=or_tipiordine.id WHERE idstatoordine IN(SELECT id FROM or_statiordine WHERE completato=0) AND or_tipiordine.dir=\'entrata\' AND or_righe_ordini.confermato = 1 GROUP BY idarticolo) a ON a.idarticolo=mg_articoli.id LEFT JOIN mg_categorie ON mg_articoli.id_categoria=mg_categorie.id LEFT JOIN mg_categorie AS sottocategorie ON mg_articoli.id_sottocategoria=sottocategorie.id WHERE 1=1 AND (`mg_articoli`.`deleted_at`) IS NULL HAVING 2=2 ORDER BY `mg_articoli`.`descrizione`' WHERE `zz_modules`.`name` = 'Articoli';
|
Loading…
Reference in New Issue