topcoder-platform / admin-app

Customer support application
7 stars 25 forks source link

Terms Admin 2.0 - Manage Users #153

Closed rootelement closed 4 years ago

rootelement commented 4 years ago

We need to make a simple admin tool to be able to search by handle/member id, and view the terms they have signed. And to also possibly sign terms for them (if you're an admin level? power user?)

Using this issue to discuss first.

Here's the existing admin. We should probably use this as a baseline.

List view

Notice View and Add Members on each term. Screen Shot 2020-09-18 at 1 45 06 PM

View Users

Screen Shot 2020-09-18 at 1 45 33 PM

Add User

Screen Shot 2020-09-18 at 1 46 12 PM

Edit Terms

I don't believe we need the Candidate Terms part. Screen Shot 2020-09-18 at 1 46 50 PM

maxceem commented 4 years ago

@rootelement

List/View/Add Users

  1. We need to make a simple admin tool to be able to search by handle/member id, and view the terms they have signed. And to also possibly sign terms for them

    I suggest to implement it a similar way as it's done for managing Goups/Roles of users. But currently, we only can search users by handle or email. Should we add ability to search by userId here?

    image

    When clicking the Terms item, we can show a dialog, similar what we do for groups/roles:

    image

  2. To List/View/Add members to the Terms, we can use a similar approach as we use for managing members of the Groups:

    • List terms - on the list page we might add a single link like manage users which would lead to the View screen. Or we can add 2 links to view and to add users as in the old admin tool if adding is a frequent operation.
    • View users of one Terms - same like we do for viewing users of groups:

      image

      • Add user to one Terms - when we click Add Members button from View or List screen:

      image

Edit Terms

It looks like almost everything is implemented related to editing terms. There are 2 possible improvements:

  1. Should we show a select list instead of text input for typeId?

    In the old admin tool we show Type as select:

    image

    While in the new one we are showing row text input:

    image

  2. Should we add ability to manage Terms dependencies as it's done in the old admin tool? At the moment Terms Service doesn't provide API for managing Terms dependencies so we would have to implement it first.

    image

rootelement commented 4 years ago
  1. Yes, add the ability to search by id
  2. This approach is fine.
  3. Yes, as in the other issue, we need to add a related table to terms to populate the text for that dropdown.
  4. Don't worry about dependencies yet. Leave that out for now.
maxceem commented 4 years ago

Done in PR https://github.com/topcoder-platform/admin-app/pull/139

rootelement commented 4 years ago

Looks good. Opening a new issue with a couple items, but otherwise good work.