Esempio n. 1
0
        public async Task <OperationResult> RegisterNameCorrection(NameCorrectionViewModel requestNameCorrection)
        {
            OperationResult operationResult = new OperationResult();

            try
            {
                var agencyRequest = await _agencyApi.GetAgencyFromUserEmail(requestNameCorrection.UserEmail);

                var agency = JsonConvert.DeserializeObject <AgencyViewModel>(agencyRequest.Data.ToString());

                var correctionName = new NameCorrectionRequest()
                {
                    AgencyID           = agency.Id,
                    PNR                = requestNameCorrection.PNR,
                    ContactPhoneNumber = requestNameCorrection.ContactPhoneNumber,
                    CountryCode        = requestNameCorrection.CountryCode,
                    ServiceLanguage    = requestNameCorrection.ServiceLanguage,
                    Description        = requestNameCorrection.Description,
                    RegisteredDate     = DateTime.Now
                };

                _dbContext.NameCorrectionRequests.Add(correctionName);

                operationResult.Result = _dbContext.SaveChanges() > 0;

                operationResult.Data = correctionName.NameCorrectionRequestID;
            }
            catch (Exception e)
            {
                operationResult.Message = "Ocurrió un error en el registro de la corrección de nombre, intente nuevamente";
                logger.LogError(e, e.Message);
            }

            return(operationResult);
        }
Esempio n. 2
0
        private async System.Threading.Tasks.Task <JsonResult> SendDataToAPI(HttpPostedFileBase httpFile, NameCorrectionViewModel model)
        {
            System.Net.ServicePointManager.ServerCertificateValidationCallback =
                ((sender, certificate, chain, sslPolicyErrors) => true);

            //System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;


            OperationResult operationResult = new OperationResult();

            try
            {
                byte[] fileData = null;

                if (httpFile != null)
                {
                    using (var binaryReader = new BinaryReader(Request.Files[0].InputStream))
                    {
                        fileData = binaryReader.ReadBytes(Request.Files[0].ContentLength);
                    }
                }


                client.DefaultRequestHeaders.Add("AccessTokenCOPAValidator", "12345");

                var content = new MultipartFormDataContent("Upload----" + DateTime.Now.ToString(CultureInfo.InvariantCulture));

                content.Add(new StringContent(JsonConvert.SerializeObject(model)), "NameCorrectionRequestData");

                if (httpFile != null)
                {
                    content.Add(new StreamContent(new MemoryStream(fileData)), "PassportImage", httpFile.FileName);
                }

                var message = await client.PostAsync(String.Format("{0}/NameCorrection", WebConfigurationManager.AppSettings["RequestServicesURL"]), content).Result.Content.ReadAsStringAsync();

                //var data = await message.Content.ReadAsStringAsync();

                operationResult = JsonConvert.DeserializeObject <OperationResult>(message);
                return(Json(operationResult));
            }
            catch (Exception e)
            {
                operationResult.Message = "Ocurrió un error al conectarse con los servicios de cambio de nombre. Notifique el error a un administrador.";
                return(Json(operationResult));
            }
        }