Abstract
This page mainly covers the design of the new data models of the Dashboard under Mongoose. This new model should provide a more extendable data storage for the OpenMRS ID.
The goals for this data model is in-line with the Dashboard, that is to provide a one-site service.
For now they're only the most basic one that could cover the old data.
Will Be Updated
User
I'll simply just write some specifications here.
This is only for the database level
Code Block | ||
---|---|---|
| ||
/// user Schema username: <String> // not empty, unique, only contain number and characters, currently at least has a length of 2 firstName: <String> // no requirement lastName: <String> // no requirement displayName: <String> // no requirement, primaryEmail: <String> // not empty, unique, valid email address, one of emailList displayEmail: <String> // valid email address emailList: < [String] > // array of valid email address, not empty, all members are unique password: <String> // not empty, a hashed String groups: < [String] > // no duplicates in the Array, items in this array must be in Groups collection. could be only editable by admin user. /// additionally all email should be in lowercase |
Groups
This model describes user groups.
Code Block |
---|
groupName: <String> // not empty
description: <String> // no requirement |