add qualification report for person; sorting; add action 'start' to work item type 'checkup'
This commit is contained in:
parent
50b45b2c56
commit
d5c851a5de
4 changed files with 38 additions and 1 deletions
|
@ -216,6 +216,12 @@ class RelationField(Field):
|
|||
|
||||
class TargetField(RelationField):
|
||||
|
||||
def getSortValue(self, row):
|
||||
value = self.getRawValue(row)
|
||||
if value is not None:
|
||||
value = util.getObjectForUid(value)
|
||||
return value.title
|
||||
|
||||
def getValue(self, row):
|
||||
value = self.getRawValue(row)
|
||||
if value is None:
|
||||
|
|
|
@ -49,4 +49,16 @@
|
|||
set_schema="loops.expert.report.IReportInstance" />
|
||||
</zope:class>
|
||||
|
||||
<zope:adapter
|
||||
name="person_qualifications"
|
||||
factory="loops.knowledge.qualification.report.PersonQualifications"
|
||||
provides="loops.expert.report.IReportInstance"
|
||||
trusted="True" />
|
||||
<zope:class class="loops.knowledge.qualification.report.PersonQualifications">
|
||||
<require permission="zope.View"
|
||||
interface="loops.expert.report.IReportInstance" />
|
||||
<require permission="zope.ManageContent"
|
||||
set_schema="loops.expert.report.IReportInstance" />
|
||||
</zope:class>
|
||||
|
||||
</configure>
|
||||
|
|
|
@ -41,6 +41,8 @@ class QualificationOverview(ReportInstance):
|
|||
fields = Jeep((task, party, workTitle, dayStart, dayEnd, state)) # +deadline?
|
||||
|
||||
defaultOutputFields = fields
|
||||
defaultSortCriteria = (party, task,)
|
||||
|
||||
|
||||
def getOptions(self, option):
|
||||
return self.view.options(option)
|
||||
|
@ -97,3 +99,20 @@ class Qualifications(QualificationOverview):
|
|||
for name in self.taskTypeNames]
|
||||
if c is not None]
|
||||
|
||||
|
||||
class PersonQualifications(QualificationOverview):
|
||||
|
||||
type = 'person_qualifications'
|
||||
label = u'Qualifications for Person'
|
||||
|
||||
defaultSortCriteria = (task,)
|
||||
|
||||
def getOptions(self, option):
|
||||
return self.view.typeOptions(option)
|
||||
|
||||
def selectObjects(self, parts):
|
||||
workItems = self.recordManager['work']
|
||||
person = self.view.context
|
||||
uid = util.getUidForObject(person)
|
||||
return workItems.query(userName=uid, state=self.states)
|
||||
|
||||
|
|
|
@ -114,7 +114,7 @@ timeEnd = TrackTimeField('end', u'End',
|
|||
executionSteps=['output'])
|
||||
task = TargetField('taskId', u'Task',
|
||||
description=u'The task to which work items belong.',
|
||||
executionSteps=['output'])
|
||||
executionSteps=['sort', 'output'])
|
||||
party = TargetField('userName', u'Party',
|
||||
description=u'The party (usually a person) who did the work.',
|
||||
fieldType='selection',
|
||||
|
|
Loading…
Add table
Reference in a new issue