工单过滤字段支持反向查询
This commit is contained in:
parent
5a3c380dff
commit
215b18314c
|
@ -172,7 +172,14 @@ class WfService(object):
|
|||
if state.filter_dept not in [0, '0', None]:
|
||||
# if not new_ticket_data.get(state.filter_dept, None):
|
||||
# raise ParseError('部门过滤字段错误')
|
||||
dpts = Dept.objects.filter(id=new_ticket_data[state.filter_dept])
|
||||
if '.' not in state.filter_dept:
|
||||
dpts = Dept.objects.filter(id=new_ticket_data[state.filter_dept])
|
||||
else:
|
||||
dpt_attrs = state.filter_dept.split('.') # 通过反向查询得到可能有多层
|
||||
expr = ticket
|
||||
for i in dpt_attrs:
|
||||
expr = getattr(expr, i)
|
||||
dpts = Dept.objects.filter(id=expr.id)
|
||||
user_queryset = user_queryset.filter(depts__in=dpts)
|
||||
# if state.filter_policy == 1:
|
||||
# depts = get_parent_queryset(ticket.belong_dept)
|
||||
|
@ -190,7 +197,14 @@ class WfService(object):
|
|||
if state.filter_dept not in [0, '0', None]:
|
||||
# if not new_ticket_data.get(state.filter_dept, None):
|
||||
# raise ParseError('部门过滤字段错误')
|
||||
dpts = Dept.objects.filter(id=new_ticket_data[state.filter_dept])
|
||||
if '.' not in state.filter_dept:
|
||||
dpts = Dept.objects.filter(id=new_ticket_data[state.filter_dept])
|
||||
else:
|
||||
dpt_attrs = state.filter_dept.split('.')
|
||||
expr = ticket
|
||||
for i in dpt_attrs:
|
||||
expr = getattr(expr, i)
|
||||
dpts = Dept.objects.filter(id=expr.id)
|
||||
user_queryset = user_queryset.filter(depts__in=dpts)
|
||||
# if state.filter_policy == 1:
|
||||
# depts = get_parent_queryset(ticket.belong_dept)
|
||||
|
|
Loading…
Reference in New Issue