diff --git a/apps/opm/services.py b/apps/opm/services.py index e654b4bb..5331e277 100644 --- a/apps/opm/services.py +++ b/apps/opm/services.py @@ -2,7 +2,7 @@ import time from apps.ecm.service import check_not_in_place, snap_and_analyse from apps.ecm.models import EventCate -from apps.opm.models import Operation, Opl, OplWorker, GasCheck +from apps.opm.models import Operation, Opl, OplWorker, GasCheck, OplCert from apps.third.models import TDevice from apps.utils.sms import send_sms from apps.wf.models import Ticket, Transition @@ -43,6 +43,8 @@ def bind_opl(ticket: Ticket, transition: Transition, new_ticket_data: dict): opl = Opl.objects.get(id=new_ticket_data['opl']) if '有限空间' in opl.cate.name and GasCheck.objects.filter(opl=opl).count() == 0: raise ParseError('该许可证需填写气体检测记录!') + if ('高处' in opl.cate.name or '动火' in opl.cate.name) and OplCert.objects.filter(opl_worker__opl=opl).count() == 0: + raise ParseError('该许可证需添加作业人员相关证书!') ticket_data = ticket.ticket_data ticket_data.update({ 'operation': opl.operation.id, # operation id值