Modifiche servizi Consegna

This commit is contained in:
2025-03-28 18:31:57 +01:00
parent 993ed8dc1d
commit a3c3a75730
2 changed files with 38 additions and 3 deletions

View File

@@ -2147,7 +2147,8 @@ public class DocumentService {
"FROM vtb_clie_pers_rif\n" +
" INNER JOIN stb_tipi_indirizzi ON stb_tipi_indirizzi.tipo_indirizzo = vtb_clie_pers_rif.tipo_indirizzo\n" +
"WHERE tipo_documento = %s\n" +
" AND cod_anag = %s",
" AND cod_anag = %s\n" +
" AND stb_tipi_indirizzi.tipo_indirizzo = 'UFFICIO ACQUISTI'",
codDtip, printDocumentRequest.getCodAnag()
);
String elencoEmail = String.join(",", UtilityDB.executeSimpleQueryOnlyFirstColumn(conn, sql));

View File

@@ -4,6 +4,9 @@ import it.integry.ems.document.export.service.DocumentiIntesaExportService;
import it.integry.ems.exception.PrimaryDatabaseNotPresentException;
import it.integry.ems.logistic.conSegna.dto.*;
import it.integry.ems.order.dto.UserGroupENUM;
import it.integry.ems.report.dto.JasperDTO;
import it.integry.ems.report.dto.PairsDTO;
import it.integry.ems.response.FileItem;
import it.integry.ems.service.EntityProcessor;
import it.integry.ems.service.MailService;
import it.integry.ems.sync.MultiDBTransaction.Connection;
@@ -371,8 +374,13 @@ public class ConSegnaService {
}
public void notifyUser(DatiConsegneDTO datiConsegna) throws Exception {
Connection conn = multiDBTransactionManager.getPrimaryConnection();
String subject = "";
String msgText = "";
String sql = Query.format(
"SELECT vtb_clie_pers_rif.*\n" +
"SELECT e_mail\n" +
"FROM vtb_clie_pers_rif\n" +
" INNER JOIN stb_tipi_indirizzi ON stb_tipi_indirizzi.tipo_indirizzo = vtb_clie_pers_rif.tipo_indirizzo\n" +
"WHERE tipo_documento = %s\n" +
@@ -380,7 +388,33 @@ public class ConSegnaService {
datiConsegna.getCodDtip(),
datiConsegna.getCodAnag()
);
String elencoEmail = String.join(",", UtilityDB.executeSimpleQueryOnlyFirstColumn(conn, sql));
VtbCliePersRif vtbCliePersRif = UtilityDB.executeSimpleQueryOnlyFirstRowDTO(multiDBTransactionManager.getPrimaryConnection(), sql, VtbCliePersRif.class);
sql = Query.format(
"SELECT TOP 1 data_doc,\n" +
" ser_doc,\n" +
" num_doc,\n" +
" cod_anag,\n" +
" cod_dtip,\n" +
" versione\n" +
"FROM dtb_doc_pdf\n" +
"WHERE cod_dtip = %s\n" +
" AND cod_anag = %s\n" +
" AND data_doc = %s\n" +
" AND num_doc = %s\n" +
" AND ser_doc = %s\n" +
" AND filename LIKE %s\n" +
"ORDER BY versione DESC",
datiConsegna.getCodDtip(), datiConsegna.getCodAnag(),
datiConsegna.getDataDoc(), datiConsegna.getNumDoc(),
datiConsegna.getSerDoc(), DocumentiIntesaExportService.SIGNED_PREFIX
);
DtbDocPdf dtbDocPdf = UtilityDB.executeSimpleQueryOnlyFirstRowDTO(conn, sql, DtbDocPdf.class);
dtbDocPdf.setOperation(OperationType.SELECT_OBJECT);
entityProcessor.processEntity(dtbDocPdf, multiDBTransactionManager);
if (!elencoEmail.isEmpty()) {
mailService.sendMail(null, null, elencoEmail, null, null, subject, msgText, false, new FileItem(dtbDocPdf.getFilename(), dtbDocPdf.getFilecontent()));
}
}
}