BalanceTooHighForPaymentEvent.java
package uk.gov.dhsc.htbhf.claimant.service.audit;
import lombok.Builder;
import uk.gov.dhsc.htbhf.logging.event.Event;
import java.time.LocalDateTime;
import java.util.Map;
import java.util.UUID;
import static uk.gov.dhsc.htbhf.claimant.service.audit.ClaimEventMetadataKey.BALANCE_ON_CARD;
import static uk.gov.dhsc.htbhf.claimant.service.audit.ClaimEventMetadataKey.CLAIM_ID;
import static uk.gov.dhsc.htbhf.claimant.service.audit.ClaimEventMetadataKey.ENTITLEMENT_AMOUNT_IN_PENCE;
import static uk.gov.dhsc.htbhf.claimant.service.audit.ClaimEventMetadataKey.PAYMENT_AMOUNT;
public class BalanceTooHighForPaymentEvent extends Event {
@Builder
public BalanceTooHighForPaymentEvent(UUID claimId, int entitlementAmountInPence, int balanceOnCard) {
super(ClaimEventType.BALANCE_TOO_HIGH_FOR_PAYMENT, LocalDateTime.now(), constructMetaData(claimId, entitlementAmountInPence, balanceOnCard));
}
private static Map<String, Object> constructMetaData(UUID claimId, int entitlementAmountInPence, int balanceOnCard) {
return Map.of(
CLAIM_ID.getKey(), claimId,
ENTITLEMENT_AMOUNT_IN_PENCE.getKey(), entitlementAmountInPence,
PAYMENT_AMOUNT.getKey(), 0,
BALANCE_ON_CARD.getKey(), balanceOnCard);
}
}