akvo / akvo-flow

A data collection and monitoring tool that works anywhere.
http://akvo.org/products/akvoflow/
GNU Affero General Public License v3.0
65 stars 31 forks source link

Assign responsible users to an approval group in a survey #1774

Closed janagombitova closed 7 years ago

janagombitova commented 8 years ago

Assign responsible user to an approval workflow

In the survey definition after the user selects a workflow here is also the place where the user will define which dashboard user is responsible in implementing the workflow step. We have decided not to add this user permission in the general Users tab because:

Details:

https://github.com/akvo/akvo-product-design/issues/82

janagombitova commented 8 years ago

@muloem this is one of the items we need to focus on first (have for next week)

janagombitova commented 7 years ago

Notes from test round 1

Tests done on https://akvoflow-dev3.appspot.com/admin/ v1.9.10-213-g1023882

1) User list blank after navigating away from page

Hi Mulo, I think something broke. I was creating a few users to see how the interaction goes when selecting responsible users for an approval step. So I wanted to create users who do not have access to the survey I was working on and check they do not show in the list. After creating the users, I needed to create the permission. I came back to the user list to give these users the permission I wanted and the user page was blank. However, once I logged in with one of the emails, my user worked fine and could access the dashboard.

users

2) Cannot add responsible users

Mulo, I could not add responsible users at all... Once I clicked on the little user icon next to a step, the Loading icon showed for a second and nothing happened. But Flow did not crash with this action as it did up till now

3) No Manage data approval permission

I am not sure if I was supposed to test this one already or not, but if so, then I just wanted to let you know that there was not such option to work with in the permissions list

4) No data loading in Monitoring tab

With my super user role I tried to see what happens in the Monitoring tab, so I wanted to load data for a survey I have collected data for previously and unfortunately nothing loaded and the loading icon just kept on turning. In console I got a "Uncaught TypeError: this.currentUserPathPermissions is not a function"

screen shot 2016-10-24 at 12 15 35

For a survey that has no data, nothing happened and I did not get the message No data in red under the Find button as I usually get

janagombitova commented 7 years ago

Notes from test round 2

1) User list blank after navigating away from page

2) Cannot add responsible users

3) No Manage data approval permission

4) No data loading in Monitoring tab

janagombitova commented 7 years ago

4) No data loading in Monitoring tab

monitoring

janagombitova commented 7 years ago

5) Approving data as a responsible user

6) Adding responsible users to another survey

7) Changing already saved responsible users

survey

janagombitova commented 7 years ago

Notes from test round 3

2) Cannot add responsible users

4) No data loading in Monitoring tab

6) Adding responsible users to another survey

7) Changing already saved responsible users

Next steps

So we still will need to go through the remaining on 2 and 6

janagombitova commented 7 years ago

Notes from test round 4

(new list based on above comments and latests experience)

1) Can add all users to approval step

I would only want to see those users in the list who have view data rights to the survey I am working on. The contrast between the black font and dark grey background makes it hard to read the user names. @loicsans would you have time to look at the design of this latest addition to the approval family? Thanks

2) Super users cannot approve steps

If you are a super user in our backend user list, you cannot approve, reject, or make a data point pending. It feels as if, because I did not give myself the right to approve data - I cannot do so, what makes sense considering all our users who will use the feature will be part of the user list. But for support purposes it might be helpful if we super admins can make changes to approval steps regardless of being a responsible user or not.

3) if no user was assigned as responsible, no one can approve a step

If you have added an approval group to a survey and did not assign any responsible users, you go to the monitoring tab and no one can approve the steps. Is this intentional to force users to assign those responsible?

If so, I will note down the question: if no user is given the responsibility, should anyone be able to approve step? and add it to the information we need to verify from SNV once they start fully using the feature.

4) user could not approve steps

We had a case with the SNV call, where I followed these steps:

5) Adding responsible users to another survey

If I have 3 surveys where I use one approval group > I add the group to survey 1 and add users for those steps. I open another survey and add the same group, what happens is that the users are already selected in the same way as in the 1st survey > they should not be as it then

muloem commented 7 years ago

1) Can add all users to approval step 2) Super users cannot approve steps

I will create separate issues to handle the above.

3) if no user was assigned as responsible, no one can approve a step

If you have added an approval group to a survey and did not assign any responsible users, you go to the monitoring tab and no one can approve the steps. Is this intentional to force users to assign those responsible? If so, I will note down the question: if no user is given the responsibility, should anyone be able to approve step? and add it to the information we need to verify from SNV once they start fully using the feature.

Yes. The fact that no user is able to approve is intentional indeed we should go back to SNV with the question. Otherwise the security of having an approval is redundant if everyone can approve at the moment the approval is assigned.

4) user could not approve steps

We will have to retest this but I believe that after having resolved the issue https://github.com/akvo/akvo-flow/issues/1797, this should not happen.

5) Adding responsible users to another survey

I have created another issue to resolve this https://github.com/akvo/akvo-flow/issues/1858

janagombitova commented 7 years ago

@mulo ok. sounds like a plan and yes, lets wait and see what feedback we get from SNV after the 1st months.

janagombitova commented 7 years ago

@muloem Adding the responsible users works fine. I could not test out the actual approving of steps and if the user is truly limited to only the steps he is responsible for due to this issue: https://github.com/akvo/akvo-flow/issues/1880

janagombitova commented 7 years ago

After successfully testing with 3 different users and having separate issues for the above points, we can say this implementation is ready to go 👍