feat(admin): administration panel for jobs and employers
What does this MR do and why?
Merge Request related to the admin panel user stories 107-108.
Manage-users component
-
Allow admin to manage users jobs and employers
Manage-jobs and employers components
-
Show user attached to a job or employer (to be redirected on user profile later on) -
Validate job or employer -
Edit names -
Delete row (when no user is attached) -
Merge unvalidated job or employer with a valid one : - Show dropdown menu filled with validated jobs or employers
- Attach user to the selected entry
- Delete unvalidated job or employer from database
-
Create new job or employer (when creating a new employer, add index to elasticsearch for autocomplete purposes) -
When new job or employer is created from the account-creation form, send notification to admins.
To do
-
Change merging field to show job or employer name instead of Id -
Improve the merge dropdown menu with an overflow-visible (very hard to navigate as of now) -
Add "hasPersonalOffer" column to manage-jobs grid with a switch button to update this field
Suspected issues (that the reviewer must test)
-
When creating a new account, the auto-complete feature on employer field is bugged after 3 characters typed. What happens if a user types an existing employer ?
Screenshots or screen recordings
Test this :
How to set up and validate locally (or on alpha)
- Log as an admin on your local app (admin@admin.com - Azerty1!)
- Go to the administration panel
Test the features explained above
MR acceptance checklist
To be completed by the chosen reviewer.
Quality
-
Confirmed
- For the code that this change impacts, I believe that the automated tests validate functionality that is highly important to users. If the existing automated tests do not cover this functionality, I have added the necessary additional tests or I have added an issue to describe the automation testing gap and linked it to this MR.
- I have made sure that the sonar quality coverage is up to standards.
- I have considered the impact of this change on the front-end, back-end, and database portions of the system where appropriate and applied.
- I have tested this MR in all supported browsers or determined that this testing is not needed.
- I have confirmed that this change is backwards compatible across updates (migrate up needs a migrate down), or I have decided that this does not apply.
Performance, reliability and availability
-
Confirmed
- I am confident that this MR does not harm performance, or I have asked a reviewer to help assess the performance impact.
- I have considered the scalability risk based on future predicted growth.
Documentation
-
Confirmed
- I have prepared a squash commit to feed the changelog linked to the current milestone.
- I have added/updated documentation (also updated if the changes feature a deprecation) or I have decided that documentation changes are not needed for this MR.
Security
-
Confirmed
- I have confirmed that if this MR does not contains any sensitive informations hidden in the changes.
Deployment
-
Confirmed
- When featured on a self-data project release, i have made sure my app version in the manifest and package.json is incremented and any relative changes to the permissions are clearly written and transmitted to Cozy.