factory/apps/opm/services.py

29 lines
850 B
Python

from apps.opm.models import Operation, Opl
from apps.opm.serializers import OplCloseSerializer
from apps.wf.models import Ticket, Transition
def bind_opl(ticket: Ticket, transition: Transition, new_ticket_data: dict):
opl = Opl.objects.get(id=new_ticket_data['opl'])
ticket_data = ticket.ticket_data
ticket_data.update({'level': opl.level})
ticket.ticket_data = ticket_data
ticket.save()
opl.ticket = opl
opl.number = ticket.sn
opl.save()
def close_opl_submit(ticket: Ticket, transition: Transition, new_ticket_data: dict):
opl = Opl.objects.get(ticket=ticket)
serializer = OplCloseSerializer(instance=opl, data=new_ticket_data, partial=True)
serializer.is_valid(raise_exception=True)
serializer.save()
def give_perm_by_opl():
"""
根据许可证授予区域进入权限
"""
pass