def form_valid(self, form): form.instance._creation_user_id = self.request.user.id if self.request.user.groups.filter(name=L100).exists(): form.instance.supplier_id = 1 elif self.request.user.groups.filter(name=L200).exists(): form.instance.supplier_id = 2 elif self.request.user.groups.filter(name=L300).exists(): form.instance.supplier_id = 3 if self.request.user.groups.filter(name=LIEFERANTEN).exists(): form.instance.external_system = True new_supp_order_complaint = form.save() if form.instance.external_system == True: if self.request.user.groups.filter(name=L100).exists(): Task.set_task(new_supp_order_complaint, 40) elif self.request.user.groups.filter(name=L200).exists(): Task.set_task(new_supp_order_complaint, 41) elif self.request.user.groups.filter(name=L300).exists(): Task.set_task(new_supp_order_complaint, 42) else: if self.request.user.groups.filter(name=PRODUKTION).exists(): Task.set_task(new_supp_order_complaint, 32) elif self.request.user.groups.filter( name=PRODUKTIONSDIENSTLEISTUNG).exists(): Task.set_task(new_supp_order_complaint, 43) return HttpResponseRedirect("/supp_complaint/alter/" + str(new_supp_order_complaint.pk) + "/")
def get_api_tasks(request, **kwargs): tasks_user = list() for index, task in enumerate(Task.get_tasks_of_user(request.user)): tasks_user.append( dict(id=task.id, title=task.task_type.title, ref=task.get_ref())) tasks_group = list() for index, task in enumerate(Task.get_unassigned_tasks(request.user)): tasks_group.append( dict(id=task.id, title=task.task_type.title, ref=task.get_ref())) return JsonResponse(dict(tasks_user=tasks_user, tasks_group=tasks_group))
def form_valid(self, form): form.instance._creation_user_id = self.request.user.id if self.request.user.groups.filter(name=K1).exists(): form.instance.customer_id = 1 elif self.request.user.groups.filter(name=K2).exists(): form.instance.customer_id = 2 elif self.request.user.groups.filter(name=K3).exists(): form.instance.customer_id = 3 if self.request.user.groups.filter(name=KUNDEN).exists(): form.instance.external_system = True new_cust_order_complaint = form.save() if form.instance.external_system == True: if self.request.user.groups.filter(name=K1).exists(): Task.set_task(new_cust_order_complaint, 21) elif self.request.user.groups.filter(name=K2).exists(): Task.set_task(new_cust_order_complaint, 22) elif self.request.user.groups.filter(name=K3).exists(): Task.set_task(new_cust_order_complaint, 23) else: Task.set_task(new_cust_order_complaint, 30) return HttpResponseRedirect("/cust_complaint/alter/" + str(new_cust_order_complaint.pk) + "/")
def get_api_status(request, **kwargs): time = Timers.get_current_day() has_unassigned = Task.has_unassigned(request.user) has_messages = Message.group_has_unread(request.user) return JsonResponse( dict(time=time, has_unassigned=has_unassigned, has_messages=has_messages))
def form_valid(self, form): form.instance._creation_user_id = self.request.user.id if self.request.user.groups.filter(name=L100).exists(): form.instance.supplier_id = 1 elif self.request.user.groups.filter(name=L200).exists(): form.instance.supplier_id = 2 elif self.request.user.groups.filter(name=L300).exists(): form.instance.supplier_id = 3 if self.request.user.groups.filter(name=LIEFERANTEN).exists(): form.instance.external_system = True new_supp_order = form.save() if self.request.user.groups.filter(name=L300).exists(): Task.set_task(new_supp_order, 20) elif self.request.user.groups.filter(name=JOGA).exists(): Task.set_task(new_supp_order, 19) return HttpResponseRedirect("/supp_order/alter/" + str(new_supp_order.pk) + "/")
def gtcontext(request): if request.user.groups.filter(name=JOGA).exists(): company = JOGA # light-blue elif request.user.groups.filter(name=LIEFERANTEN).exists(): company = LIEFERANTEN # green elif request.user.groups.filter(name=KUNDEN).exists(): company = KUNDEN # red else: company = 'none' # grey group = [] for item in request.user.groups.all(): group.append(item.name) return { "debug_flag": settings.DEBUG, "company": company, "group": group, "day": Timers.get_current_day(), "has_unassigned_tasks": Task.has_unassigned(request.user), "has_messages": Message.group_has_unread(request.user) }
def box_search_view(request): boxno_found = 0 ext_sys = request.user.groups.filter(name=JOGA).exists() if request.method == "POST": number = request.POST.get('boxnr') if CustOrder.objects.filter(box_no=str(number)).exclude( external_system=ext_sys).exists() and len( CustOrder.objects.filter(box_no=str(number).exclude( external_system=ext_sys))) < 2: #task setzen welches neu entsteht pass elif CustOrderDet.objects.filter(box_no=str(number)).exclude( cust_order__external_system=ext_sys).exists() and len( CustOrderDet.objects.filter(box_no=str(number)).exclude( cust_order__external_system=ext_sys)) < 2: mylist = CustOrderDet.objects.filter(box_no=str(number)) for obj in mylist: if obj.status == CustOrderDet.Status.AUFTRAG_FREIGEGEBEN: #Task erscheint bei dem Boxscan in der Produktion, wo dann die Hebebühne gebaut werden soll & der Status wird auf 4 gesetzt Task.set_task(obj, 6) set_status(obj.__class__.__name__, obj.id, CustOrderDet.Status.IN_PRODUKTION) CustOrderDet.objects.filter(pk=obj.id).update(box_no='') boxno_found = 1 elif obj.status == CustOrderDet.Status.VERSANDT_AN_KD: #Task erscheint bei dem Boxscan beim Kundendienst, wo dann die Hebebühne an den Kunden übergeben werden soll und der Status wird auf 6 gesetzt Task.set_task(obj, 8) set_status(obj.__class__.__name__, obj.id, CustOrderDet.Status.LIEFERUNG_AN_K_AUSSTEHEND) CustOrderDet.objects.filter(pk=obj.id).update(box_no='') boxno_found = 1 elif obj.status == CustOrderDet.Status.BESTELLT: #Task beim Kunden für den Wareneingang if request.user.groups.filter(name=K1).exists(): Task.set_task(obj, 11) set_status(obj.__class__.__name__, obj.id, CustOrderDet.Status.GELIEFERT) elif request.user.groups.filter(name=K2).exists(): Task.set_task(obj, 12) set_status(obj.__class__.__name__, obj.id, CustOrderDet.Status.GELIEFERT) elif request.user.groups.filter(name=K3).exists(): Task.set_task(obj, 13) set_status(obj.__class__.__name__, obj.id, CustOrderDet.Status.GELIEFERT) CustOrderDet.objects.filter(pk=obj.id).update(box_no='') boxno_found = 1 elif SuppOrder.objects.filter(box_no=str(number)).exclude( external_system=ext_sys).exists() and len( SuppOrder.objects.filter(box_no=str(number)).exclude( external_system=ext_sys)) < 2: #Status-Abfrage -> Joga Bestellung auf Bestellt um dann den Task "Wareneingang" auszulösen mylist = SuppOrder.objects.filter(box_no=str(number)) for obj in mylist: if obj.status == SuppOrder.Status.BESTELLT: Task.set_task(obj, 4) set_status(obj.__class__.__name__, obj.id, SuppOrder.Status.BESTELLT) boxno_found = 1 SuppOrder.objects.filter(pk=obj.id).update(box_no='') elif SuppOrderDet.objects.filter(box_no=str(number)).exclude( supp_order__external_system=ext_sys).exists() and len( SuppOrderDet.objects.filter(box_no=str(number)).exclude( supp_order__external_system=ext_sys)) < 2: pass elif CustComplaintDet.objects.filter(box_no=str(number)).exclude( cust_complaint__external_system=ext_sys).exists() and len( CustComplaintDet.objects.filter( box_no=str(number)).exclude( cust_complaint__external_system=ext_sys)) < 2: mylist = CustComplaintDet.objects.filter(box_no=str(number)) for obj in mylist: if obj.status == CustComplaintDet.Status.VERSAND_AN_PRODUKTION: Task.set_task(obj, 28) set_status(obj.__class__.__name__, obj.id, CustComplaintDet.Status.IN_ANPASSUNG) boxno_found = 1 if obj.status == CustComplaintDet.Status.VERSAND_AN_KUNDENDIENST: Task.set_task(obj, 31) set_status(obj.__class__.__name__, obj.id, CustComplaintDet.Status.BEI_KUNDENDIENST) boxno_found = 1 if obj.status == CustComplaintDet.Status.VERSAND_AN_KUNDE: set_status(obj.__class__.__name__, obj.id, CustComplaintDet.Status.GELIEFERT) boxno_found = 1 CustComplaintDet.objects.filter(pk=obj.id).update(box_no='') elif SuppComplaint.objects.filter(box_no=str(number)).exclude( external_system=ext_sys).exists() and len( SuppComplaint.objects.filter(box_no=str(number)).exclude( external_system=ext_sys)) < 2: mylist = SuppComplaint.objects.filter(box_no=str(number)) for obj in mylist: # if obj.status == SuppComplaint.Status.ERFASST: # set_status(obj.__class__.__name__, obj.id,SuppComplaint.Status.BESTANDSPRUEFUNG_AUSSTEHEND) # Task.set_task(obj, 36) # boxno_found = 1 # SuppComplaint.objects.filter(pk=obj.id).update(box_no='') if obj.status == SuppComplaint.Status.VERSAND_AN_LIEFERANT: #set_status(obj.__class__.__name__, obj.id,SuppComplaint.Status.GELIEFERT) SuppComplaintDets = SuppComplaintDet.objects.filter( supp_complaint=obj.id) for det in SuppComplaintDets: if det.status == SuppComplaintDet.Status.VERSAND_AN_LIEFERANT: det.status = SuppComplaintDet.Status.GELIEFERT det.save() Task.set_task(obj, 34) boxno_found = 1 SuppComplaint.objects.filter(pk=obj.id).update(box_no='') if obj.status == SuppComplaint.Status.REKLAMATION_FREIGEGEBEN: if request.user.groups.filter(name=L100).exists(): Task.set_task(obj, 48) elif request.user.groups.filter(name=L200).exists(): Task.set_task(obj, 49) elif request.user.groups.filter(name=L300).exists(): Task.set_task(obj, 50) boxno_found = 1 SuppComplaint.objects.filter(pk=obj.id).update(box_no='') if obj.status == SuppComplaint.Status.VERSAND_AN_PDL: set_status(obj.__class__.__name__, obj.id, SuppComplaint.Status.IN_BEARBEITUNG) Task.set_task(obj, 38) supp_complaint_dets = SuppComplaintDet.objects.filter( supp_complaint=obj) for pos in supp_complaint_dets: pos.status = SuppComplaintDet.Status.IN_BEARBEITUNG pos.save() boxno_found = 1 SuppComplaint.objects.filter(pk=obj.id).update(box_no='') if obj.status == SuppComplaint.Status.VERSAND_AN_PRODUKTION: #set_status(obj.__class__.__name__, obj.id,SuppComplaint.Status.ABGESCHLOSSEN) supp_complaint_dets = SuppComplaintDet.objects.filter( supp_complaint=obj) for pos in supp_complaint_dets: pos.status = SuppComplaintDet.Status.ABGESCHLOSSEN pos.save() Task.set_task(obj, 47) boxno_found = 1 SuppComplaint.objects.filter(pk=obj.id).update(box_no='') else: return render(request, "box.html") if boxno_found == 1: return HttpResponseRedirect(reverse("tasks_notassigned")) else: c = {} c["FEHLER"] = 1 return render(request, "box.html", c)