From aa8c6b7cd767032a7079a77eb4add4e3e7bb2c51 Mon Sep 17 00:00:00 2001 From: FabioN Date: Wed, 8 Jan 2025 18:25:45 +0100 Subject: [PATCH] Modifica FILENI --- .../model/Migration_20250108182229.java | 68 +++++++++++++++++++ .../service/SicilianiDMSImportService.java | 2 +- 2 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 ems-core/src/main/java/it/integry/ems/migration/model/Migration_20250108182229.java diff --git a/ems-core/src/main/java/it/integry/ems/migration/model/Migration_20250108182229.java b/ems-core/src/main/java/it/integry/ems/migration/model/Migration_20250108182229.java new file mode 100644 index 0000000000..48b3ab7182 --- /dev/null +++ b/ems-core/src/main/java/it/integry/ems/migration/model/Migration_20250108182229.java @@ -0,0 +1,68 @@ +package it.integry.ems.migration.model; + +import it.integry.ems.migration._base.BaseMigration; +import it.integry.ems.migration._base.MigrationModelInterface; + +public class Migration_20250108182229 extends BaseMigration implements MigrationModelInterface { + + @Override + public void up() throws Exception { + if (isHistoryDB()) + return; + + + createOrUpdateFunction("getListinoVenditaPedane", "CREATE FUNCTION [dbo].[getListinoVenditaPedane](@datavalidita DATETIME, @codvlis VARCHAR(5), @codmart VARCHAR(15), @pedane INT)\n" + + " RETURNS TABLE AS\n" + + " RETURN\n" + + " WITH trasp AS (SELECT mtb_lisv_data_spese.cod_vlis,\n" + + " mtb_lisv_data_spese.versione,\n" + + " mtb_lisv_data_spese.cod_spes,\n" + + " mtb_lisv_data_spese.perc_ricarico,\n" + + " mtb_lisv_data_spese.val_ricarico,\n" + + " mtb_lisv_data_spese.perc_sconto,\n" + + " mtb_lisv_data_spese.da,\n" + + " mtb_lisv_data_spese.a\n" + + " \n" + + " FROM vtb_list_data\n" + + " inner join vtb_list on vtb_list_data.cod_vlis = vtb_list.cod_vlis and vtb_list.flag_add_trasp = 1\n" + + " INNER JOIN mtb_lisv_data_spese\n" + + " ON vtb_list_data.cod_vlis = mtb_lisv_data_spese.cod_vlis AND\n" + + " vtb_list_data.versione = mtb_lisv_data_spese.versione\n" + + " cross apply (select MAX(id_listino) over (partition by vtb_list_data.cod_vlis) as max_id_listino ) max_lisv\n" + + " WHERE vtb_list_data.data_iniz <= ISNULL(null, CAST(GETDATE() AS DATE))\n" + + " and vtb_list_data.id_listino = max_lisv.max_id_listino)\n" + + "\n" + + " SELECT list.*,\n" + + " trasp.cod_spes,\n" + + " trasp.perc_ricarico,\n" + + " trasp.val_ricarico,\n" + + " trasp.perc_sconto,\n" + + " trasp.da,\n" + + " trasp.a,\n" + + " (list.prz_vend +\n" + + " IIF(list.flag_add_trasp = 1,\n" + + " ((ISNULL(val_ricarico, 0)) * list.add_val_spese) /\n" + + " IIF(ISNULL(list.colli_pedana, 1) = 0, 1, list.colli_pedana), 0)) +\n" + + " ((ISNULL(perc_ricarico, 0) * list.add_ric_spese * list.prz_vend) / 100) *\n" + + " (1 - (ISNULL(perc_sconto, 0) * list.add_sco_spese) / 100) prz_vend_trasp,\n" + + " ((list.prz_vend +\n" + + " IIF(list.flag_add_trasp = 1,\n" + + " ((ISNULL(val_ricarico, 0)) * list.add_val_spese) /\n" + + " IIF(ISNULL(list.colli_pedana, 1) = 0, 1, list.colli_pedana), 0)) +\n" + + " ((ISNULL(perc_ricarico, 0) * list.add_ric_spese * list.prz_vend) / 100) *\n" + + " (1 - (ISNULL(perc_sconto, 0) * list.add_sco_spese) / 100)) * (1 - list.perc_sco1 / 100) *\n" + + " (1 - list.perc_sco2 / 100) *\n" + + " (1 - list.perc_sco3 / 100) *\n" + + " (1 - list.perc_sco4 / 100) AS prz_vend_trasp_netto\n" + + " FROM getlistinovendita(@datavalidita, @codvlis, @codmart) list\n" + + " LEFT OUTER JOIN trasp ON list.cod_vlis = trasp.cod_vlis AND\n" + + " (@pedane IS NULL OR @pedane BETWEEN da AND a OR\n" + + " (@pedane IS NOT NULL AND da = 0 AND a = 0))"); + } + + @Override + public void down() throws Exception { + + } + +} diff --git a/ems-engine/src/main/java/it/integry/ems/document/Import/service/SicilianiDMSImportService.java b/ems-engine/src/main/java/it/integry/ems/document/Import/service/SicilianiDMSImportService.java index 4aca5322bb..6122bb6f28 100644 --- a/ems-engine/src/main/java/it/integry/ems/document/Import/service/SicilianiDMSImportService.java +++ b/ems-engine/src/main/java/it/integry/ems/document/Import/service/SicilianiDMSImportService.java @@ -113,7 +113,7 @@ public class SicilianiDMSImportService { BigDecimal qtaKG = new BigDecimal(UtilityString.mid(lineRead, 55, 7).trim()); qtaKG = qtaKG.divide(new BigDecimal(1000)).setScale(5, RoundingMode.HALF_UP); // SONO PREVISTI 3 DECIMALI DA TRACCIATO SimpleDateFormat dateFormat = new SimpleDateFormat("yy"); - String keyOrd = "VOP" + numOrd.toString() + 'C' + dateFormat.format(dataDoc); + String keyOrd = "VOP" + UtilityString.Fill('0', 7 - numOrd.toString().length()) + numOrd.toString() + 'C' + dateFormat.format(dataDoc); if (keyOrdFileNew.compareTo("N") == 0) { keyOrd = "VOP" + numOrd.toString() + 'C'; } /*Fino a prima dell'avvio ufficiale sarĂ  questa la logica di calcolo*/