Challenge Overview
Challenge Overview
We are building an internal web application for a client. This application is divided into frontend and backend. This will be a series of challenges to build both applications.
Goal of the challenge
The goal of this challenge is to complete the backend service API.
Technology and Framework details
- Node.Js 12+
- NestJs
- Typescript
- Swagger
General Requirements
- Update the "provider-exchange-audience-api" and mock "provider-exchange-api" with the report endpoints as described in the documentation attached in the forum.
- MAJOR REQUIREMENT The following Reports are in scope. Sample files will be provided in the forum as well. Just randomize the data to return. Files are in Excel format:
- Detail Report
- Aging Report
- Error Report
- Medical Record Request Received Report (show To/From Date)
- Total MA Requests By Type Report (show To/From Date)
- Total MA Request By Status Report
- Number Of Days To Complete MA Request Report (show To/From Date)
- Fix the following issues
- MAJOR ISSUE Don't store the file in memory. Either use Stream (Pipe) or save it to a temporary file. NestJs internally uses multer for upload, You can use MulterModule.register to config the options (https://docs.nestjs.com/techniques/file-upload#default-options), the file size limit should also be configured there. Example: https://gist.github.com/bhuizi/c38ae195172766d90e2aaf5e1f023672
- NestJs has Axios based HttpModule/HttpService, https://docs.nestjs.com/techniques/http-module
- MINOR ISSUE Method populateMissingFields, why not use loadsh.defaultsDeep ?
- MAJOR ISSUE Use SwaggerModule to return an interactive page: https://docs.nestjs.com/recipes/swagger. Simply return the static YAML doesn't make much sense
- MINOR ISSUE Fix lint errors
- All needed documentation will be provided in the forum. Please make questions quickly to be able to complete the challenge.
- Update Swagger documentation
Final Submission Guidelines
Zip file with:- Updated Backend source
- Updated Swagger file
- Updated README.md