# Create your tasks here from __future__ import absolute_import, unicode_literals from apps.hrm.models import Certificate, Employee from apps.rpm.models import Rcertificate, Remployee, Rpj, Rpjcertificate, Rpjmember from apps.utils.task import CustomTask from celery import shared_task @shared_task(base=CustomTask) def rpj_audit_start(ticket_id): rpj = Rpj.objects.get(ticket__id=ticket_id) if rpj.state == Rpj.RPJ_CREATE: rpj.state = Rpj.RPJ_AUDIT rpj.save() @shared_task(base=CustomTask) def rpj_audit_end(ticket_id): rpj = Rpj.objects.get(ticket__id=ticket_id) if rpj.state == Rpj.RPJ_AUDIT: rpj.state = Rpj.RPJ_ENTER rpj.save() # 更新企业相关方人员库和证书库 for i in Rpjmember.objects.filter(rpj=rpj): remployee = i.remployee ep = Employee.objects.filter(id_number=remployee.id_number).first() if ep: pass else: ep = Employee() ep.name = remployee.name ep.phone = remployee.phone ep.photo = remployee.photo ep.id_number = remployee.id_number ep.type = 'remployee' ep.save() remployee.employee = ep remployee.save() for i in Rpjcertificate.objects.filter(rpj_member__rpj=rpj): ct = Certificate.objects.filter(number=i.number).first() if ct: pass else: ct = Certificate() ct.name = i.name ct.number = i.number ct.type = i.type ct.issue_date = i.issue_date ct.expiration_date = i.expiration_date ct.review_date = i.review_date ct.file = i.file ct.employee = i.rpj_member.remployee.employee ct.save()