Challenge Overview
You will be provided the following documents:
- UI prototype based upon AngularJS + HTML5
- REST API document
And you are required to implement the following tasks:
- Create an apiary file based upon the provided REST API document, and you also need to deploy it on http://apiary.io/.
- Convert the UI prototype to a Cordova App, which should consume the REST API you deployed on the apiary.io.
Here are some details about how the UI should interact with the REST API:
- Login page
- The “remember me” is handled in client side.
- The “Urgent Care Centers”, “Forgot Password”, “Register” functionalities are out of scope.
- The login operation will call the /login REST API.
- After login, it should call /users/current REST API to get current user data, and use it to render current user data in various screens.
- Note that the user age can be calculated as (current time – date of birth).
- Logout
Logout will invoke the /removeToken REST API to invalidate the access token.
- Dashboard page
- The “edit profile”, “notifications” functionalities are out of scope.
- The font size functionalities are handled in client side.
- When clicking “Member Summary”, “Member Care Plan”, “Disease Management”, “Medication Reconciliation”, “Interdisciplinary Care Team”, get data from /companies/{companyId}/members/{memberId}/membersummary, membercareplan, diseasemanagementdata, medicationreconciliationdata, idassignments REST APIs .
- The “Lorem Ipsum Medication Report” tab is out of scope.
- Member Summary page
- Data for this page is hold in MemberSummary entity. The mapping is intuitive.
- In the “IDT Team Member Assigned” tab, if corresponding IDTTeamMember.PhotoUrl is provided, then use that URL to render member photo, otherwise a mock photo is shown.
- The bottom email is the current user email.
- The bottom date is the client side current date.
- Member Care Plan page
- Data for this page is hold in MemberCarePlan entity. The mapping is intuitive.
- In the “Reconciled Medications” tab, the “NDC” field corresponds to ReconciledMedication.Dose.
- Disease Management page
- Data for this page is hold in DiseaseManagementData entity. The mapping is intuitive.
- In the “History” tab, the user name is the current user profile’s FullName, the user id is History.UserId. When clicking the “>” near a history, all fields of the history should be shown.
- Medication Reconciliation page
- Data for this page is hold in MedicationReconciliationData entity. The mapping is intuitive.
- Interdisciplinary Care Team page
This page shows a list of IDTAssignment entities of the current user, the prototype misses this feature, it is up to assemblers to render them.
Final Submission Guidelines
Submission Deliverable
- Deployment Guide with Detailed Verification Steps
- Source Code and apiary file
Your submission must be properly tested on the following devices (or simulators):
- Android 4+
- iOS 6+