public async Task <HttpResponseMessage> EditaConductor(InsertaActualizaConductorRequest pRequest) { var respuesta = new Respuesta { }; var strMetodo = "WSViajes - EditaConductor "; string sid = Guid.NewGuid().ToString(); try { if (pRequest == null) { respuesta.Mensaje = "No se recibió usuario."; } else if (String.IsNullOrEmpty(pRequest.IdPersona.ToString()) || pRequest.IdPersona == 0) { respuesta.Mensaje = "El elemento <<IdPersona>> no puede estar vacío."; } else if (String.IsNullOrEmpty(pRequest.Nombre)) { respuesta.Mensaje = "El elemento <<Nombre>> no puede estar vacío."; } //else if (String.IsNullOrEmpty(pRequest.ApePaterno)) // respuesta.Mensaje = "El elemento <<ApePaterno>> no puede estar vacío."; else if (String.IsNullOrEmpty(pRequest.Telefono)) { respuesta.Mensaje = "El elemento <<Telefono>> no puede estar vacío."; } //else if (String.IsNullOrEmpty(pRequest.Fotografia)) // respuesta.Mensaje = "El elemento <<Fotografia>> no puede estar vacío."; else if (String.IsNullOrEmpty(pRequest.Email)) { respuesta.Mensaje = "El elemento <<Email>> no puede estar vacío."; } else { var conductorActual = await new ConductorNegocio().ConsultarPorId(pRequest.IdPersona); if (conductorActual != null) { if (!String.IsNullOrEmpty(pRequest.Fotografia)) { Funciones.deleteExistingFile(conductorActual.Fotografia); var extension = Funciones.getExtensionImagenBasae64(pRequest.Fotografia); var rutaImagen = Funciones.uploadImagen(pRequest.Fotografia, System.Web.Hosting.HostingEnvironment.MapPath($"~/Assets"), System.Web.Hosting.HostingEnvironment.MapPath($"~/Assets/Img"), string.Empty, extension, System.Web.Hosting.HostingEnvironment.MapPath($"~/Assets/Img/Personas"), "Assets/Img/Personas/"); pRequest.Fotografia = $"{Url.Content("~/")}{rutaImagen}"; } else { //Sino cambia la imagen desde el sistema deja la misma pRequest.Fotografia = conductorActual.Fotografia; } var objAcceso = new E_ACCESO_PERSONA { Email = pRequest.Email, TipoUsuario = pRequest.TipoUsuario }; //var objPersona = new E_PERSONA { Sexo = pRequest.Sexo, Nombre = pRequest.Nombre, Telefono = pRequest.Telefono, Fotografia = pRequest.Fotografia }; var objDatosConductor = new E_CONDUCTOR { Tipo = pRequest.Tipo, Colonia = pRequest.Colonia, Calle = pRequest.Calle, NoExt = pRequest.NoExt, NoInt = pRequest.NoInt, NoLicencia = pRequest.NoLicencia, NoPlacas = pRequest.NoPlacas }; conductorActual.Sexo = pRequest.Sexo; conductorActual.Nombre = pRequest.Nombre; conductorActual.Telefono = pRequest.Telefono; conductorActual.Fotografia = pRequest.Fotografia; conductorActual.IdPersonaMod = pRequest.IdPersonaMod; conductorActual.Conductor = objDatosConductor; conductorActual.Acceso = objAcceso; var respuestaCreaConductor = new ConductorNegocio().Editar(conductorActual); respuesta.Exito = respuestaCreaConductor.RET_NUMEROERROR >= 0; respuesta.Mensaje = respuestaCreaConductor.RET_VALORDEVUELTO; } else { respuesta.Exito = false; respuesta.Mensaje = "No se ha podido encontrar el conductor solicitado"; } } } catch (ServiceException Ex) { respuesta.CodigoError = Ex.Codigo; respuesta.Mensaje = Ex.Message; } catch (Exception Ex) { string strErrGUI = Guid.NewGuid().ToString(); string strMensaje = "Error Interno del Servicio [GUID: " + strErrGUI + "]."; Log.Error(Ex, "[" + strMetodo + "]" + "[SID:" + sid + "]" + strMensaje); respuesta.CodigoError = 10001; respuesta.Mensaje = "ERROR INTERNO DEL SERVICIO [" + strErrGUI + "]"; } return(Request.CreateResponse(System.Net.HttpStatusCode.OK, respuesta)); }
public HttpResponseMessage AgregarConductor(InsertaActualizaConductorRequest pRequest) { var respuesta = new Respuesta { }; var strMetodo = "WSViajes - AgregarConductor "; string sid = Guid.NewGuid().ToString(); try { if (pRequest == null) { respuesta.Mensaje = "No se recibió usuario."; } else if (String.IsNullOrEmpty(pRequest.Nombre)) { respuesta.Mensaje = "El elemento <<Nombre>> no puede estar vacío."; } //else if (String.IsNullOrEmpty(pRequest.ApePaterno)) // respuesta.Mensaje = "El elemento <<ApePaterno>> no puede estar vacío."; else if (String.IsNullOrEmpty(pRequest.Telefono)) { respuesta.Mensaje = "El elemento <<Telefono>> no puede estar vacío."; } else if (String.IsNullOrEmpty(pRequest.Fotografia)) { respuesta.Mensaje = "El elemento <<Fotografia>> no puede estar vacío."; } else if (String.IsNullOrEmpty(pRequest.Email)) { respuesta.Mensaje = "El elemento <<Email>> no puede estar vacío."; } else { var extension = Funciones.getExtensionImagenBasae64(pRequest.Fotografia); var rutaImagen = Funciones.uploadImagen(pRequest.Fotografia, System.Web.Hosting.HostingEnvironment.MapPath($"~/Assets"), System.Web.Hosting.HostingEnvironment.MapPath($"~/Assets/Img"), string.Empty, extension, System.Web.Hosting.HostingEnvironment.MapPath($"~/Assets/Img/Personas"), "Assets/Img/Personas/"); if (!string.IsNullOrEmpty(rutaImagen)) { pRequest.Fotografia = $"{Url.Content("~/")}{rutaImagen}"; var clavePassword = Guid.NewGuid().ToString(); var objAcceso = new E_ACCESO_PERSONA { Email = pRequest.Email, Password = "", TipoUsuario = pRequest.TipoUsuario, ClavePassword = clavePassword }; var objPersona = new E_PERSONA { Sexo = pRequest.Sexo, Nombre = pRequest.Nombre, Telefono = pRequest.Telefono, Fotografia = pRequest.Fotografia }; var objDatosConductor = new E_CONDUCTOR { Tipo = pRequest.Tipo, Colonia = pRequest.Colonia, Calle = pRequest.Calle, NoExt = pRequest.NoExt, NoInt = pRequest.NoInt, NoLicencia = pRequest.NoLicencia, NoPlacas = pRequest.NoPlacas }; var respuestaCreaConductor = new ConductorNegocio().Agregar(objPersona, objAcceso, objDatosConductor); if (respuestaCreaConductor.RET_NUMEROERROR >= 0) { //var creaClienteOpen = new OpenPayFunctions().CreateCustomer(pInsertaPersonaRequest.Nombre, "", pInsertaPersonaRequest.Email); //var personaRecienCreada = await new AccesoNegocio().ConsultaPorCorreo(pInsertaPersonaRequest.Email.Trim()); //new PersonaNegocio().AgregarClienteOpenPay(personaRecienCreada.IdPersona, creaClienteOpen.Id); new Mailer().Send(pRequest.Email, "Bienvenido a nuestra plataforma FASTRUN", string.Format("Te damos la bienvenida a nuestra plataforma. Ingresa a la siguiente liga para crear tu contraseña y empezar a utilizar tu cuenta: <a href=\"{0}{1}{2}/{3}\">{0}{1}{2}/{3}</a> <br/> <b>¡¡Ha empezar a entregar!!</b><br/><br/><p>Saludos del equipo FastRun.</p>", ConfigurationManager.AppSettings["URL_FRONT"], ConfigurationManager.AppSettings["URL_CAMBIO_PASSWORD"], respuestaCreaConductor.RET_ID_PERSONA, clavePassword), pRequest.Nombre); } respuesta.Exito = respuestaCreaConductor.RET_NUMEROERROR >= 0; respuesta.Mensaje = respuestaCreaConductor.RET_VALORDEVUELTO; } else { respuesta.CodigoError = -3000; respuesta.Mensaje = "No se pudo crear la imagen, intente más tarde"; } } } catch (ServiceException Ex) { respuesta.CodigoError = Ex.Codigo; respuesta.Mensaje = Ex.Message; } catch (Exception Ex) { string strErrGUI = Guid.NewGuid().ToString(); string strMensaje = "Error Interno del Servicio [GUID: " + strErrGUI + "]."; Log.Error(Ex, "[" + strMetodo + "]" + "[SID:" + sid + "]" + strMensaje); respuesta.CodigoError = 10001; respuesta.Mensaje = "ERROR INTERNO DEL SERVICIO [" + strErrGUI + "]"; } return(Request.CreateResponse(System.Net.HttpStatusCode.OK, respuesta)); }