diff --git a/apps/ecm/service.py b/apps/ecm/service.py index 9a21697f..81cdce85 100644 --- a/apps/ecm/service.py +++ b/apps/ecm/service.py @@ -491,7 +491,7 @@ def handle_xx_event(name: str, data: dict): # 找到最近未处理同一人发生的事件 if cate: last_event = Event.objects.filter(cates__code=name, employee=blts.employee, handle_user=None).order_by('-create_time').first() - if last_event and last_event.create_time + timedelta(minutes=2) > timezone.now(): + if last_event and last_event.create_time + timedelta(minutes=5) > timezone.now(): return event = Event() # 查询定位信息 diff --git a/apps/rpm/services.py b/apps/rpm/services.py index 313d85bd..be82a1e2 100644 --- a/apps/rpm/services.py +++ b/apps/rpm/services.py @@ -48,7 +48,7 @@ def rpj_audit_end(ticket): for i in Rpjmember.objects.filter(rpj=rpj): rep = i.remployee # 尝试找到人员 - ep = Employee.objects.filter(id_number=rep.id_number).first() + ep = Employee.objects.get_queryset(all=True).filter(id_number=rep.id_number).first() if ep: pass else: @@ -59,18 +59,24 @@ def rpj_audit_end(ticket): ep.photo = rep.photo ep.type = 'remployee' ep.belong_dept = rpj.rparty.dept + ep.is_deleted = False ep.save() # 给相关方人员创建账户 user = ep.user if user: # 如果该人员有账户 pass else: - user_e = User() - user_e.username = 'RE_' + ranstr(6) + user_e = User.objects.get_queryset(all=True).filter(phone=rep.phone).first() # 看看有没有存在的账户 + if user_e: + user_e.is_active = True + user_e.is_deleted = False + else: + user_e = User() + user_e.username = 'RE_' + ranstr(6) + user_e.password = make_password('0000') user_e.name = rep.name user_e.phone = rep.phone user_e.type = 'remployee' - user_e.password = make_password('0000') user_e.belong_dept = rpj_dept user_e.post = post user_e.save() diff --git a/apps/third/views.py b/apps/third/views.py index 534f9c35..13dbf3f7 100755 --- a/apps/third/views.py +++ b/apps/third/views.py @@ -192,7 +192,8 @@ class XxCommonViewSet(CreateModelMixin, CustomGenericViewSet): serializer_class=serializers.Serializer, logging_methods=['POST']) # 日志 def c_one_key_alarm(self, request, pk=None): data = request.data - handle_xx_event(name='one_key_alarm', data=data['data']) + if data['data']['event'] == 'alarm': + handle_xx_event(name='one_key_alarm', data=data['data']) return Response() @action(methods=['post'], detail=False, diff --git a/apps/vm/services.py b/apps/vm/services.py index 723430bf..5cbc1da8 100644 --- a/apps/vm/services.py +++ b/apps/vm/services.py @@ -35,11 +35,11 @@ def visit_audit_end(ticket): for i in Vpeople.objects.filter(visit=visit): visitor = i.visitor if visitor.id_number and visitor.photo: - ep = Employee.objects.filter(id_number=visitor.id_number).first() + ep = Employee.objects.get_queryset(all=True).filter(id_number=visitor.id_number).first() elif visitor.phone: - ep = Employee.objects.filter(phone=visitor.phone).first() + ep = Employee.objects.get_queryset(all=True).filter(phone=visitor.phone).first() else: - ep = Employee.objects.filter(name=visitor.name, id_number=None).first() + ep = Employee.objects.get_queryset(all=True).filter(name=visitor.name, id_number=None).first() if ep: pass else: @@ -50,6 +50,7 @@ def visit_audit_end(ticket): ep.photo = visitor.photo ep.type = 'visitor' ep.belong_dept = visit.receptionist.belong_dept + ep.is_deleted = False ep.save() visitor.employee = ep visitor.visit = visit # 更新当前所属访客项目