|
19 | 19 | */ |
20 | 20 |
|
21 | 21 | include_once __DIR__.'/../../core.php'; |
| 22 | +include_once __DIR__.'/init.php'; |
22 | 23 |
|
23 | 24 | use Carbon\Carbon; |
24 | 25 | use Modules\Anagrafiche\Tipo; |
|
35 | 36 | $file = null; |
36 | 37 | switch (filter('op')) { |
37 | 38 | case 'list': |
38 | | - $list = Interaction::getRemoteList(); |
| 39 | + $list = Interaction::getInvoiceList(); |
39 | 40 |
|
40 | 41 | echo json_encode($list); |
41 | 42 |
|
|
132 | 133 | 'data_registrazione' => post('data_registrazione'), |
133 | 134 | 'articoli' => post('articoli'), |
134 | 135 | 'iva' => post('iva'), |
135 | | - 'conto' => post('conti'), |
| 136 | + 'conto' => post('conto'), |
136 | 137 | 'tipo_riga_riferimento' => post('tipo_riga_riferimento'), |
137 | 138 | 'id_riga_riferimento' => post('id_riga_riferimento'), |
138 | 139 | 'tipo_riga_riferimento_vendita' => post('tipo_riga_riferimento_vendita'), |
|
443 | 444 |
|
444 | 445 | // Se nella fattura elettronica è indicato un DDT cerco quel documento specifico |
445 | 446 | $ddt = $dati_ddt[$numero_linea]; |
446 | | - $query = "SELECT |
447 | | - `dt_righe_ddt`.`id`, |
448 | | - `dt_righe_ddt`.`idddt` AS id_documento, |
449 | | - `dt_righe_ddt`.`is_descrizione`, |
450 | | - `dt_righe_ddt`.`idarticolo`, |
| 447 | + $query = "SELECT |
| 448 | + `dt_righe_ddt`.`id`, |
| 449 | + `dt_righe_ddt`.`idddt` AS id_documento, |
| 450 | + `dt_righe_ddt`.`is_descrizione`, |
| 451 | + `dt_righe_ddt`.`idarticolo`, |
451 | 452 | `dt_righe_ddt`.`is_sconto`, 'ddt' AS ref, |
452 | 453 | CONCAT('DDT num. ', IF(`numero_esterno` != '', `numero_esterno`, `numero`), ' del ', DATE_FORMAT(`data`, '%d/%m/%Y'), ' [', `dt_statiddt_lang`.`title`, ']') AS opzione |
453 | | - FROM |
| 454 | + FROM |
454 | 455 | `dt_righe_ddt` |
455 | 456 | INNER JOIN `dt_ddt` ON `dt_ddt`.`id` = `dt_righe_ddt`.`idddt` |
456 | 457 | INNER JOIN `dt_statiddt` ON `dt_statiddt`.`id` = `dt_ddt`.`idstatoddt` |
|
484 | 485 | // cerco per quell'ordine |
485 | 486 | if (empty($collegamento)) { |
486 | 487 | $ordine = $dati_ordini[$numero_linea]; |
487 | | - $query = "SELECT |
488 | | - `or_righe_ordini`.`id`, |
489 | | - `or_righe_ordini`.`idordine` AS id_documento, |
490 | | - `or_righe_ordini`.`is_descrizione`, |
491 | | - `or_righe_ordini`.`idarticolo`, |
492 | | - `or_righe_ordini`.`is_sconto`, |
| 488 | + $query = "SELECT |
| 489 | + `or_righe_ordini`.`id`, |
| 490 | + `or_righe_ordini`.`idordine` AS id_documento, |
| 491 | + `or_righe_ordini`.`is_descrizione`, |
| 492 | + `or_righe_ordini`.`idarticolo`, |
| 493 | + `or_righe_ordini`.`is_sconto`, |
493 | 494 | 'ordine' AS ref, |
494 | 495 | CONCAT('Ordine num. ', IF(`numero_esterno` != '', `numero_esterno`, `numero`), ' del ', DATE_FORMAT(`data`, '%d/%m/%Y'), ' [', `or_statiordine_lang`.`title` , ']') AS opzione |
495 | 496 | FROM `or_righe_ordini` |
|
529 | 530 | // Se non ci sono Ordini o DDT cerco per contenuto |
530 | 531 | if (empty($collegamento)) { |
531 | 532 | $match_documento_da_fe = false; |
532 | | - $query = "SELECT |
533 | | - `dt_righe_ddt`.`id`, |
534 | | - `dt_righe_ddt`.`idddt` AS id_documento, |
535 | | - `dt_righe_ddt`.`is_descrizione`, |
536 | | - `dt_righe_ddt`.`idarticolo`, |
537 | | - `dt_righe_ddt`.`is_sconto`, |
| 533 | + $query = "SELECT |
| 534 | + `dt_righe_ddt`.`id`, |
| 535 | + `dt_righe_ddt`.`idddt` AS id_documento, |
| 536 | + `dt_righe_ddt`.`is_descrizione`, |
| 537 | + `dt_righe_ddt`.`idarticolo`, |
| 538 | + `dt_righe_ddt`.`is_sconto`, |
538 | 539 | 'ddt' AS ref, |
539 | 540 | CONCAT('DDT num. ', IF(`numero_esterno` != '', `numero_esterno`, `numero`), ' del ', DATE_FORMAT(`data`, '%d/%m/%Y'), ' [', `dt_statiddt_lang`.`title`, ']') AS opzione |
540 | | - FROM |
| 541 | + FROM |
541 | 542 | `dt_righe_ddt` |
542 | 543 | INNER JOIN `dt_ddt` ON `dt_ddt`.`id` = `dt_righe_ddt`.`idddt` |
543 | 544 | INNER JOIN `dt_statiddt` ON `dt_statiddt`.`id` = `dt_ddt`.`idstatoddt` |
544 | 545 | LEFT JOIN `dt_statiddt_lang` ON (`dt_statiddt_lang`.`id_record` = `dt_statiddt`.`id` AND `dt_statiddt_lang`.`id_lang` = ".prepare(Models\Locale::getDefault()->id).') |
545 | 546 | INNER JOIN `dt_tipiddt` ON `dt_ddt`.`idtipoddt` = `dt_tipiddt`.`id` |
546 | | - WHERE |
547 | | - `dt_ddt`.`idanagrafica` = '.prepare($anagrafica->id)." AND |
548 | | - |where_ddt| AND |
549 | | - `dt_righe_ddt`.`qta` > `dt_righe_ddt`.`qta_evasa` AND |
| 547 | + WHERE |
| 548 | + `dt_ddt`.`idanagrafica` = '.prepare($anagrafica->id)." AND |
| 549 | + |where_ddt| AND |
| 550 | + `dt_righe_ddt`.`qta` > `dt_righe_ddt`.`qta_evasa` AND |
550 | 551 | `dt_statiddt_lang`.`title` != 'Fatturato' AND |
551 | 552 | `dt_tipiddt`.`dir` = 'uscita' |
552 | | - UNION |
553 | | - SELECT |
| 553 | + UNION |
| 554 | + SELECT |
554 | 555 | `or_righe_ordini`.`id`, |
555 | 556 | `or_righe_ordini`.`idordine` AS id_documento, |
556 | | - `or_righe_ordini`.`is_descrizione`, |
557 | | - `or_righe_ordini`.`idarticolo`, |
558 | | - `or_righe_ordini`.`is_sconto`, |
| 557 | + `or_righe_ordini`.`is_descrizione`, |
| 558 | + `or_righe_ordini`.`idarticolo`, |
| 559 | + `or_righe_ordini`.`is_sconto`, |
559 | 560 | 'ordine' AS ref, |
560 | 561 | CONCAT('Ordine num. ', IF(`numero_esterno` != '', `numero_esterno`, `numero`), ' del ', DATE_FORMAT(`data`, '%d/%m/%Y'), ' [', (SELECT `descrizione` FROM `or_statiordine` WHERE `id` = `idstatoordine`) , ']') AS opzione |
561 | | - FROM |
| 562 | + FROM |
562 | 563 | `or_righe_ordini` |
563 | 564 | INNER JOIN `or_ordini` ON `or_ordini`.`id` = `or_righe_ordini`.`idordine` |
564 | 565 | INNER JOIN `or_statiordine` ON `or_statiordine`.`id` = `or_ordini`.`idstatoordine` |
565 | 566 | LEFT JOIN `or_statiordine_lang` ON (`or_statiordine_lang`.`id_record` = `or_statiordine`.`id` AND `or_statiordine_lang`.`id_lang` = ".prepare(Models\Locale::getDefault()->id).') |
566 | 567 | INNER JOIN `or_tipiordine` ON `or_ordini`.`idtipoordine` = `or_tipiordine`.`id` |
567 | | - WHERE |
568 | | - `or_ordini`.`idanagrafica` = '.prepare($anagrafica->id)." AND |
569 | | - |where_ordini| AND |
570 | | - `or_righe_ordini`.`qta` > `or_righe_ordini`.`qta_evasa` AND |
| 568 | + WHERE |
| 569 | + `or_ordini`.`idanagrafica` = '.prepare($anagrafica->id)." AND |
| 570 | + |where_ordini| AND |
| 571 | + `or_righe_ordini`.`qta` > `or_righe_ordini`.`qta_evasa` AND |
571 | 572 | `or_statiordine_lang`.`title` != 'Fatturato' AND |
572 | 573 | `or_tipiordine`.`dir` ='uscita'"; |
573 | 574 |
|
|
622 | 623 | $riga = $documento->getRiga($namespace.$type, $collegamento['id']); |
623 | 624 | $riga_origine = $riga->getOriginalComponent(); |
624 | 625 |
|
| 626 | + $desc_conto = ''; |
625 | 627 | if (!empty($riga->idarticolo)) { |
626 | 628 | $desc_conto = $dbo->fetchOne('SELECT CONCAT( co_pianodeiconti2.numero, ".", co_pianodeiconti3.numero, " ", co_pianodeiconti3.descrizione ) AS descrizione FROM co_pianodeiconti3 INNER JOIN co_pianodeiconti2 ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id WHERE co_pianodeiconti3.id = '.prepare($riga->articolo->idconto_acquisto))['descrizione']; |
627 | 629 | } |
|
647 | 649 | 'id_articolo' => $riga->idarticolo, |
648 | 650 | 'desc_articolo' => str_replace(' ', '_', $riga->articolo->codice.' - '.$riga->articolo->getTranslation('title')), |
649 | 651 | 'id_conto' => $riga->articolo->idconto_acquisto, |
650 | | - 'desc_conto' => str_replace(' ', '_', $desc_conto), |
| 652 | + 'desc_conto' => str_replace(' ', '_', $desc_conto ?: ''), |
651 | 653 | ], |
652 | 654 | ]; |
653 | 655 | } |
|
0 commit comments