コード例 #1
0
        public async Task <IActionResult> PutAsync(UpdatePatientRequest request, CancellationToken cancellationToken)
        {
            _logger.LogInformation("Patients/Put was requested.");
            var response = await unitOfWork.Patients.UpdateAsync(_mapper.Map <PatientDTO>(request));

            unitOfWork.Save();
            return(Ok(_mapper.Map <PatientResponse>(response)));
        }
コード例 #2
0
        public Patient Update(Patient patient)
        {
            var request = new UpdatePatientRequest();

            request.Patient = patient;
            var response = HttpPost <UpdatePatientRequest>("api/Patient/update", request, MediaType.Json);

            return(patient);
        }
コード例 #3
0
        public IHttpActionResult UpdatePatient([FromBody] UpdatePatientRequest updateRequest)
        {
            Guid processId = Guid.NewGuid();


            LogEventInfo log = new LogEventInfo(LogLevel.Debug, Logger.Name, $"Request hacia {Request.RequestUri} con el JSON:**START** {JsonConvert.SerializeObject(updateRequest)} **END**");

            log.Properties["ProcessID"]  = processId;
            log.Properties["AppID"]      = AboxDynamicsBase.Classes.Constants.ApplicationIdWebAPI;
            log.Properties["MethodName"] = System.Reflection.MethodBase.GetCurrentMethod().Name;
            Logger.Log(log);

            EContact        contactProcedures = new EContact();
            OperationResult response          = null;

            try
            {
                if (updateRequest != null)
                {
                    OperationResult updateResult = contactProcedures.UpdatePatient(updateRequest, processId);
                    if (updateResult.IsSuccessful)
                    {
                        return(Ok(updateResult));
                    }
                    else
                    {
                        return(Content(HttpStatusCode.InternalServerError, updateResult));
                    }
                }
                else
                {
                    return(Content(HttpStatusCode.BadRequest, new OperationResult
                    {
                        Code = "",
                        IsSuccessful = false,
                        Data = null,
                        Message = "La solicitud JSON enviada es incorrecta"
                    }));
                }
            }
            catch (Exception ex)
            {
                LogEventInfo logEx = new LogEventInfo(LogLevel.Error, Logger.Name, null, $"Request hacia {Request.RequestUri} con el JSON:**START** {JsonConvert.SerializeObject(updateRequest)} **END**", null, new Exception(ex.ToString()));
                logEx.Properties["ProcessID"]  = processId;
                logEx.Properties["AppID"]      = Constants.ApplicationIdWebAPI;
                logEx.Properties["MethodName"] = System.Reflection.MethodBase.GetCurrentMethod().Name;
                Logger.Log(logEx);
                return(Content(HttpStatusCode.InternalServerError, new OperationResult
                {
                    IsSuccessful = false,
                    Data = null,
                    Message = ex.ToString(),
                    Code = ""
                }));
            }
        }
コード例 #4
0
        public async Task <IActionResult> Patch([FromRoute] Guid id, [FromBody] UpdatePatientRequest patchUser)
        {
            var patch = JsonPatchDocumentExtensions.CreatePatch(patchUser.Original, patchUser.Changed);

            var guidUserId = Guid.Parse(User.Claims.FirstOrDefault(x => x.Type == "id").Value);

            var patchResponse = await patientApi.PatchPatient(id, guidUserId, patch.Operations);

            if (!patchResponse.IsSuccessStatusCode)
            {
                return(await patchResponse.UpdateActionResult());
            }

            return(NoContent()); // Because theoretically the user on frontend already has the data changed, no point in returning a new data
        }
コード例 #5
0
 public void delete(UpdatePatientRequest request)
 {
     try
     {
         var response = new UpdatePatientResponse();
         var bc       = new PatientComponent();
         bc.Update(request.Patient);
     }
     catch (Exception ex)
     {
         var httpError = new HttpResponseMessage()
         {
             StatusCode   = (HttpStatusCode)422,
             ReasonPhrase = ex.Message
         };
         throw new HttpResponseException(httpError);
     }
 }
コード例 #6
0
 public async Task <PatientDto> EditAsync(UpdatePatientRequest patient)
 {
     return((await _httpService.HttpPutAsync <UpdatePatientResponse>("patients", patient)).Patient);
 }