aggiunta cancellazione movimenti contabili

This commit is contained in:
2024-05-15 16:39:30 +02:00
parent 31e1df6786
commit ee96e8e91b

View File

@@ -72,6 +72,9 @@ public class RossoGarganoSyncService {
savePdc(rgExchange.getConnection());
logger.info("Importazione agenti: Timing " + ((new Date().getTime() - startDate.getTime()) / 1000) + " secs");
deleteCtbMovt(rgExchange.getConnection());
logger.info("Cancellazione movimenti contabili: Timing " + ((new Date().getTime() - startDate.getTime()) / 1000) + " secs");
String sql =
"SELECT CAST(FORMAT(DATEPART(YEAR, data_iniz), '0000') +\n" +
" FORMAT(DATEPART(MONTH, data_iniz), '00') +\n" +
@@ -109,6 +112,26 @@ public class RossoGarganoSyncService {
logger.info("Importazione altri movimenti contabili: Timing " + ((new Date().getTime() - startDate.getTime()) / 1000) + " secs");
}
private void deleteCtbMovt(Connection sourceData) throws Exception {
String sql =
"SELECT m.num_cmov\n" +
"FROM " + multiDBTransactionManager.getPrimaryDatasource().getDbName() + ".dbo.rg_crl_movt m\n" +
"WHERE NOT EXISTS (SELECT *\n" +
" FROM pnota\n" +
" WHERE pnota.pn_data_competenza = m.pn_data_competenza AND pnota.pn_nro_reg = m.pn_nro_reg)\n";
List<Integer> listNumCmov = UtilityDB.executeSimpleQueryOnlyFirstColumn(sourceData, sql);
for ( Integer numCmov : listNumCmov) {
CtbMovt ctbMovt =
new CtbMovt().setNumCmov(numCmov);
ctbMovt.setOperation(OperationType.DELETE);
entityProcessor.processEntity(ctbMovt, true, multiDBTransactionManager);
UtilityEntity.throwEntityException(ctbMovt);
}
}
private void saveCtbMovt(Connection sourceData, String whereCond, BigDecimal dataIniz, BigDecimal dataFine) throws Exception {
String sql =
Query.format(
@@ -705,21 +728,17 @@ public class RossoGarganoSyncService {
" , conti AS (SELECT *\n" +
" FROM mov\n" +
" WHERE pn_cod_anag NOT IN (SELECT diacod\n" +
" FROM rossogargano.dbo.ctb_cont\n" +
" FROM " + multiDBTransactionManager.getPrimaryDatasource().getDbName() + ".dbo.ctb_cont\n" +
" WHERE diacod IS NOT NULL\n" +
" UNION\n" +
" SELECT diacod\n" +
" FROM rossogargano.dbo.gtb_anag\n" +
" FROM " + multiDBTransactionManager.getPrimaryDatasource().getDbName() + ".dbo.gtb_anag\n" +
" WHERE diacod IS NOT NULL))\n" +
" , conti_new AS (SELECT SUBSTRING(cl_codice, 2, 4) AS cod_cmas,\n" +
" SUBSTRING(cl_codice, 2, 2) AS cod_cgrp,\n" +
" cl_ragione_soc AS descrizione,\n" +
" NULL AS tipo_riep,\n" +
" 0 AS saldo_att,\n" +
" 'N' AS flag_cont_att,\n" +
" NULL AS cod_biva,\n" +
" NULL AS cod_jfas,\n" +
" NULL AS cod_csct,\n" +
" 'N' AS flag_risconto,\n" +
" 0 AS perc_ded,\n" +
" cl_codice AS diacod\n" +