From d0cf80ff0dbcdb52723eea553f91a5ce77df6fb9 Mon Sep 17 00:00:00 2001 From: andrea-barchi Date: Tue, 23 Jan 2024 12:16:47 +0100 Subject: [PATCH] NOD-642 Format code --- .../java/it/gov/pagopa/fdr/AppStartup.java | 1 + .../fdr/repository/fdr/FdrPublishEntity.java | 3 +- .../fdr/service/history/HistoryService.java | 348 ++++++++++-------- .../history/constants/HistoryConstants.java | 89 ++--- .../history/mapper/HistoryServiceMapper.java | 23 +- .../history/model/FdrHistoryEntity.java | 11 +- .../history/model/FdrHistoryMongoEntity.java | 4 +- .../model/FdrHistoryPaymentEntity.java | 20 +- .../pagopa/fdr/service/psps/PspsService.java | 2 - 9 files changed, 273 insertions(+), 228 deletions(-) diff --git a/src/main/java/it/gov/pagopa/fdr/AppStartup.java b/src/main/java/it/gov/pagopa/fdr/AppStartup.java index 8bf289bd..f59f0c08 100644 --- a/src/main/java/it/gov/pagopa/fdr/AppStartup.java +++ b/src/main/java/it/gov/pagopa/fdr/AppStartup.java @@ -25,6 +25,7 @@ public class AppStartup { @ConfigProperty(name = "history.enabled") boolean historyEnabled; + @Inject Logger log; @Inject Config config; diff --git a/src/main/java/it/gov/pagopa/fdr/repository/fdr/FdrPublishEntity.java b/src/main/java/it/gov/pagopa/fdr/repository/fdr/FdrPublishEntity.java index 47a1f9ec..0a72ab1b 100644 --- a/src/main/java/it/gov/pagopa/fdr/repository/fdr/FdrPublishEntity.java +++ b/src/main/java/it/gov/pagopa/fdr/repository/fdr/FdrPublishEntity.java @@ -9,9 +9,8 @@ import it.gov.pagopa.fdr.repository.fdr.model.FdrStatusEnumEntity; import it.gov.pagopa.fdr.repository.fdr.model.ReceiverEntity; import it.gov.pagopa.fdr.repository.fdr.model.SenderEntity; -import java.time.Instant; - import it.gov.pagopa.fdr.service.re.model.BlobHttpBody; +import java.time.Instant; import lombok.Data; import lombok.EqualsAndHashCode; import org.bson.codecs.pojo.annotations.BsonProperty; diff --git a/src/main/java/it/gov/pagopa/fdr/service/history/HistoryService.java b/src/main/java/it/gov/pagopa/fdr/service/history/HistoryService.java index 6fa2067b..c37ca223 100644 --- a/src/main/java/it/gov/pagopa/fdr/service/history/HistoryService.java +++ b/src/main/java/it/gov/pagopa/fdr/service/history/HistoryService.java @@ -18,163 +18,223 @@ import it.gov.pagopa.fdr.service.history.constants.HistoryConstants; import it.gov.pagopa.fdr.service.history.mapper.HistoryServiceMapper; import it.gov.pagopa.fdr.service.history.model.FdrHistoryEntity; -import it.gov.pagopa.fdr.service.history.model.FdrHistoryMongoEntity; import it.gov.pagopa.fdr.service.history.model.FdrHistoryPaymentEntity; import it.gov.pagopa.fdr.service.re.model.BlobHttpBody; import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; -import org.eclipse.microprofile.config.inject.ConfigProperty; -import org.jboss.logging.Logger; - import java.time.Instant; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import org.eclipse.microprofile.config.inject.ConfigProperty; +import org.jboss.logging.Logger; @ApplicationScoped public class HistoryService { - @Inject HistoryServiceMapper mapper; - @Inject Logger logger; - @Inject ObjectMapper objMapper; - @ConfigProperty(name = "blob.history.connect-str") - String blobConnectionsStr; - @ConfigProperty(name = "blob.history.containername") - String blobContainerName; - @ConfigProperty(name = "table.history.connect-str") - String tableStorageConnString; - @ConfigProperty(name = "table.history.tablename.fdrpublish") - String tableNameFdrPublish; - @ConfigProperty(name = "table.history.tablename.fdrpaymentpublish") - String tableNameFdrPaymentPublish; - private BlobContainerClient blobContainerClient; - private TableServiceClient tableServiceClient; - - public void init() { - logger.infof( - "Blob Storage HistoryService service init. Container name [%s]", - blobContainerName - ); - BlobServiceClient blobServiceClient = new BlobServiceClientBuilder().connectionString(blobConnectionsStr).buildClient(); - this.blobContainerClient = blobServiceClient.createBlobContainerIfNotExists(blobContainerName); - this.tableServiceClient = new TableServiceClientBuilder() - .connectionString(tableStorageConnString) - .buildClient(); - this.tableServiceClient.createTableIfNotExists(tableNameFdrPublish); - this.tableServiceClient.createTableIfNotExists(tableNameFdrPaymentPublish); - } - public void saveOnStorage(FdrPublishEntity fdrEntity, List paymentsList) { - if(blobContainerClient != null){ - try { - String partitionKey = createPartitionKey(fdrEntity.getPublished()); - saveFdrOnTableStorage(fdrEntity, partitionKey); - saveFdrPaymentsOnTableStorage(paymentsList, partitionKey); - } catch (JsonProcessingException e) { - logger.error("Error processing fdrHistoryEntity as Bytes", e); - throw new AppException(AppErrorCodeMessageEnum.ERROR); - } catch (Exception e) { - logger.error("Exception while uploading FDR History", e); - throw new AppException(AppErrorCodeMessageEnum.ERROR); - } - } - } + @Inject HistoryServiceMapper mapper; + @Inject Logger logger; + @Inject ObjectMapper objMapper; - public BlobHttpBody saveJsonFile(FdrPublishEntity fdrEntity, List paymentsList){ - FdrHistoryEntity fdrHistoryEntity = mapper.toFdrHistoryEntity(fdrEntity); - List fdrHistoryPaymentEntityList = mapper.toFdrHistoryPaymentEntityList(paymentsList); - fdrHistoryEntity.setPaymentList(fdrHistoryPaymentEntityList); - String fileName = String.format("%s_%s_%s.json", fdrEntity.getFdr(), fdrEntity.getSender().getPspId(), fdrEntity.getRevision()); - try{ - byte[] jsonBytes = objMapper.writeValueAsBytes(fdrHistoryEntity); - BinaryData jsonFile = BinaryData.fromBytes(jsonBytes); - - BlobClient blobClient = blobContainerClient.getBlobClient(fileName); - blobClient.upload(jsonFile); - - return BlobHttpBody.builder() - .storageAccount(blobContainerClient.getAccountName()) - .containerName(blobContainerName) - .fileName(fileName) - .fileLength(jsonFile.getLength()) - .build(); - }catch (JsonProcessingException e) { - logger.error("Error processing fdrHistoryEntity as Bytes", e); - throw new AppException(AppErrorCodeMessageEnum.ERROR); - }catch (Exception e){ - logger.error("Error while uploading blob", e); - throw new AppException(AppErrorCodeMessageEnum.ERROR); - } - } - private String createPartitionKey(Instant publishTime){ - return publishTime.toString().substring(0,10); + @ConfigProperty(name = "blob.history.connect-str") + String blobConnectionsStr; + + @ConfigProperty(name = "blob.history.containername") + String blobContainerName; + + @ConfigProperty(name = "table.history.connect-str") + String tableStorageConnString; + + @ConfigProperty(name = "table.history.tablename.fdrpublish") + String tableNameFdrPublish; + + @ConfigProperty(name = "table.history.tablename.fdrpaymentpublish") + String tableNameFdrPaymentPublish; + + private BlobContainerClient blobContainerClient; + private TableServiceClient tableServiceClient; + + public void init() { + logger.infof( + "Blob Storage HistoryService service init. Container name [%s]", blobContainerName); + BlobServiceClient blobServiceClient = + new BlobServiceClientBuilder().connectionString(blobConnectionsStr).buildClient(); + this.blobContainerClient = blobServiceClient.createBlobContainerIfNotExists(blobContainerName); + this.tableServiceClient = + new TableServiceClientBuilder().connectionString(tableStorageConnString).buildClient(); + this.tableServiceClient.createTableIfNotExists(tableNameFdrPublish); + this.tableServiceClient.createTableIfNotExists(tableNameFdrPaymentPublish); + } + + public void saveOnStorage( + FdrPublishEntity fdrEntity, List paymentsList) { + if (blobContainerClient != null) { + try { + String partitionKey = createPartitionKey(fdrEntity.getPublished()); + saveFdrOnTableStorage(fdrEntity, partitionKey); + saveFdrPaymentsOnTableStorage(paymentsList, partitionKey); + } catch (JsonProcessingException e) { + logger.error("Error processing fdrHistoryEntity as Bytes", e); + throw new AppException(AppErrorCodeMessageEnum.ERROR); + } catch (Exception e) { + logger.error("Exception while uploading FDR History", e); + throw new AppException(AppErrorCodeMessageEnum.ERROR); + } } - private void saveFdrOnTableStorage(FdrPublishEntity fdrPublishEntity, String partitionKey) throws JsonProcessingException { - Map fdrPublishMap = new LinkedHashMap<>(); - String id = String.valueOf(fdrPublishEntity.id); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_ID, id); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_REVISION, fdrPublishEntity.getRevision()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_CREATED, fdrPublishEntity.getCreated()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_UPDATED, fdrPublishEntity.getUpdated()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_PUBLISHED, fdrPublishEntity.getPublished()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_FDR, fdrPublishEntity.getFdr()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_FDR_DATE, fdrPublishEntity.getFdrDate()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_FDR_REF_JSON_CONTAINER_NAME, fdrPublishEntity.getRefJson().getContainerName()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_FDR_REF_JSON_FILE_LENGTH, fdrPublishEntity.getRefJson().getFileLength()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_FDR_REF_JSON_FILE_NAME, fdrPublishEntity.getRefJson().getFileName()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_FDR_REF_JSON_STORAGE_ACCOUNT, fdrPublishEntity.getRefJson().getStorageAccount()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_SENDER_TYPE, fdrPublishEntity.getSender().getType()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_SENDER_ID, fdrPublishEntity.getSender().getId()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_SENDER_PSP_ID, fdrPublishEntity.getSender().getPspId()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_SENDER_PSP_NAME, fdrPublishEntity.getSender().getPspName()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_SENDER_PSP_BROKER_ID, fdrPublishEntity.getSender().getPspBrokerId()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_SENDER_CHANNEL_ID, fdrPublishEntity.getSender().getChannelId()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_SENDER_PASSWORD, fdrPublishEntity.getSender().getPassword()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_RECEIVER_ID, fdrPublishEntity.getReceiver().getId()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_RECEIVER_ORGANIZATION_ID, fdrPublishEntity.getReceiver().getOrganizationId()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_RECEIVER_ORGANIZATION_NAME, fdrPublishEntity.getReceiver().getOrganizationName()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_REGULATION, fdrPublishEntity.getRegulation()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_REGULATION_DATE, fdrPublishEntity.getRegulationDate()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_BIC_CODE_POURING_BANK, fdrPublishEntity.getBicCodePouringBank()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_STATUS, fdrPublishEntity.getStatus()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_COMPUTED_TOT_PAYMENTS, fdrPublishEntity.getComputedTotPayments()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_COMPUTED_SUM_PAYMENTS, fdrPublishEntity.getComputedSumPayments()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_TOT_PAYMENTS, fdrPublishEntity.getTotPayments()); - fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_SUM_PAYMENTS, fdrPublishEntity.getSumPayments()); - - - - logger.info("Send to "+tableNameFdrPublish+" record with "+HistoryConstants.FDR_PUBLISH_ID+"="+id); - TableClient tableClient = this.tableServiceClient.getTableClient(tableNameFdrPublish); - TableEntity entity = new TableEntity(partitionKey, id); - entity.setProperties(fdrPublishMap); - tableClient.createEntity(entity); + } + + public BlobHttpBody saveJsonFile( + FdrPublishEntity fdrEntity, List paymentsList) { + FdrHistoryEntity fdrHistoryEntity = mapper.toFdrHistoryEntity(fdrEntity); + List fdrHistoryPaymentEntityList = + mapper.toFdrHistoryPaymentEntityList(paymentsList); + fdrHistoryEntity.setPaymentList(fdrHistoryPaymentEntityList); + String fileName = + String.format( + "%s_%s_%s.json", + fdrEntity.getFdr(), fdrEntity.getSender().getPspId(), fdrEntity.getRevision()); + try { + byte[] jsonBytes = objMapper.writeValueAsBytes(fdrHistoryEntity); + BinaryData jsonFile = BinaryData.fromBytes(jsonBytes); + + BlobClient blobClient = blobContainerClient.getBlobClient(fileName); + blobClient.upload(jsonFile); + + return BlobHttpBody.builder() + .storageAccount(blobContainerClient.getAccountName()) + .containerName(blobContainerName) + .fileName(fileName) + .fileLength(jsonFile.getLength()) + .build(); + } catch (JsonProcessingException e) { + logger.error("Error processing fdrHistoryEntity as Bytes", e); + throw new AppException(AppErrorCodeMessageEnum.ERROR); + } catch (Exception e) { + logger.error("Error while uploading blob", e); + throw new AppException(AppErrorCodeMessageEnum.ERROR); } + } - private void saveFdrPaymentsOnTableStorage(List paymentsList, String partitionKey) throws JsonProcessingException { - paymentsList.forEach(payment -> { - Map paymentMap = new LinkedHashMap<>(); - String id = String.valueOf(payment.id); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_ID, id); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_REVISION, payment.getRevision()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR_ID, String.valueOf(payment.getRefFdrId())); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_CREATED, payment.getCreated()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_UPDATED, payment.getUpdated()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_IUV, payment.getIuv()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_IUR, payment.getIur()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_INDEX, payment.getIndex()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_PAY, payment.getPay()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_PAY_STATUS, payment.getPayStatus()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_PAY_DATE, payment.getPayDate()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR, payment.getRefFdr()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR_SENDER_PSP_ID, payment.getRefFdrSenderPspId()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR_REVISION, payment.getRefFdrRevision()); - paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR_RECEIVER_ORGANIZATION_ID, payment.getRefFdrReceiverOrganizationId()); - - - logger.info("Send to "+tableNameFdrPaymentPublish+" record with "+HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR_ID+"="+id); - TableClient tableClient = this.tableServiceClient.getTableClient(tableNameFdrPaymentPublish); - TableEntity entity = new TableEntity(partitionKey, id+"-"+payment.getIndex()); - entity.setProperties(paymentMap); - tableClient.createEntity(entity); + private String createPartitionKey(Instant publishTime) { + return publishTime.toString().substring(0, 10); + } + + private void saveFdrOnTableStorage(FdrPublishEntity fdrPublishEntity, String partitionKey) + throws JsonProcessingException { + Map fdrPublishMap = new LinkedHashMap<>(); + String id = String.valueOf(fdrPublishEntity.id); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_ID, id); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_REVISION, fdrPublishEntity.getRevision()); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_CREATED, fdrPublishEntity.getCreated()); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_UPDATED, fdrPublishEntity.getUpdated()); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_PUBLISHED, fdrPublishEntity.getPublished()); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_FDR, fdrPublishEntity.getFdr()); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_FDR_DATE, fdrPublishEntity.getFdrDate()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_FDR_REF_JSON_CONTAINER_NAME, + fdrPublishEntity.getRefJson().getContainerName()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_FDR_REF_JSON_FILE_LENGTH, + fdrPublishEntity.getRefJson().getFileLength()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_FDR_REF_JSON_FILE_NAME, + fdrPublishEntity.getRefJson().getFileName()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_FDR_REF_JSON_STORAGE_ACCOUNT, + fdrPublishEntity.getRefJson().getStorageAccount()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_SENDER_TYPE, fdrPublishEntity.getSender().getType()); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_SENDER_ID, fdrPublishEntity.getSender().getId()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_SENDER_PSP_ID, fdrPublishEntity.getSender().getPspId()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_SENDER_PSP_NAME, fdrPublishEntity.getSender().getPspName()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_SENDER_PSP_BROKER_ID, + fdrPublishEntity.getSender().getPspBrokerId()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_SENDER_CHANNEL_ID, + fdrPublishEntity.getSender().getChannelId()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_SENDER_PASSWORD, fdrPublishEntity.getSender().getPassword()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_RECEIVER_ID, fdrPublishEntity.getReceiver().getId()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_RECEIVER_ORGANIZATION_ID, + fdrPublishEntity.getReceiver().getOrganizationId()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_RECEIVER_ORGANIZATION_NAME, + fdrPublishEntity.getReceiver().getOrganizationName()); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_REGULATION, fdrPublishEntity.getRegulation()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_REGULATION_DATE, fdrPublishEntity.getRegulationDate()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_BIC_CODE_POURING_BANK, + fdrPublishEntity.getBicCodePouringBank()); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_STATUS, fdrPublishEntity.getStatus()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_COMPUTED_TOT_PAYMENTS, + fdrPublishEntity.getComputedTotPayments()); + fdrPublishMap.put( + HistoryConstants.FDR_PUBLISH_COMPUTED_SUM_PAYMENTS, + fdrPublishEntity.getComputedSumPayments()); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_TOT_PAYMENTS, fdrPublishEntity.getTotPayments()); + fdrPublishMap.put(HistoryConstants.FDR_PUBLISH_SUM_PAYMENTS, fdrPublishEntity.getSumPayments()); + + logger.info( + "Send to " + + tableNameFdrPublish + + " record with " + + HistoryConstants.FDR_PUBLISH_ID + + "=" + + id); + TableClient tableClient = this.tableServiceClient.getTableClient(tableNameFdrPublish); + TableEntity entity = new TableEntity(partitionKey, id); + entity.setProperties(fdrPublishMap); + tableClient.createEntity(entity); + } + + private void saveFdrPaymentsOnTableStorage( + List paymentsList, String partitionKey) + throws JsonProcessingException { + paymentsList.forEach( + payment -> { + Map paymentMap = new LinkedHashMap<>(); + String id = String.valueOf(payment.id); + paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_ID, id); + paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_REVISION, payment.getRevision()); + paymentMap.put( + HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR_ID, + String.valueOf(payment.getRefFdrId())); + paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_CREATED, payment.getCreated()); + paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_UPDATED, payment.getUpdated()); + paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_IUV, payment.getIuv()); + paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_IUR, payment.getIur()); + paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_INDEX, payment.getIndex()); + paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_PAY, payment.getPay()); + paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_PAY_STATUS, payment.getPayStatus()); + paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_PAY_DATE, payment.getPayDate()); + paymentMap.put(HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR, payment.getRefFdr()); + paymentMap.put( + HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR_SENDER_PSP_ID, + payment.getRefFdrSenderPspId()); + paymentMap.put( + HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR_REVISION, payment.getRefFdrRevision()); + paymentMap.put( + HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR_RECEIVER_ORGANIZATION_ID, + payment.getRefFdrReceiverOrganizationId()); + + logger.info( + "Send to " + + tableNameFdrPaymentPublish + + " record with " + + HistoryConstants.FDR_PAYMENT_PUBLISH_REF_FDR_ID + + "=" + + id); + TableClient tableClient = + this.tableServiceClient.getTableClient(tableNameFdrPaymentPublish); + TableEntity entity = new TableEntity(partitionKey, id + "-" + payment.getIndex()); + entity.setProperties(paymentMap); + tableClient.createEntity(entity); }); - } -} \ No newline at end of file + } +} diff --git a/src/main/java/it/gov/pagopa/fdr/service/history/constants/HistoryConstants.java b/src/main/java/it/gov/pagopa/fdr/service/history/constants/HistoryConstants.java index ce3bf6a8..6f0cbdca 100644 --- a/src/main/java/it/gov/pagopa/fdr/service/history/constants/HistoryConstants.java +++ b/src/main/java/it/gov/pagopa/fdr/service/history/constants/HistoryConstants.java @@ -1,49 +1,50 @@ package it.gov.pagopa.fdr.service.history.constants; public class HistoryConstants { - public static final String FDR_PUBLISH_ID = "id"; - public static final String FDR_PUBLISH_REVISION = "revision"; - public static final String FDR_PUBLISH_CREATED = "created"; - public static final String FDR_PUBLISH_UPDATED = "updated"; - public static final String FDR_PUBLISH_PUBLISHED = "published"; - public static final String FDR_PUBLISH_FDR = "fdr"; - public static final String FDR_PUBLISH_FDR_DATE = "fdr_date"; - public static final String FDR_PUBLISH_FDR_REF_JSON_CONTAINER_NAME = "ref_json.container_name"; - public static final String FDR_PUBLISH_FDR_REF_JSON_FILE_LENGTH = "ref_json.file_length"; - public static final String FDR_PUBLISH_FDR_REF_JSON_FILE_NAME = "ref_json.file_name"; - public static final String FDR_PUBLISH_FDR_REF_JSON_STORAGE_ACCOUNT = "ref_json.storage_account"; - public static final String FDR_PUBLISH_SENDER_TYPE = "sender.type"; - public static final String FDR_PUBLISH_SENDER_ID = "sender.id"; - public static final String FDR_PUBLISH_SENDER_PSP_ID = "sender.psp_id"; - public static final String FDR_PUBLISH_SENDER_PSP_NAME = "sender.psp_name"; - public static final String FDR_PUBLISH_SENDER_PSP_BROKER_ID = "sender.psp_broker_id"; - public static final String FDR_PUBLISH_SENDER_CHANNEL_ID = "sender.channel_id"; - public static final String FDR_PUBLISH_SENDER_PASSWORD = "sender.password"; - public static final String FDR_PUBLISH_RECEIVER_ID = "receiver.id"; - public static final String FDR_PUBLISH_RECEIVER_ORGANIZATION_ID = "receiver.organization_id"; - public static final String FDR_PUBLISH_RECEIVER_ORGANIZATION_NAME = "receiver.organization_name"; - public static final String FDR_PUBLISH_REGULATION = "regulation"; - public static final String FDR_PUBLISH_REGULATION_DATE = "regulation_date"; - public static final String FDR_PUBLISH_BIC_CODE_POURING_BANK = "bic_code_pouring_bank"; - public static final String FDR_PUBLISH_STATUS = "status"; - public static final String FDR_PUBLISH_COMPUTED_TOT_PAYMENTS = "computed_tot_payments"; - public static final String FDR_PUBLISH_COMPUTED_SUM_PAYMENTS = "computed_sum_payments"; - public static final String FDR_PUBLISH_TOT_PAYMENTS = "tot_payments"; - public static final String FDR_PUBLISH_SUM_PAYMENTS = "sum_payments"; + public static final String FDR_PUBLISH_ID = "id"; + public static final String FDR_PUBLISH_REVISION = "revision"; + public static final String FDR_PUBLISH_CREATED = "created"; + public static final String FDR_PUBLISH_UPDATED = "updated"; + public static final String FDR_PUBLISH_PUBLISHED = "published"; + public static final String FDR_PUBLISH_FDR = "fdr"; + public static final String FDR_PUBLISH_FDR_DATE = "fdr_date"; + public static final String FDR_PUBLISH_FDR_REF_JSON_CONTAINER_NAME = "ref_json.container_name"; + public static final String FDR_PUBLISH_FDR_REF_JSON_FILE_LENGTH = "ref_json.file_length"; + public static final String FDR_PUBLISH_FDR_REF_JSON_FILE_NAME = "ref_json.file_name"; + public static final String FDR_PUBLISH_FDR_REF_JSON_STORAGE_ACCOUNT = "ref_json.storage_account"; + public static final String FDR_PUBLISH_SENDER_TYPE = "sender.type"; + public static final String FDR_PUBLISH_SENDER_ID = "sender.id"; + public static final String FDR_PUBLISH_SENDER_PSP_ID = "sender.psp_id"; + public static final String FDR_PUBLISH_SENDER_PSP_NAME = "sender.psp_name"; + public static final String FDR_PUBLISH_SENDER_PSP_BROKER_ID = "sender.psp_broker_id"; + public static final String FDR_PUBLISH_SENDER_CHANNEL_ID = "sender.channel_id"; + public static final String FDR_PUBLISH_SENDER_PASSWORD = "sender.password"; + public static final String FDR_PUBLISH_RECEIVER_ID = "receiver.id"; + public static final String FDR_PUBLISH_RECEIVER_ORGANIZATION_ID = "receiver.organization_id"; + public static final String FDR_PUBLISH_RECEIVER_ORGANIZATION_NAME = "receiver.organization_name"; + public static final String FDR_PUBLISH_REGULATION = "regulation"; + public static final String FDR_PUBLISH_REGULATION_DATE = "regulation_date"; + public static final String FDR_PUBLISH_BIC_CODE_POURING_BANK = "bic_code_pouring_bank"; + public static final String FDR_PUBLISH_STATUS = "status"; + public static final String FDR_PUBLISH_COMPUTED_TOT_PAYMENTS = "computed_tot_payments"; + public static final String FDR_PUBLISH_COMPUTED_SUM_PAYMENTS = "computed_sum_payments"; + public static final String FDR_PUBLISH_TOT_PAYMENTS = "tot_payments"; + public static final String FDR_PUBLISH_SUM_PAYMENTS = "sum_payments"; - public static final String FDR_PAYMENT_PUBLISH_ID = "id"; - public static final String FDR_PAYMENT_PUBLISH_REVISION = "revision"; - public static final String FDR_PAYMENT_PUBLISH_CREATED = "created"; - public static final String FDR_PAYMENT_PUBLISH_UPDATED = "updated"; - public static final String FDR_PAYMENT_PUBLISH_IUV = "iuv"; - public static final String FDR_PAYMENT_PUBLISH_IUR = "iur"; - public static final String FDR_PAYMENT_PUBLISH_INDEX = "index"; - public static final String FDR_PAYMENT_PUBLISH_PAY = "pay"; - public static final String FDR_PAYMENT_PUBLISH_PAY_STATUS = "pay_status"; - public static final String FDR_PAYMENT_PUBLISH_PAY_DATE = "pay_date"; - public static final String FDR_PAYMENT_PUBLISH_REF_FDR_ID = "ref_fdr_id"; - public static final String FDR_PAYMENT_PUBLISH_REF_FDR = "ref_fdr"; - public static final String FDR_PAYMENT_PUBLISH_REF_FDR_SENDER_PSP_ID = "ref_fdr_sender_psp_id"; - public static final String FDR_PAYMENT_PUBLISH_REF_FDR_REVISION = "ref_fdr_revision"; - public static final String FDR_PAYMENT_PUBLISH_REF_FDR_RECEIVER_ORGANIZATION_ID = "ref_fdr_receiver_organization_id"; + public static final String FDR_PAYMENT_PUBLISH_ID = "id"; + public static final String FDR_PAYMENT_PUBLISH_REVISION = "revision"; + public static final String FDR_PAYMENT_PUBLISH_CREATED = "created"; + public static final String FDR_PAYMENT_PUBLISH_UPDATED = "updated"; + public static final String FDR_PAYMENT_PUBLISH_IUV = "iuv"; + public static final String FDR_PAYMENT_PUBLISH_IUR = "iur"; + public static final String FDR_PAYMENT_PUBLISH_INDEX = "index"; + public static final String FDR_PAYMENT_PUBLISH_PAY = "pay"; + public static final String FDR_PAYMENT_PUBLISH_PAY_STATUS = "pay_status"; + public static final String FDR_PAYMENT_PUBLISH_PAY_DATE = "pay_date"; + public static final String FDR_PAYMENT_PUBLISH_REF_FDR_ID = "ref_fdr_id"; + public static final String FDR_PAYMENT_PUBLISH_REF_FDR = "ref_fdr"; + public static final String FDR_PAYMENT_PUBLISH_REF_FDR_SENDER_PSP_ID = "ref_fdr_sender_psp_id"; + public static final String FDR_PAYMENT_PUBLISH_REF_FDR_REVISION = "ref_fdr_revision"; + public static final String FDR_PAYMENT_PUBLISH_REF_FDR_RECEIVER_ORGANIZATION_ID = + "ref_fdr_receiver_organization_id"; } diff --git a/src/main/java/it/gov/pagopa/fdr/service/history/mapper/HistoryServiceMapper.java b/src/main/java/it/gov/pagopa/fdr/service/history/mapper/HistoryServiceMapper.java index 42e93209..31ddb92d 100644 --- a/src/main/java/it/gov/pagopa/fdr/service/history/mapper/HistoryServiceMapper.java +++ b/src/main/java/it/gov/pagopa/fdr/service/history/mapper/HistoryServiceMapper.java @@ -1,28 +1,29 @@ package it.gov.pagopa.fdr.service.history.mapper; -import it.gov.pagopa.fdr.repository.fdr.FdrInsertEntity; -import it.gov.pagopa.fdr.repository.fdr.FdrPaymentInsertEntity; import it.gov.pagopa.fdr.repository.fdr.FdrPaymentPublishEntity; import it.gov.pagopa.fdr.repository.fdr.FdrPublishEntity; import it.gov.pagopa.fdr.service.history.model.FdrHistoryEntity; import it.gov.pagopa.fdr.service.history.model.FdrHistoryMongoEntity; import it.gov.pagopa.fdr.service.history.model.FdrHistoryPaymentEntity; +import java.util.List; import org.mapstruct.Mapper; import org.mapstruct.Mapping; import org.mapstruct.MappingConstants.ComponentModel; import org.mapstruct.factory.Mappers; -import java.util.List; - @Mapper(componentModel = ComponentModel.JAKARTA) public interface HistoryServiceMapper { - HistoryServiceMapper INSTANCE = Mappers.getMapper(HistoryServiceMapper.class); - @Mapping(target = "paymentList", ignore = true) - FdrHistoryEntity toFdrHistoryEntity(FdrPublishEntity fdrEntity); + HistoryServiceMapper INSTANCE = Mappers.getMapper(HistoryServiceMapper.class); + + @Mapping(target = "paymentList", ignore = true) + FdrHistoryEntity toFdrHistoryEntity(FdrPublishEntity fdrEntity); + + FdrHistoryPaymentEntity toFdrHistoryPaymentEntity( + FdrPaymentPublishEntity fdrPaymentPublishEntity); - FdrHistoryPaymentEntity toFdrHistoryPaymentEntity(FdrPaymentPublishEntity fdrPaymentPublishEntity); - List toFdrHistoryPaymentEntityList(List fdrPaymentPublishEntities); + List toFdrHistoryPaymentEntityList( + List fdrPaymentPublishEntities); - FdrHistoryMongoEntity toFdrHistoryMongoEntity(FdrHistoryEntity fdrHistoryEntity); -} \ No newline at end of file + FdrHistoryMongoEntity toFdrHistoryMongoEntity(FdrHistoryEntity fdrHistoryEntity); +} diff --git a/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryEntity.java b/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryEntity.java index cfdbd78b..9098e997 100644 --- a/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryEntity.java +++ b/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryEntity.java @@ -1,14 +1,12 @@ package it.gov.pagopa.fdr.service.history.model; -import com.fasterxml.jackson.annotation.JsonIgnore; -import it.gov.pagopa.fdr.repository.fdr.FdrPaymentInsertEntity; import it.gov.pagopa.fdr.repository.fdr.model.FdrStatusEnumEntity; import it.gov.pagopa.fdr.repository.fdr.model.ReceiverEntity; import it.gov.pagopa.fdr.repository.fdr.model.SenderEntity; -import lombok.*; -import org.bson.codecs.pojo.annotations.BsonProperty; import java.time.Instant; import java.util.List; +import lombok.*; +import org.bson.codecs.pojo.annotations.BsonProperty; @Data @Builder @@ -53,6 +51,5 @@ public class FdrHistoryEntity { @BsonProperty("sum_payments") private Double sumPayments; - @Setter - private List paymentList; -} \ No newline at end of file + @Setter private List paymentList; +} diff --git a/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryMongoEntity.java b/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryMongoEntity.java index 9def4216..f4eef0ae 100644 --- a/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryMongoEntity.java +++ b/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryMongoEntity.java @@ -5,10 +5,10 @@ import it.gov.pagopa.fdr.repository.fdr.model.FdrStatusEnumEntity; import it.gov.pagopa.fdr.repository.fdr.model.ReceiverEntity; import it.gov.pagopa.fdr.repository.fdr.model.SenderEntity; +import java.time.Instant; import lombok.Data; import lombok.EqualsAndHashCode; import org.bson.codecs.pojo.annotations.BsonProperty; -import java.time.Instant; @Data @EqualsAndHashCode(callSuper = true) @@ -37,4 +37,4 @@ public class FdrHistoryMongoEntity extends PanacheMongoEntity { private FdrStatusEnumEntity status; private FdrHistoryEntity jsonFile; -} \ No newline at end of file +} diff --git a/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryPaymentEntity.java b/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryPaymentEntity.java index a304106c..23b58dfc 100644 --- a/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryPaymentEntity.java +++ b/src/main/java/it/gov/pagopa/fdr/service/history/model/FdrHistoryPaymentEntity.java @@ -1,21 +1,12 @@ package it.gov.pagopa.fdr.service.history.model; import com.fasterxml.jackson.annotation.JsonIgnore; -import io.quarkus.mongodb.panache.PanacheMongoEntity; -import io.quarkus.mongodb.panache.PanacheMongoEntityBase; -import io.quarkus.mongodb.panache.PanacheQuery; -import io.quarkus.mongodb.panache.common.MongoEntity; -import io.quarkus.panache.common.Parameters; -import io.quarkus.panache.common.Sort; import it.gov.pagopa.fdr.repository.fdr.model.PaymentStatusEnumEntity; +import java.time.Instant; import lombok.Data; -import lombok.EqualsAndHashCode; import org.bson.codecs.pojo.annotations.BsonProperty; import org.bson.types.ObjectId; -import java.time.Instant; -import java.util.List; - @Data public class FdrHistoryPaymentEntity { @@ -27,14 +18,11 @@ public class FdrHistoryPaymentEntity { private Double pay; - @JsonIgnore - private Long revision; + @JsonIgnore private Long revision; - @JsonIgnore - private Instant created; + @JsonIgnore private Instant created; - @JsonIgnore - private Instant updated; + @JsonIgnore private Instant updated; @BsonProperty("pay_status") private PaymentStatusEnumEntity payStatus; diff --git a/src/main/java/it/gov/pagopa/fdr/service/psps/PspsService.java b/src/main/java/it/gov/pagopa/fdr/service/psps/PspsService.java index 687a4dea..6cc683a6 100644 --- a/src/main/java/it/gov/pagopa/fdr/service/psps/PspsService.java +++ b/src/main/java/it/gov/pagopa/fdr/service/psps/PspsService.java @@ -30,7 +30,6 @@ import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; import java.math.BigDecimal; -import java.sql.Blob; import java.time.Instant; import java.util.ArrayList; import java.util.List; @@ -300,7 +299,6 @@ public void publishByFdr(String action, String pspId, String fdr, boolean intern .project(FdrPaymentInsertEntity.class) .list(); - FdrPublishEntity fdrPublishEntity = mapper.toFdrPublishEntity(fdrEntity); Instant now = Instant.now(); fdrPublishEntity.setUpdated(now);