Table of Contents
- About the Project
-
Getting Started
- Listing Users
- Enrolling new Users
- Updating User Infromation
- Deleting User Infromation
- View All Companies
- View all Users Under A Company
- Edit Points
- Viewing All Accounts Under A Particular Company
- Add Points Account For A Particular User
- Updating Permissions for Users
- Maker Checker Update Points
- Maker Checker Update User Details
Our project consists of three backend applications which are the User Storage
mircoservice which allow user to list user,enroll new user and update and delete user information.It also consists of the Point Ledger
microservice which allow user to query point balance of an user and adjust balance of their points account. Lastly we have the Admin Proxy
application which acts as a gateway betweeen the client and the two applications stated above.
Deployment of the project is done on AWS cloud. The set up of the infrastructure was done manually previously on the cloud console, but we have since extracted the cloudformation templates to enable us to set up the ECS Cluster and ECS Service Environments and developed Continuous Deployment Pipeline to automate the deployment of ECS Tasks onto the ECS Cluster.This will allow us to deploy the solution across different regions.
Some of the services and resources, however, would still require manual provision through the cloud management console. There are attempts to automate the infrastructure management with IaaC using Terraform, but it is still a work in progress.
Please refer to the Deployment Guide for more information on how to set-up and deploy the AWS Environment.
- Navigate to our hosted website on this Application Link
- We have created an account for our Professors Yeow Leong and Eng Lieh with these two respective emails
[email protected]
and[email protected]
- Click on the
Sign in with Google button
![](images/listing_users.png)
Upon Signing in as an user, the user will be greeted with all the users that is in the Ascenda Loyalty Application Database
![](images/enroll_user.png)
- User will navigate to the Enroll User tab on the sidebar
- After inputting the user details,the system would navigate back to the user listing page
- To verify the user has been added, please enter the exact email in the search bar, and the new user will be returned
![](images/update_user.png)
- User will navigate to the Update User Details button by clicking on the View User Details Button
- After inputting the new user details, the user would be navigated back to the users listings page
- The user should see a change in the user details on the user listing page
![](images/delete_user.png)
- User will navigate to the Delete User by clicking on the View User Details Button
- After pressing the Delete User button , the user would not appear on the user listing page
![](images/companyaccount.png)
- After pressing on a company, the user would see all the users, along with their information and number of points in their account under the company
![](images/editPoints.png)
- After clicking on Edit Points for a particular user, the user can edit the amount of points of the selected user
![](images/viewUserPoints.png)
- User will navigate to the View Users tab
- After clicking on View User Details button, user will navigate to View Accounts
![](images/addPointsAccounts.png)
- After clicking on Edit Points for a particular user, the user can edit the amount of points of the selected user
![](images/admin_proxy.png)
- Admin will be able to update permission for the roles specified
- After unchecking the Add User permission for Owner , and then navigating to the enroll user tab
- The current User who has the Owner permisson, would then have an unauthoized page and not allowed to enroll users
![](images/maker_checker_point.png)
- Go to View Users tab
- Choose any user, take note of the user (may want to take note of email for easy search later on) and click on "View User Details" > "View Accounts"
- Choose any company that they are with, take note of their point balance with that company, copy User ID
- Navigate to Maker Checker tab
- Select Company that you chose in step 3
- Click "Create Request"
- Click "Select an action" and select "Points Update"
- Fill in "user_id" with the user ID copied in step 3
- Fill in "change" with the amount that you want the point balance to change by (e.g. if you want to increase by 100 input 100, if you want to decrease by 100 input -100)
- Click "Submit Request" (will throw an error if you choose a user that does not have an account with that company)
- Log in to a different account (necessary because the person that created the request should not be able to approve it)
- Navigate to "Maker Checker" tab
- Select the same company as earlier
- Approve request
- Navigate to "View Users" tab
- Find the same user as in step 2 (you may use the search function by typing their email into the search bar)
- Click on "View User Details" > "View Accounts"
- Verify if that the point total for the chosen company has changed
![](images/maker_checker_point.png)
- Go to "View Users" tab
- Choose any user, take note of their email
- Navigate to "Maker Checker" tab
- Choose any company that you want to make the change on behalf of
- Enter "firstName", "lastName", "role" (can be multiple roles separated by commas without spaces. e.g. User,Owner,Admin) as you wish to change.
- Enter email that was noted in step 2
- Click "Submit Request"
- Log in to a different account (necessary because the person that created the request should not be able to approve it)
- Navigate to "Maker Checker" tab
- Select company that you created the request under
- Approve request
- Navigate to "View Users" tab
- Find the same user as in step 2 (you may use the search function by typing their email into the search bar)
- Verify that their first name, last name and role have changed