授予区域权限暂时未做
This commit is contained in:
parent
118ca0ff1a
commit
2f65784a43
|
@ -45,17 +45,18 @@ def bind_opl(ticket: Ticket, transition: Transition, new_ticket_data: dict):
|
||||||
opl.ticket = ticket
|
opl.ticket = ticket
|
||||||
opl.number = ticket.sn
|
opl.number = ticket.sn
|
||||||
opl.save()
|
opl.save()
|
||||||
|
op = opl.operation
|
||||||
|
if op.state == Operation.OP_CREATE:
|
||||||
|
op.state = Operation.OP_AUDIT
|
||||||
|
op.save()
|
||||||
|
|
||||||
|
|
||||||
def opl_audit_end(ticket: Ticket, transition: Transition, new_ticket_data: dict):
|
def opl_audit_end(ticket: Ticket, transition: Transition, new_ticket_data: dict):
|
||||||
opl = Opl.objects.get(ticket=ticket)
|
opl = Opl.objects.get(ticket=ticket)
|
||||||
serializer = OplCloseSerializer(instance=opl, data=new_ticket_data, partial=True)
|
|
||||||
serializer.is_valid(raise_exception=True)
|
|
||||||
serializer.save()
|
|
||||||
|
|
||||||
|
op = opl.operation
|
||||||
|
if op.state == Operation.OP_AUDIT:
|
||||||
|
op.state = Operation.OP_WORK
|
||||||
|
op.save()
|
||||||
|
|
||||||
def give_perm_by_opl():
|
# 授予相关工作人员区域进入权限
|
||||||
"""
|
|
||||||
根据许可证授予区域进入权限
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
# Generated by Django 3.2.12 on 2022-07-18 07:46
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('wf', '0004_auto_20220718_1344'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='state',
|
||||||
|
name='filter_dept',
|
||||||
|
field=models.CharField(blank=True, max_length=20, null=True, verbose_name='部门字段过滤'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -103,7 +103,7 @@ class State(CommonAModel):
|
||||||
distribute_type = models.IntegerField('分配方式', default=1, choices=state_distribute_choices,
|
distribute_type = models.IntegerField('分配方式', default=1, choices=state_distribute_choices,
|
||||||
help_text='1.主动接单(如果当前处理人实际为多人的时候,需要先接单才能处理) 2.直接处理(即使当前处理人实际为多人,也可以直接处理) 3.随机分配(如果实际为多人,则系统会随机分配给其中一个人) 4.全部处理(要求所有参与人都要处理一遍,才能进入下一步)')
|
help_text='1.主动接单(如果当前处理人实际为多人的时候,需要先接单才能处理) 2.直接处理(即使当前处理人实际为多人,也可以直接处理) 3.随机分配(如果实际为多人,则系统会随机分配给其中一个人) 4.全部处理(要求所有参与人都要处理一遍,才能进入下一步)')
|
||||||
# filter_policy = models.IntegerField('参与人过滤策略', default=0, choices=state_filter_choices)
|
# filter_policy = models.IntegerField('参与人过滤策略', default=0, choices=state_filter_choices)
|
||||||
filter_dept = models.CharField('部门字段过滤', default=0, max_length=20)
|
filter_dept = models.CharField('部门字段过滤', max_length=20, null=True, blank=True)
|
||||||
participant_cc = models.JSONField('抄送给', default=list, blank=True, help_text='抄送给(userid列表)')
|
participant_cc = models.JSONField('抄送给', default=list, blank=True, help_text='抄送给(userid列表)')
|
||||||
on_reach_func = models.CharField('到达时调用方法', max_length=100, null=True, blank=True)
|
on_reach_func = models.CharField('到达时调用方法', max_length=100, null=True, blank=True)
|
||||||
|
|
||||||
|
|
|
@ -175,7 +175,9 @@ class WfService(object):
|
||||||
user_queryset = User.objects.filter(posts__in=destination_participant)
|
user_queryset = User.objects.filter(posts__in=destination_participant)
|
||||||
# 如果选择了岗位, 可能需要走过滤策略
|
# 如果选择了岗位, 可能需要走过滤策略
|
||||||
if state.filter_dept:
|
if state.filter_dept:
|
||||||
dpts = Dept.objects.filter(id=new_ticket_data.get(state.filter_dept, '0'))
|
if not new_ticket_data.get(state.filter_dept, None):
|
||||||
|
raise ParseError('部门过滤字段错误')
|
||||||
|
dpts = Dept.objects.filter(id=new_ticket_data[state.filter_dept])
|
||||||
user_queryset = user_queryset.filter(depts__in=dpts)
|
user_queryset = user_queryset.filter(depts__in=dpts)
|
||||||
# if state.filter_policy == 1:
|
# if state.filter_policy == 1:
|
||||||
# depts = get_parent_queryset(ticket.belong_dept)
|
# depts = get_parent_queryset(ticket.belong_dept)
|
||||||
|
@ -191,7 +193,9 @@ class WfService(object):
|
||||||
user_queryset = User.objects.filter(roles__in=destination_participant)
|
user_queryset = User.objects.filter(roles__in=destination_participant)
|
||||||
# 如果选择了角色, 需要走过滤策略
|
# 如果选择了角色, 需要走过滤策略
|
||||||
if state.filter_dept:
|
if state.filter_dept:
|
||||||
dpts = Dept.objects.filter(id=new_ticket_data.get(state.filter_dept, '0'))
|
if not new_ticket_data.get(state.filter_dept, None):
|
||||||
|
raise ParseError('部门过滤字段错误')
|
||||||
|
dpts = Dept.objects.filter(id=new_ticket_data[state.filter_dept])
|
||||||
user_queryset = user_queryset.filter(depts__in=dpts)
|
user_queryset = user_queryset.filter(depts__in=dpts)
|
||||||
# if state.filter_policy == 1:
|
# if state.filter_policy == 1:
|
||||||
# depts = get_parent_queryset(ticket.belong_dept)
|
# depts = get_parent_queryset(ticket.belong_dept)
|
||||||
|
|
Loading…
Reference in New Issue