Files
loyalty-agent-service/docs/specs/oneaccess/user_profile.md

62 lines
2.9 KiB
Markdown

---
title: "User Profile"
type: OpenSpec
status: Draft
domain: OneAccess
---
# User Profile
## Requirement Definition
The User Profile defines user attributes and sets the date and time allowing user access to system functions. It is used for login. Upon logging in, users can view a list of functions with specific operations set in the permission management section.
## Process Flow
### Trigger
- A new account needs to be defined.
- Information of an existing account needs to be updated.
### Pre-Conditions
- Users must have access rights to the User Profile module to view, add, or edit User Profile records.
## Business Rules
### Data Schema
#### General Information
| Field Name | Description | Logic Type | Constraints / Rules |
|---|---|---|---|
| User ID | Unique user identifier. | String (10) | Required. Must be unique. |
| User Name | Name of the user associated with the User ID. | String (50) | Required. |
| Password | User password. | String (50) | Required for new users. Must meet strong password policies. |
| Re-enter Password | Confirmation of the password. | String (50) | Must match Password. |
| Email | User's email address. Can be used for login and password resets. | String (100) | Required. Must be unique. |
| Default Language | Determines the language for screen labels. | Enum | Required. |
#### Access Detail
| Field Name | Description | Logic Type | Constraints / Rules |
|---|---|---|---|
| Access Day | Indicates the days of the week the user has access to the system. | Array of Enums | Required. (e.g., Monday-Sunday) |
| Access Time | The time on and after which the user has access to the system on allowed days. | Time | Required. |
| User Profile Effective From Date | Date on and after which the User Profile is effective. | Date | Required. |
| User Profile Effective End Date | Date on and before which the User Profile is effective. | Date | Required. |
| User Group | The selected group determining the functions the user can access. | String (User Group ID) | Required. |
| Report Access Right | Determines which report(s) the user has access to. | String (Report Group ID) | Optional. |
| User Status | Status of the user account. | Enum | Required. Values: Active, Blocked. |
#### User Permission (View Only)
*Displays all permissions applicable for the chosen user across top-level and second-level modules.*
| Field Name | Description | Logic Type | Constraints / Rules |
|---|---|---|---|
| Module Name | The name of the module. | String | Read-only |
| Permissions | Available actions (View, Create, Edit, Delete, Copy, Approve, History, Template). | Boolean per action | Read-only |
## Post-Conditions
- When creating a new record, the user account is successfully created.
- The new user receives an email notification with login instructions and a temporary password.
- When the password is reset, an email notification is sent to the user's email with the new password.
## Exception Flow
- No specific exception flow defined.