Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
  1. Create a Solution DB and Tables

  2. Design Process flow

  3. Create REST Provider End-point

  4. Publish the Provider (REST URL) at UI

1

...

Overview

In this use case, data is stored in the Solution DB. The data retrieval involves writing a joining query to fetch the necessary information from the backend. The query will be based on the attributes required for the UI, such as File Phase, Error Description, Total Record Count, Unique Record Count, Duplicate Record Count, and File Status.

Database Structure

The tables in the Solution DB should be structured to efficiently support these queries. Here is an example schema:

...

  1. Creating a Solution Database using the following query:

...

titlefile_name_details

CREATE TABLE `file_name_details` (

  `ID` int NOT NULL AUTO_INCREMENT,

  `FILE_QUEUE_ID` int NOT NULL,

  `LOCATION_TYPE` varchar(50) NOT NULL,

  `FILE_TYPE` varchar(50) NOT NULL,

  `FILE_PATH` varchar(500) NOT NULL,

  `FILE_NAME` varchar(400) DEFAULT NULL,

  `CREATED_BY` varchar(50) NOT NULL,

  `CREATED_DATE` datetime NOT NULL,

  `LAST_MODIFIED_BY` varchar(50) NOT NULL,

  `LAST_MODIFIED_DATE` datetime NOT NULL,

  PRIMARY KEY (`ID`),

  UNIQUE KEY `UC_FILE_ATT` (`FILE_QUEUE_ID`,`FILE_NAME`,`FILE_TYPE`,`LOCATION_TYPE`),

  CONSTRAINT `file_name_details_ibfk_1` FOREIGN KEY (`FILE_QUEUE_ID`) REFERENCES `file_queue` (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=7676 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

...

titleerror_code

CREATE TABLE `error_code` (

  `ID` int NOT NULL AUTO_INCREMENT,

  `ERROR_CODE` varchar(10) NOT NULL,

  `ERROR_MESSAGE` varchar(255) NOT NULL,

  `PHASE_ID` varchar(10) NOT NULL,

  PRIMARY KEY (`ID`),

  UNIQUE KEY `UC_ERROR_CD` (`ERROR_CODE`),

  KEY `PHASE_ID` (`PHASE_ID`),

  CONSTRAINT `error_code_ibfk_1` FOREIGN KEY (`PHASE_ID`) REFERENCES `phase` (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=104 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

...

titleapplication_data

CREATE TABLE `application_data` (

  `ID` int NOT NULL AUTO_INCREMENT,

  `FILE_QUEUE_ID` int NOT NULL,

  `APPLICATION_TYPE` varchar(50) DEFAULT NULL,

  `RECORD_STATUS` varchar(50) DEFAULT NULL,

  `ERROR_MESSAGE` varchar(2000) DEFAULT NULL,

  `WARNING_MESSAGE` varchar(2000) DEFAULT NULL,

  `SSN` varchar(20) DEFAULT NULL,

  `EMPLOYEE_ID` varchar(20) DEFAULT NULL,

  `EMPLOYEE_FIRST_NAME` varchar(200) DEFAULT NULL,

  `EMPLOYEE_LAST_NAME` varchar(200) DEFAULT NULL,

  `COVERAGE_ID` varchar(50) DEFAULT NULL,

  `PRODUCT_TYPE_CODE` varchar(50) DEFAULT NULL,

  `GROUP_POLICY_NUMBER` varchar(50) DEFAULT NULL,

  `BENEFIT_PLAN_IDENTIFIER` varchar(50) DEFAULT NULL,

  `CREATED_BY` varchar(50) NOT NULL,

  `CREATED_DATE` datetime NOT NULL,

  `LAST_MODIFIED_BY` varchar(50) NOT NULL,

  `LAST_MODIFIED_DATE` datetime NOT NULL,

  `BENEFIT_CLASS_IDENTIFIER` varchar(50) DEFAULT NULL,

  `MASTER_AGREEMENT_NUMBER` varchar(50) DEFAULT NULL,

  `EMPLOYEE_MIDDLE_NAME` varchar(50) DEFAULT NULL,

  `EMPLOYEE_SUFFIX_CODE` varchar(50) DEFAULT NULL,

  `EMPLOYEE_BIRTH_DATE` varchar(50) DEFAULT NULL,

  `EMPLOYEE_GENDER_CODE` varchar(50) DEFAULT NULL,

  `EMPLOYEE_MARITAL_STATUS_CODE` varchar(50) DEFAULT NULL,

  `EMPLOYEE_HOME_PHONE` varchar(50) DEFAULT NULL,

  `EMPLOYEE_EMAIL` varchar(50) DEFAULT NULL,

  `EMPLOYEE_ALTERNATE_EMAIL` varchar(50) DEFAULT NULL,

  `EMPLOYEE_MAILING_ADDRESS_FIRST_LINE_ADDRESS` varchar(100) DEFAULT NULL,

  `EMPLOYEE_MAILING_ADDRESS_THIRD_LINE_ADDRESS` varchar(100) DEFAULT NULL,

  `EMPLOYEE_MAILING_ADDRESS_CITY_NAME` varchar(50) DEFAULT NULL,

  `EMPLOYEE_MAILING_ADDRESS_STATE_PROVINCE_CODE` varchar(50) DEFAULT NULL,

  `EMPLOYEE_MAILING_ADDRESS_POSTAL_CODE` varchar(50) DEFAULT NULL,

  `EMPLOYEE_MAILING_ADDRESS_COUNTRY_CODE` varchar(50) DEFAULT NULL,

  `EMPLOYEE_IDENTIFIER` varchar(50) DEFAULT NULL,

  `EMPLOYEE_TOBACCO_USECODE` varchar(50) DEFAULT NULL,

  `EMPLOYEE_WORK_ADDRESS_STATE_PROVINCE_CODE` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_EMPLOYMENT_STATUS_CODE` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_EMPLOYMENT_TYPE_CODE` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_ORIGINAL_HIRE_DATE` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_MOST_RECENT_HIRE_DATE` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_ADJUSTED_SERVICE_DATE` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_TERMINATION_DATE` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_JOB_TITLE_TEXT` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_OCCUPATION_TEXT` varchar(400) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_PAYROLL_FREQUENCY_QUANTITY` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_EXEMPT_CODE` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_UNION_INDICATOR` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_WORK_LOCATION_TEXT` varchar(50) DEFAULT NULL,

  `EMPLOYMENT_INFORMATION_WORK_STATE_CODE` varchar(50) DEFAULT NULL,

  `COVERAGE_BENEFIT_SUBCLASS_IDENTIFIER` varchar(50) DEFAULT NULL,

  `COVERAGE_COVERAGERIDER_RIDEROPTION_IDENTIFIER` varchar(50) DEFAULT NULL,

  `COVERAGE_BILL_GROUP_IDENTIFIER` varchar(50) DEFAULT NULL,

  `COVERAGE_BILL_SUB_GROUP_IDENTIFIER` varchar(50) DEFAULT NULL,

  `COVERAGE_TIER_CODE` varchar(50) DEFAULT NULL,

  `COVERAGE_EFFECTIVE_DATE` varchar(50) DEFAULT NULL,

  `COVERAGE_TERMINATION_DATE` varchar(50) DEFAULT NULL,

  `COVERAGE_BENEFIT_AMOUNT` varchar(50) DEFAULT NULL,

  `DEPENDENT_TOBACCO_USECODE` varchar(50) DEFAULT NULL,

  `DEPENDENT_FIRST_NAME` varchar(50) DEFAULT NULL,

  `DEPENDENT_LAST_NAME` varchar(50) DEFAULT NULL,

  `DEPENDENT_BIRTH_DATE` varchar(50) DEFAULT NULL,

  `DEPENDENT_GENDER_CODE` varchar(50) DEFAULT NULL,

  `DEPENDENT_RELATIONSHIP_TYPE_CODE` varchar(50) DEFAULT NULL,

  `DEPENDENT_BENEFIT_AMOUNT` varchar(50) DEFAULT NULL,

  `EVENT_DATE` varchar(50) DEFAULT NULL,

  `EVENT_TYPE_REASON_CODE` varchar(50) DEFAULT NULL,

  `EVENT_TYPE_CODE` varchar(50) DEFAULT NULL,

  `EMPLOYEE_POSITION` varchar(50) DEFAULT NULL,

  `POLICY_PRODUCTID_CLASS_POSITION` varchar(50) DEFAULT NULL,

  PRIMARY KEY (`ID`),

  KEY `idx_file_queue_id` (`FILE_QUEUE_ID`),

  CONSTRAINT `fk_grade_id` FOREIGN KEY (`FILE_QUEUE_ID`) REFERENCES `file_queue` (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=426019 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

...

titlephase

CREATE TABLE `phase` (

  `ID` varchar(10) NOT NULL,

  `PHASE_NAME` varchar(50) NOT NULL,

  `CREATED_BY` varchar(50) NOT NULL,

  `CREATED_DATE` datetime NOT NULL,

  `LAST_MODIFIED_BY` varchar(50) NOT NULL,

  `LAST_MODIFIED_DATE` datetime NOT NULL,

  PRIMARY KEY (`ID`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

...

titlesolution_configuration

CREATE TABLE `solution_configuration` (

  `ID` int NOT NULL AUTO_INCREMENT,

  `CATEGORY` varchar(50) NOT NULL,

  `PROPERTY_NAME` varchar(50) NOT NULL,

  `PROPERTY_DEFAULT` varchar(50) DEFAULT NULL,

  `PROPERTY_VALUE` varchar(50) DEFAULT NULL,

  `PROPERTY_ORDER` int DEFAULT NULL,

  `ACTIVE_FLAG` varchar(10) NOT NULL,

  `CREATED_BY` varchar(50) NOT NULL,

  `CREATED_DATE` datetime NOT NULL,

  `LAST_MODIFIED_BY` varchar(50) NOT NULL,

  `LAST_MODIFIED_DATE` datetime NOT NULL,

  `TRANSACTION_NAME` varchar(50) DEFAULT NULL,

  PRIMARY KEY (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

...

titletransaction_run_history

CREATE TABLE `transaction_run_history` (

  `ID` bigint NOT NULL AUTO_INCREMENT,

  `transactionId` varchar(100) NOT NULL,

  `transactionType` varchar(500) DEFAULT NULL,

  `transactionName` varchar(500) DEFAULT NULL,

  `partner` varchar(400) DEFAULT NULL,

  `inputFile` varchar(500) DEFAULT NULL,

  `inputFilePath` varchar(500) DEFAULT NULL,

  `sourceSystemOutputFile` varchar(500) DEFAULT NULL,

  `sourceSystemOutputFilePath` varchar(500) DEFAULT NULL,

  `adeptiaOutputFile` varchar(500) DEFAULT NULL,

  `adeptiaOutputFilePath` varchar(500) DEFAULT NULL,

  `deltaReportFile` varchar(500) DEFAULT NULL,

  `deltaReportFilePath` varchar(500) DEFAULT NULL,

  `status` varchar(100) DEFAULT NULL,

  `executedBy` varchar(500) DEFAULT NULL,

  `executionDate` varchar(50) DEFAULT NULL,

  `submittedBy` varchar(100) DEFAULT NULL,

  `matchPercent` varchar(50) DEFAULT NULL,

  `processInstanceID` varchar(50) DEFAULT NULL,

  PRIMARY KEY (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=1705672808620 DEFAULT CHARSET=latin1;

...

. Design Process flow

Overview

When the file queue page is accessed, the backend server performs specific steps to ensure that all relevant file queue data is accurately retrieved and displayed on the front end. There are three primary flows, each with a distinct purpose. Once designed, these flows need to be published for the REST provider.

...

c. Advanced Process Flow - Filtering Records by (Start Date & End Date)

...

Overview

This Process flow is used for advanced search in which a user can filter records based on their start date and end date using the Advanced Search functionality. This includes the interactions between the frontend and backend systems to accomplish this task.

...

3. Create REST Provider End-point

Overview

A REST (Representational State Transfer) Provider is a service that offers resources and functionalities over HTTP(S) using standard REST principles. It enables clients to interact with the service through predefined APIs, facilitating the integration and communication between different systems.

...