risolvere problema task e rotture di stock steup

This commit is contained in:
2024-10-08 15:44:37 +02:00
parent dbb0f2e03b
commit 5287d0d779
8 changed files with 410 additions and 24 deletions

View File

@@ -0,0 +1,140 @@
package it.integry.ems.migration.model;
import it.integry.ems.migration._base.BaseMigration;
import it.integry.ems.migration._base.IntegryCustomerDB;
import it.integry.ems.migration._base.MigrationModelInterface;
public class Migration_20241008123321 extends BaseMigration implements MigrationModelInterface {
@Override
public void up() throws Exception {
if (isHistoryDB())
return;
if (isCustomerDb(IntegryCustomerDB.Carelli_Winact)) return;
createOrUpdateFunction("steup_getInevasi", "CREATE FUNCTION [dbo].[steup_getInevasi]\n" +
"( \n" +
" @codMdep varchar(5), @codJfas varchar(5), @dataIspezione datetime\n" +
")\n" +
"RETURNS TABLE \n" +
"AS\n" +
"RETURN \n" +
"with ordini as (\n" +
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
"from gestfood.dbo.dtb_ordt inner join gestfood.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
"inner join gestfood.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
"where dtb_ordt.gestione = 'A' \n" +
"and dtb_ordt.flag_annulla = 'N'\n" +
"and dtb_ordt.cod_mdep = @codMdep\n" +
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
"and dtb_ordr.flag_evaso = 'I'\n" +
"union\n" +
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
"from carelli.dbo.dtb_ordt inner join carelli.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
"inner join carelli.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
"where dtb_ordt.gestione = 'A' \n" +
"and dtb_ordt.flag_annulla = 'N'\n" +
"and dtb_ordt.cod_mdep = @codMdep\n" +
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
"and dtb_ordr.flag_evaso = 'I'\n" +
"union\n" +
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
"from panimal.dbo.dtb_ordt inner join panimal.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
"inner join panimal.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
"where dtb_ordt.gestione = 'A' \n" +
"and dtb_ordt.flag_annulla = 'N'\n" +
"and dtb_ordt.cod_mdep = @codMdep\n" +
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
"and dtb_ordr.flag_evaso = 'I' )\n" +
"\n" +
"select art.cod_mart_griglia as cod_mart\n" +
"from ordini \n" +
"inner join (SELECT mtb_comp.cod_mart, cod_comp as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
"union all \n" +
"SELECT cod_comp as cod_mart, mtb_comp.cod_mart as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
"union all \n" +
"SELECt cod_mart, cod_mart as cod_mart_griglia from carelli.dbo.mtb_aart where articolo_composto = 'N'\n" +
" ) art on ordini.cod_mart = art.cod_mart\n" +
"inner join mtb_aart on ordini.cod_mart = mtb_aart.cod_mart\n" +
"inner join jrl_fasi_mtb_grup on jrl_fasi_mtb_grup.cod_mgrp = mtb_aart.cod_mgrp\n" +
"where jrl_fasi_mtb_grup.cod_jfas = @codJfas AND\n" +
"part_iva in (select value_string from dbo.ParseStringIntoArray((select dbo.getGestSetup('PVM', 'RILEVAZIONI_STEUP', 'ELENCO_FORN_INEVASI')), '|'))");
createOrUpdateFunction("steup_getAssortimento", "CREATE FUNCTION [dbo].[steup_getAssortimento]\n" +
" (\n" +
" @codmdep VARCHAR(5), @codjfas VARCHAR(5), @dataIspezione datetime\n" +
" )\n" +
" RETURNS TABLE\n" +
" AS\n" +
" RETURN(\n" +
" /*\n" +
" declare @codMdep varchar(5), @codJfas varchar(5)\n" +
"\n" +
" set @codMdep = '01'\n" +
" set @codJfas = '09';\n" +
"\n" +
" */\n" +
"\n" +
"\n" +
" WITH tipiart AS (SELECT value_string AS cod_mtip\n" +
" FROM dbo.parsestringintoarray((SELECT value\n" +
" FROM stb_gest_setup\n" +
" WHERE gest_name = 'PVM'\n" +
" AND section = 'RILEVAZIONI_STEUP'\n" +
" AND key_section = 'EXCLUDE_COD_MTIP'), '|') t)\n" +
" , art AS (SELECT DISTINCT griglia.cod_mart\n" +
" FROM carelli.dbo.getgrigliaacquisto(@dataIspezione, NULL, @codmdep, NULL, NULL) griglia\n" +
" INNER JOIN carelli.dbo.mtb_depo ON griglia.cod_mdep = mtb_depo.cod_mdep\n" +
" INNER JOIN carelli.dbo.getlistinovendita(NULL, NULL, NULL) AS lisv\n" +
" ON mtb_depo.cod_vlis = lisv.cod_vlis AND griglia.cod_mart = lisv.cod_mart\n" +
" WHERE griglia.tipo_variazione <> 'D'\n" +
" UNION\n" +
" SELECT DISTINCT cod_mart\n" +
" FROM mtb_depo\n" +
" INNER JOIN carelli.dbo.getpromozionevendita(@dataIspezione, @dataIspezione, NULL, NULL, NULL) promo\n" +
" ON promo.cod_vlis = mtb_depo.cod_vlis\n" +
" WHERE tipo_variazione <> 'D'\n" +
" AND mtb_depo.cod_mdep = @codmdep)\n" +
"\n" +
"\n" +
" SELECT DISTINCT mtb_aart.cod_mart,\n" +
" mtb_aart.descrizione,\n" +
" mtb_aart.bar_code,\n" +
" mtb_aart.cod_msgr,\n" +
" mtb_aart.plu,\n" +
" art_det.cod_mart_griglia AS cod_madre\n" +
" FROM mtb_aart\n" +
" INNER JOIN jrl_fasi_mtb_grup ON\n" +
" mtb_aart.cod_mgrp = jrl_fasi_mtb_grup.cod_mgrp\n" +
" INNER JOIN (SELECT mtb_comp.cod_mart, cod_comp AS cod_mart_griglia\n" +
" FROM carelli.dbo.mtb_comp\n" +
" INNER JOIN carelli.dbo.mtb_aart ON mtb_comp.cod_mart = mtb_aart.cod_mart AND\n" +
" mtb_aart.articolo_composto = 's'\n" +
" UNION ALL\n" +
" SELECT cod_comp AS cod_mart, mtb_comp.cod_mart AS cod_mart_griglia\n" +
" FROM carelli.dbo.mtb_comp\n" +
" INNER JOIN carelli.dbo.mtb_aart ON mtb_comp.cod_mart = mtb_aart.cod_mart AND\n" +
" mtb_aart.articolo_composto = 's'\n" +
" UNION ALL\n" +
" SELECT cod_mart, cod_mart AS cod_mart_griglia\n" +
" FROM carelli.dbo.mtb_aart\n" +
" WHERE articolo_composto = 'N') AS art_det\n" +
" ON mtb_aart.cod_mart = art_det.cod_mart\n" +
" INNER JOIN art ON art_det.cod_mart_griglia = art.cod_mart\n" +
" WHERE jrl_fasi_mtb_grup.cod_jfas = @codjfas\n" +
" AND flag_stato = 'A'\n" +
" AND (mtb_aart.cod_mtip IS NULL OR mtb_aart.cod_mtip NOT IN (SELECT cod_mtip FROM tipiart)))");
}
@Override
public void down() throws Exception {
}
}

View File

@@ -0,0 +1,75 @@
package it.integry.ems.migration.model;
import it.integry.ems.migration._base.BaseMigration;
import it.integry.ems.migration._base.IntegryCustomerDB;
import it.integry.ems.migration._base.MigrationModelInterface;
public class Migration_20241008151703 extends BaseMigration implements MigrationModelInterface {
@Override
public void up() throws Exception {
if (isHistoryDB())
return;
if (isCustomerDb(IntegryCustomerDB.Carelli_Winact)) return;
createOrUpdateFunction("steup_getInevasi", "CREATE FUNCTION [dbo].[steup_getInevasi]\n" +
"( \n" +
" @codMdep varchar(5), @codJfas varchar(5), @dataIspezione datetime\n" +
")\n" +
"RETURNS TABLE \n" +
"AS\n" +
"RETURN \n" +
"with ordini as (\n" +
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
"from gestfood.dbo.dtb_ordt inner join gestfood.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
"inner join gestfood.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
"where dtb_ordt.gestione = 'A' \n" +
"and dtb_ordt.flag_annulla = 'N'\n" +
"and dtb_ordt.cod_mdep = @codMdep\n" +
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
"and dtb_ordr.flag_evaso = 'I'\n" +
"union\n" +
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
"from carelli.dbo.dtb_ordt inner join carelli.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
"inner join carelli.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
"where dtb_ordt.gestione = 'A' \n" +
"and dtb_ordt.flag_annulla = 'N'\n" +
"and dtb_ordt.cod_mdep = @codMdep\n" +
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
"and dtb_ordr.flag_evaso = 'I'\n" +
"union\n" +
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
"from panimal.dbo.dtb_ordt inner join panimal.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
"inner join panimal.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
"where dtb_ordt.gestione = 'A' \n" +
"and dtb_ordt.flag_annulla = 'N'\n" +
"and dtb_ordt.cod_mdep = @codMdep\n" +
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
"and dtb_ordr.flag_evaso = 'I' )\n" +
"\n" +
"select art.cod_mart_griglia as cod_mart\n" +
"from ordini \n" +
"inner join (SELECT mtb_comp.cod_mart, cod_comp as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
"union all \n" +
"SELECT cod_comp as cod_mart, mtb_comp.cod_mart as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
"union all \n" +
"SELECt cod_mart, cod_mart as cod_mart_griglia from carelli.dbo.mtb_aart where articolo_composto = 'N'\n" +
" ) art on ordini.cod_mart = art.cod_mart\n" +
"inner join mtb_aart on ordini.cod_mart = mtb_aart.cod_mart\n" +
"inner join jrl_fasi_mtb_grup on jrl_fasi_mtb_grup.cod_mgrp = mtb_aart.cod_mgrp\n" +
"where jrl_fasi_mtb_grup.cod_jfas = @codJfas AND\n" +
"part_iva in (select value_string from dbo.ParseStringIntoArray((select dbo.getGestSetup('PVM', 'RILEVAZIONI_STEUP', 'ELENCO_FORN_INEVASI')), '|'))");
}
@Override
public void down() throws Exception {
}
}

View File

@@ -0,0 +1,86 @@
package it.integry.ems.migration.model;
import it.integry.ems.migration._base.BaseMigration;
import it.integry.ems.migration._base.IntegryCustomerDB;
import it.integry.ems.migration._base.MigrationModelInterface;
public class Migration_20241008151727 extends BaseMigration implements MigrationModelInterface {
@Override
public void up() throws Exception {
if (isHistoryDB())
return;
if (isCustomerDb(IntegryCustomerDB.Carelli_Winact)) return;
createOrUpdateFunction("steup_getAssortimento", "CREATE FUNCTION [dbo].[steup_getAssortimento]\n" +
" (\n" +
" @codmdep VARCHAR(5), @codjfas VARCHAR(5), @dataIspezione datetime\n" +
" )\n" +
" RETURNS TABLE\n" +
" AS\n" +
" RETURN(\n" +
" /*\n" +
" declare @codMdep varchar(5), @codJfas varchar(5)\n" +
"\n" +
" set @codMdep = '01'\n" +
" set @codJfas = '09';\n" +
"\n" +
" */\n" +
"\n" +
"\n" +
" WITH tipiart AS (SELECT value_string AS cod_mtip\n" +
" FROM dbo.parsestringintoarray((SELECT value\n" +
" FROM stb_gest_setup\n" +
" WHERE gest_name = 'PVM'\n" +
" AND section = 'RILEVAZIONI_STEUP'\n" +
" AND key_section = 'EXCLUDE_COD_MTIP'), '|') t)\n" +
" , art AS (SELECT DISTINCT griglia.cod_mart\n" +
" FROM carelli.dbo.getgrigliaacquisto(@dataIspezione, NULL, @codmdep, NULL, NULL) griglia\n" +
" INNER JOIN carelli.dbo.mtb_depo ON griglia.cod_mdep = mtb_depo.cod_mdep\n" +
" INNER JOIN carelli.dbo.getlistinovendita(NULL, NULL, NULL) AS lisv\n" +
" ON mtb_depo.cod_vlis = lisv.cod_vlis AND griglia.cod_mart = lisv.cod_mart\n" +
" WHERE griglia.tipo_variazione <> 'D'\n" +
" UNION\n" +
" SELECT DISTINCT cod_mart\n" +
" FROM mtb_depo\n" +
" INNER JOIN carelli.dbo.getpromozionevendita(@dataIspezione, @dataIspezione, NULL, NULL, NULL) promo\n" +
" ON promo.cod_vlis = mtb_depo.cod_vlis\n" +
" WHERE tipo_variazione <> 'D'\n" +
" AND mtb_depo.cod_mdep = @codmdep)\n" +
"\n" +
"\n" +
" SELECT DISTINCT mtb_aart.cod_mart,\n" +
" mtb_aart.descrizione,\n" +
" mtb_aart.bar_code,\n" +
" mtb_aart.cod_msgr,\n" +
" mtb_aart.plu,\n" +
" art_det.cod_mart_griglia AS cod_madre\n" +
" FROM mtb_aart\n" +
" INNER JOIN jrl_fasi_mtb_grup ON\n" +
" mtb_aart.cod_mgrp = jrl_fasi_mtb_grup.cod_mgrp\n" +
" INNER JOIN (SELECT mtb_comp.cod_mart, cod_comp AS cod_mart_griglia\n" +
" FROM carelli.dbo.mtb_comp\n" +
" INNER JOIN carelli.dbo.mtb_aart ON mtb_comp.cod_mart = mtb_aart.cod_mart AND\n" +
" mtb_aart.articolo_composto = 's'\n" +
" UNION ALL\n" +
" SELECT cod_comp AS cod_mart, mtb_comp.cod_mart AS cod_mart_griglia\n" +
" FROM carelli.dbo.mtb_comp\n" +
" INNER JOIN carelli.dbo.mtb_aart ON mtb_comp.cod_mart = mtb_aart.cod_mart AND\n" +
" mtb_aart.articolo_composto = 's'\n" +
" UNION ALL\n" +
" SELECT cod_mart, cod_mart AS cod_mart_griglia\n" +
" FROM carelli.dbo.mtb_aart\n" +
" WHERE articolo_composto = 'N') AS art_det\n" +
" ON mtb_aart.cod_mart = art_det.cod_mart\n" +
" INNER JOIN art ON art_det.cod_mart_griglia = art.cod_mart \n" +
" WHERE jrl_fasi_mtb_grup.cod_jfas = @codjfas\n" +
" AND flag_stato = 'A'\n" +
" AND (mtb_aart.cod_mtip IS NULL OR mtb_aart.cod_mtip NOT IN (SELECT cod_mtip FROM tipiart)))");
}
@Override
public void down() throws Exception {
}
}

View File

@@ -0,0 +1,81 @@
package it.integry.ems.migration.model;
import it.integry.ems.migration._base.BaseMigration;
import it.integry.ems.migration._base.IntegryCustomerDB;
import it.integry.ems.migration._base.MigrationModelInterface;
public class Migration_20241008153106 extends BaseMigration implements MigrationModelInterface {
@Override
public void up() throws Exception {
if (isHistoryDB())
return;
if (!isCustomerDb(IntegryCustomerDB.Carelli_Winact)) return;
createOrUpdateFunction("[steup_getInevasi]", "CREATE FUNCTION [dbo].[steup_getInevasi]\n" +
"( \n" +
" @codMdep varchar(5), @codJfas varchar(5), @dataIspezione datetime\n" +
")\n" +
"RETURNS TABLE \n" +
"AS\n" +
"RETURN \n" +
"with ordini as (\n" +
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
"from gestfood.dbo.dtb_ordt inner join gestfood.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
"inner join gestfood.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
"inner join gestfood.dbo.atb_list on dtb_ordt.listino = atb_list.cod_alis and atb_list.part_iva_forn is null\n" +
"where dtb_ordt.gestione = 'A' \n" +
"and dtb_ordt.flag_annulla = 'N'\n" +
"and dtb_ordt.cod_mdep = @codMdep\n" +
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
"and dtb_ordr.flag_evaso = 'I'\n" +
"union\n" +
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
"from carelli.dbo.dtb_ordt inner join carelli.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
"inner join carelli.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
"inner join carelli.dbo.atb_list on dtb_ordt.listino = atb_list.cod_alis and atb_list.part_iva_forn is null\n" +
"where dtb_ordt.gestione = 'A' \n" +
"and dtb_ordt.flag_annulla = 'N'\n" +
"and dtb_ordt.cod_mdep = @codMdep\n" +
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
"and dtb_ordr.flag_evaso = 'I'\n" +
"union\n" +
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
"from panimal.dbo.dtb_ordt inner join panimal.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
"inner join panimal.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
"inner join panimal.dbo.atb_list on dtb_ordt.listino = atb_list.cod_alis and atb_list.part_iva_forn is null\n" +
"where dtb_ordt.gestione = 'A' \n" +
"and dtb_ordt.flag_annulla = 'N'\n" +
"and dtb_ordt.cod_mdep = @codMdep\n" +
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
"and dtb_ordr.flag_evaso = 'I' )\n" +
"\n" +
"select art.cod_mart_griglia as cod_mart\n" +
"from ordini \n" +
"inner join (SELECT mtb_comp.cod_mart, cod_comp as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
"union all \n" +
"SELECT cod_comp as cod_mart, mtb_comp.cod_mart as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
"union all \n" +
"SELECt cod_mart, cod_mart as cod_mart_griglia from carelli.dbo.mtb_aart where articolo_composto = 'N'\n" +
" ) art on ordini.cod_mart = art.cod_mart\n" +
"inner join mtb_aart on ordini.cod_mart = mtb_aart.cod_mart\n" +
"inner join jrl_fasi_mtb_grup on jrl_fasi_mtb_grup.cod_mgrp = mtb_aart.cod_mgrp\n" +
"where jrl_fasi_mtb_grup.cod_jfas = @codJfas AND\n" +
"part_iva in (select value_string from dbo.ParseStringIntoArray((select dbo.getGestSetup('PVM', 'RILEVAZIONI_STEUP', 'ELENCO_FORN_INEVASI')), '|'))");
}
@Override
public void down() throws Exception {
}
}

View File

@@ -96,7 +96,7 @@ public class SteUPController {
) {
ServiceRestResponse response = new ServiceRestResponse();
try {
response.setJsonObject(steUPService.getGrigliaPluRepo(codMdep, codJfas, activityTypeId, codCmac, UtilityDate.getTodayWithoutTime(), false));
response.setJsonObject(steUPService.getGrigliaPluRepo(codMdep, codJfas, activityTypeId, codCmac, UtilityDate.getTodayWithoutTime(), false, null));
response.setEsito(EsitoType.OK);
} catch (Exception e) {
logger.error(request.getRequestURI(), e);

View File

@@ -692,7 +692,7 @@ public class SteUPService {
boolean verificaVolantino = UtilityString.equalsIgnoreCase(tipoAttivitaVerificaVolantino, activityTypeId);
barcodes = chkVolantino(codJfas, codMdep, barcodes, verificaVolantino, dataCreation);
} else if (activityTypeId.equalsIgnoreCase(tipoAttivitaRotturaStock)) {
List<HashMap<String, Object>> pluRepo = getGrigliaPluRepo(codMdep, codJfas, activityTypeId, null, dataCreation, true);
List<HashMap<String, Object>> pluRepo = getGrigliaPluRepo(codMdep, codJfas, activityTypeId, null, dataCreation, true, barcodes);
if (repartiFreschi != null && repartiFreschi.contains(codJfas)) {
List<String> finalBarcodes = barcodes;
barcodes = new ArrayList<>();
@@ -701,8 +701,6 @@ public class SteUPService {
.collect(groupingBy(x -> x.get("cod_mart").toString()));
for (Map.Entry<String, List<HashMap<String, Object>>> entry : pluByCodMarts.entrySet()) {
String codMart = entry.getKey();
System.out.println(codMart);
List<HashMap<String, Object>> hashMapList = entry.getValue();
boolean containBarcode = hashMapList.stream().anyMatch(x -> finalBarcodes.contains(((String) x.get("barcode"))));
@@ -712,7 +710,8 @@ public class SteUPService {
}
// barcodes = pluRepo.stream().filter(a-> !finalBarcodes.contains(((String) a.get("barcode")))).map(a->(String) a.get("barcode")).collect(Collectors.toList());
} else {
barcodes = barcodes.stream().filter(a -> pluRepo.stream().map(x -> x.get("barcode")).collect(Collectors.toList()).contains(a)).collect(Collectors.toList());
barcodes = pluRepo.stream().map(x->x.get("barcode").toString()).collect(Collectors.toList());
//barcodes.stream().filter(a -> pluRepo.stream().map(x -> x.get("barcode")).collect(Collectors.toList()).contains(a)).collect(Collectors.toList());
}
}
@@ -815,7 +814,8 @@ public class SteUPService {
public List<HashMap<String, Object>> getGrigliaPluRepo(String codMdep, String codJfas,
String activityTypeId, String codCmac, Date dataCreation,
boolean chkRotturaStock) throws Exception {
boolean chkRotturaStock,
List<String> barcode) throws Exception {
String sql = "SELECT dbo.steup_getListinoDepo( " + UtilityDB.valueToString(codMdep) + ") as cod_vlis";
String codVlis = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(multiDBTransactionManager.getPrimaryConnection(), sql);
if (UtilityString.isNullOrEmpty(codVlis))
@@ -856,8 +856,9 @@ public class SteUPService {
sql = "Select cod_mart,descrizione,bar_code as barcode,cod_msgr from steup_getGrigliaVendita(" + UtilityDB.valueToString(codMdep) + "," + UtilityDB.valueToString(codJfas) + ")";
} else if (chkRotturaStock) {
sql = "SELECT cod_mart,descrizione,bar_code as barcode,cod_msgr\n" +
"FROM steup_getAssortimento(" + UtilityDB.valueToString(codMdep) + "," + UtilityDB.valueToString(codJfas) + ")\n" +
"WHERE cod_mart NOT IN (SELECT cod_mart\n" +
"FROM steup_getAssortimento(" + UtilityDB.valueToString(codMdep) + "," + UtilityDB.valueToString(codJfas) + ", " + UtilityDB.valueToString(dataCreation) +") art\n" +
"WHERE EXISTS(SELECT cod_mart from carelli.dbo.mvw_barcode WHERE cod_barre in (" + UtilityDB.listValueToString(barcode) + ") and art.cod_mart = mvw_barcode.cod_mart)\n" +
" AND cod_mart NOT IN (SELECT cod_mart\n" +
" FROM (SELECT cod_mart,\n" +
" cod_mdep,\n" +
" data_validita,\n" +
@@ -873,13 +874,14 @@ public class SteUPService {
" LEAD(tipo_variazione, 1, NULL)\n" +
" OVER (PARTITION BY cod_mart, cod_mdep ORDER BY data_validita, tipo_variazione ) AS tipo_variazione_succ\n" +
" FROM carelli.dbo.atb_griglie_art\n" +
" WHERE atb_griglie_art.data_validita <= CAST(GETDATE() AS DATE)\n" +
" WHERE atb_griglie_art.data_validita <= " + UtilityDB.valueToString(dataCreation) + "\n"+
" AND atb_griglie_art.cod_mdep = " + UtilityDB.valueToString(codMdep) + ") g\n" +
" WHERE g.tipo_variazione_succ IS NULL\n" +
" AND DATEDIFF(DAY, data_validita, CAST(GETDATE() AS DATE)) < 7\n" +
" AND DATEDIFF(DAY, data_validita, " + UtilityDB.valueToString(dataCreation) + ") < 7\n" +
" AND g.tipo_variazione = 'I'\n" +
" UNION " +
" SELECT cod_mart FROM dbo.steup_getInevasi(" + UtilityDB.valueToString(codMdep) + ", " + UtilityDB.valueToString(codJfas) + ", " + UtilityDB.valueToString(dataCreation) + "))";
" UNION \n" +
" SELECT cod_mart \n" +
" FROM dbo.steup_getInevasi(" + UtilityDB.valueToString(codMdep) + ", " + UtilityDB.valueToString(codJfas) + ", " + UtilityDB.valueToString(dataCreation) + "))";
} else {
return new ArrayList<>();
}
@@ -1239,7 +1241,7 @@ public class SteUPService {
" mtb_aart.descrizione, " +
" mtb_aart.bar_code AS barcode," +
" mtb_aart.cod_msgr " +
" FROM dbo.steup_getAssortimento(" + UtilityDB.valueToString(codMdep) + ", " + UtilityDB.valueToString(codJfas) + " ) mtb_aart" +
" FROM dbo.steup_getAssortimento(" + UtilityDB.valueToString(codMdep) + ", " + UtilityDB.valueToString(codJfas) + ", null ) mtb_aart" +
" WHERE mtb_aart.plu IS NOT NULL " +
" AND (mtb_aart.bar_code = " + UtilityDB.valueToString(barcode) + " OR mtb_aart.cod_mart = " + UtilityDB.valueToString(barcode) + ")" +
" ORDER BY mtb_aart.cod_msgr, mtb_aart.descrizione";

View File

@@ -24,7 +24,7 @@ public class ScadenzeExporterService {
EntityExportResponse<List<FileItem>> entityExportResponse = new EntityExportResponse<>();
entityExportResponse.setResponse(new ArrayList<>());
String sql = "SELECT ISNULL(gtb_tipi_paga_intercode.intercode, ctb_scad.cod_paga) /*leggere da tabella di trascodifica*/ AS 'tipo_pagamento',\n" +
String sql = "SELECT gtb_tipi_paga_intercode.intercode AS 'tipo_pagamento',\n" +
" REPLACE(\n" +
" CAST(\n" +
" FORMAT(\n" +
@@ -46,8 +46,8 @@ public class ScadenzeExporterService {
" 'N' AS 'raiting',\n" +
" REPLACE(CONVERT(VARCHAR(10), ctb_scad.data_scad, 103), '/', '') AS 'data_scadenza',\n" +
" REPLACE(CONVERT(VARCHAR(10), ctb_scad.data_scad, 103), '/', '') AS 'data_valuta',\n" +
" LEFT(gtb_banc_azi_intercode.intercode, 8) AS 'banca',\n" +
" RIGHT(gtb_banc_azi_intercode.intercode, 4) AS 'rbn',\n" +
" CASE WHEN c.banc_azi THEN LEFT(gtb_banc_azi_intercode.intercode, 8) ELSE '' END AS 'banca',\n" +
" CASE WHEN c.banc_azi THEN RIGHT(gtb_banc_azi_intercode.intercode, 4) ELSE '' END AS 'rbn',\n" +
" 'N' AS 'bloccata',\n" +
" IIF(ctb_part.tipo_anag = 'F', '0201', '0101') AS 'voce',\n" +
" gtb_anag.diacod AS 'piano_dei_conti',\n" +
@@ -66,21 +66,22 @@ public class ScadenzeExporterService {
" ctb_scad.id_riga,\n" +
" ctb_scad.tipo_anag)) AS 'chiave coge',\n" +
" 'ROSSOGARGA' AS 'azienda',\n" +
" Right(ctb_part.iban,12) AS 'numero_cc',\n" +
" SUBSTRING(ctb_part.iban, 5, 1) AS 'cin',\n" +
" LEFT(ctb_part.iban, 2) AS 'paese',\n" +
" SUBSTRING(ctb_part.iban, 3, 2) AS 'chk_paese',\n" +
" CASE WHEN c.banc_azi THEN '' ELSE Right(ctb_part.iban,12) END AS 'numero_cc',\n" +
" CASE WHEN c.banc_azi THEN '' ELSE SUBSTRING(ctb_part.iban, 5, 1) END AS 'cin',\n" +
" CASE WHEN c.banc_azi THEN '' ELSE LEFT(ctb_part.iban, 2) END AS 'paese',\n" +
" CASE WHEN c.banc_azi THEN '' ELSE SUBSTRING(ctb_part.iban, 3, 2) END AS 'chk_paese',\n" +
" REPLACE(CONVERT(VARCHAR(10), ctb_part.data_doc, 103), '/', '') AS 'data_documento',\n" +
" ctb_parr.des_agg AS 'note',\n" +
" IIF(vtb_clie.cod_anag IS NULL, atb_forn.cod_bic, vtb_clie.cod_bic) AS 'cod_bic',\n" +
" ctb_part.iban\n" +
" CASE WHEN c.banc_azi THEN '' ELSE gtb_banc_azi.cod_iban ELSE ctb_part.iban END AS iban\n" +
"FROM ctb_part\n" +
" INNER JOIN ctb_scad ON ctb_part.tipo_anag = ctb_scad.tipo_anag AND ctb_part.cod_anag = ctb_scad.cod_anag AND\n" +
" ctb_part.anno_part = ctb_scad.anno_part AND ctb_part.ser_doc = ctb_scad.ser_doc AND\n" +
" ctb_part.num_doc = ctb_scad.num_doc\n" +
" INNER JOIN gtb_anag ON ctb_part.cod_anag = gtb_anag.cod_anag\n" +
" INNER JOIN gtb_paga ON ctb_scad.cod_paga = gtb_paga.cod_paga\n" +
" LEFT OUTER JOIN gtb_tipi_paga_intercode ON gtb_paga.tipo_paga = gtb_tipi_paga_intercode.tipo_paga\n" +
" LEFT outer join gtb_tipi_paga on gtb_paga.tipo_paga = gtb_tipi_paga.tipo_paga\n" +
" LEFT OUTER JOIN gtb_tipi_paga_intercode ON gtb_tipi_paga.tipo_paga = gtb_tipi_paga_intercode.tipo_paga\n" +
" LEFT OUTER JOIN gtb_banc ON ctb_part.cod_banc = gtb_banc.cod_banc\n" +
" LEFT OUTER JOIN gtb_banc_azi ON gtb_banc.cod_banc = gtb_banc_azi.cod_banc\n" +
" LEFT OUTER JOIN gtb_banc_azi_intercode ON gtb_banc_azi.cod_banc_azi = gtb_banc_azi_intercode.cod_banc_azi AND\n" +
@@ -98,9 +99,10 @@ public class ScadenzeExporterService {
" AND ctb_part.ser_doc = ctb_parr.ser_doc\n" +
" AND ctb_part.num_doc = ctb_parr.num_doc\n" +
" ORDER BY ctb_parr.data_cmov) ctb_parr\n" +
" OUTER APPLY (SELECT CASE WHEN (ctb_part.tipo_anag = 'F' AND gtb_tipi_paga.flag_banca_acq = 'A' ) OR (ctb_part.tipo_anag = 'C' AND gtb_tipi_paga.flag_banca_ven = 'A' ) THEN 1 ELSE 0 END as banca_azi ) c\n " +
"WHERE ctb_scad.data_pag IS NULL\n" +
"UNION ALL\n" +
"SELECT 'RD' /*leggere da tabella di trascodifica*/ AS 'tipo_pagamento',\n" +
"SELECT 'RD' AS 'tipo_pagamento',\n" +
" REPLACE(\n" +
" CAST(\n" +
" FORMAT(\n" +

View File

@@ -769,7 +769,7 @@ public class SystemController {
"from jtb_comt \n" +
"inner join jrl_flav_users on jtb_comt.cod_jflav_tec = jrl_flav_users.cod_jflav and jrl_flav_users.flag_jflav_default = 's'\n" +
"inner join stb_user on jrl_flav_users.user_name =stb_user.user_name " +
"where cod_jcom = %S AND stb_user.user_name <> %S", activity.getCodJcom(), activity.getUserCreator()) ;
"where cod_jcom = %S ", activity.getCodJcom()) ;
String emailResponsabile = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(multiDBTransactionManager.getPrimaryConnection(), query);
if (!UtilityString.isNullOrEmpty(emailResponsabile) && !listEmailCcn.contains(emailResponsabile))