def reject(self, request, pk = None): incident = self.get_object() incident.status = 'rejected' incident.save() self.push(request) create_syslog(name = "A Crisis Report <" + incident.name + "> Rejected", generator = request.user, request = request) self.queryset = Incident.objects.filter(id = pk) return viewsets.ModelViewSet.retrieve(self, request)
def reject(self, request, inci_id, pk = None): dispatch = self.get_object() dispatch.delete() # self.push(request) from .notifiers import DispatchMgr DispatchMgr().notify(object=dispatch, message="reject") create_syslog(name = "A Dispatch for <" + dispatch.incident.name + "> Rejected and Deleted", generator = request.user, request = request) serializer = DispatchSerializer(dispatch) return Response(serializer.data)
def reject(self, request, inci_id, pk = None): inci_update = self.get_object() inci_update.delete() # self.push(request) from .notifiers import InciUpdateMgr InciUpdateMgr().notify(inci_update, message="reject") create_syslog(name = "A Crisis Update for <" + inci_update.incident.name + "> Rejected and Deleted", generator = request.user, request = request) serializer = InciUpdateSerializer(inci_update) return Response(serializer.data)
def approve(self, request, inci_id, pk = None): dispatch = self.get_object() dispatch.is_approved = True dispatch.save() # self.push(request) create_syslog(name = "A Crisis Update for <" + dispatch.incident.name + "> Approved", generator = request.user, request = request) from .notifiers import DispatchMgr DispatchMgr().notify(object=dispatch, message="approve") self.queryset = InciUpdate.objects.all().filter(id = pk) return Response("Message successfully sent to {} at {}".format(dispatch.agency.name, dispatch.agency.contact))#viewsets.ModelViewSet.retrieve(self, request)
def approve(self, request, pk = None): incident = self.get_object() incident.status = 'approved' incident.save() # self.push(request) create_syslog(name = "A Crisis Report <" + incident.name + "> Approved", generator = request.user, request = request) self.queryset = Incident.objects.all().filter(id = pk) from .notifiers import IncidentMgr, DispatchMgr IncidentMgr().notify(incident,"approve") DispatchMgr().propose_dispatch(incident) return viewsets.ModelViewSet.retrieve(self, request)
def create(self, request, *args, **kwargs): request.data['status'] = 'initiated' incident, created = Incident.objects.get_or_create(**(request.data)) if created: create_syslog(name = "A Crisis Report<" + incident.name + "> Created", generator = request.user, request = request) from .notifiers import IncidentMgr IncidentMgr().notify(incident,message="create") #retrieve from database again to ensure data format are consistent incident = Incident.objects.get(id=incident.id) serializer = IncidentRetrieveSerializer(incident) return Response(serializer.data) else: return Response("incident creation failed")
def create(self, request, *args, **kwargs): print request.data.__class__ request.data['incident'] = kwargs['inci_id'] request.data['is_approved'] = False self.serializer_class = InciUpdateWriteSerializer response = viewsets.ModelViewSet.create(self, request, *args, **kwargs) incident = Incident.objects.get(pk = kwargs['inci_id']) inci_update = InciUpdate.objects.get(pk = response.data['id']) from .notifiers import InciUpdateMgr InciUpdateMgr().notify(inci_update, "create") create_syslog(name = "A Crisis Update for <" + incident.name + "> Created", generator = request.user, request = request) serializer = InciUpdateSerializer(inci_update) return Response(serializer.data)
def approve(self, request, inci_id, pk = None): inci_update = self.get_object() inci_update.is_approved = True incident = Incident.objects.get(pk = inci_id) # incident.severity = inci_update.updated_severity # incident.save() # publish_incident(request) inci_update.save() create_syslog(name = "A Crisis Update for <" + inci_update.incident.name + "> Approved", generator = request.user, request = request) create_syslog(name = "A Crisis <" + incident.name + "> Updated", generator = request.user, request = request) from .notifiers import InciUpdateMgr InciUpdateMgr().notify(object=inci_update, message="approve") self.queryset = InciUpdate.objects.all().filter(id = pk) return Response("Message successfully sent to {} at {}".format(inci_update.agency.name, inci_update.agency.contact))#viewsets.ModelViewSet.retrieve(self, request)