/// <summary>
        /// Método para consultar agregar conductores
        /// <param name="Entidad">Datos generales del conductor a agregar</param>
        /// <param name="pDatosAcceso">Datos de acceso de conductor</param>
        /// <param name="pDatosExtras">Datos adicionales de conductor</param>
        /// <returns> Objeto tipo E_MENSAJE con el resultado de la operación </returns>
        /// </summary>
        public E_MENSAJE Agregar(E_PERSONA pPersona, E_ACCESO_PERSONA pAcceso, E_CONDUCTOR pDatosExtras)
        {
            try
            {
                using (context = new ViajesEntities())
                {
                    ObjectParameter RET_ID_PERSONA    = new ObjectParameter("RET_ID_PERSONA", typeof(string));
                    ObjectParameter RET_NUMEROERROR   = new ObjectParameter("RET_NUMEROERROR", typeof(string));
                    ObjectParameter RET_MENSAJEERROR  = new ObjectParameter("RET_MENSAJEERROR", typeof(string));
                    ObjectParameter RET_VALORDEVUELTO = new ObjectParameter("RET_VALORDEVUELTO", typeof(string));


                    context.SP_PERSONA(pPersona.IdPersona, pPersona.Nombre, pPersona.Telefono, pPersona.Fotografia,
                                       pAcceso.Email, pAcceso.Password, pAcceso.TipoUsuario, pAcceso.TokenFirebase, pPersona.Sexo,
                                       pDatosExtras.Colonia, pDatosExtras.Calle, pDatosExtras.NoExt, pDatosExtras.NoInt, pDatosExtras.NoLicencia, pDatosExtras.NoPlacas, pDatosExtras.Tipo,
                                       pAcceso.ClavePassword, "I", pPersona.IdPersonaMod, RET_ID_PERSONA, RET_NUMEROERROR, RET_MENSAJEERROR, RET_VALORDEVUELTO);

                    E_MENSAJE vMensaje = new E_MENSAJE {
                        RET_ID_PERSONA = int.Parse(RET_ID_PERSONA.Value.ToString()), RET_NUMEROERROR = int.Parse(RET_NUMEROERROR.Value.ToString()), RET_MENSAJEERROR = RET_MENSAJEERROR.Value.ToString(), RET_VALORDEVUELTO = RET_VALORDEVUELTO.Value.ToString()
                    };
                    return(vMensaje);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #2
0
 /// <summary>
 /// Método para consultar agregar conductores
 /// <param name="Entidad">Datos generales del conductor a agregar</param>
 /// <param name="pDatosAcceso">Datos de acceso de conductor</param>
 /// <param name="pDatosExtras">Datos adicionales de conductor</param>
 /// <returns> Objeto tipo E_MENSAJE con el resultado de la operación </returns>
 /// </summary>
 public E_MENSAJE Agregar(E_PERSONA Entidad, E_ACCESO_PERSONA pDatosAcceso, E_CONDUCTOR pDatosExtras)
 {
     try
     {
         ConductorOperaciones pDatos = new ConductorOperaciones();
         return(pDatos.Agregar(Entidad, pDatosAcceso, pDatosExtras));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Пример #3
0
        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));
        }
Пример #4
0
        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));
        }