Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Key Functionalities

  • IFIX client requests are pushed to IFIX

  • Authentication token is fetched from keycloak and cached. Token will be re fetched 5 minutes before expiry

  • project id is fetched from IFIX and cached

  • COA id fetched from IFIX and cachecached

  • Every push to IFIX is recorded in table with http status

    • status series 200 considered success

    • status 400 are marked client error and reported back to client

    • status 500 resubmitted by scheduler

...

  1. Update Key cloak credentials in dev.yaml,qa.yaml,prod.yaml according to environment The credentials are “keycloak.credentials.clientid and “keycloak.credentials.clientsecret” Example is given in here and here

  2. Map clientcode, ifixcoacode, ifixid in ifix_adapter_coa_map table

    1. clientcode “clientcode” is the taxhead like “WATER_CHARGES” or ‘10011’ used in IFIX client like mgramseva

    2. ifixcoacode “ifixcoacode” is the 16 digit glcode in IFIX. 16 digit code is mapped then this can be ported to any environment like dev to qa ,or qa to uat or from uat to prod. Prefer mapping ifixcoacode

    3. in In other way you can map the IFIX coa id itself. Since these are generated ids you cant port to other environments . You have to id mapping for every environment .

    4. Preference is given to COA Code , if it is null id will be used

    5. example is INSERT INTO public.ifix_adapter_coa_map(
      id, clientcode, ifixcoacode, ifixid, tenantid)
      VALUES (1,'10101', '0215-01-102-00-00-01', '6cbcb4a1-2431-4f78-89d7-b4f0565aba37', 'pb');

  3. If client “project code” and IFIX project code are same then no need of mapping . If it is different then map clientprojectcode, ifixprojectid in ifix_adapter_project_map table . Ideally you should k eep keep both codes same for getting meaning ful meaningful data in dash board. This way you dont have to do any mapping for project code for any environment . But if for any reason you have different project codes in IFIX nd its client or IFIX has multiple projects having same project code then only go for this mapping . Adapter will first check in the IFIX for the supplied “projectCode” by client like mgram . if , If found it will use it and caches it . If multiple projects or not found it it will look into this table for mapping

    1. example is INSERT INTO public.ifix_adapter_project_map(
      id, clientprojectcode, ifixprojectid, tenantid)
      VALUES (1, '7374', 'e42db9bb-8427-40a6-9939-4f2189d032bf','pb');

  4. state.goverment.code set this value to the clients top level tenantid

...