IFIX Core Fiscal Event Service v2.1

Overview

It maintains the fiscal event flow activities of many projects. The root level entity is a tenant (State Government) under which we tag certain projects under the details of the attributes. All the entity information and COA (Chart of Account) are passed along with amount details which constitutes an array of fiscal event instances under the system.

Version

Current version : 2.1.0

Prerequisites

Before you proceed with the configuration, make sure the following pre-requisites are met.

  1. Java 8

  2. MongoDB instance

  3. Required Service Dependencies.

    1. iFIX-Master-Data-Service

    2. iFIX-Fiscal Event Post Processor

    3. Apache Kafka Server

Features

This service provides two features:

Push fiscal event data

  • It is a secure endpoint and user Info details are required to access it.

  • It receives fiscal detail along with mandatory tenant and project info under attributes detail in publish requests, which triggers the whole fiscal event process and forwards it to the post-process service.

  • Before encompassing all entities, it checks for entities validation via iFix core Master Data Service.

  • While we create any fiscal event instance in the system, we log ingestion time and event occurrence timestamp which makes event flow clear on timestamp activities.

  • After processing all these activities, it passes fiscal event information to other fiscal event post-processor services for further processing by publishing fiscal data into the Kafka topic "fiscal-event-request-validated" and “fiscal-event-mongodb-sink“.

  • It also responds to snapshot of enriched fiscal event data which can be used by the source system for reference or any further processing.

Search fiscal Event Data

  • It provides a search feature on the existing fiscal events which has been processed before by post-processor service and persisted into the MongoDB instance.

  • We can mainly search on eventType, tenantId, referenceId and event time interval and in return we get enriched data (dereference with nested id details).

  • We have additional search parameter ‘receiver' and ’fromIngestionTime' & ‘toIngestionTime' attributes. ’receiver' will be Keycloak client id of the fiscal event receiver system. ’fromIngestionTime' & ‘toIngestionTime' will be time range on ingestion time of fiscal events.

API List

Interaction Diagram

Environment

Note: Kafka topic needs to be configured with respect to the environment

Key

Value

Description

Key

Value

Description

fiscal-kafka-push-topic

fiscal-event-request-validated

Once the fiscal event data will get validated and enriched , it will be published to this topic for further processing.

fiscal.event.kafka.mongodb.topic

fiscal-event-mongodb-sink

Once the fiscal event data will get validated and enriched , push the details to mongo db sink

 

Configurations and Setup

  1. Update all the DB and URI configuration in the dev.yaml, qa.yaml, prod.yaml file.

  2. Make sure the keycloak server is up and running And have been configured with the required client ID.

References and Notes

Title

Link

Title

Link

Swagger Yaml

https://editor.swagger.io/?url=https://raw.githubusercontent.com/misdwss/iFix-Dev/develop/domain-services/fiscal-event-service/fiscal-event-service-2.1.0.yaml

Postman collection

https://www.getpostman.com/collections/1b2abbca3f6c290b57d9