diff --git a/knowledge/qualification/report.py b/knowledge/qualification/report.py index 3c72556..90a584c 100644 --- a/knowledge/qualification/report.py +++ b/knowledge/qualification/report.py @@ -26,6 +26,7 @@ from cybertools.util.jeep import Jeep from loops.expert.report import ReportInstance from loops.organize.work.report import WorkRow from loops.organize.work.report import deadline, day, task, party, state +from loops.organize.work.report import dayStart, dayEnd from loops.organize.work.report import workTitle, workDescription from loops import util @@ -37,7 +38,7 @@ class QualificationOverview(ReportInstance): rowFactory = WorkRow - fields = Jeep((task, party, workTitle, day, state)) # +deadline? + fields = Jeep((task, party, workTitle, dayStart, dayEnd, state)) # +deadline? defaultOutputFields = fields diff --git a/organize/work/configure.zcml b/organize/work/configure.zcml index bbd83f7..17dac6c 100644 --- a/organize/work/configure.zcml +++ b/organize/work/configure.zcml @@ -97,7 +97,7 @@ diff --git a/organize/work/report.py b/organize/work/report.py index 0691da5..1da2e3f 100644 --- a/organize/work/report.py +++ b/organize/work/report.py @@ -98,6 +98,14 @@ day = TrackDateField('day', u'Day', description=u'The day the work was done.', cssClass='center', executionSteps=['sort', 'output']) +dayStart = TrackDateField('dayStart', u'Start Day', + description=u'The day the unit of work was started.', + cssClass='center', + executionSteps=['sort', 'output']) +dayEnd = TrackDateField('dayEnd', u'End Day', + description=u'The day the unit of work was finished.', + cssClass='center', + executionSteps=['sort', 'output']) timeStart = TrackTimeField('start', u'Start', description=u'The time the unit of work was started.', executionSteps=['sort', 'output']) @@ -145,6 +153,12 @@ class WorkRow(BaseRow): def getDay(self, attr): return self.context.timeStamp + def getStart(self, attr): + return self.context.start + + def getEnd(self, attr): + return self.context.end + def getDuration(self, attr): value = self.context.data.get('duration') if value is None: @@ -157,7 +171,9 @@ class WorkRow(BaseRow): value = self.getDuration(attr) return value - attributeHandlers = dict(day=getDay, dayFrom=getDay, dayTo=getDay, + attributeHandlers = dict(day=getDay, + dayStart=getStart, dayEnd=getEnd, + dayFrom=getDay, dayTo=getDay, duration=getDuration, effort=getEffort)