Problem
There is a need in Bungeni to assign members of staff to work on different
tasks. For example, if a Clerk’s office has 10 Question Clerks and 100
incoming questions parliaments should be able to allocate specific questions to
the different clerks
Right now all the 100 questions would appear in the workspaces of all the 10
Question Clerks. Ideally each clerk should only see the documents that they are
working on in the workspace.
Proposed Solution
Currently sub roles are granted globally ie. if one has the role
bungeni.QuestionClerk then they have that role on all documents in Bungeni.
Instead, when assigning a sub role to an office member, the admin will have the
option to specify whether that user gets the role globally or locally per
document.
Local sub roles are granted to a user on a per document basis. In the example
above, instead of all 10 Question Clerks getting the role bungeni.QuestionClerk
on all the 100 documents, they’ll only get that role on the documents that
have been assigned to them.
A new feature called assignable will be added which will have the following
parameters
assigning_roles and assign_to_roles. Persons with a role listed in assign_roles
will have the ability to assign the document type to users with an assign_to
role.
This feature when enabled on a document type will allow the following
functionality
Documents will appear in a “in progress” listing of all the documents in the parliament that are currently being worked on. This differs from the “under consideration” tab in that the documents may not be public. Columns in this listing will be
document title
document type
document status
document status_date
whether the document has been assigned or not
A person with an assigning_role may assign the document to persons with an “assign_to” role
A member of staff may select a document from the “in progress” listing and assign it to himself
When a document is assigned to a user, that user is granted the local roles associated with him on the document.
The document will then appear in the user’s workspace as configured in the workspace configuration.
When the task is completed(when it reaches a terminal state), it no longer appears in the “in progress” listing
In this way all the clerks can see what work needs to be done but can also keep
track of what they individually need to work on
Original issue reported on code.google.com by ashok.ha...@gmail.com on 7 Sep 2012 at 12:19
Original issue reported on code.google.com by
ashok.ha...@gmail.com
on 7 Sep 2012 at 12:19