Added facility to return a task list by employee
This commit is contained in:
parent
d835a4ab20
commit
8a51305b82
17
project.py
17
project.py
|
@ -15,6 +15,7 @@ import json
|
|||
import warnings
|
||||
import dateutil
|
||||
import calendar
|
||||
from collections import defaultdict
|
||||
from datetime import datetime, date
|
||||
from dateutil.relativedelta import relativedelta
|
||||
from itertools import groupby, chain, cycle
|
||||
|
@ -1105,6 +1106,22 @@ class Project(ModelSQL, ModelView):
|
|||
'project/global-timesheet.jinja', employees=employees
|
||||
)
|
||||
|
||||
@login_required
|
||||
@permissions_required(['project.admin'])
|
||||
def render_tasks_by_employee(self):
|
||||
open_task_ids = self.search(
|
||||
[('state', '=', 'opened')], order=[('assigned_to', 'ASC')]
|
||||
)
|
||||
tasks_by_employee_by_state = defaultdict(lambda a: defaultdict(list))
|
||||
for task in self.browse(open_task_ids):
|
||||
tasks_by_employee_by_state[task.assigned_to][
|
||||
task.progress_state
|
||||
].append(task)
|
||||
return render_template(
|
||||
'project/tasks-by-employee.jinja',
|
||||
tasks_by_employee_by_state=tasks_by_employee_by_state
|
||||
)
|
||||
|
||||
@login_required
|
||||
def render_timesheet(self, project_id):
|
||||
project = self.get_project(project_id)
|
||||
|
|
6
urls.xml
6
urls.xml
|
@ -51,6 +51,12 @@
|
|||
<field name="sequence" eval="10" />
|
||||
<field name="url_map" ref="nereid.default_url_map" />
|
||||
</record>
|
||||
<record id="tasks_by_employee" model="nereid.url_rule">
|
||||
<field name="rule">/<language>/tasks-by-employee</field>
|
||||
<field name="endpoint">project.work.render_tasks_by_employee</field>
|
||||
<field name="sequence" eval="10" />
|
||||
<field name="url_map" ref="nereid.default_url_map" />
|
||||
</record>
|
||||
<record id="project_task_list" model="nereid.url_rule">
|
||||
<field name="rule">/<language>/project-<int:project_id>/task-list</field>
|
||||
<field name="endpoint">project.work.render_task_list</field>
|
||||
|
|
Loading…
Reference in New Issue