Skip to content

Commit 0fc64e1

Browse files
committed
Add timestamp to Message
1 parent 103cf55 commit 0fc64e1

File tree

8 files changed

+20
-9
lines changed

8 files changed

+20
-9
lines changed

gui/src/services/backend/api.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import config from '../../../config'
2424
import * as hardcoded from '../hardcoded'
2525

2626
function bankBaseRoute(bank: BankName): string {
27-
// return `http://localhost:8083/${bank.toLowerCase().replace(/ /g, '-')}/api`
27+
// return `http://localhost:8083/${bank.toLowerCase().replace(/ /g, '-')}/api`
2828
return `/${bank.toLowerCase().replace(/ /g, '-')}/api`
2929
}
3030

@@ -94,7 +94,7 @@ function mapMessage(message: any): TransferMessage {
9494
type: message.messageType,
9595
title: "",
9696
summary: JSON.parse(message.content),
97-
timestamp: "2025-08-04T14:59:22.028532Z"
97+
timestamp: message.timestamp
9898
}
9999
console.log(foo)
100100
return foo
@@ -231,7 +231,7 @@ async function getIbans(bank: BankName): Promise<string[]> {
231231
const response = await ofetch<string[]>(joinURL(bankBaseRoute(contraBank), 'bank', 'iban'), {
232232
method: 'GET'
233233
})
234-
// const response = ["GB33BUKB20201555555555"];
234+
// const response = ['GB33BUKB20201555555555'];
235235
return z.string().array().parse(response)
236236
} catch (error) {
237237
handleError(`fetching IBANs for ${bank}`, error)

server/src/main/java/com/exactpro/blockchain/CustomerCreditTransferConverter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public Transfer newTransfer(@NonNull Client client, @NonNull TransferRequest tra
2929
.amount(transferRequest.getAmount())
3030
.clientId(client.getClientId())
3131
.creditorBic(transferRequest.getCreditorBic())
32-
.creditorFullName(client.getFullName())
32+
.creditorFullName(transferRequest.getCreditorFullName())
3333
.creditorIban(transferRequest.getCreditorIban())
3434
.currencyCode(transferRequest.getCurrencyCode())
3535
.debtorBic(myBic)

server/src/main/java/com/exactpro/blockchain/api/client/ClientHandler.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import javax.xml.transform.TransformerException;
2525
import java.math.BigDecimal;
2626
import java.text.MessageFormat;
27+
import java.time.Instant;
2728

2829
@Component
2930
public class ClientHandler {
@@ -214,7 +215,7 @@ Mono<Void> handle(
214215
return Mono.error(new RuntimeException("Failed to convert Pacs008Message to JSON", e));
215216
}
216217

217-
Message message = new Message("pacs.008", transfer.getTransferId(), pacs008MessageJson);
218+
Message message = new Message("pacs.008", transfer.getTransferId(), pacs008MessageJson, Instant.now());
218219
return messageRepository.save(message);
219220
}
220221

server/src/main/java/com/exactpro/blockchain/coincento/CoincentoWallet.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import java.math.BigDecimal;
2525
import java.math.BigInteger;
2626
import java.nio.charset.StandardCharsets;
27+
import java.time.Instant;
2728
import java.util.Arrays;
2829
import java.util.Collections;
2930
import java.util.Objects;
@@ -141,7 +142,7 @@ public Mono<Void> transfer(@NonNull Integer transferId,
141142
return Mono.error(new RuntimeException("Failed to convert DltMessage to JSON", e));
142143
}
143144

144-
Message message = new Message("erc-1155.safeTransfer", transferId, dltJson);
145+
Message message = new Message("erc-1155.safeTransfer", transferId, dltJson, Instant.now());
145146

146147
return messageRepository.save(message);
147148
}

server/src/main/java/com/exactpro/blockchain/entity/Message.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
package com.exactpro.blockchain.entity;
22

3+
import com.fasterxml.jackson.annotation.JsonFormat;
34
import com.fasterxml.jackson.annotation.JsonProperty;
45
import org.springframework.data.annotation.Id;
56
import org.springframework.data.relational.core.mapping.Column;
67
import org.springframework.data.relational.core.mapping.Table;
78

9+
import java.time.Instant;
10+
811
@Table("Message")
912
public class Message {
1013
@Id
@@ -20,13 +23,17 @@ public class Message {
2023

2124
private String content;
2225

26+
@JsonFormat(shape = JsonFormat.Shape.STRING)
27+
private Instant timestamp;
28+
2329
public Message() {
2430
}
2531

26-
public Message(String messageType, Integer transferId, String content) {
32+
public Message(String messageType, Integer transferId, String content, Instant timestamp) {
2733
this.messageType = messageType;
2834
this.transferId = transferId;
2935
this.content = content;
36+
this.timestamp = timestamp;
3037
}
3138

3239
public String getMessageId() {

server/src/main/java/com/exactpro/blockchain/kafka/KafkaConsumer.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import java.io.IOException;
3434
import java.math.BigDecimal;
3535
import java.text.MessageFormat;
36+
import java.time.Instant;
3637
import java.util.Collections;
3738
import java.util.List;
3839
import java.util.Map;
@@ -212,7 +213,7 @@ private Mono<Message> saveSinglePacs008Message(Transfer transfer, Pacs008Message
212213
return Mono.error(new RuntimeException("Failed to convert Pacs008Message to JSON", e));
213214
}
214215

215-
Message messageEntity = new Message("pacs.008", transfer.getTransferId(), pacs008MessageJson);
216+
Message messageEntity = new Message("pacs.008", transfer.getTransferId(), pacs008MessageJson, Instant.now());
216217
return messageRepository.save(messageEntity);
217218
});
218219
}

server/src/main/java/com/exactpro/blockchain/repository/MessageRepository.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,6 @@
77
import reactor.core.publisher.Flux;
88

99
public interface MessageRepository extends ReactiveCrudRepository<Message, String> {
10-
@Query("SELECT m.messageId, m.transferId, m.messageType, m.content FROM Message m INNER JOIN Transfer t ON m.transferId = t.transferId WHERE t.endToEndId = :endToEndId")
10+
@Query("SELECT m.* FROM Message m INNER JOIN Transfer t ON m.transferId = t.transferId WHERE t.endToEndId = :endToEndId")
1111
Flux<Message> findByEndToEndId(@Param("endToEndId") String currencyCode);
1212
}

server/src/main/resources/db/migration/V1__Initial_schema.sql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,5 +60,6 @@ CREATE TABLE Message (
6060
messageType VARCHAR(255) NOT NULL,
6161
transferId INTEGER NOT NULL,
6262
content TEXT NOT NULL,
63+
timestamp TIMESTAMPTZ NOT NULL,
6364
FOREIGN KEY (transferId) REFERENCES Transfer(transferId)
6465
);

0 commit comments

Comments
 (0)