rpj_audit_end

This commit is contained in:
曹前明 2022-07-15 10:46:10 +08:00
parent c595711ebb
commit 55a2028451
1 changed files with 53 additions and 52 deletions

View File

@ -13,58 +13,59 @@ def bind_rpj(ticket: Ticket, transition: Transition, new_ticket_data: dict):
# ticket.save()
rpj.ticket = rpj
rpj.save()
ticket.belong_dept = rpj.dept
ticket.save()
def rpj_audit_end(ticket):
if ticket.act_state == Ticket.TICKET_ACT_STATE_FINISH:
rpj = Rpj.objects.get(ticket=ticket)
rpj.state = Rpj.RPJ_ENTER
rpj.save()
# 更新入厂项目人员库
for i in Rpjmember.objects.filter(rpj=rpj):
rep = i.remployee
ep = Employee.objects.filter(id_number=rep.id_number).first()
if ep:
pass
else:
ep = Employee()
ep.id_number = rep.id_number
ep.name = rep.name
ep.phone = rep.phone
ep.photo = rep.photo
ep.type = 'remployee'
ep.belong_dept = rpj.rparty.dept
ep.save()
rep.employee = ep
rep.rpj = rpj # 更新当前入厂项目
rep.save()
# 同步至大华人员库并下发人脸
Thread(target=HrmService.sync_dahua_employee, args=(ep, '', rpj.come_time, rpj.leave_time)).start()
# 更新入厂项目人员证书库
for i in Rcertificate.objects.filter(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()
# 更新相关方资料库
for i in Rpjfile.objects.filter(rpj=rpj):
rf = Rfile.objects.filter(file_cate=i.file_cate, rparty=i.rparty).first()
if rf:
pass
else:
rf = Rfile()
rf.rparty = i.rparty
rf.file_cate = i.file_cate
for m in i.files.all():
rf.files.add(m)
# 发送通知?
rpj = Rpj.objects.get(ticket=ticket)
rpj.state = Rpj.RPJ_ENTER
rpj.save()
# 更新入厂项目人员库
for i in Rpjmember.objects.filter(rpj=rpj):
rep = i.remployee
ep = Employee.objects.filter(id_number=rep.id_number).first()
if ep:
pass
else:
ep = Employee()
ep.id_number = rep.id_number
ep.name = rep.name
ep.phone = rep.phone
ep.photo = rep.photo
ep.type = 'remployee'
ep.belong_dept = rpj.rparty.dept
ep.save()
rep.employee = ep
rep.rpj = rpj # 更新当前入厂项目
rep.save()
# 同步至大华人员库并下发人脸
Thread(target=HrmService.sync_dahua_employee, args=(ep, '', rpj.come_time, rpj.leave_time)).start()
# 更新入厂项目人员证书库
for i in Rcertificate.objects.filter(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()
# 更新相关方资料库
for i in Rpjfile.objects.filter(rpj=rpj):
rf = Rfile.objects.filter(file_cate=i.file_cate, rparty=i.rparty).first()
if rf:
pass
else:
rf = Rfile()
rf.rparty = i.rparty
rf.file_cate = i.file_cate
for m in i.files.all():
rf.files.add(m)
# 发送通知?