Ejemplo n.º 1
0
    def create(self,request, *args, **kwargs):
        logging.info("Received saved procedure submission.")
        response = ''
        form = ProcedureSubmitForm(self.flatten_dict(request.POST))
        logging.debug("Data: %s" % form.data)
        try:
            form.full_clean()
            if not form.is_valid():
                raise ValidationError(form._get_errors())
            
	    
            savedproc_guid  = form.cleaned_data['savedproc_guid']
            procedure_guid = form.cleaned_data['procedure_guid']
            responses = form.cleaned_data['responses']
            phone = form.cleaned_data['phone']
            username = form.cleaned_data['username']
            password = form.cleaned_data['password']
            result, message = register_saved_procedure(savedproc_guid,
                                                       procedure_guid,
                                                       responses,
                                                       phone,
                                                       username,
                                                       password)
            
            
            encounter, data, created = spform_to_encounter(form.cleaned_data)
            encounter.save()
            logging.debug("Saved encounter: " + encounter.uuid)
	    observations = responses_to_observations(encounter, data,sort=True)
	    
	    for obs in observations:
	        obs.save()
	        
	        if obs.is_complex:
	            obs.create_file()
	        
	    #result, message = True, encounter
            
            if result:
                response = succeed("Successfully saved the procedure: %s" % message)
                logging.info("Saved procedure successfully registered.")
            else:
                response = fail(message)
                logging.error("Failed to register procedure: %s" % message)
        except ValidationError, e:
            for k,v in form._get_errors().items():
                logging.error("SavedProcedure argument %s:%s" % (k,v))
            response = fail("Invalid ProcedureSubmitForm data")
            raise Exception('Saved procedure submission was invalid')
    def create(self, request, *args, **kwargs):
        logging.info("Received saved procedure submission.")
        response = ''
        form = ProcedureSubmitForm(self.flatten_dict(request.POST))
        logging.debug("Data: %s" % form.data)
        try:
            form.full_clean()
            if not form.is_valid():
                raise ValidationError(form._get_errors())

            savedproc_guid = form.cleaned_data['savedproc_guid']
            procedure_guid = form.cleaned_data['procedure_guid']
            responses = form.cleaned_data['responses']
            phone = form.cleaned_data['phone']
            username = form.cleaned_data['username']
            password = form.cleaned_data['password']
            result, message = register_saved_procedure(savedproc_guid,
                                                       procedure_guid,
                                                       responses, phone,
                                                       username, password)

            encounter, data, created = spform_to_encounter(form.cleaned_data)
            encounter.save()
            logging.debug("Saved encounter: " + encounter.uuid)
            observations = responses_to_observations(encounter,
                                                     data,
                                                     sort=True)

            for obs in observations:
                obs.save()

                if obs.is_complex:
                    obs.create_file()

#result, message = True, encounter

            if result:
                response = succeed("Successfully saved the procedure: %s" %
                                   message)
                logging.info("Saved procedure successfully registered.")
            else:
                response = fail(message)
                logging.error("Failed to register procedure: %s" % message)
        except ValidationError, e:
            for k, v in form._get_errors().items():
                logging.error("SavedProcedure argument %s:%s" % (k, v))
            response = fail("Invalid ProcedureSubmitForm data")
            raise Exception('Saved procedure submission was invalid')
Ejemplo n.º 3
0
def procedure_submit(request):
    """Accepts a request to send collected encounter data to the data store.
    See ProcedureSubmitForm for request parameters
    
    Parameters:
        request
            The data uploaded from the client.
    """
    try:
        logging.info("Received saved procedure submission.")
        form = ProcedureSubmitForm(request.POST)
        response = ''
        if form.is_valid():
            savedproc_guid = form.cleaned_data['savedproc_guid']
            procedure_guid = form.cleaned_data['procedure_guid']
            responses = form.cleaned_data['responses']
            phone = form.cleaned_data['phone']
            username = form.cleaned_data['username']
            password = form.cleaned_data['password']
            result, message = register_saved_procedure(savedproc_guid,
                                                       procedure_guid,
                                                       responses, phone,
                                                       username, password)

            if result:
                response = succeed("Successfully saved the procedure: %s" %
                                   message)
                logging.info("Saved procedure successfully registered.")
            else:
                response = fail(message)
                logging.error("Failed to register procedure: %s" % message)
        else:
            logging.error(
                "Saved procedure submission was invalid, dumping REQUEST.")
            for k, v in request.REQUEST.items():
                logging.error("SavedProcedure argument %s:%s" % (k, v))
            response = fail(
                "Could not parse submission : missing parts or invalid data?")

    except Exception, e:
        et, val, tb = sys.exc_info()
        trace = traceback.format_tb(tb)
        error = "Exception : %s %s %s" % (et, val, trace[0])
        for tbm in trace:
            logging.error(tbm)
        response = fail(error)
Ejemplo n.º 4
0
def procedure_submit(request):
    """Accepts a request to send collected encounter data to the data store.
    See ProcedureSubmitForm for request parameters
    
    Parameters:
        request
            The data uploaded from the client.
    """
    try:
        logging.info("Received saved procedure submission.")
        form = ProcedureSubmitForm(request.POST)
        response = ''
        if form.is_valid():
            savedproc_guid  = form.cleaned_data['savedproc_guid']
            procedure_guid = form.cleaned_data['procedure_guid']
            responses = form.cleaned_data['responses']
            phone = form.cleaned_data['phone']
            username = form.cleaned_data['username']
            password = form.cleaned_data['password']
            result, message = register_saved_procedure(savedproc_guid,
                                                       procedure_guid,
                                                       responses,
                                                       phone,
                                                       username,
                                                       password)

            if result:
                response = succeed("Successfully saved the procedure: %s" % message)
                logging.info("Saved procedure successfully registered.")
            else:
                response = fail(message)
                logging.error("Failed to register procedure: %s" % message)
        else:
            logging.error("Saved procedure submission was invalid, dumping REQUEST.")
            for k,v in request.REQUEST.items():
                logging.error("SavedProcedure argument %s:%s" % (k,v))
            response = fail("Could not parse submission : missing parts or invalid data?")

    except Exception, e:
        et, val, tb = sys.exc_info()
        trace = traceback.format_tb(tb)
        error = "Exception : %s %s %s" % (et, val, trace[0])
        for tbm in trace:
            logging.error(tbm)
        response = fail(error)