Compare commits

...

198 Commits

Author SHA1 Message Date
42b16975d6 Finish v1.35.00(391) 2023-09-20 17:11:11 +02:00
23da1b3e94 -> v1.35.00 (391) 2023-09-20 17:10:43 +02:00
d003a0322e Implementato override del check della tracciabilità in Accettazione da bolla 2023-09-20 17:09:45 +02:00
1e129d1ea9 Refactoring caricamento gest setup 2023-09-15 12:54:35 +02:00
a7dbe55ad2 In accettazione da bolla aggiunta possibilità di scansionare barcode non presenti in bolla o anche barcode non riconosciuti (con delle note) 2023-09-14 17:18:54 +02:00
99f21b19f1 In accettazione bolla è possibile configurare la richiesta di stampa, versamento automatico o il tipo collo 2023-09-11 12:00:18 +02:00
eeb06e105e In accettazione da bolle raggruppare l'elenco dei documenti per listini di acquisto 2023-09-08 09:39:48 +02:00
5988667944 Aggiornate librerie 2023-09-08 09:29:48 +02:00
77e3d00bef Implementata gestione che aggancia un barcode imballo ad un articolo già esistente 2023-08-07 13:01:37 +02:00
4b475ef1e5 Ultime migliorie in accettazione da bolla 2023-08-04 17:23:04 +02:00
1ec0611e2a Completata implementazione di Accettazione da bolla 2023-08-04 12:38:32 +02:00
bd81385cac Implementato servizio retrieve picking list bolle accettazione 2023-07-31 12:28:06 +02:00
6dbcdb0475 Completato avantielenco accettazione bolla 2023-07-31 09:59:34 +02:00
e1fddc8682 Rename classi accettazione 2023-07-24 10:15:45 +02:00
a046f736b0 Renaming cartelle 2023-07-24 10:06:24 +02:00
696ea31d7d Finish v1.34.06(390) 2023-07-21 19:27:00 +02:00
3d9e33464a Finish v1.34.06(390) 2023-07-21 19:26:59 +02:00
ab74a9cbad -> v1.34.06 (390) 2023-07-21 19:26:53 +02:00
d56dcc0ed2 Refactoring accettazione 2023-07-21 19:25:58 +02:00
7e73aceeb7 Finish v1.34.05(389) 2023-07-19 13:14:23 +02:00
d63c80d6b7 Finish v1.34.05(389) 2023-07-19 13:14:23 +02:00
bc9016cf93 -> v1.34.05 (389) 2023-07-19 13:14:15 +02:00
ff128a1de2 [LICOR]
aggiunto controllo su dataconsegna null in filtro per data consegna ordini spedizione
2023-07-19 13:13:20 +02:00
fa6ad5a150 Finish v1.34.04(388) 2023-07-11 09:29:52 +02:00
a8aaf69c57 Finish v1.34.04(388) 2023-07-11 09:29:51 +02:00
9c86598f03 -> v1.34.04 (388) 2023-07-11 09:29:45 +02:00
031cbc8d0a IDE 2023-07-11 09:28:44 +02:00
df63fbe4af In rientro merce rimossi tutti gli ordini con stato = PROGRAMMATO 2023-07-05 18:04:13 +02:00
1372e831f7 [CARELLI - INVENTARIO]
- incrementato timeout salvataggio inventario
2023-07-05 13:29:24 +02:00
c31700d9cb Modificati in POST i servizi di ricerca in Rettifica Giacenze.
Implementato nuovo servizio di retrieve articolo by codMart.
2023-07-05 10:54:37 +02:00
e6ecebd49a Nuovi servizi in rettigica giacenze 2023-07-03 17:59:30 +02:00
dfec2f2bd3 Finish v1.34.03(387) 2023-07-03 17:47:00 +02:00
3d425b6b02 Finish v1.34.03(387) 2023-07-03 17:47:00 +02:00
318a8f645e -> v1.34.03 (387) 2023-07-03 17:46:53 +02:00
8ec314044f Cambiata lettura barcode in dettaglio linee 2023-06-30 17:01:53 +02:00
2965b18a5f Finish v1.34.02(386) 2023-06-29 18:47:51 +02:00
24f6341ff6 Finish v1.34.02(386) 2023-06-29 18:47:51 +02:00
589a179a1b -> v1.34.02 (386) 2023-06-29 18:47:46 +02:00
afc2aef691 Implementato flag per abilitare/disabilitare cache degli inventari 2023-06-29 18:47:10 +02:00
19e4a14c95 Finish v1.34.01(385) 2023-06-16 12:17:28 +02:00
8237466adf Finish v1.34.01(385) 2023-06-16 12:17:27 +02:00
3c1471ee8d -> v1.34.01 (385) 2023-06-16 12:17:22 +02:00
099d5fa54d Ripristinata visualizzazione del cliente in creazione UL in Spedizione.
Sistemato provider del mainHandler
2023-06-15 16:47:37 +02:00
8b04f3e696 Finish v1.34.00(384) 2023-06-14 16:51:26 +02:00
04ef20c69a Finish v1.34.00(384) 2023-06-14 16:51:25 +02:00
d08ec43d29 -> v1.34.00 (384) 2023-06-14 16:51:18 +02:00
64e5200912 Modifiche onLoadingStarted 2023-06-14 16:50:17 +02:00
9e79653769 Implementata ricerca all'interno del Picking Inventario 2023-06-14 16:26:50 +02:00
1fee2c901a Finish v1.33.12(383) 2023-06-13 13:01:39 +02:00
3713bb5e49 Finish v1.33.12(383) 2023-06-13 13:01:38 +02:00
fdeb98b82a -> v1.33.12 (383) 2023-06-13 13:01:31 +02:00
3e68dd2d36 Aggiunto supporto a barcode I2O5 in ZebraBarcodeReader 2023-06-13 13:00:28 +02:00
1a964d7a97 Upgrade AGP 8.0.2 2023-06-07 14:19:15 +02:00
43df6fc9f5 Finish v1.33.11(382) 2023-05-25 12:41:34 +02:00
10f7ecd79b Finish v1.33.11(382) 2023-05-25 12:41:34 +02:00
9a60b1ff86 -> v1.33.11 (382) 2023-05-25 12:41:29 +02:00
386d51ffd7 [CARELLI - INVENTARIO]
- risolto problema caricamento dati da inventario precedente
2023-05-25 12:40:40 +02:00
d3804a4601 Finish v1.33.10(381) 2023-05-24 11:51:22 +02:00
04720c1d97 Finish v1.33.10(381) 2023-05-24 11:51:21 +02:00
0826aa0445 -> v1.33.10 (381) 2023-05-24 11:51:14 +02:00
7ceb51a54b Merge remote-tracking branch 'origin/develop' into develop 2023-05-24 11:50:21 +02:00
e8351ca75b Implementata esportazione DB 2023-05-24 11:50:17 +02:00
f8ceb1fb2d Finish v1.33.09(380) 2023-05-22 12:05:03 +02:00
4ef49f3523 Finish v1.33.09(380) 2023-05-22 12:05:03 +02:00
21ed15a2ea -> v1.33.09 (380) 2023-05-22 12:04:57 +02:00
aacec1dfde [CARELLI - INVENTARIO]
- aggiunto caricamento su scansione articolo
- corretto bug: NullPointerException in riconoscimento articolo senza codMart
2023-05-22 11:50:50 +02:00
ac7e0443a6 Finish v1.33.08(379) 2023-05-15 12:20:24 +02:00
4bbb0d5cbb Finish v1.33.08(379) 2023-05-15 12:20:24 +02:00
05c28d62d8 -> v1.33.08 (379) 2023-05-15 12:20:16 +02:00
bf2ac81ab8 Merge remote-tracking branch 'origin/develop' into develop 2023-05-15 12:19:32 +02:00
17a78ef044 Implementato nel refresh dei dati in BaseRepository un controllo per evitare di cancellare, da SQLite, dati non sincronizzati 2023-05-15 12:19:24 +02:00
3c78c2787a Finish v1.33.07(378) 2023-05-12 10:19:07 +02:00
c7358b536e Finish v1.33.07(378) 2023-05-12 10:19:06 +02:00
4f9fe14f7e -> v1.33.07 (378) 2023-05-12 10:19:01 +02:00
0934765176 [CARELLI - ORDINI ACQUISTO]
- corretta gestione merce da ricevere per rispecchiare il nuovo servizio (ora riceve le qta invece che le confezioni)
2023-05-12 10:18:16 +02:00
b7d3cb18b9 corretto appVersionName 2023-05-11 15:29:23 +02:00
227c67dc23 Finish v1.33.06(377) 2023-05-11 15:03:33 +02:00
da3c9eae6e Finish v1.33.06(377) 2023-05-11 15:03:33 +02:00
bf37a1acaf -> v1.33.06 (377) 2023-05-11 15:03:25 +02:00
2a8974e9c6 corretti nomi setup da oridne a ordine 2023-05-11 15:02:25 +02:00
c34d7dc777 Finish v1.33.05(376) 2023-05-10 12:27:34 +02:00
461a2f705e Finish v1.33.05(376) 2023-05-10 12:27:34 +02:00
705dd96a0e -> v1.33.05 (376) 2023-05-10 12:27:28 +02:00
10128a1bae Merge remote-tracking branch 'origin/develop' into develop 2023-05-10 12:25:28 +02:00
54d40ca06e [CARELLI - Ordini acquisto]
- aggiunta setup per abilitare l'ordine multi griglia
[SAPORI VERI - Ordini acquisto]
- Il dialog di caricamento non sparisce alla chiusura del dialog di inserimento qta
- il calcolo della qtaTotale viene arrotondato troppo (5*0.30=1.51)
2023-05-10 12:25:19 +02:00
e4aa2d19d9 Finish v1.33.04(375) 2023-05-10 11:49:46 +02:00
6251c0f1ac Finish v1.33.04(375) 2023-05-10 11:49:46 +02:00
3caed63b7f -> v1.33.04 (375) 2023-05-10 11:49:34 +02:00
75bc046cf5 Merge remote-tracking branch 'origin/develop' into develop 2023-05-10 11:47:52 +02:00
97d27b047d Fix sulla porta TCP nel caso non fosse esplicita 2023-05-10 11:47:36 +02:00
44e00f4f98 Finish v1.33.03(374) 2023-05-04 13:11:34 +02:00
81b053ee06 Finish v1.33.03(374) 2023-05-04 13:11:33 +02:00
f1b5a7ec1b -> v1.33.03 (374) 2023-05-04 13:11:28 +02:00
2d4211d329 [SMETAR - Spedizione]
risolto bug nullPointer in picking da magazzino automatico di articolo senza giacenza
2023-05-04 13:09:09 +02:00
c5ba78eeda Finish v1.33.02(373) 2023-05-03 16:35:01 +02:00
1faaef7062 Finish v1.33.02(373) 2023-05-03 16:35:01 +02:00
762c5fd5b5 -> v1.33.02 (373) 2023-05-03 16:34:55 +02:00
9af5970ec7 [Carelli - Inventario]
risolto bug in aggiunta articolo
2023-05-03 16:33:49 +02:00
3a5836ba4b Finish v1.33.01(372) 2023-04-28 12:56:41 +02:00
72b0e29ae6 Finish v1.33.01(372) 2023-04-28 12:56:40 +02:00
e0cc802b62 -> v1.33.01 (372) 2023-04-28 12:56:32 +02:00
2d4d9cef4e Merge remote-tracking branch 'origin/develop' into develop 2023-04-28 12:55:49 +02:00
4a8a21b970 Fix su ricerca articoli per posizione in Picking Libero 2023-04-28 12:55:20 +02:00
5103a53c11 [CARELLI - ORDINI ACQUISTO]
Risolto bug quantità raddoppiate in primo inserimento articolo
2023-04-26 17:16:39 +02:00
11c4cba70c Finish v1.33.00(371) 2023-04-26 12:48:01 +02:00
b1dba20973 Finish v1.33.00(371) 2023-04-26 12:48:01 +02:00
920c22083b -> v1.33.00 (371) 2023-04-26 12:47:54 +02:00
f9230ac341 Implementata gestione device id 2023-04-26 12:47:14 +02:00
6344c4b77d Finish v1.32.30(370) 2023-04-18 15:33:45 +02:00
d4c111dedc Finish v1.32.30(370) 2023-04-18 15:33:45 +02:00
65dda1d5c0 -> v1.32.30 (370) 2023-04-18 15:33:19 +02:00
4a7406fda1 Controllate qta > 0 in caso di missione per magazzino automatico 2023-04-18 15:32:02 +02:00
ef17e7a0c7 Merge remote-tracking branch 'origin/develop' into develop 2023-04-18 15:31:29 +02:00
c45850555e Compiled with JDK17 2023-04-18 15:31:04 +02:00
303690eed2 Finish v1.32.29(369) 2023-04-13 19:12:39 +02:00
ae62b26edf Finish v1.32.29(369) 2023-04-13 19:12:38 +02:00
2e39754c20 -> v1.32.29 (369) 2023-04-13 19:12:29 +02:00
0ae6bbcd96 CARELLI - aggiunto dettaglio griglie in ordini acquisto
CARELLI - impostata qta default in inserimento qta da ordinare ad 1 ct in ordini di acquisto
CARELLI - aggiunto flag stampa in chiusura ul spedizione
2023-04-13 19:11:43 +02:00
529455931d Finish v1.32.28(368) 2023-04-04 10:37:00 +02:00
46d0510ed8 Finish v1.32.28(368) 2023-04-04 10:36:59 +02:00
b02e12d76e -> v1.32.28 (368) 2023-04-04 10:36:46 +02:00
c6bbde2b67 Implementato in Rettifica Giacenze il controllo della setup che determina la creazione dei documenti in Spedizione 2023-04-04 10:35:57 +02:00
cfbb27a67b Abilitato controllo del num_cnf solo se l'articolo non è a qta_cnf fissa 2023-04-03 18:03:23 +02:00
35283fc11b Finish v1.32.27(367) 2023-04-03 14:15:58 +02:00
c3d62f88b4 Finish v1.32.27(367) 2023-04-03 14:15:58 +02:00
fc8469bf07 -> v1.32.27 (367) 2023-04-03 14:15:52 +02:00
400f1440db Completata gestione delle unità di misura in colli nel popup informativo 2023-04-03 14:09:31 +02:00
ad12e7e65b Finish v1.32.26(366) 2023-04-03 10:20:33 +02:00
a63e3817b5 Finish v1.32.26(366) 2023-04-03 10:20:33 +02:00
cbd772bf7e -> v1.32.26 (366) 2023-04-03 10:20:27 +02:00
e90bd46a42 Implementata gestione delle qta in arrivo durante la preparazione della merce in spedizione. Sistemata gestione popup informativo in spedizione. 2023-04-03 10:19:56 +02:00
96bd5d516c Aggiunta qta in arrivo nella retrieve della situazione ordini 2023-03-31 09:38:56 +02:00
d9306e13c2 Finish v1.32.25(365) 2023-03-30 09:47:37 +02:00
fc80baeaee Finish v1.32.25(365) 2023-03-30 09:47:36 +02:00
c0b49b68f7 -> v1.32.25 (365) 2023-03-30 09:47:26 +02:00
73242bc208 Merge remote-tracking branch 'origin/develop' into develop 2023-03-30 09:44:48 +02:00
d4b60a51bd [Carelli - Ordini acquisto]
corretto bug modifica articolo non in listino
2023-03-30 09:44:39 +02:00
1bc687c79a Finish v1.32.24(364) 2023-03-29 19:29:16 +02:00
3a6b0949d4 Finish v1.32.24(364) 2023-03-29 19:29:15 +02:00
bfc03a4ef9 -> v1.32.24 (364) 2023-03-29 19:29:07 +02:00
4dfa796790 Fix su delete degli inventari già scaricati ed eliminati lato server 2023-03-29 19:28:33 +02:00
f0db805c84 Implementato numero di cifre decimali in spedizione 2023-03-29 17:32:44 +02:00
0cc742e103 Finish v1.32.23(363) 2023-03-29 16:47:02 +02:00
d01319c417 Finish v1.32.23(363) 2023-03-29 16:47:02 +02:00
c0b9496041 -> v1.32.23 (363) 2023-03-29 16:46:56 +02:00
d4e7832f80 Fix su ordinamento per data_scan in dialog di situazione articolo 2023-03-29 16:46:25 +02:00
cb4f9e68f5 Finish v1.32.22(362) 2023-03-29 13:48:54 +02:00
ac4a5b1d34 Finish v1.32.22(362) 2023-03-29 13:48:54 +02:00
39ebc9d367 -> v1.32.22 (362) 2023-03-29 13:48:48 +02:00
7ef0299282 Implementato popup che chiede se modificare o aggiungere una riga nel caso di articolo già inventariato 2023-03-29 13:48:22 +02:00
6a998d6605 Refactoring UI pannello di informazioni lista documenti interni 2023-03-29 12:54:36 +02:00
9eb4b0a621 Finish v1.32.21(361) 2023-03-29 11:15:21 +02:00
f55080f7ca Finish v1.32.21(361) 2023-03-29 11:15:20 +02:00
7fb6109e18 -> v1.32.21 (361) 2023-03-29 11:15:13 +02:00
f419944699 Refactoring UI pannello di informazioni documento interno caricato 2023-03-29 11:14:41 +02:00
8de54a504b Corrette logiche di ricerca cod_mart / barcode nei documenti interni 2023-03-29 10:49:39 +02:00
6f2be2b459 Rimossi mutable live data sulle variabili interne della gestione Documenti Interni 2023-03-29 10:19:56 +02:00
fa413aba25 Merge remote-tracking branch 'origin/develop' into develop 2023-03-28 19:29:59 +02:00
ab6eeb91a6 [Documenti interni]
gestito annullamento selezione righe da modificare
2023-03-28 19:29:52 +02:00
16cbe01157 Merge remote-tracking branch 'origin/develop' into develop 2023-03-28 19:21:42 +02:00
16cb685bb3 Ordinate le righe documento in descending in editazione di un documento interno.
Implementato dialog custom per gli articoli disponibili all'inventario / documenti interni con la possibilità di specificare se l'articolo è stato già aggiunto.
2023-03-28 19:20:44 +02:00
28501c5509 [CARELLI - Ordini Acquisto]
Gestita selezione articolo se il barcode letto restituisce molteplici articoli
2023-03-28 19:17:08 +02:00
79c4bdad48 Aggiunta causale nella lista degli inventari 2023-03-28 16:24:03 +02:00
68007ebc8e Utilitzzati i live data nella lista dei documenti caricati da sqlite 2023-03-28 16:14:36 +02:00
c5eec26f8d Merge remote-tracking branch 'origin/develop' into develop 2023-03-28 13:23:08 +02:00
5c3f8d8717 [CARELLI - Ordini Acquisto]
risolto problema barcode disabilitato dopo selezione articolo
2023-03-28 13:23:02 +02:00
43aa0f0324 Merge remote-tracking branch 'origin/develop' into develop 2023-03-28 12:19:50 +02:00
4ab7bf27d7 Refactoring DialogSelectDocRows 2023-03-28 12:19:42 +02:00
28f4ac4414 [CARELLI - Ordini Acquisto]
Corretto controllo su ordini chiusi a fine validità lisitno
2023-03-28 12:11:14 +02:00
60414c949e Merge remote-tracking branch 'origin/develop' into develop 2023-03-27 11:45:33 +02:00
ff09147968 [CARELLI - Ordini Acquisto]
Aggiunto controllo modifica ed esportazione ordini con listino non valido
2023-03-27 11:44:20 +02:00
17e66af99a Finish v1.32.20(360) 2023-03-27 11:41:30 +02:00
762ab2719d Finish v1.32.20(360) 2023-03-27 11:41:30 +02:00
95f282cd4d -> v1.32.20 (360) 2023-03-27 11:41:23 +02:00
029979c463 Fix su cancelable del dialogProgress 2023-03-27 11:40:32 +02:00
e748161dda Finish v1.32.19(359) 2023-03-24 19:14:03 +01:00
c2c2a1f984 Finish v1.32.19(359) 2023-03-24 19:14:02 +01:00
fd13f2f1b4 -> v1.32.19 (359) 2023-03-24 19:13:57 +01:00
ac6cca1eda [ESSEGRANDE] Modifiche per data_scad e inventari con righe a 0 2023-03-24 19:12:59 +01:00
dc46b36624 Finish v1.32.18(358) 2023-03-24 11:34:36 +01:00
42aa655021 Finish v1.32.18(358) 2023-03-24 11:34:35 +01:00
b89085a9c3 -> v1.32.18 (358) 2023-03-24 11:34:29 +01:00
557644f024 Fix su data consegna nulla in magazzino automatico request 2023-03-24 11:32:57 +01:00
258ed9d7ca Finish v1.32.17(357) 2023-03-23 19:41:26 +01:00
be7d3775cc Finish v1.32.17(357) 2023-03-23 19:41:25 +01:00
93ffb191b5 -> v1.32.17 (357) 2023-03-23 19:41:19 +01:00
8eb58a4d64 Fix su IdGriglia nullable in Entity Ordine 2023-03-23 19:40:50 +01:00
4bc8374ea3 Finish v1.32.16(356) 2023-03-23 18:50:42 +01:00
f76295c3f6 Finish v1.32.16(356) 2023-03-23 18:50:42 +01:00
b8486b677f -> v1.32.16 (356) 2023-03-23 18:50:32 +01:00
1ad2d9ca9b Fix su migration DB non implementata.
Fix on start dei docInterni.
2023-03-23 18:49:47 +01:00
a57eadeab3 Finish v1.32.15(355) 2023-03-23 10:31:46 +01:00
1c34b120db Finish v1.32.15(355) 2023-03-23 10:31:46 +01:00
c6c19ca04b -> v1.32.15 (355) 2023-03-23 10:31:40 +01:00
987d667350 Merge remote-tracking branch 'origin/develop' into develop 2023-03-23 10:31:06 +01:00
e704bd1597 Implementata pulizia dei file di log.
Forzata chiusura app in caso di uncaught exception.
2023-03-23 10:30:52 +01:00
0f08d704ac [CARELLI - Ordini Acquisto]
aggiunto controllo su ctMaxOrd
migrazione a nuovo servizio
2023-03-22 16:58:02 +01:00
d3c518b7df Finish v1.32.14(354) 2023-03-20 10:51:57 +01:00
341 changed files with 15031 additions and 3647 deletions

2
.idea/kotlinc.xml generated
View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="KotlinJpsPluginSettings">
<option name="version" value="1.8.0" />
<option name="version" value="1.9.0" />
</component>
</project>

10
.idea/migrations.xml generated Normal file
View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectMigrations">
<option name="MigrateToGradleLocalJavaHome">
<set>
<option value="$PROJECT_DIR$" />
</set>
</option>
</component>
</project>

View File

@@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services'
android {
def appVersionCode = 354
def appVersionName = '1.32.14'
def appVersionCode = 391
def appVersionName = '1.35.00'
signingConfigs {
release {
@@ -31,8 +31,6 @@ android {
}
}
compileSdkVersion 33
defaultConfig {
applicationId "it.integry.integrywmsnative"
minSdkVersion 21
@@ -65,8 +63,8 @@ android {
android.buildFeatures.buildConfig true
compileOptions {
sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
coreLibraryDesugaringEnabled true
}
@@ -90,12 +88,11 @@ android {
abortOnError false
}
namespace 'it.integry.integrywmsnative'
compileSdk 33
}
dependencies {
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.2'
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.3'
implementation fileTree(include: ['*.jar'], dir: 'libs')
androidTestImplementation('androidx.test.espresso:espresso-core:3.3.0', {
exclude group: 'com.android.support', module: 'support-annotations'
@@ -111,32 +108,32 @@ dependencies {
implementation 'com.google.firebase:firebase-core'
implementation 'com.google.firebase:firebase-crashlytics'
implementation 'com.google.firebase:firebase-perf'
implementation 'com.google.android.gms:play-services-basement:18.1.0'
implementation 'com.google.android.gms:play-services-basement:18.2.0'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'com.google.android.material:material:1.8.0'
implementation 'com.google.android.material:material:1.9.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'androidx.recyclerview:recyclerview:1.2.1'
implementation 'androidx.recyclerview:recyclerview:1.3.1'
implementation('androidx.preference:preference-ktx:1.2.0') {
implementation('androidx.preference:preference-ktx:1.2.1') {
exclude group: 'androidx.lifecycle', module: 'lifecycle-viewmodel'
exclude group: 'androidx.lifecycle', module: 'lifecycle-viewmodel-ktx'
}
implementation "androidx.slidingpanelayout:slidingpanelayout:1.2.0"
implementation 'com.squareup.okhttp3:okhttp:4.9.1'
implementation 'com.squareup.okhttp3:okhttp:4.10.0'
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation 'com.annimon:stream:1.2.2'
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.1'
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.6.2'
// implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
implementation 'org.apache.commons:commons-text:1.9'
//MVVM
def dagger2_version = '2.40.1'
def dagger2_version = '2.46.1'
api "com.google.dagger:dagger:$dagger2_version"
annotationProcessor "com.google.dagger:dagger-compiler:$dagger2_version"
api "com.google.dagger:dagger-android:$dagger2_version"
@@ -155,12 +152,11 @@ dependencies {
implementation 'com.github.pedromassango:doubleClick:3.0'
//SQLite ROOM
def room_version = "2.5.0"
def room_version = "2.5.2"
implementation "androidx.room:room-runtime:$room_version"
annotationProcessor "androidx.room:room-compiler:$room_version"
implementation "androidx.room:room-rxjava3:$room_version"
androidTestImplementation "androidx.room:room-testing:2.5.0"
//AppUpdate
implementation 'com.github.javiersantos:AppUpdater:2.7'

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -71,7 +71,7 @@
android:theme="@style/Light"
android:configChanges="orientation|screenSize|keyboardHidden" />
<activity
android:name=".gest.accettazione_picking.AccettazionePickingActivity"
android:name=".gest.accettazione_ordini_picking.AccettazioneOrdiniPickingActivity"
android:theme="@style/Light"
android:windowSoftInputMode="adjustNothing"
android:configChanges="orientation|screenSize|keyboardHidden" />
@@ -108,6 +108,11 @@
</intent-filter>
</activity>
<activity
android:name=".gest.accettazione_bolla_picking.AccettazioneBollaPickingActivity"
android:screenOrientation="portrait"
android:theme="@style/Light" />
<provider
android:name=".core.update.GenericFileProvider"
android:authorities="${applicationId}.core.update.GenericFileProvider"

View File

@@ -70,19 +70,19 @@ public class MainApplication extends Application {
// handler listener
private Thread.UncaughtExceptionHandler _unCaughtExceptionHandler =
private final Thread.UncaughtExceptionHandler _unCaughtExceptionHandler =
new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread thread, Throwable ex) {
try {
UtilityLogger.error(new Exception(ex));
} catch (Exception e) {
Log.e("Uncaught error", "Exception Logger failed!", e);
//MainApplication.exit();
}
// re-throw critical exception further to the os (important)
defaultUncaughtExceptionHandler.uncaughtException(thread, ex);
try {
UtilityLogger.error(new Exception(ex));
MainApplication.exit();
} catch (Exception e) {
Log.e("Uncaught error", "Exception Logger failed!", e);
}
}
};

View File

@@ -11,10 +11,14 @@ import it.integry.integrywmsnative.core.expansion.BaseDialogFragmentComponent;
import it.integry.integrywmsnative.core.expansion.BaseDialogFragmentModule;
import it.integry.integrywmsnative.core.expansion.BaseFragmentComponent;
import it.integry.integrywmsnative.core.expansion.BaseFragmentModule;
import it.integry.integrywmsnative.gest.accettazione.MainAccettazioneComponent;
import it.integry.integrywmsnative.gest.accettazione.MainAccettazioneModule;
import it.integry.integrywmsnative.gest.accettazione_picking.AccettazionePickingComponent;
import it.integry.integrywmsnative.gest.accettazione_picking.AccettazionePickingModule;
import it.integry.integrywmsnative.gest.accettazione_bolla_elenco.MainAccettazioneBollaElencoComponent;
import it.integry.integrywmsnative.gest.accettazione_bolla_elenco.MainAccettazioneBollaElencoModule;
import it.integry.integrywmsnative.gest.accettazione_bolla_picking.AccettazioneBollaPickingComponent;
import it.integry.integrywmsnative.gest.accettazione_bolla_picking.AccettazioneBollaPickingModule;
import it.integry.integrywmsnative.gest.accettazione_ordini_elenco.MainAccettazioneOrdiniElencoComponent;
import it.integry.integrywmsnative.gest.accettazione_ordini_elenco.MainAccettazioneOrdiniElencoModule;
import it.integry.integrywmsnative.gest.accettazione_ordini_picking.AccettazioneOrdiniPickingComponent;
import it.integry.integrywmsnative.gest.accettazione_ordini_picking.AccettazioneOrdiniPickingModule;
import it.integry.integrywmsnative.gest.contab_doc_interni.DocInterniComponent;
import it.integry.integrywmsnative.gest.contab_doc_interni.DocInterniModule;
import it.integry.integrywmsnative.gest.contab_doc_interni.dialog.DialogSelectDocInfoComponent;
@@ -67,8 +71,10 @@ import it.integry.integrywmsnative.gest.prod_versamento_materiale.ProdVersamento
import it.integry.integrywmsnative.gest.prod_versamento_materiale.ProdVersamentoMaterialeModule;
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.PVOrdineAcquistoEditComponent;
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.PVOrdineAcquistoEditModule;
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dialog.DialogEditArticoloComponent;
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dialog.DialogEditArticoloModule;
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dialog.edit_articolo.DialogEditArticoloComponent;
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dialog.edit_articolo.DialogEditArticoloModule;
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dialog.selectArtFromList.DialogSelectArtToOrderComponent;
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dialog.selectArtFromList.DialogSelectArtToOrderModule;
import it.integry.integrywmsnative.gest.pv_ordini_acquisto.PVOrdiniAcquistoGrigliaComponent;
import it.integry.integrywmsnative.gest.pv_ordini_acquisto.PVOrdiniAcquistoGrigliaModule;
import it.integry.integrywmsnative.gest.pv_ordini_acquisto.dialogs.DialogScanGrigliaAcquistoComponent;
@@ -96,6 +102,10 @@ import it.integry.integrywmsnative.view.bottom_sheet__mtb_colr_edit.BottomSheetM
import it.integry.integrywmsnative.view.bottom_sheet__mtb_colr_edit.BottomSheetMtbColrEditModalModule;
import it.integry.integrywmsnative.view.dialogs.ask_cliente.DialogAskClienteComponent;
import it.integry.integrywmsnative.view.dialogs.ask_cliente.DialogAskClienteModule;
import it.integry.integrywmsnative.view.dialogs.ask_unknown_barcode_notes.DialogAskUnknownBarcodeNotesComponent;
import it.integry.integrywmsnative.view.dialogs.ask_unknown_barcode_notes.DialogAskUnknownBarcodeNotesModule;
import it.integry.integrywmsnative.view.dialogs.bind_product_barcode_with_package.DialogBindProductBarcodeWithPackageComponent;
import it.integry.integrywmsnative.view.dialogs.bind_product_barcode_with_package.DialogBindProductBarcodeWithPackageModule;
import it.integry.integrywmsnative.view.dialogs.choose_arts_from_lista_arts.DialogChooseArtsFromMtbAartListComponent;
import it.integry.integrywmsnative.view.dialogs.choose_arts_from_lista_arts.DialogChooseArtsFromMtbAartListModule;
import it.integry.integrywmsnative.view.dialogs.choose_arts_from_mtbcolr_list.DialogChooseArtsFromMtbColrListComponent;
@@ -128,7 +138,7 @@ import it.integry.integrywmsnative.view.dialogs.scan_or_create_lu.DialogScanOrCr
LoginModule.class,
MainActivityModule.class,
MainFragmentModule.class,
MainAccettazioneModule.class,
MainAccettazioneOrdiniElencoModule.class,
ListaBancaliModule.class,
ContenutoBancaleModule.class,
PVOrdiniAcquistoGrigliaModule.class,
@@ -137,7 +147,7 @@ import it.integry.integrywmsnative.view.dialogs.scan_or_create_lu.DialogScanOrCr
RettificaGiacenzeModule.class,
ElencoInventariModule.class,
SpedizioneModule.class,
AccettazionePickingModule.class,
AccettazioneOrdiniPickingModule.class,
UltimeConsegneClienteModule.class,
UltimiArriviFornitoreModule.class,
PickingResiModule.class,
@@ -174,7 +184,12 @@ import it.integry.integrywmsnative.view.dialogs.scan_or_create_lu.DialogScanOrCr
BottomSheetMtbColrEditModalModule.class,
DialogChooseArtsFromMtbAartListModule.class,
MainSettingsModule.class,
DialogInfoSituazioneArticoloModule.class
DialogInfoSituazioneArticoloModule.class,
DialogSelectArtToOrderModule.class,
MainAccettazioneBollaElencoModule.class,
AccettazioneBollaPickingModule.class,
DialogBindProductBarcodeWithPackageModule.class,
DialogAskUnknownBarcodeNotesModule.class
})
public interface MainApplicationComponent {
@@ -192,7 +207,7 @@ public interface MainApplicationComponent {
MainFragmentComponent.Factory mainFragmentComponent();
MainAccettazioneComponent.Factory mainAccettazioneComponent();
MainAccettazioneOrdiniElencoComponent.Factory mainAccettazioneOrdiniComponent();
ListaBancaliComponent.Factory listaBancaliComponent();
@@ -210,7 +225,7 @@ public interface MainApplicationComponent {
SpedizioneComponent.Factory spedizioneComponent();
AccettazionePickingComponent.Factory accettazionePickingComponent();
AccettazioneOrdiniPickingComponent.Factory accettazionePickingComponent();
UltimeConsegneClienteComponent.Factory ultimeConsegneClienteComponent();
@@ -258,8 +273,6 @@ public interface MainApplicationComponent {
DialogSelectDocInfoComponent.Factory dialogSelectDocInfoNewViewComponent();
DialogSelectDocRowsComponent.Factory dialogSelectDocRowsComponent();
DocInterniEditFormComponent.Factory docInterniEditFormComponent();
InfoAggiuntiveLUDialogComponent.Factory infoAggiuntiveLUDialogComponent();
@@ -294,6 +307,17 @@ public interface MainApplicationComponent {
DialogInfoSituazioneArticoloComponent.Factory dialogInfoSituazioneArticoloComponent();
DialogSelectDocRowsComponent.Factory dialogSelectDocRowsNewComponent();
DialogSelectArtToOrderComponent.Factory dialogSelectArtToOrderNewComponent();
MainAccettazioneBollaElencoComponent.Factory mainAccettazioneBollaElencoComponent();
AccettazioneBollaPickingComponent.Factory accettazioneBollaPickingComponent();
DialogBindProductBarcodeWithPackageComponent.Factory dialogBindProductBarcodeWithPackageComponent();
DialogAskUnknownBarcodeNotesComponent.Factory dialogAskUnknownBarcodeNotesComponent();
void inject(MainApplication mainApplication);
void inject(AppContext mainApplication);

View File

@@ -2,7 +2,6 @@ package it.integry.integrywmsnative;
import android.app.Application;
import android.os.Handler;
import android.os.Looper;
import androidx.core.os.HandlerCompat;
@@ -22,6 +21,7 @@ import it.integry.integrywmsnative.core.menu.MenuService;
import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.AziendaRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.ColliAccettazioneRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.ColliLavorazioneRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.ColliSpedizioneRESTConsumer;
@@ -72,7 +72,7 @@ public class MainApplicationModule {
@Provides
@Singleton
public Handler providesMainThreadHandler() {
return HandlerCompat.createAsync(Looper.getMainLooper());
return HandlerCompat.createAsync(mApplication.getApplicationContext().getMainLooper());
}
@Provides
@@ -89,8 +89,8 @@ public class MainApplicationModule {
@Provides
@Singleton
MainContext providesMainContextNew(MenuService menuService, AppDatabase appDatabase) {
return new MainContext(mApplication.getApplicationContext(), menuService, appDatabase);
MainContext providesMainContextNew(MenuService menuService, AppDatabase appDatabase, SystemRESTConsumer systemRESTConsumer) {
return new MainContext(mApplication.getApplicationContext(), menuService, appDatabase, systemRESTConsumer);
}
@Provides
@@ -257,6 +257,12 @@ public class MainApplicationModule {
return new DocumentRESTConsumer();
}
@Provides
@Singleton
ColliAccettazioneRESTConsumer provideColliAccettazioneRESTConsumer() {
return new ColliAccettazioneRESTConsumer();
}
@Provides
@Singleton
ColliSpedizioneRESTConsumer provideColliSpedizioneRESTConsumer() {

View File

@@ -2,7 +2,8 @@ package it.integry.integrywmsnative.core.class_router.configs;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
import it.integry.integrywmsnative.gest.accettazione.MainAccettazioneFragment;
import it.integry.integrywmsnative.gest.accettazione_ordini_elenco.MainAccettazioneOrdiniElencoFragment;
import it.integry.integrywmsnative.gest.accettazione_bolla_elenco.MainAccettazioneBollaElencoFragment;
import it.integry.integrywmsnative.gest.contab_doc_interni.DocInterniFragment;
import it.integry.integrywmsnative.gest.inventario.ElencoInventariFragment;
import it.integry.integrywmsnative.gest.ordini_uscita_elenco.OrdiniUscitaElencoFragment;
@@ -35,10 +36,18 @@ public class MenuConfiguration extends BaseMenuConfiguration {
.addItem(new MenuItem()
.setID(R.id.nav_accettazione)
.setCodMenu("MG044")
.setTitleText(R.string.accettazione_title_fragment)
.setTitleIcon(R.drawable.ic_dashboard_accettazione)
.setTitleText(R.string.accettazione_ordine_title_fragment)
.setTitleIcon(R.drawable.ic_dashboard_accettazione_ordini)
.setDrawerIcon(R.drawable.ic_black_download)
.setFragmentFactory(MainAccettazioneFragment::newInstance))
.setFragmentFactory(MainAccettazioneOrdiniElencoFragment::newInstance))
.addItem(new MenuItem()
.setID(R.id.nav_accettazione_bolle)
.setCodMenu("MG065")
.setTitleText(R.string.accettazione_bolle_title_fragment)
.setTitleIcon(R.drawable.ic_dashboard_accettazione_bolle)
.setDrawerIcon(R.drawable.ic_black_download)
.setFragmentFactory(MainAccettazioneBollaElencoFragment::newInstance))
.addItem(new MenuItem()
.setID(R.id.nav_resi_fornitore)
@@ -201,7 +210,7 @@ public class MenuConfiguration extends BaseMenuConfiguration {
.setID(it.integry.integrywmsnative.R.id.nav_pv_doc_interni)
.setTitleText(it.integry.integrywmsnative.R.string.doc_interni)
.setTitleIcon(R.drawable.ic_dashboard_contab_doc_interni)
.setDrawerIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_contab_doc_interni)
.setDrawerIcon(R.drawable.ic_documents_outline)
.setFragmentFactory(DocInterniFragment::newInstance))
// .addItem(new MenuItem()

View File

@@ -2,6 +2,7 @@ package it.integry.integrywmsnative.core.context;
import android.content.Context;
import com.annimon.stream.Stream;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import com.orhanobut.logger.AndroidLogAdapter;
import com.orhanobut.logger.DiskLogAdapter;
@@ -91,6 +92,32 @@ public class AppContext {
logsFolder = new File(mApplicationContext.getExternalFilesDir(null).getAbsolutePath());
int maxBytesSize = 5 * 1024 * 1024;
Logger.addLogAdapter(new DiskLogAdapter(logsFolder, maxBytesSize));
removeOldLogs(logsFolder);
}
private void removeOldLogs(File logsFolder) {
var files = logsFolder.listFiles();
if (files == null || files.length <= 1)
return;
var logFiles = Stream.of(files)
.sortBy(x -> -1 * x.lastModified())
.skip(1)
.toList();
for (var logFile : logFiles) {
boolean isDeleted = logFile.delete();
}
files = logsFolder.listFiles();
if (files == null || files.length > 1)
return;
final boolean isRenamed = files[0].renameTo(new File(files[0].getParentFile().getAbsolutePath() + "/" + "logs_0.csv"));
}
}

View File

@@ -6,6 +6,8 @@ import android.text.SpannableString;
import android.text.Spanned;
import android.text.SpannedString;
import com.google.firebase.installations.FirebaseInstallations;
import java.net.ConnectException;
import javax.inject.Singleton;
@@ -13,6 +15,7 @@ import javax.inject.Singleton;
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
import it.integry.integrywmsnative.core.data_store.db.AppDatabase;
import it.integry.integrywmsnative.core.menu.MenuService;
import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer;
import it.integry.integrywmsnative.core.rest.watcher.ServerStatusChecker;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.core.utility.UtilityThread;
@@ -23,13 +26,15 @@ public class MainContext {
private final Context applicationContext;
private final MenuService menuService;
private final AppDatabase appDatabase;
private final SystemRESTConsumer systemRESTConsumer;
private Listener mListener;
public MainContext(Context applicationContext, MenuService menuService, AppDatabase appDatabase) {
public MainContext(Context applicationContext, MenuService menuService, AppDatabase appDatabase, SystemRESTConsumer systemRESTConsumer) {
this.applicationContext = applicationContext;
this.menuService = menuService;
this.appDatabase = appDatabase;
this.systemRESTConsumer = systemRESTConsumer;
}
public void init() {
@@ -40,10 +45,13 @@ public class MainContext {
exception.printStackTrace();
}
this.initDBData(() -> {
this.initMenu(() -> {
if (mListener != null) mListener.onContextInitialized();
this.initDeviceId(() -> {
this.initDBData(() -> {
this.initMenu(() -> {
if (mListener != null) mListener.onContextInitialized();
});
});
});
@@ -52,6 +60,25 @@ public class MainContext {
}
private void initDeviceId(Runnable onComplete) {
if (SettingsManager.i().getUserSession().getDeviceId() != null) {
onComplete.run();
return;
}
FirebaseInstallations.getInstance().getId().addOnCompleteListener(fid -> {
SettingsManager.i().getUserSession().setDeviceId(fid.getResult());
SettingsManager.update();
systemRESTConsumer.registerDevice(onComplete, ex -> {
if (mListener != null) mListener.onError(new SpannedString(ex.getMessage()));
});
});
}
public void logout(Runnable onLoggedOut) {
menuService.invalidateCache();
UtilityThread.executeParallel(() -> {

View File

@@ -39,6 +39,9 @@ public class ColliDataRecoverService {
if(isFilePresent(CommonConst.Files.RECOVER_COLLO_FILE)) {
loadLocalFile();
}
if(mtbColtsSessions == null)
mtbColtsSessions = new ArrayList<>();
}
public boolean thereIsAnExistantSession() {
@@ -47,7 +50,6 @@ public class ColliDataRecoverService {
public List<Integer> getAllSessionIDs() {
if(thereIsAnExistantSession()) {
return Stream.of(mtbColtsSessions)
.map(ColliDataRecoverDTO::getId)
.toList();
@@ -56,7 +58,6 @@ public class ColliDataRecoverService {
}
public ColliDataRecoverDTO getSession(Integer sessionID) {
if(sessionID == null) return null;
return getIfExists(sessionID);

View File

@@ -21,6 +21,7 @@ import it.integry.integrywmsnative.core.data_store.db.dao.InventarioRowDao;
import it.integry.integrywmsnative.core.data_store.db.dao.MtbColrDao;
import it.integry.integrywmsnative.core.data_store.db.dao.MtbColtDao;
import it.integry.integrywmsnative.core.data_store.db.dao.OrdineDao;
import it.integry.integrywmsnative.core.data_store.db.dao.RawDao;
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloGriglia;
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine;
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
@@ -40,8 +41,7 @@ import it.integry.integrywmsnative.core.data_store.db.entity.SqlMtbColt;
InventarioRoomDTO.class,
InventarioRowRoomDTO.class
},
version = 14,
exportSchema = true)
version = 17)
@TypeConverters({
DateConverter.class,
BigDecimalConverter.class,
@@ -67,13 +67,18 @@ public abstract class AppDatabase extends RoomDatabase {
.addMigrations(MIGRATION_10_11)
.addMigrations(MIGRATION_11_12)
.addMigrations(MIGRATION_12_13)
.addMigrations(MIGRATION_13_14);
.addMigrations(MIGRATION_13_14)
.addMigrations(MIGRATION_14_15)
.addMigrations(MIGRATION_15_16)
.addMigrations(MIGRATION_16_17);
sInstance = builder.build();
}
return sInstance;
}
public abstract RawDao rawDao();
public abstract ArticoloGrigliaDao articoloGrigliaDao();
public abstract GrigliaDao grigliaDao();
@@ -91,6 +96,7 @@ public abstract class AppDatabase extends RoomDatabase {
public abstract InventarioRowDao inventarioRowDao();
static final Migration MIGRATION_10_11 = new Migration(10, 11) {
@Override
public void migrate(SupportSQLiteDatabase database) {
@@ -135,4 +141,45 @@ public abstract class AppDatabase extends RoomDatabase {
+ " ADD COLUMN new INTEGER");
}
};
static final Migration MIGRATION_14_15 = new Migration(14, 15) {
@Override
public void migrate(@NonNull SupportSQLiteDatabase database) {
// rimuovo vincoli "not null" dai campi id_griglia e cod_alis
database.execSQL("DROP TABLE IF EXISTS ordini_tmp;");
database.execSQL("CREATE TABLE ordini_tmp (ordine_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, data_ins INTEGER, annotazioni TEXT, transmitted INTEGER NOT NULL, transmission_date INTEGER, gestione TEXT, data_ord INTEGER, num_ord INTEGER, cod_mdep TEXT, id_griglia INTEGER, cod_alis TEXT);");
database.execSQL("INSERT INTO ordini_tmp(ordine_id,data_ins,annotazioni,transmitted,transmission_date,gestione,data_ord,num_ord,cod_mdep,id_griglia,cod_alis) SELECT ordini.ordine_id,ordini.data_ins,ordini.annotazioni,ordini.transmitted,ordini.transmission_date,ordini.gestione,ordini.data_ord,ordini.num_ord,ordini.cod_mdep,ordini.id_griglia,griglie.cod_alis from ordini left outer join griglie on ordini.id_griglia = griglie.griglia_id;");
database.execSQL("DROP TABLE ordini;");
database.execSQL("ALTER TABLE ordini_tmp RENAME TO ordini;");
// aggiungo campo cod_alis sulle righe dell'ordine
database.execSQL("DROP TABLE IF EXISTS art_ord_tmp;");
database.execSQL("CREATE TABLE IF NOT EXISTS art_ord_tmp( articolo_ordine_id INTEGER PRIMARY KEY AUTOINCREMENT, cod_mart TEXT, descrizione TEXT, unt_mis TEXT, qta_cnf REAL NOT NULL, bar_code TEXT, merce_da_ric REAL NOT NULL, media_sett REAL NOT NULL, flag_qta_multipla TEXT, qta_min_ordinabile REAL NOT NULL, id_ordine INTEGER NOT NULL, qta_ord REAL NOT NULL, data_ins INTEGER, new_no_promo INTEGER NOT NULL, system_note TEXT, cod_alis TEXT , FOREIGN KEY(id_ordine) REFERENCES ordini(ordine_id) ON UPDATE NO ACTION ON DELETE CASCADE );");
database.execSQL("INSERT INTO art_ord_tmp(articolo_ordine_id, cod_mart, descrizione, unt_mis, qta_cnf, bar_code, merce_da_ric, media_sett, flag_qta_multipla, qta_min_ordinabile, id_ordine, qta_ord, data_ins, new_no_promo, system_note, cod_alis) SELECT articolo_ordine_id, cod_mart, descrizione, unt_mis, qta_cnf, bar_code, merce_da_ric, media_sett, flag_qta_multipla, qta_min_ordinabile, id_ordine, qta_ord, data_ins, new_no_promo, system_note, null from articoli_ordine;");
database.execSQL("DROP TABLE articoli_ordine;");
database.execSQL("ALTER TABLE art_ord_tmp RENAME TO articoli_ordine;");
database.execSQL("CREATE INDEX IF NOT EXISTS index_articoli_ordine_id_ordine ON articoli_ordine (id_ordine);");
database.execSQL("CREATE UNIQUE INDEX IF NOT EXISTS index_articoli_ordine_id_ordine_cod_mart ON articoli_ordine (id_ordine, cod_mart);");
}
};
static final Migration MIGRATION_15_16 = new Migration(15, 16) {
@Override
public void migrate(@NonNull SupportSQLiteDatabase database) {
}
};
static final Migration MIGRATION_16_17 = new Migration(16, 17) {
@Override
public void migrate(@NonNull SupportSQLiteDatabase database) {
database.execSQL("ALTER TABLE inventario_rows RENAME TO _inventario_rows_old;");
database.execSQL("DROP INDEX index_inventario_rows__id;");
database.execSQL("DROP INDEX index_inventario_rows_parent_id;");
database.execSQL("CREATE TABLE inventario_rows (_id INTEGER PRIMARY KEY AUTOINCREMENT, parent_id INTEGER, cod_mart TEXT, partita_mag TEXT, descrizione TEXT, qta REAL NOT NULL DEFAULT 0, num_cnf REAL NOT NULL DEFAULT 0, qta_cnf REAL NOT NULL DEFAULT 0, unt_mis TEXT NOT NULL DEFAULT '0', data_ora_inv INTEGER, scan_cod_barre TEXT, zona TEXT, remote_sync_date INTEGER, FOREIGN KEY(parent_id) REFERENCES inventari(_id) ON UPDATE NO ACTION ON DELETE CASCADE);");
database.execSQL("INSERT INTO inventario_rows SELECT * FROM _inventario_rows_old;");
database.execSQL("CREATE INDEX index_inventario_rows__id ON inventario_rows (_id);");
database.execSQL("CREATE INDEX index_inventario_rows_parent_id ON inventario_rows (parent_id)");
database.execSQL("DROP TABLE _inventario_rows_old;");
}
};
}

View File

@@ -17,6 +17,7 @@ import it.integry.integrywmsnative.core.data_store.db.dao.InventarioRowDao;
import it.integry.integrywmsnative.core.data_store.db.dao.MtbColrDao;
import it.integry.integrywmsnative.core.data_store.db.dao.MtbColtDao;
import it.integry.integrywmsnative.core.data_store.db.dao.OrdineDao;
import it.integry.integrywmsnative.core.data_store.db.dao.RawDao;
import it.integry.integrywmsnative.core.data_store.db.repository.ArticoliOrdineRepository;
import it.integry.integrywmsnative.core.data_store.db.repository.ArticoloGrigliaRepository;
import it.integry.integrywmsnative.core.data_store.db.repository.GrigliaRepository;
@@ -53,7 +54,11 @@ public class RoomModule {
}
@Singleton
@Provides
RawDao providesRawDao(AppDatabase appDatabase) {
return appDatabase.rawDao();
}
@Singleton
@Provides
@@ -104,12 +109,6 @@ public class RoomModule {
}
@Singleton
@Provides
InventarioRowMapper providesInventarioRowMapper() {
@@ -123,62 +122,50 @@ public class RoomModule {
}
@Singleton
@Provides
InventarioLocalDataSource providesInventarioLocalDataSource(ExecutorService executorService, InventarioDao inventarioDao) {
return new InventarioLocalDataSource(executorService, inventarioDao);
}
@Singleton
@Provides
InventarioRowLocalDataSource providesInventarioRowLocalDataSource(ExecutorService executorService, InventarioRowDao inventarioRowDao) {
return new InventarioRowLocalDataSource(executorService, inventarioRowDao);
}
@Singleton
@Provides
ArticoloGrigliaRepository providesArticoloGrigliaRepository(ExecutorService executorService, Handler handler, ArticoloGrigliaDao articoloGrigliaDao) {
return new ArticoliGrigliaDataSource(executorService, handler, articoloGrigliaDao);
}
@Singleton
@Provides
ArticoliOrdineRepository providesArticoliOrdineRepository(ExecutorService executorService, Handler handler, ArticoloOrdineDao articoloOrdineDao) {
return new ArticoliOrdineDataSource(executorService, handler, articoloOrdineDao);
}
@Singleton
@Provides
GrigliaRepository providesGrigliaRepository(ExecutorService executorService, Handler handler, GrigliaDao grigliaDao) {
return new GrigliaDataSource(executorService, handler, grigliaDao);
}
@Singleton
@Provides
OrdineRepository providesOrdineRepository(ExecutorService executorService, Handler handler, OrdineDao ordineDao) {
return new OrdineDataSource(executorService, handler, ordineDao);
}
@Singleton
@Provides
MtbColtRepository providesMtbColtRepository(ExecutorService executorService, Handler handler, MtbColtDao mtbColtDao) {
return new SqlMtbColtDataSource(executorService, handler, mtbColtDao);
}
@Singleton
@Provides
MtbColrDataSource providesMtbColrRepository(ExecutorService executorService, Handler handler, MtbColrDao mtbColrDao) {
return new SqlMtbColrDataSource(executorService, handler, mtbColrDao);
}
@Singleton
@Provides
InventarioRepository providesInventarioRepository(ExecutorService executorService, Handler handler,
InventarioLocalDataSource inventarioLocalDataSource,
@@ -187,7 +174,6 @@ public class RoomModule {
return new InventarioRepository(inventarioLocalDataSource, inventarioRESTConsumer, inventarioMapper, handler, executorService);
}
@Singleton
@Provides
InventarioRowRepository providesInventarioRowRepository(ExecutorService executorService, Handler handler,
InventarioRowLocalDataSource inventarioRowLocalDataSource,

View File

@@ -24,6 +24,6 @@ public interface MtbColrDao {
@Delete
void delete(SqlMtbColr mtbColr);
@Query("SELECT * from mtb_colr where id_collo = :idDocument")
@Query("SELECT * FROM mtb_colr WHERE id_collo = :idDocument ORDER BY id DESC")
List<SqlMtbColr> getDocumentRows(long idDocument);
}

View File

@@ -1,5 +1,6 @@
package it.integry.integrywmsnative.core.data_store.db.dao;
import androidx.lifecycle.LiveData;
import androidx.room.Dao;
import androidx.room.Delete;
import androidx.room.Insert;
@@ -33,7 +34,7 @@ public interface MtbColtDao {
" AND ( mtb_colt.data_doc = :dataDoc OR (mtb_colt.data_doc is null and :dataDoc is null)) " +
" AND ( mtb_colt.num_doc = :numDoc OR (mtb_colt.num_doc is null and :numDoc is null)) " +
" and cod_dtip is null group by mtb_colt.id")
List<DocInternoWrapper> getLocalDocumentsByCodDtip(String codDtip, String codAnag, String codVdes, Date dataDoc, String numDoc);
LiveData<List<DocInternoWrapper>> getLocalDocumentsByCodDtip(String codDtip, String codAnag, String codVdes, Date dataDoc, String numDoc);
@Query("SELECT ifnull(MAX(num_collo),0) +1 as num_collo from mtb_colt")
Integer getNextNumCollo();

View File

@@ -19,7 +19,7 @@ public interface OrdineDao {
@Query("SELECT ordini.* from ordini where ordini.transmitted = 1")
List<Ordine> getAllTrasnmitted();
@Query("SELECT ordini.*, count(articolo_ordine_id) as countArticoli from ordini left join articoli_ordine ON ordini.ordine_id = articoli_ordine.id_ordine where ordini.transmitted = 0 and ordini.cod_alis = :codAlis group by ordini.ordine_id")
@Query("SELECT ordini.*, count(articolo_ordine_id) as countArticoli from ordini left join articoli_ordine ON ordini.ordine_id = articoli_ordine.id_ordine where ordini.transmitted = 0 and ((:codAlis is null and ordini.cod_alis is null) OR (ordini.cod_alis = :codAlis)) group by ordini.ordine_id")
List<OrdineWrapper> getAllOpenOrdersByGriglia(String codAlis);
@Insert

View File

@@ -0,0 +1,13 @@
package it.integry.integrywmsnative.core.data_store.db.dao;
import androidx.room.Dao;
import androidx.room.RawQuery;
import androidx.sqlite.db.SupportSQLiteQuery;
@Dao
public interface RawDao {
@RawQuery
int vacuumDb(SupportSQLiteQuery supportSQLiteQuery);
}

View File

@@ -73,6 +73,9 @@ public class ArticoloOrdine {
@ColumnInfo(name = "system_note")
private String systemNote;
@ColumnInfo(name = "cod_alis")
private String codAlis;
@Ignore
private int ggScadenza = 0;
@@ -85,9 +88,15 @@ public class ArticoloOrdine {
@Ignore
private BigDecimal qtaProposta = BigDecimal.ZERO;
@Ignore
private BigDecimal ctMaxOrd = BigDecimal.ZERO;
@Ignore
private int bgTint;
@Ignore
private boolean invalid = false;
public Integer getArticoloOrdineId() {
return articoloOrdineId;
@@ -230,15 +239,15 @@ public class ArticoloOrdine {
}
public BigDecimal getQtaCnfPrevistaVendita() {
return qtaPrevistaVendita.equals(BigDecimal.ZERO) ? BigDecimal.ZERO : qtaPrevistaVendita.divide(BigDecimal.valueOf(qtaCnf), 0, RoundingMode.CEILING);
return qtaPrevistaVendita == null || qtaPrevistaVendita.equals(BigDecimal.ZERO) ? BigDecimal.ZERO : qtaPrevistaVendita.divide(BigDecimal.valueOf(qtaCnf), 0, RoundingMode.CEILING);
}
public BigDecimal getQtaCnfProposta() {
return qtaProposta.equals(BigDecimal.ZERO) ? BigDecimal.ZERO : qtaProposta.divide(BigDecimal.valueOf(qtaCnf), 0, RoundingMode.CEILING);
return qtaProposta == null || qtaProposta.equals(BigDecimal.ZERO) ? BigDecimal.ZERO : qtaProposta.divide(BigDecimal.valueOf(qtaCnf), 0, RoundingMode.CEILING);
}
public BigDecimal getQtaCnfGiacenza() {
return giacenza.equals(BigDecimal.ZERO) ? BigDecimal.ZERO : giacenza.divide(BigDecimal.valueOf(qtaCnf), 0, RoundingMode.CEILING);
return giacenza == null || giacenza.equals(BigDecimal.ZERO) ? BigDecimal.ZERO : giacenza.divide(BigDecimal.valueOf(qtaCnf), 0, RoundingMode.CEILING);
}
public boolean isNewNoPromo() {
@@ -250,7 +259,7 @@ public class ArticoloOrdine {
}
public float getCnfDaRic() {
return qtaCnf > 0.f ? merceDaRic * qtaCnf : 0;
return qtaCnf > 0.f ? merceDaRic / qtaCnf : 0;
}
public int checkQtaProposta() {
@@ -277,4 +286,30 @@ public class ArticoloOrdine {
public void setSystemNote(String systemNote) {
this.systemNote = systemNote;
}
public String getCodAlis() {
return codAlis;
}
public void setCodAlis(String codAlis) {
this.codAlis = codAlis;
}
public BigDecimal getCtMaxOrd() {
return ctMaxOrd;
}
public ArticoloOrdine setCtMaxOrd(BigDecimal ctMaxOrd) {
this.ctMaxOrd = ctMaxOrd;
return this;
}
public boolean isInvalid() {
return invalid;
}
public ArticoloOrdine setInvalid(boolean invalid) {
this.invalid = invalid;
return this;
}
}

View File

@@ -17,7 +17,8 @@ import it.integry.integrywmsnative.core.data_store.db.interfaces.EntityModelInte
@ForeignKey(
entity = InventarioRoomDTO.class,
parentColumns = {BaseSyncDTO.Columns.ID},
childColumns = {InventarioRowRoomDTO.Columns.PARENT_ID}
childColumns = {InventarioRowRoomDTO.Columns.PARENT_ID},
onDelete = ForeignKey.CASCADE
)
}
)

View File

@@ -1,6 +1,5 @@
package it.integry.integrywmsnative.core.data_store.db.entity;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.room.ColumnInfo;
import androidx.room.Entity;
@@ -52,10 +51,10 @@ public class Ordine {
private boolean orderNewProducts = false;
@ColumnInfo(name = "id_griglia")
private int idGriglia;
@Nullable
private Integer idGriglia;
@ColumnInfo(name = "cod_alis")
@NonNull
private String codAlis;
public int getOrdineId() {
@@ -82,11 +81,11 @@ public class Ordine {
this.annotazioni = annotazioni;
}
public int getIdGriglia() {
public Integer getIdGriglia() {
return idGriglia;
}
public void setIdGriglia(int idGriglia) {
public void setIdGriglia(Integer idGriglia) {
this.idGriglia = idGriglia;
}

View File

@@ -6,7 +6,7 @@ import androidx.room.ForeignKey;
import androidx.room.Index;
import androidx.room.PrimaryKey;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.Date;
@Entity(
@@ -138,7 +138,7 @@ public class SqlMtbColr {
@ColumnInfo(name = "unt_mis")
private String untMis;
@ColumnInfo(name = "data_scad")
private Date dataScad;
private LocalDate dataScad;
public int getId() {
return id;
@@ -428,11 +428,11 @@ public class SqlMtbColr {
this.descrizione = descrizione;
}
public Date getDataScad() {
public LocalDate getDataScad() {
return dataScad;
}
public void setDataScad(Date dataScad) {
public void setDataScad(LocalDate dataScad) {
this.dataScad = dataScad;
}
}

View File

@@ -1,5 +1,7 @@
package it.integry.integrywmsnative.core.data_store.db.repository;
import androidx.lifecycle.LiveData;
import java.util.Date;
import java.util.List;
@@ -17,7 +19,7 @@ public interface MtbColtRepository {
void delete(SqlMtbColt mtbColt, Runnable onSuccess, RunnableArgs<Exception> onError);
void getLocalDocumentsByCodDtip(String codDtip, String codAnag, String codVdes, Date dataDoc, String numDoc, RunnableArgs<List<DocInternoWrapper>> onSuccess, RunnableArgs<Exception> onError);
LiveData<List<DocInternoWrapper>> getDocuments(String codDtip, String codAnag, String codVdes, Date dataDoc, String numDoc);
void getNextNumCollo(RunnableArgs<Integer> onSuccess, RunnableArgs<Exception> onError);

View File

@@ -2,6 +2,8 @@ package it.integry.integrywmsnative.core.data_store.db.repository.datasource;
import android.os.Handler;
import androidx.lifecycle.LiveData;
import java.util.Date;
import java.util.List;
import java.util.concurrent.ExecutorService;
@@ -50,10 +52,8 @@ public class SqlMtbColtDataSource extends BaseDataSource implements MtbColtRepos
}
@Override
public void getLocalDocumentsByCodDtip(String codDtip, String codAnag, String codVdes, Date dataDoc, String numDoc, RunnableArgs<List<DocInternoWrapper>> onSuccess, RunnableArgs<Exception> onError) {
execute(() -> mMtbColtDao.getLocalDocumentsByCodDtip(codDtip, codAnag, codVdes, dataDoc, numDoc),
onSuccess,
onError);
public LiveData<List<DocInternoWrapper>> getDocuments(String codDtip, String codAnag, String codVdes, Date dataDoc, String numDoc) {
return mMtbColtDao.getLocalDocumentsByCodDtip(codDtip, codAnag, codVdes, dataDoc, numDoc);
}
@Override

View File

@@ -21,6 +21,7 @@ import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.mapper.InventarioMapper;
import it.integry.integrywmsnative.core.model.MtbInvent;
import it.integry.integrywmsnative.core.rest.consumers.InventarioRESTConsumer;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.core.utility.UtilityLiveData;
public class InventarioRepository extends _BaseRepository<MtbInvent, InventarioRoomDTO, InventarioMapper, InventarioLocalDataSource, InventarioRESTConsumer> {
@@ -62,16 +63,20 @@ public class InventarioRepository extends _BaseRepository<MtbInvent, InventarioR
try {
var startRetrieve = new Date();
var remoteData = remoteDataSource.makeSynchronousRetrieveRequest();
Log.d("Timing [INVENTORIES RETRIEVE]", ((new Date().getTime() - startRetrieve.getTime()) / 1000) + " secs");
Log.d("Time INVENTORY RETRIEVE", ((new Date().getTime() - startRetrieve.getTime()) / 1000) + " secs");
if (remoteData == null) remoteData = new ArrayList<>();
resolveFetch(remoteData, internalLiveData.getValue(),
List<MtbInvent> finalRemoteData = remoteData;
resolveFetch(finalRemoteData, internalLiveData.getValue(),
(remoteItem, localItem) -> Objects.equals(remoteItem.getIdInventario(), localItem.getIdInventario()),
(remoteItem, localItem) -> {
remoteItem.setRemoteSyncDate(localItem.getRemoteSyncDate());
remoteItem.setNew(false);
}, onComplete, onError);
}, () -> handler.post(onComplete), ex -> handler.post(() -> onError.run(ex)),
SettingsManager.iDB().isFlagIsInventarioCacheEnabled());
} catch (Exception e) {
onError.run(e);

View File

@@ -35,7 +35,8 @@ public abstract class _BaseRepository<
RunnableArgssWithReturn<B, B, Boolean> keyComparator,
RunnableArgss<B, B> dataCopy,
Runnable onComplete,
RunnableArgs<Exception> onError) {
RunnableArgs<Exception> onError,
boolean isCacheEnabled) {
List<B> finalRemoteData = dataMapper.mapRestsToRooms(remoteData);
if (localData == null) localData = new ArrayList<>();
@@ -53,12 +54,14 @@ public abstract class _BaseRepository<
}
var dataToUpdate = finalRemoteData.stream()
.filter(x -> x.getId() != null && finalLocalData.stream().noneMatch(x::equals))
.collect(Collectors.toList());
var dataToDelete = finalLocalData.stream()
.filter(x -> x.isSyncronized() && finalRemoteData.stream().noneMatch(y -> keyComparator.run(y, x)))
.filter(x -> (!isCacheEnabled || x.isSyncronized()) && finalRemoteData.stream().noneMatch(y -> keyComparator.run(y, x)))
.collect(Collectors.toList());
var dataToInsert = finalRemoteData.stream()

View File

@@ -1,218 +0,0 @@
package it.integry.integrywmsnative.core.data_store.db.view_model;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONObject;
import java.math.BigDecimal;
import java.util.HashMap;
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine;
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
import it.integry.integrywmsnative.core.utility.UtilityDate;
public class ArticoloDTO {
public String codMart;
public String descrizione;
public String untMis;
public float qtaCnf;
public String barcode;
public float merceDaRic;
public float mediaSett;
public String flagQtaMultipla;
public String flagTracciabilita;
public float qtaMinOrdinabile;
public boolean newNoPromo;
private int ggScadenza;
private float giacenza;
private float qtaPrevistaVendita;
private float qtaProposta;
private float qtaOrd;
public String getCodMart() {
return codMart;
}
public void setCodMart(String codMart) {
this.codMart = codMart;
}
public String getDescrizione() {
return descrizione;
}
public void setDescrizione(String descrizione) {
this.descrizione = descrizione;
}
public String getUntMis() {
return untMis;
}
public void setUntMis(String untMis) {
this.untMis = untMis;
}
public float getQtaCnf() {
return qtaCnf;
}
public void setQtaCnf(float qtaCnf) {
this.qtaCnf = qtaCnf;
}
public String getBarCode() {
return barcode;
}
public void setBarCode(String barCode) {
this.barcode = barCode;
}
public float getMerceDaRic() {
return merceDaRic;
}
public void setMerceDaRic(float merceDaRic) {
this.merceDaRic = merceDaRic;
}
public float getMediaSett() {
return mediaSett;
}
public void setMediaSett(float mediaSett) {
this.mediaSett = mediaSett;
}
public String getFlagQtaMultipla() {
return flagQtaMultipla;
}
public void setFlagQtaMultipla(String flagQtaMultipla) {
this.flagQtaMultipla = flagQtaMultipla;
}
public float getQtaMinOrdinabile() {
return qtaMinOrdinabile;
}
public void setQtaMinOrdinabile(float qtaMinOrdinabile) {
this.qtaMinOrdinabile = qtaMinOrdinabile;
}
public String getBarcode() {
return barcode;
}
public void setBarcode(String barcode) {
this.barcode = barcode;
}
public int getGgScadenza() {
return ggScadenza;
}
public void setGgScadenza(int ggScadenza) {
this.ggScadenza = ggScadenza;
}
public float getGiacenza() {
return giacenza;
}
public void setGiacenza(float giacenza) {
this.giacenza = giacenza;
}
public float getQtaPrevistaVendita() {
return qtaPrevistaVendita;
}
public void setQtaPrevistaVendita(float qtaPrevistaVendita) {
this.qtaPrevistaVendita = qtaPrevistaVendita;
}
public float getQtaProposta() {
return qtaProposta;
}
public void setQtaProposta(float qtaProposta) {
this.qtaProposta = qtaProposta;
}
public String getFlagTracciabilita() {
return flagTracciabilita;
}
public ArticoloDTO setFlagTracciabilita(String flagTracciabilita) {
this.flagTracciabilita = flagTracciabilita;
return this;
}
public boolean isNewNoPromo() {
return newNoPromo;
}
public ArticoloDTO setNewNoPromo(boolean newNoPromo) {
this.newNoPromo = newNoPromo;
return this;
}
public float getQtaOrd() {
return qtaOrd;
}
public ArticoloDTO setQtaOrd(float qtaOrd) {
this.qtaOrd = qtaOrd;
return this;
}
public ArticoloOrdine convertToArticoloOrdine(Ordine ordine) {
ArticoloOrdine articolo = new ArticoloOrdine();
articolo.setIdOrdine(ordine.getOrdineId());
articolo.setBarCode(this.getBarCode());
articolo.setCodMart(this.getCodMart());
articolo.setMediaSett(this.getMediaSett());
articolo.setFlagQtaMultipla(this.getFlagQtaMultipla());
articolo.setQtaMinOrdinabile(this.getQtaMinOrdinabile());
articolo.setMerceDaRic(this.getMerceDaRic());
articolo.setQtaCnf(this.getQtaCnf());
articolo.setUntMis(this.getUntMis());
articolo.setDescrizione(this.getDescrizione());
articolo.setDataIns(UtilityDate.getDateInstance());
articolo.setGgScadenza(this.getGgScadenza());
articolo.setGiacenza(BigDecimal.valueOf(this.getGiacenza()));
articolo.setQtaPrevistaVendita(BigDecimal.valueOf(this.getQtaPrevistaVendita()));
articolo.setQtaProposta(BigDecimal.valueOf(this.getQtaProposta()));
articolo.setNewNoPromo(this.isNewNoPromo());
articolo.setSystemNote(generateSystemNote());
articolo.setQtaOrd(this.getQtaOrd());
return articolo;
}
public String generateSystemNote() {
HashMap<String, String> pairs = new HashMap<>();
pairs.put("qta_proposta", String.valueOf(qtaProposta));
pairs.put("giacenza", String.valueOf(giacenza));
return new JSONObject(pairs).toString();
}
public int getSortByBarcodeCondition(String barcode) {
if (codMart.equalsIgnoreCase(barcode))
return 1;
if (barcode != null) {
if (barcode.equalsIgnoreCase(barcode))
return 2;
if (StringUtils.leftPad(barcode, 13, "0").equalsIgnoreCase(barcode))
return 3;
}
return 100;
}
}

View File

@@ -0,0 +1,224 @@
package it.integry.integrywmsnative.core.data_store.db.view_model;
import org.json.JSONObject;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
public class ArticoloOrdinabileDTO {
private String codAlis;
private String codMart;
private String descrizione;
private String untMis;
private float qtaCnf;
private float merceDaRic;
private float mediaSett;
private String flagQtaMultipla;
private String flagTracciabilita;
private String flagQtaCnfFissa;
private boolean newNoPromo;
private float qtaMinOrdinabile;
private int ggScadenza;
private BigDecimal giacenza;
private BigDecimal qtaPrevistaVendita;
private BigDecimal qtaProposta;
private float qtaOrd;
private float ctMaxOrd;
private List<String> barcode;
private String selectedBarcode;
public String getCodAlis() {
return codAlis;
}
public ArticoloOrdinabileDTO setCodAlis(String codAlis) {
this.codAlis = codAlis;
return this;
}
public String getCodMart() {
return codMart;
}
public ArticoloOrdinabileDTO setCodMart(String codMart) {
this.codMart = codMart;
return this;
}
public String getDescrizione() {
return descrizione;
}
public ArticoloOrdinabileDTO setDescrizione(String descrizione) {
this.descrizione = descrizione;
return this;
}
public String getUntMis() {
return untMis;
}
public ArticoloOrdinabileDTO setUntMis(String untMis) {
this.untMis = untMis;
return this;
}
public float getQtaCnf() {
return qtaCnf;
}
public ArticoloOrdinabileDTO setQtaCnf(float qtaCnf) {
this.qtaCnf = qtaCnf;
return this;
}
public float getMerceDaRic() {
return merceDaRic;
}
public ArticoloOrdinabileDTO setMerceDaRic(float merceDaRic) {
this.merceDaRic = merceDaRic;
return this;
}
public float getMediaSett() {
return mediaSett;
}
public ArticoloOrdinabileDTO setMediaSett(float mediaSett) {
this.mediaSett = mediaSett;
return this;
}
public String getFlagQtaMultipla() {
return flagQtaMultipla;
}
public ArticoloOrdinabileDTO setFlagQtaMultipla(String flagQtaMultipla) {
this.flagQtaMultipla = flagQtaMultipla;
return this;
}
public String getFlagTracciabilita() {
return flagTracciabilita;
}
public ArticoloOrdinabileDTO setFlagTracciabilita(String flagTracciabilita) {
this.flagTracciabilita = flagTracciabilita;
return this;
}
public String getFlagQtaCnfFissa() {
return flagQtaCnfFissa;
}
public ArticoloOrdinabileDTO setFlagQtaCnfFissa(String flagQtaCnfFissa) {
this.flagQtaCnfFissa = flagQtaCnfFissa;
return this;
}
public boolean isNewNoPromo() {
return newNoPromo;
}
public ArticoloOrdinabileDTO setNewNoPromo(boolean newNoPromo) {
this.newNoPromo = newNoPromo;
return this;
}
public float getQtaMinOrdinabile() {
return qtaMinOrdinabile;
}
public ArticoloOrdinabileDTO setQtaMinOrdinabile(float qtaMinOrdinabile) {
this.qtaMinOrdinabile = qtaMinOrdinabile;
return this;
}
public int getGgScadenza() {
return ggScadenza;
}
public ArticoloOrdinabileDTO setGgScadenza(int ggScadenza) {
this.ggScadenza = ggScadenza;
return this;
}
public BigDecimal getGiacenza() {
return giacenza;
}
public ArticoloOrdinabileDTO setGiacenza(BigDecimal giacenza) {
this.giacenza = giacenza;
return this;
}
public BigDecimal getQtaPrevistaVendita() {
return qtaPrevistaVendita;
}
public ArticoloOrdinabileDTO setQtaPrevistaVendita(BigDecimal qtaPrevistaVendita) {
this.qtaPrevistaVendita = qtaPrevistaVendita;
return this;
}
public BigDecimal getQtaProposta() {
return qtaProposta;
}
public ArticoloOrdinabileDTO setQtaProposta(BigDecimal qtaProposta) {
this.qtaProposta = qtaProposta;
return this;
}
public float getQtaOrd() {
return qtaOrd;
}
public ArticoloOrdinabileDTO setQtaOrd(float qtaOrd) {
this.qtaOrd = qtaOrd;
return this;
}
public float getCtMaxOrd() {
return ctMaxOrd;
}
public ArticoloOrdinabileDTO setCtMaxOrd(float ctMaxOrd) {
this.ctMaxOrd = ctMaxOrd;
return this;
}
public List<String> getBarcode() {
return barcode;
}
public ArticoloOrdinabileDTO setBarcode(List<String> barcode) {
this.barcode = barcode;
return this;
}
public String generateSystemNote() {
HashMap<String, String> pairs = new HashMap<>();
pairs.put("qta_proposta", String.valueOf(qtaProposta));
pairs.put("giacenza", String.valueOf(giacenza));
return new JSONObject(pairs).toString();
}
public String getSelectedBarcode() {
return selectedBarcode;
}
public ArticoloOrdinabileDTO setSelectedBarcode(String selectedBarcode) {
this.selectedBarcode = selectedBarcode;
return this;
}
}

View File

@@ -1,36 +0,0 @@
package it.integry.integrywmsnative.core.data_store.db.view_model;
import java.util.List;
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloGriglia;
public class GrigliaDTO {
private String descrLisa;
private String descrDepo;
private List<ArticoloDTO> grigliaAcquistiChild;
public String getDescrLisa() {
return descrLisa;
}
public void setDescrLisa(String descrLisa) {
this.descrLisa = descrLisa;
}
public String getDescrDepo() {
return descrDepo;
}
public void setDescrDepo(String descrDepo) {
this.descrDepo = descrDepo;
}
public List<ArticoloDTO> getGrigliaAcquistiChild() {
return grigliaAcquistiChild;
}
public void setGrigliaAcquistiChild(List<ArticoloDTO> grigliaAcquistiChild) {
this.grigliaAcquistiChild = grigliaAcquistiChild;
}
}

View File

@@ -1,33 +0,0 @@
package it.integry.integrywmsnative.core.data_store.db.view_model;
import androidx.room.Embedded;
import androidx.room.Ignore;
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
import it.integry.integrywmsnative.core.di.BindableBoolean;
public class OrdineWithGriglia {
@Embedded
private Ordine ordine;
@Embedded
private Griglia griglia;
public Ordine getOrdine() {
return ordine;
}
public void setOrdine(Ordine ordine) {
this.ordine = ordine;
}
public Griglia getGriglia() {
return griglia;
}
public void setGriglia(Griglia griglia) {
this.griglia = griglia;
}
}

View File

@@ -0,0 +1,40 @@
package it.integry.integrywmsnative.core.data_store.db.view_model;
import java.util.List;
public class OrdiniAcquistoGrigliaDTO {
private String descrLisa;
private String descrDepo;
private List<ArticoloOrdinabileDTO> articoli;
public String getDescrLisa() {
return descrLisa;
}
public OrdiniAcquistoGrigliaDTO setDescrLisa(String descrLisa) {
this.descrLisa = descrLisa;
return this;
}
public String getDescrDepo() {
return descrDepo;
}
public OrdiniAcquistoGrigliaDTO setDescrDepo(String descrDepo) {
this.descrDepo = descrDepo;
return this;
}
public List<ArticoloOrdinabileDTO> getArticoli() {
return articoli;
}
public OrdiniAcquistoGrigliaDTO setArticoli(List<ArticoloOrdinabileDTO> articoli) {
this.articoli = articoli;
return this;
}
}

View File

@@ -1,10 +1,9 @@
package it.integry.integrywmsnative.core.di;
import java.math.BigDecimal;
import java.math.RoundingMode;
import androidx.databinding.BaseObservable;
import java.math.BigDecimal;
import it.integry.integrywmsnative.core.CommonConst;
import it.integry.integrywmsnative.core.utility.UtilityNumber;
@@ -20,7 +19,7 @@ public class BindableFloat extends BaseObservable {
if(numberOfDigits > CommonConst.Config.NUMBER_OF_DECIMAL_DIGITS) numberOfDigits = CommonConst.Config.NUMBER_OF_DECIMAL_DIGITS;
return new BigDecimal(get());
return BigDecimal.valueOf(get());
}
public Float get(boolean defaultIfNull) {

View File

@@ -24,7 +24,6 @@ import androidx.databinding.BindingAdapter;
import androidx.databinding.BindingConversion;
import androidx.databinding.Observable;
import androidx.databinding.ObservableField;
import androidx.lifecycle.MutableLiveData;
import com.google.android.material.datepicker.MaterialDatePicker;
import com.google.android.material.textfield.TextInputEditText;
@@ -33,6 +32,7 @@ import com.google.android.material.textfield.TextInputLayout;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
import java.time.LocalDate;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;
@@ -457,8 +457,8 @@ public class Converters {
}
@BindingAdapter(value = {"binding", "parentView", "warningOnOldDates"}, requireAll = false)
public static void bindEditTextDate(EditText view, final ObservableField<Date> observableDate, BaseDialogFragment parentFragment, boolean warningOnOldDates) {
Pair<ObservableField<Date>, TextWatcherAdapter> pair = (Pair) view.getTag(R.id.bound_observable);
public static void bindEditTextDate(EditText view, final ObservableField<LocalDate> observableDate, BaseDialogFragment parentFragment, boolean warningOnOldDates) {
Pair<ObservableField<LocalDate>, TextWatcherAdapter> pair = (Pair) view.getTag(R.id.bound_observable);
if (pair == null || pair.first != observableDate) {
if (pair != null) {
view.removeTextChangedListener(pair.second);
@@ -473,37 +473,33 @@ public class Converters {
RunnableArgs<View> onClick = v -> {
// Get Current Date
Calendar c = UtilityDate.getCalendarInstance();
if (observableDate.get() != null) {
c.setTime(observableDate.get());
}
LocalDate selectedDate = observableDate.get() != null ? observableDate.get() : UtilityDate.getNow();
var datePicker =
MaterialDatePicker.Builder.datePicker()
.setSelection(c.getTimeInMillis())
.setSelection(UtilityDate.localDateToMillisTime(selectedDate))
.build();
datePicker.addOnDismissListener(dialog -> {
if(datePicker.getSelection() != null) {
var timeInMillis = datePicker.getSelection();
var selectedTimeInMillis = datePicker.getSelection();
var nowTime = UtilityDate.millisTimeToLocalDate(selectedTimeInMillis, null);
var calendar = UtilityDate.getCalendarInstance();
calendar.setTimeInMillis(timeInMillis);
if (parentFragment != null && warningOnOldDates && calendar.before(UtilityDate.getCalendarInstance())) {
if (parentFragment != null && warningOnOldDates && nowTime.isBefore(UtilityDate.getNow())) {
DialogSimpleMessageView
.makeWarningDialog(new SpannableString("Hai scelto una data precedente a quella odierna. Continuare?"), null, () -> {
view.setText(UtilityDate.formatDate(calendar.getTime(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
observableDate.set(calendar.getTime());
view.setText(UtilityDate.formatDate(nowTime, UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
observableDate.set(nowTime);
}, () -> {
})
.show(parentFragment.requireActivity().getSupportFragmentManager(), "tag");
} else {
view.setText(UtilityDate.formatDate(calendar.getTime(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
observableDate.set(calendar.getTime());
view.setText(UtilityDate.formatDate(nowTime, UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
observableDate.set(nowTime);
}
}
else {
@@ -522,7 +518,7 @@ public class Converters {
((TextInputLayout) view.getParent().getParent()).setOnClickListener(onClick::run);
}
}
Date newValue = observableDate.get();
var newValue = observableDate.get();
view.setText(UtilityDate.formatDate(newValue, UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
}

View File

@@ -0,0 +1,10 @@
package it.integry.integrywmsnative.core.exception;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.utility.UtilityResources;
public final class EmptyOrderException extends Exception {
public EmptyOrderException() {
super(UtilityResources.getString(R.string.empty_order));
}
}

View File

@@ -0,0 +1,10 @@
package it.integry.integrywmsnative.core.exception;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.utility.UtilityResources;
public final class ExpiredProductListException extends Exception {
public ExpiredProductListException() {
super(UtilityResources.getString(R.string.expired_list_session));
}
}

View File

@@ -0,0 +1,12 @@
package it.integry.integrywmsnative.core.exception;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.utility.UtilityResources;
public class GridNotSelectedException extends Exception {
public GridNotSelectedException() {
super(UtilityResources.getString(R.string.grid_not_selected));
}
}

View File

@@ -0,0 +1,15 @@
package it.integry.integrywmsnative.core.exception;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.utility.UtilityResources;
public final class InvalidProductOrderedException extends Exception {
public InvalidProductOrderedException() {
super(UtilityResources.getString(R.string.invalid_product_ordered));
}
public InvalidProductOrderedException(String product) {
super(UtilityResources.getString(R.string.invalid_product_ordered) + " (" + product + ")");
}
}

View File

@@ -0,0 +1,12 @@
package it.integry.integrywmsnative.core.exception;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.utility.UtilityResources;
public class MaxQtyExceededException extends Exception {
public MaxQtyExceededException() {
super(UtilityResources.getString(R.string.max_qty_exceeded));
}
}

View File

@@ -0,0 +1,15 @@
package it.integry.integrywmsnative.core.exception;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.utility.UtilityResources;
public final class MultipleResultFromBarcodeException extends Exception {
public MultipleResultFromBarcodeException() {
super(UtilityResources.getString(R.string.multiple_results_from_barcode));
}
public MultipleResultFromBarcodeException(String barcode) {
super(UtilityResources.getString(R.string.multiple_results_from_barcode) + " (" + barcode + ")");
}
}

View File

@@ -0,0 +1,15 @@
package it.integry.integrywmsnative.core.exception;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.utility.UtilityResources;
public final class NoResultFromCodMartException extends Exception {
public NoResultFromCodMartException() {
super(UtilityResources.getString(R.string.no_result_from_cod_mart));
}
public NoResultFromCodMartException(String codMart) {
super(UtilityResources.getString(R.string.no_result_from_cod_mart) + " (" + codMart + ")");
}
}

View File

@@ -49,7 +49,7 @@ public class BaseActivity extends AppCompatActivity {
private void openProgress() {
BarcodeManager.disable();
if (!progressOpened && !this.mCurrentProgress.isAdded()) {
if (!progressOpened && !this.mCurrentProgress.isAdded() && !this.mCurrentProgress.isInLayout()) {
this.progressOpened = true;
runOnUiThread(() -> {
this.mCurrentProgress.show(getSupportFragmentManager(), "tag");

View File

@@ -27,6 +27,20 @@ public class BaseDialogFragment extends DialogFragment implements DialogInterfac
private boolean mBarcodeListener = false;
private boolean cancelable = true;
@Override
public boolean isCancelable() {
return cancelable;
}
@Override
public void setCancelable(boolean cancelable) {
super.setCancelable(cancelable);
this.cancelable = cancelable;
}
@Override
public void show(FragmentManager manager, String tag) {
@@ -56,7 +70,7 @@ public class BaseDialogFragment extends DialogFragment implements DialogInterfac
}
private void openProgress() {
if (!progressOpened && !this.mCurrentProgress.isAdded()) {
if (!progressOpened && !this.mCurrentProgress.isAdded() && !this.mCurrentProgress.isInLayout()) {
this.progressOpened = true;
requireActivity().runOnUiThread(() -> {
this.mCurrentProgress.show(requireActivity().getSupportFragmentManager(), "tag");

View File

@@ -67,7 +67,7 @@ public abstract class BaseFragment extends Fragment {
private void openProgress() {
BarcodeManager.disable();
if (!progressOpened && !this.mCurrentProgress.isAdded()) {
if (!progressOpened && !this.mCurrentProgress.isAdded() && !this.mCurrentProgress.isInLayout()) {
this.progressOpened = true;
executorService.execute(() -> {
this.mCurrentProgress.show(requireActivity().getSupportFragmentManager(), "tag");

View File

@@ -1,6 +1,7 @@
package it.integry.integrywmsnative.core.model;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.Date;
import it.integry.integrywmsnative.core.utility.UtilityDate;
@@ -141,7 +142,7 @@ public class DtbDocr {
private MtbAart mtbAart;
private String dataScadPartitaMag;
private LocalDate dataScadPartitaMag;
public String getCodAnag() {
return codAnag;
@@ -741,15 +742,12 @@ public class DtbDocr {
return this;
}
public String getDataScadPartitaMag() {
public LocalDate getDataScadPartitaMag() {
return dataScadPartitaMag;
}
public Date getDataScadPartitaMagD() {
return UtilityDate.recognizeDateWithExceptionHandler(getDataScadPartitaMag());
}
public DtbDocr setDataScadPartitaMag(String dataScadPartitaMag) {
public DtbDocr setDataScadPartitaMag(LocalDate dataScadPartitaMag) {
this.dataScadPartitaMag = dataScadPartitaMag;
return this;
}

View File

@@ -865,4 +865,262 @@ public class MtbAart extends EntityBase {
public MtbUntMis getFirstUntMis() {
return getMtbUntMis() != null && !getMtbUntMis().isEmpty() ? getMtbUntMis().get(0) : null;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
MtbAart mtbAart = (MtbAart) o;
if (!getCodMart().equals(mtbAart.getCodMart())) return false;
if (getDescrizione() != null ? !getDescrizione().equals(mtbAart.getDescrizione()) : mtbAart.getDescrizione() != null)
return false;
if (getUntMis() != null ? !getUntMis().equals(mtbAart.getUntMis()) : mtbAart.getUntMis() != null)
return false;
if (getBarCode() != null ? !getBarCode().equals(mtbAart.getBarCode()) : mtbAart.getBarCode() != null)
return false;
if (getPesoKg() != null ? !getPesoKg().equals(mtbAart.getPesoKg()) : mtbAart.getPesoKg() != null)
return false;
if (getQtaCnf() != null ? !getQtaCnf().equals(mtbAart.getQtaCnf()) : mtbAart.getQtaCnf() != null)
return false;
if (getCodAliq() != null ? !getCodAliq().equals(mtbAart.getCodAliq()) : mtbAart.getCodAliq() != null)
return false;
if (getCodScoArt() != null ? !getCodScoArt().equals(mtbAart.getCodScoArt()) : mtbAart.getCodScoArt() != null)
return false;
if (getCodTcolUi() != null ? !getCodTcolUi().equals(mtbAart.getCodTcolUi()) : mtbAart.getCodTcolUi() != null)
return false;
if (getCodTcolUl() != null ? !getCodTcolUl().equals(mtbAart.getCodTcolUl()) : mtbAart.getCodTcolUl() != null)
return false;
if (getArticoloComposto() != null ? !getArticoloComposto().equals(mtbAart.getArticoloComposto()) : mtbAart.getArticoloComposto() != null)
return false;
if (getEsposizioneComp() != null ? !getEsposizioneComp().equals(mtbAart.getEsposizioneComp()) : mtbAart.getEsposizioneComp() != null)
return false;
if (getDescrizioneEstesa() != null ? !getDescrizioneEstesa().equals(mtbAart.getDescrizioneEstesa()) : mtbAart.getDescrizioneEstesa() != null)
return false;
if (getCodUltForn() != null ? !getCodUltForn().equals(mtbAart.getCodUltForn()) : mtbAart.getCodUltForn() != null)
return false;
if (getDataUltCar() != null ? !getDataUltCar().equals(mtbAart.getDataUltCar()) : mtbAart.getDataUltCar() != null)
return false;
if (getValUltCar() != null ? !getValUltCar().equals(mtbAart.getValUltCar()) : mtbAart.getValUltCar() != null)
return false;
if (getCodUltClie() != null ? !getCodUltClie().equals(mtbAart.getCodUltClie()) : mtbAart.getCodUltClie() != null)
return false;
if (getDataUltScar() != null ? !getDataUltScar().equals(mtbAart.getDataUltScar()) : mtbAart.getDataUltScar() != null)
return false;
if (getValUltScar() != null ? !getValUltScar().equals(mtbAart.getValUltScar()) : mtbAart.getValUltScar() != null)
return false;
if (getTipoCodice() != null ? !getTipoCodice().equals(mtbAart.getTipoCodice()) : mtbAart.getTipoCodice() != null)
return false;
if (getNote() != null ? !getNote().equals(mtbAart.getNote()) : mtbAart.getNote() != null)
return false;
if (getPosizione() != null ? !getPosizione().equals(mtbAart.getPosizione()) : mtbAart.getPosizione() != null)
return false;
if (getColliPedana() != null ? !getColliPedana().equals(mtbAart.getColliPedana()) : mtbAart.getColliPedana() != null)
return false;
if (getUntMis2() != null ? !getUntMis2().equals(mtbAart.getUntMis2()) : mtbAart.getUntMis2() != null)
return false;
if (getRapConv2() != null ? !getRapConv2().equals(mtbAart.getRapConv2()) : mtbAart.getRapConv2() != null)
return false;
if (getFlagInclListino() != null ? !getFlagInclListino().equals(mtbAart.getFlagInclListino()) : mtbAart.getFlagInclListino() != null)
return false;
if (getUntMis3() != null ? !getUntMis3().equals(mtbAart.getUntMis3()) : mtbAart.getUntMis3() != null)
return false;
if (getRapConv3() != null ? !getRapConv3().equals(mtbAart.getRapConv3()) : mtbAart.getRapConv3() != null)
return false;
if (getCodMartStat() != null ? !getCodMartStat().equals(mtbAart.getCodMartStat()) : mtbAart.getCodMartStat() != null)
return false;
if (getCodMcon() != null ? !getCodMcon().equals(mtbAart.getCodMcon()) : mtbAart.getCodMcon() != null)
return false;
if (getCodMgrp() != null ? !getCodMgrp().equals(mtbAart.getCodMgrp()) : mtbAart.getCodMgrp() != null)
return false;
if (getCodMsfa() != null ? !getCodMsfa().equals(mtbAart.getCodMsfa()) : mtbAart.getCodMsfa() != null)
return false;
if (getCodMsgr() != null ? !getCodMsgr().equals(mtbAart.getCodMsgr()) : mtbAart.getCodMsgr() != null)
return false;
if (getCodMstp() != null ? !getCodMstp().equals(mtbAart.getCodMstp()) : mtbAart.getCodMstp() != null)
return false;
if (getCodMtip() != null ? !getCodMtip().equals(mtbAart.getCodMtip()) : mtbAart.getCodMtip() != null)
return false;
if (getDescrizioneStat() != null ? !getDescrizioneStat().equals(mtbAart.getDescrizioneStat()) : mtbAart.getDescrizioneStat() != null)
return false;
if (getFlagStato() != null ? !getFlagStato().equals(mtbAart.getFlagStato()) : mtbAart.getFlagStato() != null)
return false;
if (getCambioDiviCar() != null ? !getCambioDiviCar().equals(mtbAart.getCambioDiviCar()) : mtbAart.getCambioDiviCar() != null)
return false;
if (getCambioDiviScar() != null ? !getCambioDiviScar().equals(mtbAart.getCambioDiviScar()) : mtbAart.getCambioDiviScar() != null)
return false;
if (getGgScadPartita() != null ? !getGgScadPartita().equals(mtbAart.getGgScadPartita()) : mtbAart.getGgScadPartita() != null)
return false;
if (getVolumeMc() != null ? !getVolumeMc().equals(mtbAart.getVolumeMc()) : mtbAart.getVolumeMc() != null)
return false;
if (getFlagEsponiPrz() != null ? !getFlagEsponiPrz().equals(mtbAart.getFlagEsponiPrz()) : mtbAart.getFlagEsponiPrz() != null)
return false;
if (getDataUltVar() != null ? !getDataUltVar().equals(mtbAart.getDataUltVar()) : mtbAart.getDataUltVar() != null)
return false;
if (getPercSfrido() != null ? !getPercSfrido().equals(mtbAart.getPercSfrido()) : mtbAart.getPercSfrido() != null)
return false;
if (getCodBarreImb() != null ? !getCodBarreImb().equals(mtbAart.getCodBarreImb()) : mtbAart.getCodBarreImb() != null)
return false;
if (getFlagCalcPrz() != null ? !getFlagCalcPrz().equals(mtbAart.getFlagCalcPrz()) : mtbAart.getFlagCalcPrz() != null)
return false;
if (getEsposizioneCompAcq() != null ? !getEsposizioneCompAcq().equals(mtbAart.getEsposizioneCompAcq()) : mtbAart.getEsposizioneCompAcq() != null)
return false;
if (getFlagCalcPrzAcq() != null ? !getFlagCalcPrzAcq().equals(mtbAart.getFlagCalcPrzAcq()) : mtbAart.getFlagCalcPrzAcq() != null)
return false;
if (getDiacod() != null ? !getDiacod().equals(mtbAart.getDiacod()) : mtbAart.getDiacod() != null)
return false;
if (getPlu() != null ? !getPlu().equals(mtbAart.getPlu()) : mtbAart.getPlu() != null)
return false;
if (getPartIvaProd() != null ? !getPartIvaProd().equals(mtbAart.getPartIvaProd()) : mtbAart.getPartIvaProd() != null)
return false;
if (getRagSocProd() != null ? !getRagSocProd().equals(mtbAart.getRagSocProd()) : mtbAart.getRagSocProd() != null)
return false;
if (getFlagRapConvVariabile() != null ? !getFlagRapConvVariabile().equals(mtbAart.getFlagRapConvVariabile()) : mtbAart.getFlagRapConvVariabile() != null)
return false;
if (getFlagMovArtMag() != null ? !getFlagMovArtMag().equals(mtbAart.getFlagMovArtMag()) : mtbAart.getFlagMovArtMag() != null)
return false;
if (getFlagTracciabilita() != null ? !getFlagTracciabilita().equals(mtbAart.getFlagTracciabilita()) : mtbAart.getFlagTracciabilita() != null)
return false;
if (getTaraKg() != null ? !getTaraKg().equals(mtbAart.getTaraKg()) : mtbAart.getTaraKg() != null)
return false;
if (getColliStrato() != null ? !getColliStrato().equals(mtbAart.getColliStrato()) : mtbAart.getColliStrato() != null)
return false;
if (getFlagQtaCnfFissa() != null ? !getFlagQtaCnfFissa().equals(mtbAart.getFlagQtaCnfFissa()) : mtbAart.getFlagQtaCnfFissa() != null)
return false;
if (getFlagColliPedanaFisso() != null ? !getFlagColliPedanaFisso().equals(mtbAart.getFlagColliPedanaFisso()) : mtbAart.getFlagColliPedanaFisso() != null)
return false;
if (getCodCconCosti() != null ? !getCodCconCosti().equals(mtbAart.getCodCconCosti()) : mtbAart.getCodCconCosti() != null)
return false;
if (getCodCconRicavi() != null ? !getCodCconRicavi().equals(mtbAart.getCodCconRicavi()) : mtbAart.getCodCconRicavi() != null)
return false;
if (getCodDgrpArt() != null ? !getCodDgrpArt().equals(mtbAart.getCodDgrpArt()) : mtbAart.getCodDgrpArt() != null)
return false;
if (getCodDiviCar() != null ? !getCodDiviCar().equals(mtbAart.getCodDiviCar()) : mtbAart.getCodDiviCar() != null)
return false;
if (getCodDiviScar() != null ? !getCodDiviScar().equals(mtbAart.getCodDiviScar()) : mtbAart.getCodDiviScar() != null)
return false;
if (getCodEcrCat() != null ? !getCodEcrCat().equals(mtbAart.getCodEcrCat()) : mtbAart.getCodEcrCat() != null)
return false;
if (getCodEcrMcat() != null ? !getCodEcrMcat().equals(mtbAart.getCodEcrMcat()) : mtbAart.getCodEcrMcat() != null)
return false;
if (getCodEcrRep() != null ? !getCodEcrRep().equals(mtbAart.getCodEcrRep()) : mtbAart.getCodEcrRep() != null)
return false;
if (getCodEcrStipo() != null ? !getCodEcrStipo().equals(mtbAart.getCodEcrStipo()) : mtbAart.getCodEcrStipo() != null)
return false;
if (getCodEcrTipo() != null ? !getCodEcrTipo().equals(mtbAart.getCodEcrTipo()) : mtbAart.getCodEcrTipo() != null)
return false;
if (getCodGrpBolla() != null ? !getCodGrpBolla().equals(mtbAart.getCodGrpBolla()) : mtbAart.getCodGrpBolla() != null)
return false;
if (getIngredienti() != null ? !getIngredienti().equals(mtbAart.getIngredienti()) : mtbAart.getIngredienti() != null)
return false;
if (getIdArtEqui() != null ? !getIdArtEqui().equals(mtbAart.getIdArtEqui()) : mtbAart.getIdArtEqui() != null)
return false;
if (getDescrCassa() != null ? !getDescrCassa().equals(mtbAart.getDescrCassa()) : mtbAart.getDescrCassa() != null)
return false;
if (getCodNcIntracee() != null ? !getCodNcIntracee().equals(mtbAart.getCodNcIntracee()) : mtbAart.getCodNcIntracee() != null)
return false;
if (getMarchio() != null ? !getMarchio().equals(mtbAart.getMarchio()) : mtbAart.getMarchio() != null)
return false;
if (getSezione() != null ? !getSezione().equals(mtbAart.getSezione()) : mtbAart.getSezione() != null)
return false;
if (getUntMisRifPeso() != mtbAart.getUntMisRifPeso()) return false;
if (getQtaEsistente() != null ? !getQtaEsistente().equals(mtbAart.getQtaEsistente()) : mtbAart.getQtaEsistente() != null)
return false;
if (getQtaImpegnata() != null ? !getQtaImpegnata().equals(mtbAart.getQtaImpegnata()) : mtbAart.getQtaImpegnata() != null)
return false;
if (getNumCnfEsistente() != null ? !getNumCnfEsistente().equals(mtbAart.getNumCnfEsistente()) : mtbAart.getNumCnfEsistente() != null)
return false;
if (getNumCnfImpegnata() != null ? !getNumCnfImpegnata().equals(mtbAart.getNumCnfImpegnata()) : mtbAart.getNumCnfImpegnata() != null)
return false;
return getMtbUntMis() != null ? getMtbUntMis().equals(mtbAart.getMtbUntMis()) : mtbAart.getMtbUntMis() == null;
}
@Override
public int hashCode() {
int result = getCodMart().hashCode();
result = 31 * result + (getDescrizione() != null ? getDescrizione().hashCode() : 0);
result = 31 * result + (getUntMis() != null ? getUntMis().hashCode() : 0);
result = 31 * result + (getBarCode() != null ? getBarCode().hashCode() : 0);
result = 31 * result + (getPesoKg() != null ? getPesoKg().hashCode() : 0);
result = 31 * result + (getQtaCnf() != null ? getQtaCnf().hashCode() : 0);
result = 31 * result + (getCodAliq() != null ? getCodAliq().hashCode() : 0);
result = 31 * result + (getCodScoArt() != null ? getCodScoArt().hashCode() : 0);
result = 31 * result + (getCodTcolUi() != null ? getCodTcolUi().hashCode() : 0);
result = 31 * result + (getCodTcolUl() != null ? getCodTcolUl().hashCode() : 0);
result = 31 * result + (getArticoloComposto() != null ? getArticoloComposto().hashCode() : 0);
result = 31 * result + (getEsposizioneComp() != null ? getEsposizioneComp().hashCode() : 0);
result = 31 * result + (getDescrizioneEstesa() != null ? getDescrizioneEstesa().hashCode() : 0);
result = 31 * result + (getCodUltForn() != null ? getCodUltForn().hashCode() : 0);
result = 31 * result + (getDataUltCar() != null ? getDataUltCar().hashCode() : 0);
result = 31 * result + (getValUltCar() != null ? getValUltCar().hashCode() : 0);
result = 31 * result + (getCodUltClie() != null ? getCodUltClie().hashCode() : 0);
result = 31 * result + (getDataUltScar() != null ? getDataUltScar().hashCode() : 0);
result = 31 * result + (getValUltScar() != null ? getValUltScar().hashCode() : 0);
result = 31 * result + (getTipoCodice() != null ? getTipoCodice().hashCode() : 0);
result = 31 * result + (getNote() != null ? getNote().hashCode() : 0);
result = 31 * result + (getPosizione() != null ? getPosizione().hashCode() : 0);
result = 31 * result + (getColliPedana() != null ? getColliPedana().hashCode() : 0);
result = 31 * result + (getUntMis2() != null ? getUntMis2().hashCode() : 0);
result = 31 * result + (getRapConv2() != null ? getRapConv2().hashCode() : 0);
result = 31 * result + (getFlagInclListino() != null ? getFlagInclListino().hashCode() : 0);
result = 31 * result + (getUntMis3() != null ? getUntMis3().hashCode() : 0);
result = 31 * result + (getRapConv3() != null ? getRapConv3().hashCode() : 0);
result = 31 * result + (getCodMartStat() != null ? getCodMartStat().hashCode() : 0);
result = 31 * result + (getCodMcon() != null ? getCodMcon().hashCode() : 0);
result = 31 * result + (getCodMgrp() != null ? getCodMgrp().hashCode() : 0);
result = 31 * result + (getCodMsfa() != null ? getCodMsfa().hashCode() : 0);
result = 31 * result + (getCodMsgr() != null ? getCodMsgr().hashCode() : 0);
result = 31 * result + (getCodMstp() != null ? getCodMstp().hashCode() : 0);
result = 31 * result + (getCodMtip() != null ? getCodMtip().hashCode() : 0);
result = 31 * result + (getDescrizioneStat() != null ? getDescrizioneStat().hashCode() : 0);
result = 31 * result + (getFlagStato() != null ? getFlagStato().hashCode() : 0);
result = 31 * result + (getCambioDiviCar() != null ? getCambioDiviCar().hashCode() : 0);
result = 31 * result + (getCambioDiviScar() != null ? getCambioDiviScar().hashCode() : 0);
result = 31 * result + (getGgScadPartita() != null ? getGgScadPartita().hashCode() : 0);
result = 31 * result + (getVolumeMc() != null ? getVolumeMc().hashCode() : 0);
result = 31 * result + (getFlagEsponiPrz() != null ? getFlagEsponiPrz().hashCode() : 0);
result = 31 * result + (getDataUltVar() != null ? getDataUltVar().hashCode() : 0);
result = 31 * result + (getPercSfrido() != null ? getPercSfrido().hashCode() : 0);
result = 31 * result + (getCodBarreImb() != null ? getCodBarreImb().hashCode() : 0);
result = 31 * result + (getFlagCalcPrz() != null ? getFlagCalcPrz().hashCode() : 0);
result = 31 * result + (getEsposizioneCompAcq() != null ? getEsposizioneCompAcq().hashCode() : 0);
result = 31 * result + (getFlagCalcPrzAcq() != null ? getFlagCalcPrzAcq().hashCode() : 0);
result = 31 * result + (getDiacod() != null ? getDiacod().hashCode() : 0);
result = 31 * result + (getPlu() != null ? getPlu().hashCode() : 0);
result = 31 * result + (getPartIvaProd() != null ? getPartIvaProd().hashCode() : 0);
result = 31 * result + (getRagSocProd() != null ? getRagSocProd().hashCode() : 0);
result = 31 * result + (getFlagRapConvVariabile() != null ? getFlagRapConvVariabile().hashCode() : 0);
result = 31 * result + (getFlagMovArtMag() != null ? getFlagMovArtMag().hashCode() : 0);
result = 31 * result + (getFlagTracciabilita() != null ? getFlagTracciabilita().hashCode() : 0);
result = 31 * result + (getTaraKg() != null ? getTaraKg().hashCode() : 0);
result = 31 * result + (getColliStrato() != null ? getColliStrato().hashCode() : 0);
result = 31 * result + (getFlagQtaCnfFissa() != null ? getFlagQtaCnfFissa().hashCode() : 0);
result = 31 * result + (getFlagColliPedanaFisso() != null ? getFlagColliPedanaFisso().hashCode() : 0);
result = 31 * result + (getCodCconCosti() != null ? getCodCconCosti().hashCode() : 0);
result = 31 * result + (getCodCconRicavi() != null ? getCodCconRicavi().hashCode() : 0);
result = 31 * result + (getCodDgrpArt() != null ? getCodDgrpArt().hashCode() : 0);
result = 31 * result + (getCodDiviCar() != null ? getCodDiviCar().hashCode() : 0);
result = 31 * result + (getCodDiviScar() != null ? getCodDiviScar().hashCode() : 0);
result = 31 * result + (getCodEcrCat() != null ? getCodEcrCat().hashCode() : 0);
result = 31 * result + (getCodEcrMcat() != null ? getCodEcrMcat().hashCode() : 0);
result = 31 * result + (getCodEcrRep() != null ? getCodEcrRep().hashCode() : 0);
result = 31 * result + (getCodEcrStipo() != null ? getCodEcrStipo().hashCode() : 0);
result = 31 * result + (getCodEcrTipo() != null ? getCodEcrTipo().hashCode() : 0);
result = 31 * result + (getCodGrpBolla() != null ? getCodGrpBolla().hashCode() : 0);
result = 31 * result + (getIngredienti() != null ? getIngredienti().hashCode() : 0);
result = 31 * result + (getIdArtEqui() != null ? getIdArtEqui().hashCode() : 0);
result = 31 * result + (getDescrCassa() != null ? getDescrCassa().hashCode() : 0);
result = 31 * result + (getCodNcIntracee() != null ? getCodNcIntracee().hashCode() : 0);
result = 31 * result + (getMarchio() != null ? getMarchio().hashCode() : 0);
result = 31 * result + (getSezione() != null ? getSezione().hashCode() : 0);
result = 31 * result + (getUntMisRifPeso() != null ? getUntMisRifPeso().hashCode() : 0);
result = 31 * result + (getQtaEsistente() != null ? getQtaEsistente().hashCode() : 0);
result = 31 * result + (getQtaImpegnata() != null ? getQtaImpegnata().hashCode() : 0);
result = 31 * result + (getNumCnfEsistente() != null ? getNumCnfEsistente().hashCode() : 0);
result = 31 * result + (getNumCnfImpegnata() != null ? getNumCnfImpegnata().hashCode() : 0);
result = 31 * result + (getMtbUntMis() != null ? getMtbUntMis().hashCode() : 0);
return result;
}
}

View File

@@ -1,15 +0,0 @@
package it.integry.integrywmsnative.core.model;
public class MtbAartWithFornitore extends MtbAart {
private String codArtFor;
public String getCodArtFor() {
return codArtFor;
}
public MtbAartWithFornitore setCodArtFor(String codArtFor) {
this.codArtFor = codArtFor;
return this;
}
}

View File

@@ -1,6 +1,7 @@
package it.integry.integrywmsnative.core.model;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.Date;
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
@@ -36,7 +37,7 @@ public class MtbColr extends EntityBase {
private BigDecimal numCnf;
private String insPartitaMag;
private String mtbPartitaMag_descrizione;
private String dataScadPartita;
private LocalDate dataScadPartita;
private String descrizione;
private String untMis;
private Integer causale;
@@ -361,25 +362,15 @@ public class MtbColr extends EntityBase {
}
public String getDataScadPartitaS() {
public LocalDate getDataScadPartita() {
return dataScadPartita;
}
public Date getDataScadPartitaD() {
return UtilityDate.recognizeDateWithExceptionHandler(getDataScadPartitaS());
}
public MtbColr setDataScadPartita(String dataScadPartita) {
public MtbColr setDataScadPartita(LocalDate dataScadPartita) {
this.dataScadPartita = dataScadPartita;
return this;
}
public MtbColr setDataScadPartita(Date dataScadPartita) {
this.dataScadPartita = UtilityDate.formatDate(dataScadPartita, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH);
return this;
}
public String getDescrizione() {
return descrizione;
}

View File

@@ -68,28 +68,6 @@ public class MtbColt extends EntityBase {
private Boolean disablePrint;
private String ragSocCliente;
public void generaFiltroOrdine() throws Exception {
if (this.gestione == null) {
throw new Exception("Impossibile creare il filtro dell'ordine se la gestione non è valorizzata");
}
if (this.dataOrd == null) {
throw new Exception("Impossibile creare il filtro dell'ordine se la data dell'ordine non è valorizzata");
}
if (this.numOrd == null) {
throw new Exception("Impossibile creare il filtro dell'ordine se il numero dell'ordine non è valorizzato");
}
Date dateOrd = UtilityDate.recognizeDate(this.dataOrd);
String dateYMD = UtilityDate.formatDate(dateOrd, UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH);
this.filtroOrdini = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><ROOT><FILTER><DTB_ORDT><GESTIONE type=\"V\">" + this.gestione + "</GESTIONE><DATA_ORD type=\"D\">" + dateYMD + "</DATA_ORD><NUM_ORD type=\"N\">" + this.numOrd + "</NUM_ORD></DTB_ORDT></FILTER></ROOT>";
}
private ObservableArrayList<MtbColr> mtbColr = new ObservableArrayList<>();
public ObservableArrayList<MtbColr> getMtbColr() {
@@ -119,30 +97,22 @@ public class MtbColt extends EntityBase {
String codAnagToUse = null;
switch (gestioneEnum) {
case ACQUISTO:
case LAVORAZIONE:
case PRODUZIONE:
case ACQUISTO, LAVORAZIONE, PRODUZIONE -> {
if (SettingsManager.iDB().getInternalCodAnags() == null) break;
Optional<InternalCodAnagsDTO> optCodAnagForn = Stream.of(SettingsManager.iDB().getInternalCodAnags())
.filter(InternalCodAnagsDTO::isFornitore)
.findFirst();
if (optCodAnagForn.isEmpty()) break;
codAnagToUse = optCodAnagForn.get().getCodAnag();
break;
case VENDITA:
}
case VENDITA -> {
if (SettingsManager.iDB().getInternalCodAnags() == null) break;
Optional<InternalCodAnagsDTO> optCodAnagClie = Stream.of(SettingsManager.iDB().getInternalCodAnags())
.filter(InternalCodAnagsDTO::isCliente)
.findFirst();
if (optCodAnagClie.isEmpty()) break;
codAnagToUse = optCodAnagClie.get().getCodAnag();
break;
}
}
setCodAnag(codAnagToUse);

View File

@@ -1,17 +1,16 @@
package it.integry.integrywmsnative.core.model;
import java.math.BigDecimal;
import java.util.Date;
import it.integry.integrywmsnative.core.utility.UtilityDate;
import java.time.LocalDate;
import java.time.LocalDateTime;
public class MtbPartitaMag extends EntityBase{
private String codMart;
private String partitaMag;
private String descrizione;
private String dataIns;
private String dataScad;
private LocalDateTime dataIns;
private LocalDate dataScad;
private Integer scelta;
private BigDecimal costoUntUmMag;
private BigDecimal valUntUmMag;
@@ -62,33 +61,24 @@ public class MtbPartitaMag extends EntityBase{
return this;
}
public String getDataIns() {
public LocalDateTime getDataIns() {
return dataIns;
}
public MtbPartitaMag setDataIns(String dataIns) {
public MtbPartitaMag setDataIns(LocalDateTime dataIns) {
this.dataIns = dataIns;
return this;
}
public String getDataScadS() {
public LocalDate getDataScad() {
return dataScad;
}
public Date getDataScadD() {
return UtilityDate.recognizeDateWithExceptionHandler(getDataScadS());
}
public MtbPartitaMag setDataScad(String dataScad) {
public MtbPartitaMag setDataScad(LocalDate dataScad) {
this.dataScad = dataScad;
return this;
}
public MtbPartitaMag setDataScad(Date dataScad) {
this.dataScad = UtilityDate.formatDate(dataScad, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH);
return this;
}
public Integer getScelta() {
return scelta;
}

View File

@@ -39,7 +39,6 @@ public class MvwSitArtUdcDetInventario {
private String codJfas;
private MtbAart mtbAart;
public String getGestione() {
return gestione;
}
@@ -283,7 +282,6 @@ public class MvwSitArtUdcDetInventario {
return this;
}
public MtbColr toMtbColr() {
return new MtbColr()
.setCodJcom(getCodJcom())

View File

@@ -0,0 +1,29 @@
package it.integry.integrywmsnative.core.model.dto;
import it.integry.integrywmsnative.core.model.MtbColt;
public class AlreadyRegisteredUDCDTO {
private MtbColt mtbColt;
private boolean canBeRecovered;
public MtbColt getMtbColt() {
return mtbColt;
}
public AlreadyRegisteredUDCDTO setMtbColt(MtbColt mtbColt) {
this.mtbColt = mtbColt;
return this;
}
public boolean isCanBeRecovered() {
return canBeRecovered;
}
public AlreadyRegisteredUDCDTO setCanBeRecovered(boolean canBeRecovered) {
this.canBeRecovered = canBeRecovered;
return this;
}
}

View File

@@ -54,7 +54,7 @@ public class PickDataDTO {
if (!UtilityString.isNullOrEmpty(partitaMag)) {
MtbPartitaMag mtbPartitaMag = new MtbPartitaMag()
.setPartitaMag(partitaMag)
.setDataScad(UtilityDate.recognizeDateWithExceptionHandler(dataScad));
.setDataScad(UtilityDate.recognizeLocalDateWithExceptionHandler(dataScad));
manualPickDTO.setMtbPartitaMag(mtbPartitaMag);
}

View File

@@ -22,6 +22,7 @@ public class HttpInterceptor implements Interceptor {
final String PROFILE_DB = SettingsManager.i().getUserSession() == null ? null : SettingsManager.i().getUserSession().getProfileDB();
final String USERNAME = SettingsManager.i().getUser().getUsername();
final String PASSWORD = SettingsManager.i().getUser().getPassword();
final String DEVICE_ID = SettingsManager.i().getUserSession().getDeviceId();
final Request request = chain.request();
final HttpUrl url = request.url().newBuilder()
@@ -36,6 +37,7 @@ public class HttpInterceptor implements Interceptor {
.addHeader("Accept", "*/*")
.addHeader("username", USERNAME != null ? USERNAME : "")
.addHeader("password", PASSWORD != null ? PASSWORD : "")
.addHeader("device_id", DEVICE_ID != null ? DEVICE_ID : "")
.url(url).build();
return chain.proceed(newRequest);

View File

@@ -63,7 +63,7 @@ public class RESTBuilder {
OkHttpClient client = clientBuilder.build();
String endpoint = protocol + "://" + host + ":" + port + "/" + (addEmsApi ? "ems-api/" : "");
String endpoint = protocol + "://" + host + (port > 0 ? ":" + port : "") + "/" + (addEmsApi ? "ems-api/" : "");
Gson gson = new GsonBuilder()

View File

@@ -1,11 +1,11 @@
package it.integry.integrywmsnative.core.rest.consumers;
import com.annimon.stream.Collectors;
import com.annimon.stream.Stream;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
@@ -14,9 +14,14 @@ import javax.inject.Singleton;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.MtbAart;
import it.integry.integrywmsnative.core.model.MtbGrup;
import it.integry.integrywmsnative.core.model.MtbUntMis;
import it.integry.integrywmsnative.core.model.dto.StatoArticoloDTO;
import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.articolo.RetrieveArticoloByCodMartRequestDTO;
import it.integry.integrywmsnative.core.rest.model.articolo.SearchArticoloByBarcodeRequestDTO;
import it.integry.integrywmsnative.core.rest.model.articolo.SearchArticoloByBarcodeResponseDTO;
import it.integry.integrywmsnative.core.rest.model.articolo.UpdateBarcodeImballoRequestDTO;
import it.integry.integrywmsnative.core.utility.UtilityQuery;
import retrofit2.Call;
import retrofit2.Callback;
@@ -31,23 +36,28 @@ public class ArticoloRESTConsumer extends _BaseRESTConsumer {
this.systemRESTConsumer = systemRESTConsumer;
}
public void getByBarcodeProd(String barcodeProd, RunnableArgs<List<MtbAart>> onComplete, RunnableArgs<Exception> onFailed) {
public void searchByBarcode(String barcodeProd, RunnableArgs<List<MtbAart>> onComplete, RunnableArgs<Exception> onFailed) {
ArticoloRESTConsumerService articoloRESTConsumerService = RESTBuilder.getService(ArticoloRESTConsumerService.class);
articoloRESTConsumerService.getByBarcodeProd(barcodeProd).enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<MtbAart>> call, Response<ServiceRESTResponse<MtbAart>> response) {
analyzeAnswer(response, "getByBarcodeProd", (m) -> {
List<MtbAart> aartList = response.body().getEntityList();
aartList = aartList != null ? Stream.of(aartList).filter(x -> x.getFlagStato().equalsIgnoreCase("A")).toList() : null;
onComplete.run(aartList);
}, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<MtbAart>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
var request = new SearchArticoloByBarcodeRequestDTO()
.setBarcode(barcodeProd)
.setOnlyActive(true);
articoloRESTConsumerService
.searchByBarcode(request)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<SearchArticoloByBarcodeResponseDTO>> call, Response<ServiceRESTResponse<SearchArticoloByBarcodeResponseDTO>> response) {
analyzeAnswer(response, "searchByBarcode", (m) -> {
onComplete.run(response.body().getDto().getArts());
}, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<SearchArticoloByBarcodeResponseDTO>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@@ -57,24 +67,28 @@ public class ArticoloRESTConsumer extends _BaseRESTConsumer {
public static void getByCodMartsStatic(List<String> codMartToFind, RunnableArgs<List<MtbAart>> onComplete, RunnableArgs<Exception> onFailed) {
String joinedCods = Stream.of(codMartToFind)
.collect(Collectors.joining(","));
var codMarts = Stream.of(codMartToFind)
.withoutNulls()
.distinct().toList();
ArticoloRESTConsumerService articoloRESTConsumer = RESTBuilder.getService(ArticoloRESTConsumerService.class);
articoloRESTConsumer.getByCodMart(joinedCods).enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<MtbAart>> call, Response<ServiceRESTResponse<MtbAart>> response) {
analyzeAnswer(response, "getByCodMart", (m) -> {
onComplete.run(response.body().getEntityList());
}, onFailed);
}
articoloRESTConsumer
.getByCodMart(new RetrieveArticoloByCodMartRequestDTO()
.setCodMarts(codMarts))
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<MtbAart>> call, Response<ServiceRESTResponse<MtbAart>> response) {
analyzeAnswer(response, "getByCodMart", (m) -> {
onComplete.run(response.body().getEntityList());
}, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<MtbAart>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
@Override
public void onFailure(Call<ServiceRESTResponse<MtbAart>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@@ -99,22 +113,25 @@ public class ArticoloRESTConsumer extends _BaseRESTConsumer {
public void getByCodMart(String codMartToFind, RunnableArgs<MtbAart> onComplete, RunnableArgs<Exception> onFailed) {
ArticoloRESTConsumerService articoloRESTConsumer = RESTBuilder.getService(ArticoloRESTConsumerService.class);
articoloRESTConsumer.getByCodMart(codMartToFind).enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<MtbAart>> call, Response<ServiceRESTResponse<MtbAart>> response) {
analyzeAnswer(response, "getByCodMart", (m) -> {
if (response.body().getEntityList() != null && !response.body().getEntityList().isEmpty()) {
onComplete.run(response.body().getEntityList().get(0));
} else onComplete.run(null);
articoloRESTConsumer.getByCodMart(
new RetrieveArticoloByCodMartRequestDTO()
.setCodMarts(Collections.singletonList(codMartToFind)))
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<MtbAart>> call, Response<ServiceRESTResponse<MtbAart>> response) {
analyzeAnswer(response, "getByCodMart", (m) -> {
if (response.body().getEntityList() != null && !response.body().getEntityList().isEmpty()) {
onComplete.run(response.body().getEntityList().get(0));
} else onComplete.run(null);
}, onFailed);
}
}, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<MtbAart>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
@Override
public void onFailure(Call<ServiceRESTResponse<MtbAart>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@@ -131,8 +148,80 @@ public class ArticoloRESTConsumer extends _BaseRESTConsumer {
Type typeOfObjectsList = new TypeToken<ArrayList<MtbGrup>>() {
}.getType();
this.systemRESTConsumer.processSql("SELECT * FROM mtb_grup " + whereCond, typeOfObjectsList, onComplete, onFailed);
this.systemRESTConsumer.processSql("SELECT * FROM mtb_grup " + whereCond, typeOfObjectsList, onComplete, onFailed);
}
public void getUntMisArts(List<String> inputUntMis, RunnableArgs<List<MtbUntMis>> onComplete, RunnableArgs<Exception> onFailed) {
List<HashMap<String, Object>> whereCondList = Stream.of(inputUntMis)
.distinct()
.withoutNulls()
.map(x -> {
HashMap<String, Object> data = new HashMap<>();
data.put("unt_mis", x);
return data;
})
.toList();
var whereCond = whereCondList.isEmpty() ? "" : " WHERE " + UtilityQuery.concatFieldListInWhereCond(whereCondList);
Type typeOfObjectsList = new TypeToken<ArrayList<MtbUntMis>>() {
}.getType();
this.systemRESTConsumer.processSql("SELECT * FROM mtb_unt_mis " + whereCond, typeOfObjectsList, onComplete, onFailed);
}
public void fillMtbAartsWithMtbUntMis(List<MtbAart> inputMtbAart, RunnableArgs<List<MtbAart>> onComplete, RunnableArgs<Exception> onFailed) {
var inputUntMis = new ArrayList<String>();
if (inputMtbAart != null && !inputMtbAart.isEmpty()) {
inputUntMis.addAll(Stream.of(inputMtbAart)
.map(MtbAart::getUntMis)
.withoutNulls()
.distinct()
.toList());
}
if (inputUntMis.isEmpty()) {
onComplete.run(inputMtbAart);
return;
}
getUntMisArts(inputUntMis, mtbUntMiss -> {
for (var item : inputMtbAart) {
var mtbUntMis = Stream.of(mtbUntMiss).filter(x -> x.getUntMis().equalsIgnoreCase(item.getUntMis()))
.findFirstOrElse(null);
if (mtbUntMis != null)
item.setMtbUntMis(Collections.singletonList(mtbUntMis));
}
onComplete.run(inputMtbAart);
}, onFailed);
}
public void updateBarcodeImballo(String codMart, String newBarcodeImballo, Runnable onComplete, RunnableArgs<Exception> onFailed) {
ArticoloRESTConsumerService articoloRESTConsumerService = RESTBuilder.getService(ArticoloRESTConsumerService.class);
var request = new UpdateBarcodeImballoRequestDTO()
.setCodMart(codMart)
.setNewBarcodeImballo(newBarcodeImballo);
articoloRESTConsumerService
.updateBarcodeImballo(request)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "updateBarcodeImballo", m -> {
onComplete.run();
}, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
}

View File

@@ -5,19 +5,26 @@ import java.util.List;
import it.integry.integrywmsnative.core.model.MtbAart;
import it.integry.integrywmsnative.core.model.dto.StatoArticoloDTO;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.articolo.RetrieveArticoloByCodMartRequestDTO;
import it.integry.integrywmsnative.core.rest.model.articolo.SearchArticoloByBarcodeRequestDTO;
import it.integry.integrywmsnative.core.rest.model.articolo.SearchArticoloByBarcodeResponseDTO;
import it.integry.integrywmsnative.core.rest.model.articolo.UpdateBarcodeImballoRequestDTO;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface ArticoloRESTConsumerService {
@POST("wms/articolo/searchByBarcode")
Call<ServiceRESTResponse<SearchArticoloByBarcodeResponseDTO>> searchByBarcode(@Body() SearchArticoloByBarcodeRequestDTO searchArticoloByBarcodeRequest);
@POST("SM2getArticoloByBarcode")
Call<ServiceRESTResponse<MtbAart>> getByBarcodeProd(@Query("barcode") String barcodeProd);
@POST("wms/articolo/retrieveByCodMart")
Call<ServiceRESTResponse<MtbAart>> getByCodMart(@Body RetrieveArticoloByCodMartRequestDTO retrieveArticoloByCodMartRequest);
@GET("SM2getArticoloByCodMart")
Call<ServiceRESTResponse<MtbAart>> getByCodMart(@Query("codMart") String barcodeProd);
@POST("wms/articolo/updateBarcodeImballo")
Call<ServiceRESTResponse<Void>> updateBarcodeImballo(@Body UpdateBarcodeImballoRequestDTO updateBarcodeImballoRequest);
@GET("getProductLotStatus")
Call<ServiceRESTResponse<List<StatoArticoloDTO>>> getStatoPartita(@Query("codMart") String codMart, @Query("partitaMag") String partitaMag);

View File

@@ -0,0 +1,117 @@
package it.integry.integrywmsnative.core.rest.consumers;
import javax.inject.Singleton;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.MtbColr;
import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.consumers.interfaces.ColliCaricoRESTConsumerInterface;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCResponseDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCResponseDTO;
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowResponseDTO;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
@Singleton
public class ColliAccettazioneRESTConsumer extends _BaseRESTConsumer implements ColliCaricoRESTConsumerInterface {
public void createUDC(CreateUDCRequestDTO createUDCRequestDTO, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed) {
ColliAccettazioneRESTConsumerService colliAccettazioneRESTConsumerService = RESTBuilder.getService(ColliAccettazioneRESTConsumerService.class);
colliAccettazioneRESTConsumerService.createUDC(createUDCRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<CreateUDCResponseDTO>> call, Response<ServiceRESTResponse<CreateUDCResponseDTO>> response) {
analyzeAnswer(response, "accettazione/createUDC", data -> onComplete.run(data.getMtbColt()), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<CreateUDCResponseDTO>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@Override
public void closeUDC(CloseUDCRequestDTO closeUDCRequestDTO, RunnableArgs<CloseUDCResponseDTO> onComplete, RunnableArgs<Exception> onFailed) {
ColliAccettazioneRESTConsumerService colliAccettazioneRESTConsumerService = RESTBuilder.getService(ColliAccettazioneRESTConsumerService.class);
colliAccettazioneRESTConsumerService.closeUDC(closeUDCRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<CloseUDCResponseDTO>> call, Response<ServiceRESTResponse<CloseUDCResponseDTO>> response) {
analyzeAnswer(response, "accettazione/closeUDC", onComplete, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<CloseUDCResponseDTO>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@Override
public void insertUDCRow(InsertUDCRowRequestDTO insertUDCRowRequestDTO, RunnableArgs<MtbColr> onComplete, RunnableArgs<Exception> onFailed) {
ColliAccettazioneRESTConsumerService colliAccettazioneRESTConsumerService = RESTBuilder.getService(ColliAccettazioneRESTConsumerService.class);
colliAccettazioneRESTConsumerService.insertUDCRow(insertUDCRowRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<InsertUDCRowResponseDTO>> call, Response<ServiceRESTResponse<InsertUDCRowResponseDTO>> response) {
analyzeAnswer(response, "accettazione/insertUDCRow", data -> onComplete.run(data.getSavedMtbColr()), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<InsertUDCRowResponseDTO>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@Override
public void editUDCRow(EditUDCRowRequestDTO editUDCRowRequestDTO, RunnableArgs<MtbColr> onComplete, RunnableArgs<Exception> onFailed) {
ColliAccettazioneRESTConsumerService colliAccettazioneRESTConsumerService = RESTBuilder.getService(ColliAccettazioneRESTConsumerService.class);
colliAccettazioneRESTConsumerService.editUDCRow(editUDCRowRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<EditUDCRowResponseDTO>> call, Response<ServiceRESTResponse<EditUDCRowResponseDTO>> response) {
analyzeAnswer(response, "accettazione/editUDCRow", data -> onComplete.run(data.getSavedMtbColr()), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<EditUDCRowResponseDTO>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@Override
public void deleteUDCRow(DeleteUDCRowRequestDTO deleteUDCRowRequestDTO, Runnable onComplete, RunnableArgs<Exception> onFailed) {
ColliAccettazioneRESTConsumerService colliAccettazioneRESTConsumerService = RESTBuilder.getService(ColliAccettazioneRESTConsumerService.class);
colliAccettazioneRESTConsumerService.deleteUDCRow(deleteUDCRowRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "accettazione/deleteUDCRow", data -> onComplete.run(), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
}

View File

@@ -0,0 +1,34 @@
package it.integry.integrywmsnative.core.rest.consumers;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCResponseDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCResponseDTO;
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowResponseDTO;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.POST;
public interface ColliAccettazioneRESTConsumerService {
@POST("wms/accettazione/createUDC")
Call<ServiceRESTResponse<CreateUDCResponseDTO>> createUDC(@Body CreateUDCRequestDTO createUDCRequestDTO);
@POST("wms/accettazione/closeUDC")
Call<ServiceRESTResponse<CloseUDCResponseDTO>> closeUDC(@Body CloseUDCRequestDTO closeUDCRequestDTO);
@POST("wms/accettazione/insertUDCRow")
Call<ServiceRESTResponse<InsertUDCRowResponseDTO>> insertUDCRow(@Body InsertUDCRowRequestDTO insertUDCRowRequestDTO);
@POST("wms/accettazione/editUDCRow")
Call<ServiceRESTResponse<EditUDCRowResponseDTO>> editUDCRow(@Body EditUDCRowRequestDTO editUDCRowRequestDTO);
@POST("wms/accettazione/deleteUDCRow")
Call<ServiceRESTResponse<Void>> deleteUDCRow(@Body DeleteUDCRowRequestDTO deleteUDCRowRequestDTO);
}

View File

@@ -6,28 +6,107 @@ import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.MtbColr;
import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.consumers.interfaces.ColliCaricoRESTConsumerInterface;
import it.integry.integrywmsnative.core.rest.consumers.interfaces.ColliScaricoRESTConsumerInterface;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.uds.CanUDSBeDeletedRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCResponseDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCResponseDTO;
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CreateUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CreateUDSResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.EditUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.EditUDSRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDSRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.PrintUDSRequestDTO;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
@Singleton
public class ColliLavorazioneRESTConsumer extends _BaseRESTConsumer implements ColliScaricoRESTConsumerInterface {
public class ColliLavorazioneRESTConsumer extends _BaseRESTConsumer implements ColliCaricoRESTConsumerInterface, ColliScaricoRESTConsumerInterface {
@Override
public void createUDC(CreateUDCRequestDTO createUDCRequestDTO, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed) {
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = RESTBuilder.getService(ColliLavorazioneRESTConsumerService.class);
colliLavorazioneRESTConsumerService.createUDC(createUDCRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<CreateUDCResponseDTO>> call, Response<ServiceRESTResponse<CreateUDCResponseDTO>> response) {
analyzeAnswer(response, "lavorazione/createUDC", data -> onComplete.run(data.getMtbColt()), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<CreateUDCResponseDTO>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@Override
public void closeUDC(CloseUDCRequestDTO closeUDCRequestDTO, RunnableArgs<CloseUDCResponseDTO> onComplete, RunnableArgs<Exception> onFailed) {
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = RESTBuilder.getService(ColliLavorazioneRESTConsumerService.class);
colliLavorazioneRESTConsumerService.closeUDC(closeUDCRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<CloseUDCResponseDTO>> call, Response<ServiceRESTResponse<CloseUDCResponseDTO>> response) {
analyzeAnswer(response, "lavorazione/closeUDC", onComplete, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<CloseUDCResponseDTO>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@Override
public void insertUDCRow(InsertUDCRowRequestDTO insertUDCRowRequestDTO, RunnableArgs<MtbColr> onComplete, RunnableArgs<Exception> onFailed) {
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = RESTBuilder.getService(ColliLavorazioneRESTConsumerService.class);
colliLavorazioneRESTConsumerService.insertUDCRow(insertUDCRowRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<InsertUDCRowResponseDTO>> call, Response<ServiceRESTResponse<InsertUDCRowResponseDTO>> response) {
analyzeAnswer(response, "lavorazione/insertUDCRow", data -> onComplete.run(data.getSavedMtbColr()), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<InsertUDCRowResponseDTO>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@Override
public void editUDCRow(EditUDCRowRequestDTO editUDCRowRequestDTO, RunnableArgs<MtbColr> onComplete, RunnableArgs<Exception> onFailed) {
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = RESTBuilder.getService(ColliLavorazioneRESTConsumerService.class);
colliLavorazioneRESTConsumerService.editUDCRow(editUDCRowRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<EditUDCRowResponseDTO>> call, Response<ServiceRESTResponse<EditUDCRowResponseDTO>> response) {
analyzeAnswer(response, "lavorazione/editUDCRow", data -> onComplete.run(data.getSavedMtbColr()), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<EditUDCRowResponseDTO>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
public void createUDS(CreateUDSRequestDTO createUDSRequestDTO, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed) {
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = RESTBuilder.getService(ColliLavorazioneRESTConsumerService.class);
@@ -64,63 +143,6 @@ public class ColliLavorazioneRESTConsumer extends _BaseRESTConsumer implements C
});
}
@Override
public void canUDSBeDeleted(CanUDSBeDeletedRequestDTO canUDSBeDeletedRequestDTO, RunnableArgs<Boolean> onComplete, RunnableArgs<Exception> onFailed) {
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = RESTBuilder.getService(ColliLavorazioneRESTConsumerService.class);
colliLavorazioneRESTConsumerService.canUDSBeDeleted(canUDSBeDeletedRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Boolean>> call, Response<ServiceRESTResponse<Boolean>> response) {
analyzeAnswer(response, "lavorazione/canUDSBeDeleted", onComplete, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Boolean>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@Override
public void deleteUDS(DeleteUDSRequestDTO deleteUDSRequestDTO, Runnable onComplete, RunnableArgs<Exception> onFailed) {
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = RESTBuilder.getService(ColliLavorazioneRESTConsumerService.class);
colliLavorazioneRESTConsumerService.deleteUDS(deleteUDSRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "lavorazione/deleteUDS", Void -> onComplete.run(), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@Override
public void printUDS(PrintUDSRequestDTO printUDSRequestDTO, Runnable onComplete, RunnableArgs<Exception> onFailed) {
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = RESTBuilder.getService(ColliLavorazioneRESTConsumerService.class);
colliLavorazioneRESTConsumerService.printUDS(printUDSRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "lavorazione/printUDS", Void -> onComplete.run(), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
@Override
public void insertUDSRow(InsertUDSRowRequestDTO insertUDSRowRequestDTO, RunnableArgs<MtbColr> onComplete, RunnableArgs<Exception> onFailed) {
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = RESTBuilder.getService(ColliLavorazioneRESTConsumerService.class);
@@ -174,4 +196,21 @@ public class ColliLavorazioneRESTConsumer extends _BaseRESTConsumer implements C
});
}
@Override
public void deleteUDCRow(DeleteUDCRowRequestDTO deleteUDCRowRequestDTO, Runnable onComplete, RunnableArgs<Exception> onFailed) {
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = RESTBuilder.getService(ColliLavorazioneRESTConsumerService.class);
colliLavorazioneRESTConsumerService.deleteUDCRow(deleteUDCRowRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "lavorazione/deleteUDCRow", data -> onComplete.run(), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
}

View File

@@ -1,46 +1,58 @@
package it.integry.integrywmsnative.core.rest.consumers;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.uds.CanUDSBeDeletedRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCResponseDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCResponseDTO;
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CreateUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CreateUDSResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.EditUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.EditUDSRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDSRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.PrintUDSRequestDTO;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.POST;
public interface ColliLavorazioneRESTConsumerService {
@POST("wms/lavorazione/createUDC")
Call<ServiceRESTResponse<CreateUDCResponseDTO>> createUDC(@Body CreateUDCRequestDTO createUDCRequestDTO);
@POST("wms/lavorazione/createUDS")
Call<ServiceRESTResponse<CreateUDSResponseDTO>> createUDS(@Body CreateUDSRequestDTO createUDSRequestDTO);
@POST("wms/lavorazione/closeUDC")
Call<ServiceRESTResponse<CloseUDCResponseDTO>> closeUDC(@Body CloseUDCRequestDTO createUDCRequestDTO);
@POST("wms/lavorazione/closeUDS")
Call<ServiceRESTResponse<CloseUDSResponseDTO>> closeUDS(@Body CloseUDSRequestDTO createUDSRequestDTO);
@POST("wms/lavorazione/canUDSBeDeleted")
Call<ServiceRESTResponse<Boolean>> canUDSBeDeleted(@Body CanUDSBeDeletedRequestDTO canUDSBeDeletedRequestDTO);
@POST("wms/lavorazione/deleteUDS")
Call<ServiceRESTResponse<Void>> deleteUDS(@Body DeleteUDSRequestDTO deleteUDSRequestDTO);
@POST("wms/lavorazione/printUDS")
Call<ServiceRESTResponse<Void>> printUDS(@Body PrintUDSRequestDTO printUDSRequestDTO);
@POST("wms/lavorazione/insertUDCRow")
Call<ServiceRESTResponse<InsertUDCRowResponseDTO>> insertUDCRow(@Body InsertUDCRowRequestDTO insertUDCRowRequestDTO);
@POST("wms/lavorazione/insertUDSRow")
Call<ServiceRESTResponse<InsertUDSRowResponseDTO>> insertUDSRow(@Body InsertUDSRowRequestDTO insertUDSRowRequestDTO);
@POST("wms/lavorazione/editUDCRow")
Call<ServiceRESTResponse<EditUDCRowResponseDTO>> editUDCRow(@Body EditUDCRowRequestDTO editUDCRowRequestDTO);
@POST("wms/lavorazione/editUDSRow")
Call<ServiceRESTResponse<EditUDSRowResponseDTO>> editUDSRow(@Body EditUDSRowRequestDTO editUDSRowRequestDTO);
@POST("wms/lavorazione/deleteUDSRow")
Call<ServiceRESTResponse<Void>> deleteUDSRow(@Body DeleteUDSRowRequestDTO deleteUDSRowRequestDTO);
@POST("wms/lavorazione/deleteUDCRow")
Call<ServiceRESTResponse<Void>> deleteUDCRow(@Body DeleteUDCRowRequestDTO deleteUDCRowRequestDTO);
}

View File

@@ -31,6 +31,9 @@ import it.integry.integrywmsnative.core.rest.model.RettificaULDTO;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.SpostaArtsTraULRequestDTO;
import it.integry.integrywmsnative.core.rest.model.VersamentoAutomaticoULResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CanULBeDeletedRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteULRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.PrintULRequestDTO;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.core.utility.UtilityBarcode;
import it.integry.integrywmsnative.core.utility.UtilityDate;
@@ -58,7 +61,9 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer {
public void saveCollo(MtbColt mtbColtToSave, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed) {
MtbColt mtbColtToSaveClone = (MtbColt) mtbColtToSave.clone();
mtbColtToSave.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE);
mtbColtToSaveClone.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE);
mtbColtToSaveClone.setOnlyPkMaster(false);
mtbColtToSaveClone.setMtbColr(new ObservableArrayList<>());
@@ -269,14 +274,6 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer {
saveCollo(mtbColtToCreate, onComplete, onFailed);
}
public void deleteCollo(MtbColt mtbColtToDelete, Runnable onComplete, RunnableArgs<Exception> onFailed) {
mtbColtToDelete.setOperation(CommonModelConsts.OPERATION.DELETE);
saveCollo(mtbColtToDelete, value -> {
if (onComplete != null) onComplete.run();
}, onFailed);
}
public void getBySSCC(String ssccString, boolean onlyResiduo, boolean throwExcIfNull, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed) {
ColliMagazzinoRESTConsumerService colliMagazzinoRESTConsumerService = RESTBuilder.getService(ColliMagazzinoRESTConsumerService.class);
colliMagazzinoRESTConsumerService.getColloByBarcode(ssccString, onlyResiduo, throwExcIfNull).enqueue(new Callback<>() {
@@ -449,52 +446,6 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer {
}
public void canLUBeDeleted(MtbColt mtbColt, RunnableArgs<Boolean> onComplete, RunnableArgs<Exception> onFailed) {
HashMap<String, Object> params = new HashMap<>();
params.put("mtb_colt.gestione", mtbColt.getGestione());
params.put("mtb_colt.ser_collo", mtbColt.getSerCollo());
params.put("mtb_colt.num_collo", mtbColt.getNumCollo());
params.put("mtb_colt.data_collo", mtbColt.getDataColloD());
String whereCond = UtilityQuery.concatFieldsInWhereCond(params);
String query = "SELECT mtb_colt.* " +
"FROM mtb_colt " +
"LEFT OUTER JOIN " +
" (SELECT gestione, " +
" data_collo, " +
" num_collo, " +
" ser_collo, " +
" cod_mart, " +
" cod_col, " +
" cod_tagl, " +
" partita_mag, " +
" SUM(qta_col) sum_qta_col " +
" FROM mtb_colr " +
" GROUP BY gestione, " +
" data_collo, " +
" num_collo, " +
" ser_collo, " +
" cod_mart, " +
" cod_col, " +
" cod_tagl, " +
" partita_mag) sum_mtb_colr ON mtb_colt.gestione = sum_mtb_colr.gestione " +
"AND mtb_colt.num_collo = sum_mtb_colr.num_collo " +
"AND mtb_colt.data_collo = sum_mtb_colr.data_collo " +
"AND mtb_colt.ser_collo = sum_mtb_colr.ser_collo " +
"AND sum_mtb_colr.sum_qta_col > 0 " +
"WHERE sum_mtb_colr.num_collo IS NULL " +
" AND " + whereCond;
Type typeOfObjectsList = new TypeToken<ArrayList<MtbColt>>() {
}.getType();
this.mSystemRESTConsumer.<ArrayList<MtbColt>>processSql(query, typeOfObjectsList, data -> {
onComplete.run(data != null && data.size() > 0);
}, onFailed);
}
public static void retrieveBasketColli(RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
ColliMagazzinoRESTConsumerService colliMagazzinoRESTConsumerService = RESTBuilder.getService(ColliMagazzinoRESTConsumerService.class);
@@ -698,4 +649,66 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer {
onComplete.run(data.get(0));
}, onFailed);
}
public void canULBeDeleted(MtbColt mtbColt, RunnableArgs<Boolean> onComplete, RunnableArgs<Exception> onFailed) {
CanULBeDeletedRequestDTO canULBeDeletedRequestDTO = new CanULBeDeletedRequestDTO()
.setMtbColt(mtbColt);
ColliMagazzinoRESTConsumerService colliMagazzinoRESTConsumerService = RESTBuilder.getService(ColliMagazzinoRESTConsumerService.class);
colliMagazzinoRESTConsumerService.canULBeDeleted(canULBeDeletedRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Boolean>> call, Response<ServiceRESTResponse<Boolean>> response) {
analyzeAnswer(response, "generic/canULBeDeleted", onComplete, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Boolean>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
public void deleteUL(DeleteULRequestDTO deleteULRequestDTO, Runnable onComplete, RunnableArgs<Exception> onFailed) {
ColliMagazzinoRESTConsumerService colliMagazzinoRESTConsumerService = RESTBuilder.getService(ColliMagazzinoRESTConsumerService.class);
colliMagazzinoRESTConsumerService.deleteUL(deleteULRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "generic/deleteUL", Void -> onComplete.run(), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
public void printUL(PrintULRequestDTO printULRequestDTO, Runnable onComplete, RunnableArgs<Exception> onFailed) {
ColliMagazzinoRESTConsumerService colliMagazzinoRESTConsumerService = RESTBuilder.getService(ColliMagazzinoRESTConsumerService.class);
colliMagazzinoRESTConsumerService.printUL(printULRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "generic/printUL", Void -> onComplete.run(), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
}

View File

@@ -8,6 +8,9 @@ import it.integry.integrywmsnative.core.rest.model.RettificaULDTO;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.SpostaArtsTraULRequestDTO;
import it.integry.integrywmsnative.core.rest.model.VersamentoAutomaticoULResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CanULBeDeletedRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteULRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.PrintULRequestDTO;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.GET;
@@ -43,4 +46,14 @@ public interface ColliMagazzinoRESTConsumerService {
@POST("wms/confirmGiacenzaUL")
Call<ServiceRESTResponse<Object>> confirmGiacenzaUL(@Body MtbColt mtbColt);
@POST("wms/generic/canULBeDeleted")
Call<ServiceRESTResponse<Boolean>> canULBeDeleted(@Body CanULBeDeletedRequestDTO canULBeDeletedRequestDTO);
@POST("wms/generic/deleteUL")
Call<ServiceRESTResponse<Void>> deleteUL(@Body DeleteULRequestDTO deleteULRequestDTO);
@POST("wms/generic/printUL")
Call<ServiceRESTResponse<Void>> printUL(@Body PrintULRequestDTO printULRequestDTO);
}

View File

@@ -8,18 +8,15 @@ import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.consumers.interfaces.ColliScaricoRESTConsumerInterface;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.uds.CanUDSBeDeletedRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CreateUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CreateUDSResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.EditUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.EditUDSRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDSRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.PrintUDSRequestDTO;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
@@ -64,60 +61,6 @@ public class ColliSpedizioneRESTConsumer extends _BaseRESTConsumer implements Co
}
public void canUDSBeDeleted(CanUDSBeDeletedRequestDTO canUDSBeDeletedRequestDTO, RunnableArgs<Boolean> onComplete, RunnableArgs<Exception> onFailed) {
ColliSpedizioneRESTConsumerService colliSpedizioneRESTConsumerService = RESTBuilder.getService(ColliSpedizioneRESTConsumerService.class);
colliSpedizioneRESTConsumerService.canUDSBeDeleted(canUDSBeDeletedRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Boolean>> call, Response<ServiceRESTResponse<Boolean>> response) {
analyzeAnswer(response, "spedizione/canUDSBeDeleted", onComplete, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Boolean>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
public void deleteUDS(DeleteUDSRequestDTO deleteUDSRequestDTO, Runnable onComplete, RunnableArgs<Exception> onFailed) {
ColliSpedizioneRESTConsumerService colliSpedizioneRESTConsumerService = RESTBuilder.getService(ColliSpedizioneRESTConsumerService.class);
colliSpedizioneRESTConsumerService.deleteUDS(deleteUDSRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "spedizione/deleteUDS", Void -> onComplete.run(), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
public void printUDS(PrintUDSRequestDTO printUDSRequestDTO, Runnable onComplete, RunnableArgs<Exception> onFailed) {
ColliSpedizioneRESTConsumerService colliSpedizioneRESTConsumerService = RESTBuilder.getService(ColliSpedizioneRESTConsumerService.class);
colliSpedizioneRESTConsumerService.printUDS(printUDSRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "spedizione/printUDS", Void -> onComplete.run(), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
public void insertUDSRow(InsertUDSRowRequestDTO insertUDSRowRequestDTO, RunnableArgs<MtbColr> onComplete, RunnableArgs<Exception> onFailed) {
ColliSpedizioneRESTConsumerService colliSpedizioneRESTConsumerService = RESTBuilder.getService(ColliSpedizioneRESTConsumerService.class);

View File

@@ -1,18 +1,16 @@
package it.integry.integrywmsnative.core.rest.consumers;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.uds.CanUDSBeDeletedRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CreateUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CreateUDSResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.EditUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.EditUDSRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDSRowResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.PrintUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.PrintULRequestDTO;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.POST;
@@ -25,14 +23,8 @@ public interface ColliSpedizioneRESTConsumerService {
@POST("wms/spedizione/closeUDS")
Call<ServiceRESTResponse<CloseUDSResponseDTO>> closeUDS(@Body CloseUDSRequestDTO createUDSRequestDTO);
@POST("wms/spedizione/canUDSBeDeleted")
Call<ServiceRESTResponse<Boolean>> canUDSBeDeleted(@Body CanUDSBeDeletedRequestDTO canUDSBeDeletedRequestDTO);
@POST("wms/spedizione/deleteUDS")
Call<ServiceRESTResponse<Void>> deleteUDS(@Body DeleteUDSRequestDTO deleteUDSRequestDTO);
@POST("wms/spedizione/printUDS")
Call<ServiceRESTResponse<Void>> printUDS(@Body PrintUDSRequestDTO printUDSRequestDTO);
Call<ServiceRESTResponse<Void>> printUDS(@Body PrintULRequestDTO printULRequestDTO);
@POST("wms/spedizione/insertUDSRow")
Call<ServiceRESTResponse<InsertUDSRowResponseDTO>> insertUDSRow(@Body InsertUDSRowRequestDTO insertUDSRowRequestDTO);

View File

@@ -53,9 +53,9 @@ public class DocumentRESTConsumer extends _BaseRESTConsumer {
public void loadDocumentoAvailableArts(String codDtip, String codMgrp, RunnableArgs<RetrieveDocumentoArtsResponseDTO> onComplete, RunnableArgs<Exception> onFailed) {
public void loadDocumentAvailableArts(String codDtip, String codMgrp, String codAnagForn, RunnableArgs<RetrieveDocumentoArtsResponseDTO> onComplete, RunnableArgs<Exception> onFailed) {
var inventarioRESTConsumerService = RESTBuilder.getService(DocumentiRESTConsumerService.class);
inventarioRESTConsumerService.retrieveArts(codDtip, codMgrp)
inventarioRESTConsumerService.retrieveArts(codDtip, codMgrp, codAnagForn)
.enqueue(new Callback<>() {
@Override
public void onResponse(@NonNull Call<ServiceRESTResponse<RetrieveDocumentoArtsResponseDTO>> call, @NonNull Response<ServiceRESTResponse<RetrieveDocumentoArtsResponseDTO>> response) {

View File

@@ -26,6 +26,7 @@ public interface DocumentiRESTConsumerService {
@GET("wms/documento/arts")
Call<ServiceRESTResponse<RetrieveDocumentoArtsResponseDTO>> retrieveArts(
@Query("codDtip") String codDtip,
@Query("codMgrp") String codMgrp);
@Query("codMgrp") String codMgrp,
@Query("codAnagForn") String codAnagForn);
}

View File

@@ -3,6 +3,7 @@ package it.integry.integrywmsnative.core.rest.consumers;
import android.util.Log;
import java.util.List;
import java.util.stream.Collectors;
import javax.inject.Singleton;
@@ -11,6 +12,7 @@ import it.integry.integrywmsnative.core.model.StbGestSetup;
import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.model.GestSetupDTO;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.settings.StbGestSetupReader;
import it.integry.integrywmsnative.core.utility.UtilityLogger;
import retrofit2.Call;
import retrofit2.Callback;
@@ -24,18 +26,18 @@ public class GestSetupRESTConsumer extends _BaseRESTConsumer {
service.getGestSetupValue(gestName, sectionName, keySection)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<GestSetupDTO>> call, Response<ServiceRESTResponse<GestSetupDTO>> response) {
analyzeAnswer(response, "GestSetup", onComplete, onFailed);
}
@Override
public void onResponse(Call<ServiceRESTResponse<GestSetupDTO>> call, Response<ServiceRESTResponse<GestSetupDTO>> response) {
analyzeAnswer(response, "GestSetup", onComplete, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<GestSetupDTO>> call, Throwable t) {
Log.e("GestSetup", t.toString());
// UtilityLogger.errorMe(new Exception(t));
if (onFailed != null) onFailed.run(new Exception(t));
}
});
@Override
public void onFailure(Call<ServiceRESTResponse<GestSetupDTO>> call, Throwable t) {
Log.e("GestSetup", t.toString());
// UtilityLogger.errorMe(new Exception(t));
if (onFailed != null) onFailed.run(new Exception(t));
}
});
}
public void getBooleanValue(String gestName, String sectionName, String keySection, RunnableArgs<Boolean> onComplete, RunnableArgs<Exception> onFailed) {
@@ -76,12 +78,25 @@ public class GestSetupRESTConsumer extends _BaseRESTConsumer {
}
public void getValues(String codMdep, List<StbGestSetup> stbGestSetupList, RunnableArgs<List<StbGestSetup>> onComplete, RunnableArgs<Exception> onFailed) {
public void getValues(String codMdep, List<StbGestSetupReader> stbGestSetupList, RunnableArgs<List<StbGestSetupReader>> onComplete, RunnableArgs<Exception> onFailed) {
var stbGestSetups = stbGestSetupList.stream().map(x -> (StbGestSetup) x).collect(Collectors.toList());
GestSetupRESTConsumerService service = RESTBuilder.getService(GestSetupRESTConsumerService.class);
service.getGestSetupValues(codMdep, stbGestSetupList).enqueue(new Callback<>() {
service.getGestSetupValues(codMdep, stbGestSetups).enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<List<StbGestSetup>>> call, Response<ServiceRESTResponse<List<StbGestSetup>>> response) {
analyzeAnswer(response, "GestSetup", onComplete, onFailed);
analyzeAnswer(response, "GestSetup", data -> {
for (StbGestSetup stbGestSetup : data) {
stbGestSetupList.stream().filter(x -> stbGestSetup.getGestName().equalsIgnoreCase(x.getGestName()) &&
stbGestSetup.getSection().equalsIgnoreCase(x.getSection()) &&
stbGestSetup.getKeySection().equalsIgnoreCase(x.getKeySection()))
.findFirst()
.ifPresent(x -> x.setValue(stbGestSetup.getValue()));
}
onComplete.run(stbGestSetupList);
}, onFailed);
}
@Override

View File

@@ -3,6 +3,7 @@ package it.integry.integrywmsnative.core.rest.consumers;
import com.annimon.stream.Optional;
import com.annimon.stream.Stream;
import java.util.ArrayList;
import java.util.List;
import javax.inject.Singleton;
@@ -13,6 +14,7 @@ import it.integry.integrywmsnative.core.model.MtbDepoPosizione;
import it.integry.integrywmsnative.core.model.MvwSitArtUdcDetInventario;
import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.giacenza.InstantItemSituationIncomingItemDto;
import it.integry.integrywmsnative.core.rest.model.giacenza.InstantItemSituationResponseDto;
import it.integry.integrywmsnative.core.utility.UtilityString;
import retrofit2.Call;
@@ -120,7 +122,10 @@ public class GiacenzaRESTConsumer extends _BaseRESTConsumer {
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<InstantItemSituationResponseDto>> call, Response<ServiceRESTResponse<InstantItemSituationResponseDto>> response) {
analyzeAnswer(response, "getInstantItemSituation", onComplete, onFailed);
analyzeAnswer(response, "getInstantItemSituation", data -> {
fillInstantItemSituationWithMtbAarts(data, onComplete, onFailed);
}, onFailed);
}
@Override
@@ -130,5 +135,54 @@ public class GiacenzaRESTConsumer extends _BaseRESTConsumer {
});
}
private void fillInstantItemSituationWithMtbAarts(InstantItemSituationResponseDto data, RunnableArgs<InstantItemSituationResponseDto> onComplete, RunnableArgs<Exception> onFailed) {
var inputCodMarts = new ArrayList<String>();
if (data.getIncomingItems() != null && !data.getIncomingItems().isEmpty()) {
inputCodMarts.addAll(Stream.of(data.getIncomingItems())
.map(InstantItemSituationIncomingItemDto::getCodMart)
.toList());
}
if (data.getAvailableItems() != null && !data.getAvailableItems().isEmpty()) {
inputCodMarts.addAll(Stream.of(data.getAvailableItems())
.map(MvwSitArtUdcDetInventario::getCodMart)
.toList());
}
if (inputCodMarts.isEmpty()) {
onComplete.run(data);
return;
}
mArticoloRESTConsumer.getByCodMarts(inputCodMarts, mtbAarts -> {
mArticoloRESTConsumer.fillMtbAartsWithMtbUntMis(mtbAarts, newMtbAarts -> {
if (data.getIncomingItems() != null && !data.getIncomingItems().isEmpty()) {
for (var item : data.getIncomingItems()) {
var mtbAart = Stream.of(newMtbAarts).filter(x -> x.getCodMart().equalsIgnoreCase(item.getCodMart()))
.findFirstOrElse(null);
if (mtbAart != null)
item.setMtbAart(mtbAart);
}
}
if (data.getAvailableItems() != null && !data.getAvailableItems().isEmpty()) {
for (var item : data.getAvailableItems()) {
var mtbAart = Stream.of(newMtbAarts).filter(x -> x.getCodMart().equalsIgnoreCase(item.getCodMart()))
.findFirstOrElse(null);
if (mtbAart != null)
item.setMtbAart(mtbAart);
}
}
onComplete.run(data);
}, onFailed);
}, onFailed);
}
}

View File

@@ -70,7 +70,7 @@ public class InventarioRESTConsumer extends _BaseRESTConsumer {
var request = new InsertInventarioRequestDTO()
.setMtbInvent(inventarioToInsert);
var inventarioRESTConsumerService = RESTBuilder.getService(InventarioRESTConsumerService.class, 120);
var inventarioRESTConsumerService = RESTBuilder.getService(InventarioRESTConsumerService.class, 300);
inventarioRESTConsumerService
.insert(inventarioToInsert.getIdInventario(), request)
.enqueue(new Callback<>() {

View File

@@ -61,7 +61,10 @@ public class OrdiniRESTConsumer extends _BaseRESTConsumer {
.filter(x -> !UtilityString.isNullOrEmpty(x.getPartitaMag()))
.forEach(x -> {
if (!Stream.of(batchLotsToSearch).anyMatch(batchLotToSearch -> batchLotToSearch.getCodMart().equalsIgnoreCase(x.getCodMart()) && batchLotToSearch.getPartitaMag().equalsIgnoreCase(x.getPartitaMag()))) {
if (!Stream.of(batchLotsToSearch)
.anyMatch(batchLotToSearch ->
batchLotToSearch.getCodMart().equalsIgnoreCase(x.getCodMart()) &&
batchLotToSearch.getPartitaMag().equalsIgnoreCase(x.getPartitaMag()))) {
MtbPartitaMag mtbPartitaMag = new MtbPartitaMag()
.setCodMart(x.getCodMart())
.setPartitaMag(x.getPartitaMag());

View File

@@ -2,8 +2,6 @@ package it.integry.integrywmsnative.core.rest.consumers;
import android.util.Log;
import com.annimon.stream.Stream;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
@@ -13,8 +11,7 @@ import javax.inject.Singleton;
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine;
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
import it.integry.integrywmsnative.core.data_store.db.view_model.ArticoloDTO;
import it.integry.integrywmsnative.core.data_store.db.view_model.GrigliaDTO;
import it.integry.integrywmsnative.core.data_store.db.view_model.OrdiniAcquistoGrigliaDTO;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
@@ -37,47 +34,23 @@ public class PVOrdiniAcquistoRESTConsumer extends _BaseRESTConsumer {
this.magazzinoRESTConsumer = magazzinoRESTConsumer;
}
public void getArticoliListino(String codAlis, RunnableArgs<GrigliaDTO> onSuccess, RunnableArgs<Exception> onFailed) {
public void retrieveArticoli(String codAlis, String codMdep, RunnableArgs<OrdiniAcquistoGrigliaDTO> onSuccess, RunnableArgs<Exception> onFailed) {
PVOrdiniAcquistoRESTConsumerService ordiniARestService = RESTBuilder.getService(PVOrdiniAcquistoRESTConsumerService.class, 300);
ordiniARestService
.getArticoliListino(codAlis)
ordiniARestService.retrieveArticoli(codAlis, codMdep, null)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<GrigliaDTO>> call, Response<ServiceRESTResponse<GrigliaDTO>> response) {
analyzeAnswer(response, "getArticoliListino", griglia -> {
public void onResponse(Call<ServiceRESTResponse<OrdiniAcquistoGrigliaDTO>> call, Response<ServiceRESTResponse<OrdiniAcquistoGrigliaDTO>> response) {
var startTime = new Date().getTime();
analyzeAnswer(response, "retrieveArticoliOrdine", articoliOrdineWrapper -> {
UtilityThread.executeParallel(() -> {
var startTime = new Date().getTime();
List<ArticoloDTO> listaArticoli = new ArrayList<>();
Stream.of(griglia.getGrigliaAcquistiChild())
.groupBy(ArticoloDTO::getCodMart)
.forEach(entry -> {
if (entry.getValue().size() == 1) {
listaArticoli.add(entry.getValue().get(0));
} else {
for (ArticoloDTO articolo : entry.getValue()) {
if (!articolo.getBarCode().endsWith(articolo.getCodMart())) {
listaArticoli.add(articolo);
}
}
}
});
griglia.setGrigliaAcquistiChild(listaArticoli);
Log.d("LOADING TIME 1", "MS: " + (new Date().getTime() - startTime));
onSuccess.run(griglia);
onSuccess.run(articoliOrdineWrapper);
}, false);
}, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<GrigliaDTO>> call, Throwable t) {
public void onFailure(Call<ServiceRESTResponse<OrdiniAcquistoGrigliaDTO>> call, Throwable t) {
Log.e("getArticoliListino_pv", t.toString());
UtilityLogger.error(new Exception(t));
onFailed.run(new Exception(t));
@@ -85,7 +58,31 @@ public class PVOrdiniAcquistoRESTConsumer extends _BaseRESTConsumer {
});
}
public void saveOrdine(Ordine ordine, List<ArticoloOrdine> articoli, RunnableArgs<Ordine> onSuccess, RunnableArgs<Exception> onFailed) {
public void retrieveArticolo(String codAlis, String codMdep, String barcode, RunnableArgs<OrdiniAcquistoGrigliaDTO> onSuccess, RunnableArgs<Exception> onFailed) {
PVOrdiniAcquistoRESTConsumerService ordiniARestService = RESTBuilder.getService(PVOrdiniAcquistoRESTConsumerService.class, 300);
ordiniARestService.retrieveArticoli(codAlis, codMdep, barcode)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<OrdiniAcquistoGrigliaDTO>> call, Response<ServiceRESTResponse<OrdiniAcquistoGrigliaDTO>> response) {
var startTime = new Date().getTime();
analyzeAnswer(response, "retrieveArticoliOrdine", articoliOrdineWrapper -> {
UtilityThread.executeParallel(() -> {
Log.d("LOADING TIME 1", "MS: " + (new Date().getTime() - startTime));
onSuccess.run(articoliOrdineWrapper);
}, false);
}, onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<OrdiniAcquistoGrigliaDTO>> call, Throwable t) {
Log.e("getArticoliListino_pv", t.toString());
UtilityLogger.error(new Exception(t));
onFailed.run(new Exception(t));
}
});
}
public void saveOrdine(Ordine ordine, List<ArticoloOrdine> articoli, String codMdep, RunnableArgs<Ordine> onSuccess, RunnableArgs<Exception> onFailed) {
SaveDTO saveDTO = new SaveDTO();
OrdineDTO ordineDTO = new OrdineDTO();
List<ArtDTO> artRows = new ArrayList<>();
@@ -101,21 +98,36 @@ public class PVOrdiniAcquistoRESTConsumer extends _BaseRESTConsumer {
saveDTO.setGestione("O");
saveDTO.setOrdineDTO(ordineDTO);
PVOrdiniAcquistoRESTConsumerService ordiniARestService = RESTBuilder.getService(PVOrdiniAcquistoRESTConsumerService.class, 300);
ordiniARestService.save(codMdep, saveDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Object>> call, Response<ServiceRESTResponse<Object>> response) {
var startTime = new Date().getTime();
analyzeAnswer(response, "retrieveArticoliOrdine", articoliOrdineWrapper -> {
UtilityThread.executeParallel(() -> {
// if (data == null) {
// onFailed.run(new Exception("Nessun ordine generato"));
// return;
// }
ordine.setTransmitted(true);
ordine.setTransmissionDate(UtilityDate.getDateInstance());
// ordine.setGestione(data.getGestione());
// ordine.setDataOrdS(data.getDataOrd());
// ordine.setCodMdep(data.getCodMdep());
// ordine.setNumOrd(data.getNumOrd());
onSuccess.run(ordine);
}, false);
}, onFailed);
}
magazzinoRESTConsumer.saveOrdine(saveDTO, data -> {
if (data == null) {
onFailed.run(new Exception("Nessun ordine generato"));
return;
}
ordine.setTransmitted(true);
ordine.setTransmissionDate(UtilityDate.getDateInstance());
ordine.setGestione(data.getGestione());
ordine.setDataOrdS(data.getDataOrd());
ordine.setCodMdep(data.getCodMdep());
ordine.setNumOrd(data.getNumOrd());
onSuccess.run(ordine);
}, onFailed);
@Override
public void onFailure(Call<ServiceRESTResponse<Object>> call, Throwable t) {
Log.e("saveOrdine", t.toString());
UtilityLogger.error(new Exception(t));
onFailed.run(new Exception(t));
}
});
}
@@ -131,6 +143,7 @@ public class PVOrdiniAcquistoRESTConsumer extends _BaseRESTConsumer {
dto.setSystemNote(art.getSystemNote());
dto.setQta(BigDecimal.valueOf(art.getQtaOrd()));
dto.setQtaCnf(BigDecimal.valueOf(art.getQtaCnf()));
dto.setCodAlis(art.getCodAlis());
dto.setColli(BigDecimal.ZERO);
return dto;
}

View File

@@ -1,13 +1,18 @@
package it.integry.integrywmsnative.core.rest.consumers;
import it.integry.integrywmsnative.core.data_store.db.view_model.GrigliaDTO;
import it.integry.integrywmsnative.core.data_store.db.view_model.OrdiniAcquistoGrigliaDTO;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.gest.contab_doc_interni.dto.SaveDTO;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface PVOrdiniAcquistoRESTConsumerService {
@GET("wms/ordini-acquisto/articoli")
Call<ServiceRESTResponse<OrdiniAcquistoGrigliaDTO>> retrieveArticoli(@Query("chiaveGriglia") String codAlis, @Query("codMdep") String codMdep, @Query("barcodeArt") String barcode);
@POST("SM2GetElencoArticoli")
Call<ServiceRESTResponse<GrigliaDTO>> getArticoliListino(@Query("chiaveGriglia") String codAlis);
@POST("wms/ordini-acquisto/save")
Call<ServiceRESTResponse<Object>> save(@Query("codMdep") String codMdep, @Body() SaveDTO saveDTO);
}

View File

@@ -29,6 +29,7 @@ import it.integry.integrywmsnative.core.rest.model.AvailableCodMdepsDTO;
import it.integry.integrywmsnative.core.rest.model.MailRequestDTO;
import it.integry.integrywmsnative.core.rest.model.NativeSqlRequestDTO;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.system.RegisterDeviceRequestDTO;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.core.utility.UtilityDate;
import it.integry.integrywmsnative.core.utility.UtilityString;
@@ -39,6 +40,27 @@ import retrofit2.Response;
@Singleton
public class SystemRESTConsumer extends _BaseRESTConsumer {
public void registerDevice(final Runnable onSuccess, final RunnableArgs<Exception> onFailed) {
RegisterDeviceRequestDTO registerDeviceRequestDTO = new RegisterDeviceRequestDTO()
.setApp("WMS");
SystemRESTConsumerService systemRESTConsumerService = RESTBuilder.getService(SystemRESTConsumerService.class);
systemRESTConsumerService.registerDevice(registerDeviceRequestDTO)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "device/register", Void -> onSuccess.run(), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
public <T> void processSql(String nativeSql, final Type clazz, final RunnableArgs<T> onComplete, final RunnableArgs<Exception> onFailed) {
NativeSqlRequestDTO nativeSqlDTO = new NativeSqlRequestDTO();
nativeSqlDTO.nativeSql = nativeSql;

View File

@@ -6,6 +6,7 @@ import it.integry.integrywmsnative.core.rest.model.AvailableCodMdepsDTO;
import it.integry.integrywmsnative.core.rest.model.MailRequestDTO;
import it.integry.integrywmsnative.core.rest.model.NativeSqlRequestDTO;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.system.RegisterDeviceRequestDTO;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.GET;
@@ -14,6 +15,9 @@ import retrofit2.http.Query;
public interface SystemRESTConsumerService {
@POST("device/register")
Call<ServiceRESTResponse<Void>> registerDevice(@Body RegisterDeviceRequestDTO registerDeviceRequestDTO);
@POST("processSql")
Call<ServiceRESTResponse<Object>> processSql(@Body NativeSqlRequestDTO nativeSqlDTO);

View File

@@ -0,0 +1,24 @@
package it.integry.integrywmsnative.core.rest.consumers.interfaces;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.MtbColr;
import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCResponseDTO;
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowRequestDTO;
public interface ColliCaricoRESTConsumerInterface {
void createUDC(CreateUDCRequestDTO createUDCRequestDTO, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed);
void closeUDC(CloseUDCRequestDTO closeUDCRequestDTO, RunnableArgs<CloseUDCResponseDTO> onComplete, RunnableArgs<Exception> onFailed);
void insertUDCRow(InsertUDCRowRequestDTO insertUDCRowRequestDTO, RunnableArgs<MtbColr> onComplete, RunnableArgs<Exception> onFailed);
void editUDCRow(EditUDCRowRequestDTO editUDCRowRequestDTO, RunnableArgs<MtbColr> onComplete, RunnableArgs<Exception> onFailed);
void deleteUDCRow(DeleteUDCRowRequestDTO deleteUDCRequestDTO, Runnable onComplete, RunnableArgs<Exception> onFailed);
}

View File

@@ -3,15 +3,12 @@ package it.integry.integrywmsnative.core.rest.consumers.interfaces;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.MtbColr;
import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.rest.model.uds.CanUDSBeDeletedRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSResponseDTO;
import it.integry.integrywmsnative.core.rest.model.uds.CreateUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteUDSRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.DeleteUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.EditUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDSRowRequestDTO;
import it.integry.integrywmsnative.core.rest.model.uds.PrintUDSRequestDTO;
public interface ColliScaricoRESTConsumerInterface {
@@ -19,12 +16,6 @@ public interface ColliScaricoRESTConsumerInterface {
void closeUDS(CloseUDSRequestDTO closeUDSRequestDTO, RunnableArgs<CloseUDSResponseDTO> onComplete, RunnableArgs<Exception> onFailed);
void canUDSBeDeleted(CanUDSBeDeletedRequestDTO canUDSBeDeletedRequestDTO, RunnableArgs<Boolean> onComplete, RunnableArgs<Exception> onFailed);
void deleteUDS(DeleteUDSRequestDTO deleteUDSRequestDTO, Runnable onComplete, RunnableArgs<Exception> onFailed);
void printUDS(PrintUDSRequestDTO printUDSRequestDTO, Runnable onComplete, RunnableArgs<Exception> onFailed);
void insertUDSRow(InsertUDSRowRequestDTO insertUDSRowRequestDTO, RunnableArgs<MtbColr> onComplete, RunnableArgs<Exception> onFailed);
void editUDSRow(EditUDSRowRequestDTO editUDSRowRequestDTO, RunnableArgs<MtbColr> onComplete, RunnableArgs<Exception> onFailed);

View File

@@ -313,7 +313,7 @@ public class Ean128Model {
public String InternalPart;
///<summary>Informazioni interne</summary>
public String Internal1;
public String Internal1; //USED FOR COD_MART
///<summary>Informazioni interne</summary>
public String Internal2;

View File

@@ -28,6 +28,7 @@ public class SitArtOrdDTO {
private String descrizioneMsfa;
private String untord;
private BigDecimal qtaOmg;
private BigDecimal qtaArrivo;
private final HashMap<String, Object> extraInfo = new HashMap<>();
@@ -232,4 +233,13 @@ public class SitArtOrdDTO {
this.qtaOmg = qtaOmg;
return this;
}
public BigDecimal getQtaArrivo() {
return qtaArrivo;
}
public SitArtOrdDTO setQtaArrivo(BigDecimal qtaArrivo) {
this.qtaArrivo = qtaArrivo;
return this;
}
}

View File

@@ -0,0 +1,17 @@
package it.integry.integrywmsnative.core.rest.model.articolo;
import java.util.List;
public class RetrieveArticoloByCodMartRequestDTO {
private List<String> codMarts;
public List<String> getCodMarts() {
return codMarts;
}
public RetrieveArticoloByCodMartRequestDTO setCodMarts(List<String> codMarts) {
this.codMarts = codMarts;
return this;
}
}

View File

@@ -0,0 +1,25 @@
package it.integry.integrywmsnative.core.rest.model.articolo;
public class SearchArticoloByBarcodeRequestDTO {
private String barcode;
private boolean onlyActive;
public String getBarcode() {
return barcode;
}
public SearchArticoloByBarcodeRequestDTO setBarcode(String barcode) {
this.barcode = barcode;
return this;
}
public boolean isOnlyActive() {
return onlyActive;
}
public SearchArticoloByBarcodeRequestDTO setOnlyActive(boolean onlyActive) {
this.onlyActive = onlyActive;
return this;
}
}

View File

@@ -0,0 +1,20 @@
package it.integry.integrywmsnative.core.rest.model.articolo;
import java.util.List;
import it.integry.integrywmsnative.core.model.MtbAart;
public class SearchArticoloByBarcodeResponseDTO {
private List<MtbAart> arts;
public List<MtbAart> getArts() {
return arts;
}
public SearchArticoloByBarcodeResponseDTO setArts(List<MtbAart> arts) {
this.arts = arts;
return this;
}
}

View File

@@ -0,0 +1,26 @@
package it.integry.integrywmsnative.core.rest.model.articolo;
public class UpdateBarcodeImballoRequestDTO {
private String codMart;
private String newBarcodeImballo;
public String getCodMart() {
return codMart;
}
public UpdateBarcodeImballoRequestDTO setCodMart(String codMart) {
this.codMart = codMart;
return this;
}
public String getNewBarcodeImballo() {
return newBarcodeImballo;
}
public UpdateBarcodeImballoRequestDTO setNewBarcodeImballo(String newBarcodeImballo) {
this.newBarcodeImballo = newBarcodeImballo;
return this;
}
}

View File

@@ -3,6 +3,8 @@ package it.integry.integrywmsnative.core.rest.model.giacenza;
import java.math.BigDecimal;
import java.time.LocalDate;
import it.integry.integrywmsnative.core.model.MtbAart;
public class InstantItemSituationIncomingItemDto {
private BigDecimal qtaOrd;
@@ -21,6 +23,7 @@ public class InstantItemSituationIncomingItemDto {
private String codJcom;
private String codMdep;
private String untMis;
private MtbAart mtbAart;
public BigDecimal getQtaOrd() {
return qtaOrd;
@@ -85,4 +88,13 @@ public class InstantItemSituationIncomingItemDto {
public String getUntMis() {
return untMis;
}
public MtbAart getMtbAart() {
return mtbAart;
}
public InstantItemSituationIncomingItemDto setMtbAart(MtbAart mtbAart) {
this.mtbAart = mtbAart;
return this;
}
}

View File

@@ -0,0 +1,15 @@
package it.integry.integrywmsnative.core.rest.model.system;
public class RegisterDeviceRequestDTO {
private String app;
public String getApp() {
return app;
}
public RegisterDeviceRequestDTO setApp(String app) {
this.app = app;
return this;
}
}

View File

@@ -0,0 +1,18 @@
package it.integry.integrywmsnative.core.rest.model.udc;
import it.integry.integrywmsnative.core.model.MtbColt;
public class CloseUDCRequestDTO {
private MtbColt mtbColt;
public MtbColt getMtbColt() {
return mtbColt;
}
public CloseUDCRequestDTO setMtbColt(MtbColt mtbColt) {
this.mtbColt = mtbColt;
return this;
}
}

View File

@@ -0,0 +1,25 @@
package it.integry.integrywmsnative.core.rest.model.udc;
public class CloseUDCResponseDTO {
private boolean saved;
private boolean deleted;
public boolean isSaved() {
return saved;
}
public CloseUDCResponseDTO setSaved(boolean saved) {
this.saved = saved;
return this;
}
public boolean isDeleted() {
return deleted;
}
public CloseUDCResponseDTO setDeleted(boolean deleted) {
this.deleted = deleted;
return this;
}
}

View File

@@ -0,0 +1,80 @@
package it.integry.integrywmsnative.core.rest.model.udc;
import java.util.List;
public class CreateUDCRequestDTO {
private String codMdep;
private Integer numCollo;
private String serCollo;
private String codAnag;
private String codTcol;
private String annotazioni;
private List<CreateUDCRequestOrderDTO> orders;
public String getCodMdep() {
return codMdep;
}
public CreateUDCRequestDTO setCodMdep(String codMdep) {
this.codMdep = codMdep;
return this;
}
public Integer getNumCollo() {
return numCollo;
}
public CreateUDCRequestDTO setNumCollo(Integer numCollo) {
this.numCollo = numCollo;
return this;
}
public String getSerCollo() {
return serCollo;
}
public CreateUDCRequestDTO setSerCollo(String serCollo) {
this.serCollo = serCollo;
return this;
}
public String getCodAnag() {
return codAnag;
}
public CreateUDCRequestDTO setCodAnag(String codAnag) {
this.codAnag = codAnag;
return this;
}
public String getCodTcol() {
return codTcol;
}
public CreateUDCRequestDTO setCodTcol(String codTcol) {
this.codTcol = codTcol;
return this;
}
public String getAnnotazioni() {
return annotazioni;
}
public CreateUDCRequestDTO setAnnotazioni(String annotazioni) {
this.annotazioni = annotazioni;
return this;
}
public List<CreateUDCRequestOrderDTO> getOrders() {
return orders;
}
public CreateUDCRequestDTO setOrders(List<CreateUDCRequestOrderDTO> orders) {
this.orders = orders;
return this;
}
}

View File

@@ -0,0 +1,49 @@
package it.integry.integrywmsnative.core.rest.model.udc;
import java.time.LocalDate;
public class CreateUDCRequestOrderDTO {
private String gestione;
private LocalDate dataOrd;
private LocalDate dataCons;
private int numOrd;
public String getGestione() {
return gestione;
}
public CreateUDCRequestOrderDTO setGestione(String gestione) {
this.gestione = gestione;
return this;
}
public LocalDate getDataOrd() {
return dataOrd;
}
public CreateUDCRequestOrderDTO setDataOrd(LocalDate dataOrd) {
this.dataOrd = dataOrd;
return this;
}
public LocalDate getDataCons() {
return dataCons;
}
public CreateUDCRequestOrderDTO setDataCons(LocalDate dataCons) {
this.dataCons = dataCons;
return this;
}
public int getNumOrd() {
return numOrd;
}
public CreateUDCRequestOrderDTO setNumOrd(int numOrd) {
this.numOrd = numOrd;
return this;
}
}

View File

@@ -0,0 +1,17 @@
package it.integry.integrywmsnative.core.rest.model.udc;
import it.integry.integrywmsnative.core.model.MtbColt;
public class CreateUDCResponseDTO {
private MtbColt mtbColt;
public MtbColt getMtbColt() {
return mtbColt;
}
public CreateUDCResponseDTO setMtbColt(MtbColt mtbColt) {
this.mtbColt = mtbColt;
return this;
}
}

View File

@@ -0,0 +1,17 @@
package it.integry.integrywmsnative.core.rest.model.udc;
import it.integry.integrywmsnative.core.model.MtbColr;
public class DeleteUDCRowRequestDTO {
private MtbColr mtbColrToDelete;
public MtbColr getMtbColrToDelete() {
return mtbColrToDelete;
}
public DeleteUDCRowRequestDTO setMtbColrToDelete(MtbColr mtbColrToDelete) {
this.mtbColrToDelete = mtbColrToDelete;
return this;
}
}

View File

@@ -0,0 +1,70 @@
package it.integry.integrywmsnative.core.rest.model.udc;
import java.math.BigDecimal;
import java.time.LocalDate;
import it.integry.integrywmsnative.core.model.MtbColr;
public class EditUDCRowRequestDTO {
private MtbColr sourceMtbColr;
private BigDecimal newQtaTot;
private BigDecimal newQtaCnf;
private BigDecimal newNumCnf;
private String newPartitaMag;
private LocalDate newDataScad;
public MtbColr getSourceMtbColr() {
return sourceMtbColr;
}
public EditUDCRowRequestDTO setSourceMtbColr(MtbColr sourceMtbColr) {
this.sourceMtbColr = sourceMtbColr;
return this;
}
public BigDecimal getNewQtaTot() {
return newQtaTot;
}
public EditUDCRowRequestDTO setNewQtaTot(BigDecimal newQtaTot) {
this.newQtaTot = newQtaTot;
return this;
}
public BigDecimal getNewQtaCnf() {
return newQtaCnf;
}
public EditUDCRowRequestDTO setNewQtaCnf(BigDecimal newQtaCnf) {
this.newQtaCnf = newQtaCnf;
return this;
}
public BigDecimal getNewNumCnf() {
return newNumCnf;
}
public EditUDCRowRequestDTO setNewNumCnf(BigDecimal newNumCnf) {
this.newNumCnf = newNumCnf;
return this;
}
public String getNewPartitaMag() {
return newPartitaMag;
}
public EditUDCRowRequestDTO setNewPartitaMag(String newPartitaMag) {
this.newPartitaMag = newPartitaMag;
return this;
}
public LocalDate getNewDataScad() {
return newDataScad;
}
public EditUDCRowRequestDTO setNewDataScad(LocalDate newDataScad) {
this.newDataScad = newDataScad;
return this;
}
}

View File

@@ -0,0 +1,17 @@
package it.integry.integrywmsnative.core.rest.model.udc;
import it.integry.integrywmsnative.core.model.MtbColr;
public class EditUDCRowResponseDTO {
private MtbColr savedMtbColr;
public MtbColr getSavedMtbColr() {
return savedMtbColr;
}
public EditUDCRowResponseDTO setSavedMtbColr(MtbColr savedMtbColr) {
this.savedMtbColr = savedMtbColr;
return this;
}
}

View File

@@ -2,7 +2,7 @@ package it.integry.integrywmsnative.core.rest.model.uds;
import it.integry.integrywmsnative.core.model.MtbColt;
public class CanUDSBeDeletedRequestDTO {
public class CanULBeDeletedRequestDTO {
private MtbColt mtbColt;
@@ -11,7 +11,7 @@ public class CanUDSBeDeletedRequestDTO {
return mtbColt;
}
public CanUDSBeDeletedRequestDTO setMtbColt(MtbColt mtbColt) {
public CanULBeDeletedRequestDTO setMtbColt(MtbColt mtbColt) {
this.mtbColt = mtbColt;
return this;
}

View File

@@ -2,7 +2,7 @@ package it.integry.integrywmsnative.core.rest.model.uds;
import it.integry.integrywmsnative.core.model.MtbColt;
public class DeleteUDSRequestDTO {
public class DeleteULRequestDTO {
private MtbColt mtbColt;
@@ -10,7 +10,7 @@ public class DeleteUDSRequestDTO {
return mtbColt;
}
public DeleteUDSRequestDTO setMtbColt(MtbColt mtbColt) {
public DeleteULRequestDTO setMtbColt(MtbColt mtbColt) {
this.mtbColt = mtbColt;
return this;
}

View File

@@ -0,0 +1,193 @@
package it.integry.integrywmsnative.core.rest.model.uds;
import java.math.BigDecimal;
import java.time.LocalDate;
import it.integry.integrywmsnative.core.model.MtbColt;
public class InsertUDCRowRequestDTO {
private MtbColt targetMtbColt;
private String codMart;
private String descrizione;
private String barcode;
private BigDecimal qtaTot;
private BigDecimal qtaCnf;
private BigDecimal numCnf;
private String partitaMag;
private LocalDate dataScad;
private String codJcom;
private String gestioneRif;
private LocalDate dataOrd;
private Integer numOrd;
private Integer rigaOrd;
private LocalDate dataDoc;
private Integer numDoc;
private String serDoc;
private String codDtip;
public MtbColt getTargetMtbColt() {
return targetMtbColt;
}
public InsertUDCRowRequestDTO setTargetMtbColt(MtbColt targetMtbColt) {
this.targetMtbColt = targetMtbColt;
return this;
}
public String getCodMart() {
return codMart;
}
public InsertUDCRowRequestDTO setCodMart(String codMart) {
this.codMart = codMart;
return this;
}
public String getDescrizione() {
return descrizione;
}
public InsertUDCRowRequestDTO setDescrizione(String descrizione) {
this.descrizione = descrizione;
return this;
}
public String getBarcode() {
return barcode;
}
public InsertUDCRowRequestDTO setBarcode(String barcode) {
this.barcode = barcode;
return this;
}
public BigDecimal getQtaTot() {
return qtaTot;
}
public InsertUDCRowRequestDTO setQtaTot(BigDecimal qtaTot) {
this.qtaTot = qtaTot;
return this;
}
public BigDecimal getQtaCnf() {
return qtaCnf;
}
public InsertUDCRowRequestDTO setQtaCnf(BigDecimal qtaCnf) {
this.qtaCnf = qtaCnf;
return this;
}
public BigDecimal getNumCnf() {
return numCnf;
}
public InsertUDCRowRequestDTO setNumCnf(BigDecimal numCnf) {
this.numCnf = numCnf;
return this;
}
public String getPartitaMag() {
return partitaMag;
}
public InsertUDCRowRequestDTO setPartitaMag(String partitaMag) {
this.partitaMag = partitaMag;
return this;
}
public LocalDate getDataScad() {
return dataScad;
}
public InsertUDCRowRequestDTO setDataScad(LocalDate dataScad) {
this.dataScad = dataScad;
return this;
}
public String getCodJcom() {
return codJcom;
}
public InsertUDCRowRequestDTO setCodJcom(String codJcom) {
this.codJcom = codJcom;
return this;
}
public String getGestioneRif() {
return gestioneRif;
}
public InsertUDCRowRequestDTO setGestioneRif(String gestioneRif) {
this.gestioneRif = gestioneRif;
return this;
}
public LocalDate getDataOrd() {
return dataOrd;
}
public InsertUDCRowRequestDTO setDataOrd(LocalDate dataOrd) {
this.dataOrd = dataOrd;
return this;
}
public Integer getNumOrd() {
return numOrd;
}
public InsertUDCRowRequestDTO setNumOrd(Integer numOrd) {
this.numOrd = numOrd;
return this;
}
public Integer getRigaOrd() {
return rigaOrd;
}
public InsertUDCRowRequestDTO setRigaOrd(Integer rigaOrd) {
this.rigaOrd = rigaOrd;
return this;
}
public LocalDate getDataDoc() {
return dataDoc;
}
public InsertUDCRowRequestDTO setDataDoc(LocalDate dataDoc) {
this.dataDoc = dataDoc;
return this;
}
public Integer getNumDoc() {
return numDoc;
}
public InsertUDCRowRequestDTO setNumDoc(Integer numDoc) {
this.numDoc = numDoc;
return this;
}
public String getSerDoc() {
return serDoc;
}
public InsertUDCRowRequestDTO setSerDoc(String serDoc) {
this.serDoc = serDoc;
return this;
}
public String getCodDtip() {
return codDtip;
}
public InsertUDCRowRequestDTO setCodDtip(String codDtip) {
this.codDtip = codDtip;
return this;
}
}

View File

@@ -0,0 +1,12 @@
package it.integry.integrywmsnative.core.rest.model.uds;
import it.integry.integrywmsnative.core.model.MtbColr;
public class InsertUDCRowResponseDTO {
private MtbColr savedMtbColr;
public MtbColr getSavedMtbColr() {
return savedMtbColr;
}
}

View File

@@ -1,10 +1,11 @@
package it.integry.integrywmsnative.core.rest.model.uds;
import java.util.ArrayList;
import java.util.List;
import it.integry.integrywmsnative.core.model.MtbColt;
public class PrintUDSRequestDTO {
public class PrintULRequestDTO {
private List<MtbColt> mtbColts;
@@ -12,8 +13,14 @@ public class PrintUDSRequestDTO {
return mtbColts;
}
public PrintUDSRequestDTO setMtbColts(List<MtbColt> mtbColts) {
public PrintULRequestDTO setMtbColts(List<MtbColt> mtbColts) {
this.mtbColts = mtbColts;
return this;
}
public PrintULRequestDTO setMtbColt(MtbColt mtbColt) {
this.mtbColts = new ArrayList<>(1);
this.mtbColts.add(mtbColt);
return this;
}
}

View File

@@ -38,10 +38,13 @@ public class DBSettingsModel {
private boolean flagSpedizioneUseQtaOrd;
private boolean flagOrdinaNuoviArticoliInGriglia;
private boolean flagOrdinaArticoliOnScan;
private boolean flagConsentiFuoriPianoLogistico;
private boolean flagConsentiOrdineSenzaGriglia;
private String docInterniCheckFornitore;
private String produzioneDefaultCodAnag;
private boolean flagPrintPackingListOnOrderClose;
private boolean flagPrintEtichetteOnOrderClose;
private boolean flagPrintEtichetteOnLUClose;
private int onNumCnfInputChanged = 1;
private int onQtaTotInputChanged = 1;
private boolean flagAccettazioneUseQtaOrd = false;
@@ -55,6 +58,17 @@ public class DBSettingsModel {
private boolean showCodFornSpedizione = true;
private boolean flagCanCreateInventario = true;
private boolean flagCanAddUnknownItemsInventario = true;
private boolean flagShouldAskToCreateOrUpdateRowInventario = false;
private String commessaMagazzino;
private boolean flagGeneraDocumentoSpedizione = false;
private boolean flagIsInventarioCacheEnabled = false;
private boolean flagAskPrintUlAccettazioneBolla = false;
private boolean flagAskTipoColloAccettazioneBolla = false;
private boolean flagAskVersamentoAutomaticoAccettazioneBolla = false;
private boolean flagCanAddUnknownItemsAccettazioneBolla = false;
private boolean flagCanAddUnknownBarcodesAccettazioneBolla = false;
private boolean flagEnableFastPickAccettazioneBolla = false;
private boolean flagDisableMandatoryTracciabilitaAccettazioneBolla = false;
public boolean isFlagSpedizioneEnableFakeGiacenza() {
return flagSpedizioneEnableFakeGiacenza;
@@ -281,6 +295,15 @@ public class DBSettingsModel {
return this;
}
public boolean isFlagPrintEtichetteOnLUClose() {
return flagPrintEtichetteOnLUClose;
}
public DBSettingsModel setFlagPrintEtichetteOnLUClose(boolean flagPrintEtichetteOnLUClose) {
this.flagPrintEtichetteOnLUClose = flagPrintEtichetteOnLUClose;
return this;
}
public int getOnNumCnfInputChanged() {
return onNumCnfInputChanged;
}
@@ -416,4 +439,121 @@ public class DBSettingsModel {
this.flagCanAddUnknownItemsInventario = flagCanAddUnknownItemsInventario;
return this;
}
public boolean isFlagShouldAskToCreateOrUpdateRowInventario() {
return flagShouldAskToCreateOrUpdateRowInventario;
}
public DBSettingsModel setFlagShouldAskToCreateOrUpdateRowInventario(boolean flagShouldAskToCreateOrUpdateRowInventario) {
this.flagShouldAskToCreateOrUpdateRowInventario = flagShouldAskToCreateOrUpdateRowInventario;
return this;
}
public boolean isFlagConsentiFuoriPianoLogistico() {
return flagConsentiFuoriPianoLogistico;
}
public DBSettingsModel setFlagConsentiFuoriPianoLogistico(boolean flagConsentiFuoriPianoLogistico) {
this.flagConsentiFuoriPianoLogistico = flagConsentiFuoriPianoLogistico;
return this;
}
public boolean isFlagConsentiOrdineSenzaGriglia() {
return flagConsentiOrdineSenzaGriglia;
}
public DBSettingsModel setFlagConsentiOrdineSenzaGriglia(boolean flagConsentiOrdineSenzaGriglia) {
this.flagConsentiOrdineSenzaGriglia = flagConsentiOrdineSenzaGriglia;
return this;
}
public String getCommessaMagazzino() {
return commessaMagazzino;
}
public DBSettingsModel setCommessaMagazzino(String commessaMagazzino) {
this.commessaMagazzino = commessaMagazzino;
return this;
}
public boolean isFlagGeneraDocumentoSpedizione() {
return flagGeneraDocumentoSpedizione;
}
public DBSettingsModel setFlagGeneraDocumentoSpedizione(boolean flagGeneraDocumentoSpedizione) {
this.flagGeneraDocumentoSpedizione = flagGeneraDocumentoSpedizione;
return this;
}
public boolean isFlagIsInventarioCacheEnabled() {
return flagIsInventarioCacheEnabled;
}
public DBSettingsModel setFlagIsInventarioCacheEnabled(boolean flagIsInventarioCacheEnabled) {
this.flagIsInventarioCacheEnabled = flagIsInventarioCacheEnabled;
return this;
}
public boolean isFlagAskPrintUlAccettazioneBolla() {
return flagAskPrintUlAccettazioneBolla;
}
public DBSettingsModel setFlagAskPrintUlAccettazioneBolla(boolean flagAskPrintUlAccettazioneBolla) {
this.flagAskPrintUlAccettazioneBolla = flagAskPrintUlAccettazioneBolla;
return this;
}
public boolean isFlagAskTipoColloAccettazioneBolla() {
return flagAskTipoColloAccettazioneBolla;
}
public DBSettingsModel setFlagAskTipoColloAccettazioneBolla(boolean flagAskTipoColloAccettazioneBolla) {
this.flagAskTipoColloAccettazioneBolla = flagAskTipoColloAccettazioneBolla;
return this;
}
public boolean isFlagAskVersamentoAutomaticoAccettazioneBolla() {
return flagAskVersamentoAutomaticoAccettazioneBolla;
}
public DBSettingsModel setFlagAskVersamentoAutomaticoAccettazioneBolla(boolean flagAskVersamentoAutomaticoAccettazioneBolla) {
this.flagAskVersamentoAutomaticoAccettazioneBolla = flagAskVersamentoAutomaticoAccettazioneBolla;
return this;
}
public boolean isFlagCanAddUnknownItemsAccettazioneBolla() {
return flagCanAddUnknownItemsAccettazioneBolla;
}
public DBSettingsModel setFlagCanAddUnknownItemsAccettazioneBolla(boolean flagCanAddUnknownItemsAccettazioneBolla) {
this.flagCanAddUnknownItemsAccettazioneBolla = flagCanAddUnknownItemsAccettazioneBolla;
return this;
}
public boolean isFlagCanAddUnknownBarcodesAccettazioneBolla() {
return flagCanAddUnknownBarcodesAccettazioneBolla;
}
public DBSettingsModel setFlagCanAddUnknownBarcodesAccettazioneBolla(boolean flagCanAddUnknownBarcodesAccettazioneBolla) {
this.flagCanAddUnknownBarcodesAccettazioneBolla = flagCanAddUnknownBarcodesAccettazioneBolla;
return this;
}
public boolean isFlagEnableFastPickAccettazioneBolla() {
return flagEnableFastPickAccettazioneBolla;
}
public DBSettingsModel setFlagEnableFastPickAccettazioneBolla(boolean flagEnableFastPickAccettazioneBolla) {
this.flagEnableFastPickAccettazioneBolla = flagEnableFastPickAccettazioneBolla;
return this;
}
public boolean isFlagDisableMandatoryTracciabilitaAccettazioneBolla() {
return flagDisableMandatoryTracciabilitaAccettazioneBolla;
}
public DBSettingsModel setFlagDisableMandatoryTracciabilitaAccettazioneBolla(boolean flagDisableMandatoryTracciabilitaAccettazioneBolla) {
this.flagDisableMandatoryTracciabilitaAccettazioneBolla = flagDisableMandatoryTracciabilitaAccettazioneBolla;
return this;
}
}

Some files were not shown because too many files have changed in this diff Show More