18F / dol-whd-14c

The 14(c) system will become a modern, digital-first service. Applicants will be provided an intuitive online experience, guiding them through the information needed to complete their application correctly.
Other
16 stars 17 forks source link

ECF - API Methods to return Case Data #943

Closed PrabhakarThummalaDOL closed 4 years ago

PrabhakarThummalaDOL commented 5 years ago

Enhance the existing API Methods which returns Json for CAPS data. (See #934)

[ ] TABLE_CHANGE_NUM is expected for all the source tables involved (timestamp data population need to be done at DB2 system level; No DB2/Delphi code is expected to be involved. [ ] DB2 calls will be made from existing .Net Entity Code First patterns as implemented for CAPS (need .Net Dev experience as with CAPS). No DB2 Dev involvement is needed for this (no SPROCS, no SQL). [ ] JSON API response will return identified columns from source tables (and related child tables). [ ] By default no transformation needs to be done by the API (please note the above requirement). As the API is refined based on the Appian Process model refinements at the target level, it is possible JSON API response schema might be altered in a similar fashion to CAPS.

API Method 1: ../api/integration/ids Returns list of Case ids. Post body : “listType”: “case”; “version”: “1”, geUtcDateTime. [ ] The method should return the list of cases on or after a date (input parameter). [ ] The method should have a parameter for the type of the list (in this scenario it is 'case'). [ ] The method should have a parameter to filter the cases by Investigation Tool Ids. Parameter value: Comma delimited Investigation Tool Ids. (Value 0 : All tool ids) [ ] The method should have multiple data range (parameters) as filters. Date Range1: Accept Datetime using a parameter. Accept IntervalInMinutes (and calculate the EndDate for the range) Date Range2: Accept DateTime using another parameter. Accept IntervalInMinutes (and calculate the EndDate for the range2). Data should be returned for: DateRange1 OR DateRange2.

API Method 2: ../api/integration/list Returns the JSON for the Case. Post body : "Id": “listType”: “case”; “version”: “1” ; includeMetadata:false (default is false when this param is not passed) [ ] The method should return the Case Json of the requested Case id (input parameter). [ ] The Json should contain the fields (mapping to the target database columns). [ ] The method should have a parameter to filter the cases by Investigation Tool Ids. Parameter value: Comma delimited Investigation Tool Ids. (Value 0 : All tool ids) [ ] The method should have multiple data range (parameters) as filters. Date Range1: Accept Datetime using a parameter. Accept IntervalInMinutes (and calculate the EndDate for the range) Date Range2: Accept DateTime using another parameter. Accept IntervalInMinutes (and calculate the EndDate for the range2). Data should be returned for: DateRange1 OR DateRange2.

Example: { CaseInformation { CaseData_Column1, CaseData_Column2, CaseData_ColumnN } { CaseStatusInfo } { EmployerInfo_LegalName, EmployerInfo_TradeName, EmployerInfo_Column } { OfficeInfo_Column1, OfficeInfo_Column2 } { InvestigationTool_Column1, InvestigationTool_Coulmn2 } }

PrabhakarThummalaDOL commented 4 years ago

Added the two new parameters to the methods. (1.Filter by Investigation Tool ids; 2.Filter by multiple date ranges.)