public async Task <JsonResult> ListaRutas(int IdVendedor, DateTime fecha) { var lista = new RutasVisitasRequest(); VendedorRequest vendedorRequest = new VendedorRequest(); vendedorRequest.FechaRuta = fecha; int idEmpresaInt = 0; try { ApplicationDbContext db = new ApplicationDbContext(); var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); // obtener el idEmpresa var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; // convertir el idEmpresa a int idEmpresaInt = Convert.ToInt32(idEmpresa); //** agregar el idEmpresa al vendedorRequest ** vendedorRequest.idEmpresa = idEmpresaInt; //** agregar el idVendedor al vendedorRequest ** vendedorRequest.IdVendedor = IdVendedor; lista = await ApiServicio.ObtenerElementoAsync1 <RutasVisitasRequest>(vendedorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/ListarRutaVendedores"); return(Json(lista)); } catch (Exception ex) { return(Json(false)); } }
public async Task <JsonResult> ClienteVendor(string idVendedor) { var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; var empresaActual = new EmpresaActual { IdEmpresa = Convert.ToInt32(idEmpresa) }; var user = new SupervisorRequest { IdVendedor = Convert.ToUInt16(idVendedor), IdEmpresa = empresaActual.IdEmpresa }; try { var respusta = await ApiServicio.ObtenerElementoAsync1 <VendedorRequest>(user, new Uri(WebApp.BaseAddress) , "api/Vendedores/ListarClientesPorVendedor"); //var a = respusta.ListaClientes.ToString(); var listaSalida = JsonConvert.DeserializeObject <List <ClienteRequest> >(JsonConvert.SerializeObject(respusta.ListaClientes).ToString()); return(Json(listaSalida)); } catch (Exception ex) { return(Json(false)); } }
public async Task <ActionResult> MapaCalor() { //bUSCA LA EMPRESA var idEmpresaInt = 0; try { var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; idEmpresaInt = Convert.ToInt32(idEmpresa); } catch (Exception ex) { InicializarMensaje(Mensaje.ErrorIdEmpresa); return(View()); } //FIN MapaCalorRequest mapacalor = new MapaCalorRequest(); mapacalor.IdEmpresa = idEmpresaInt; var lista = await ApiServicio.ObtenerElementoAsync1 <MapaCalorRequest>(mapacalor, new Uri(WebApp.BaseAddress) , "api/MapaCalor/ObtenerTipoClienteTipoCompromisoPorEmpresa"); ViewBag.idTipoCliente = new SelectList(lista.ListaTipoCliente, "idTipoCliente", "Tipo"); ViewBag.IdTipoCompromiso = new SelectList(lista.ListaTipoCompromiso, "IdTipoCompromiso", "Descripcion"); return(View()); }
public async Task <ActionResult> VerVendedoresTiempoReal(int?id, string mensaje) { InicializarMensaje(mensaje); if (id != null) { var vendedor = new VendedorRequest { IdVendedor = Convert.ToInt32(id) }; var vendedorRequest = await ApiServicio.ObtenerElementoAsync1 <Response>(vendedor, new Uri(WebApp.BaseAddress) , "api/Vendedores/ObtenerVendedor"); if (vendedorRequest.IsSuccess) { var vistaVendedor = JsonConvert.DeserializeObject <VendedorRequest>(vendedorRequest.Resultado.ToString()); var foto = string.IsNullOrEmpty(vistaVendedor.Foto) != true?vistaVendedor.Foto.Replace("~", WebApp.BaseAddress) : ""; vistaVendedor.Foto = foto; return(View(vistaVendedor)); } return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); }
public async Task <ActionResult> Edit(int id) { if (id <= 0) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var agente = new Agente { AgenteId = id }; var agenteRequest = await ApiServicio.ObtenerElementoAsync1 <Response>(agente, new Uri(WebApp.BaseAddress), "api/Agentes/GetAgente"); if (!agenteRequest.IsSuccess) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var result = JsonConvert.DeserializeObject <Agente>(agenteRequest.Result.ToString()); ViewBag.SectorId = new SelectList(await obtenerSectoresPorEmpresa(), "SectorId", "NombreSector", result.SectorId); return(View(result)); }
public async Task <ActionResult> PerfilCliente(int?id) { if (id == null) { RedirectToAction("Index"); } ; var cliente = new ClienteRequest { IdCliente = Convert.ToInt32(id), }; var respuesta = await ApiServicio.ObtenerElementoAsync1 <Response>(cliente, new Uri(WebApp.BaseAddress) , "api/Clientes/ObtenerCliente"); var clienteRequest = JsonConvert.DeserializeObject <ClienteRequest>(respuesta.Resultado.ToString()); var foto = string.IsNullOrEmpty(clienteRequest.Foto) != true?clienteRequest.Foto.Replace("~", WebApp.BaseAddress) : ""; clienteRequest.Foto = foto; var firma = string.IsNullOrEmpty(clienteRequest.Firma) != true?clienteRequest.Firma.Replace("~", WebApp.BaseAddress) : "";; clienteRequest.Firma = firma; var estadisticoVendedorRequest = await ApiServicio.ObtenerElementoAsync1 <EstadisticosClienteRequest>(clienteRequest, new Uri(WebApp.BaseAddress), "api/Clientes/VerEstadisticosCliente"); clienteRequest.EstadisticosClienteRequest = estadisticoVendedorRequest; return(View(clienteRequest)); }
public async Task <JsonResult> ListaClientes() { var lista = new List <ClienteRequest>(); SupervisorRequest supervisorRequest = new SupervisorRequest(); VendedorRequest vendedorRequest = new VendedorRequest(); int idEmpresaInt = 0;; try { ApplicationDbContext db = new ApplicationDbContext(); var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); // obtener el idEmpresa var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; // convertir el idEmpresa a int idEmpresaInt = Convert.ToInt32(idEmpresa); //** agregar el idEmpresa al vendedorRequest ** vendedorRequest.idEmpresa = idEmpresaInt; var idUsuarioActual = User.Identity.GetUserId(); supervisorRequest.IdUsuario = idUsuarioActual; supervisorRequest.IdEmpresa = idEmpresaInt; if (userManager.IsInRole(idUsuarioActual, "Supervisor")) { // obtener el Id del supervisor Response response = await ApiServicio.InsertarAsync(supervisorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/obtenerSupervisorPorIdUsuario"); supervisorRequest = JsonConvert.DeserializeObject <SupervisorRequest>(response.Resultado.ToString()); //** agregar el id del supervisor al vendedorRequest ** vendedorRequest.IdSupervisor = supervisorRequest.IdSupervisor; } lista = await ApiServicio.ObtenerElementoAsync1 <List <ClienteRequest> >(vendedorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/ListarClientesPorSupervisor"); return(Json(lista)); } catch (Exception ex) { return(Json(false)); } }
public async Task <ActionResult> PerfilVendedor(string mensaje, int idVendedor) { SupervisorRequest supervisorRequest = new SupervisorRequest(); VendedorRequest vendedor = new VendedorRequest(); vendedor.IdVendedor = idVendedor; int idEmpresaInt = 0; try { var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; idEmpresaInt = Convert.ToInt32(idEmpresa); vendedor.idEmpresa = idEmpresaInt; } catch (Exception ex) { InicializarMensaje(Mensaje.ErrorIdEmpresa); } InicializarMensaje("PerfilVendedor"); try { vendedor = await ApiServicio.ObtenerElementoAsync1 <VendedorRequest>(vendedor, new Uri(WebApp.BaseAddress), "api/Vendedores/ListarClientesPorVendedor"); var estadisticoVendedorRequest = await ApiServicio.ObtenerElementoAsync1 <EstadisticoVendedorRequest>(vendedor, new Uri(WebApp.BaseAddress), "api/Agendas/VerEstadisticosVendedor"); vendedor.estadisticoVendedorRequest = estadisticoVendedorRequest; var foto = string.IsNullOrEmpty(vendedor.Foto) != true?vendedor.Foto.Replace("~", WebApp.BaseAddress) : ""; vendedor.Foto = foto; InicializarMensaje(""); return(View(vendedor)); } catch { InicializarMensaje(Mensaje.Excepcion); return(View(vendedor)); } }
public async Task <ActionResult> IntroducirCodigo(RecuperarContrasenaRequest recuperarContrasenaRequest) { var response = await ApiServicio.ObtenerElementoAsync1 <Response>(recuperarContrasenaRequest, new Uri(WebApp.BaseAddress) , "api/Usuarios/VerificarCodigo"); if (response.IsSuccess) { return(RedirectToAction("IngresarContrasena", new { recuperarContrasenaRequest.Email })); } ModelState.AddModelError("", "El código no es correcto"); return(View(recuperarContrasenaRequest)); }
public async Task <ActionResult> Compromisos(SupervisorRequest supervisorRequest) { //bUSCA LA EMPRESA var idEmpresaInt = 0; try { var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; idEmpresaInt = Convert.ToInt32(idEmpresa); } catch (Exception ex) { InicializarMensaje(Mensaje.ErrorIdEmpresa); return(View()); } //FIN SupervisorRequest supervisorRequest1 = new SupervisorRequest(); ApplicationDbContext db = new ApplicationDbContext(); var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var idUsuarioActual = User.Identity.GetUserId(); supervisorRequest1.IdUsuario = idUsuarioActual; supervisorRequest1.IdEmpresa = idEmpresaInt; if (userManager.IsInRole(idUsuarioActual, "Supervisor")) { Response response = await ApiServicio.InsertarAsync(supervisorRequest1, new Uri(WebApp.BaseAddress), "api/Vendedores/obtenerSupervisorPorIdUsuario"); supervisorRequest1 = JsonConvert.DeserializeObject <SupervisorRequest>(response.Resultado.ToString()); supervisorRequest.IdSupervisor = supervisorRequest1.IdSupervisor; var lista = await ApiServicio.ObtenerElementoAsync1 <SupervisorRequest>(supervisorRequest, new Uri(WebApp.BaseAddress) , "api/Vista/ListarVisitas"); supervisorRequest.Listarcompromiso = lista.Listarcompromiso; var listavendedor = await ApiServicio.ObtenerElementoAsync1 <SupervisorRequest>(supervisorRequest, new Uri(WebApp.BaseAddress) , "api/Vendedores/ListarVendedoresGerente"); ViewBag.IdVendedor = new SelectList(listavendedor.ListaVendedores, "IdVendedor", "NombreApellido"); supervisorRequest.ListaVendedores = listavendedor.ListaVendedores; return(View(supervisorRequest)); } return(View()); }
public async static Task <bool> ValidateUser(LoginRequest login) { var response = await ApiServicio.ObtenerElementoAsync1 <Response>(login, new Uri(WebApp.BaseAddress), "api/Administradores/Login"); if (!response.IsSuccess) { return(false); } var usuario = JsonConvert.DeserializeObject <Administrador>(response.Result.ToString()); new UsuarioMembership(usuario); return(true); }
public async static Task <Administrador> GetUser(Administrador administrador) { var user = new UsuarioMembership(); var response = await ApiServicio.ObtenerElementoAsync1 <Response>(administrador, new Uri(WebApp.BaseAddress), "api/Administradores/GetUserAdmin"); if (!response.IsSuccess) { return(null); } var usuario = JsonConvert.DeserializeObject <Administrador>(response.Result.ToString()); return(usuario); }
public async Task <ActionResult> Activar(int id, int idEstado) { var cliente = new ClienteRequest { IdCliente = id }; var response = await ApiServicio.ObtenerElementoAsync1 <Response>(cliente, new Uri(WebApp.BaseAddress) , "api/Clientes/ActivarCliente"); if (response.IsSuccess) { return(RedirectToAction("Index", new { idEstado })); } return(null); }
public async Task <JsonResult> ListarTipoCliente() { try { MapaCalorRequest mapacalor = new MapaCalorRequest(); var respusta = await ApiServicio.ObtenerElementoAsync1 <MapaCalorRequest>(mapacalor, new Uri(WebApp.BaseAddress) , "api/MapaCalor/ListarTipoCliente"); //var a = respusta.ListaClientes.ToString(); var listaSalida = JsonConvert.DeserializeObject <List <ClienteRequest> >(JsonConvert.SerializeObject(respusta.ListaClientes).ToString()); return(Json(listaSalida)); } catch (Exception ex) { return(Json(false)); } }
public async Task <ActionResult> RecuperarContrasena(RecuperarContrasenaRequest recuperarContrasenaRequest) { if (string.IsNullOrEmpty(recuperarContrasenaRequest.Email)) { ModelState.AddModelError("", "Debe introducir el correo electrónico"); } var response = await ApiServicio.ObtenerElementoAsync1 <Response>(recuperarContrasenaRequest, new Uri(WebApp.BaseAddress) , "api/Usuarios/GenerarCodigo"); if (response.IsSuccess) { return(RedirectToAction("IntroducirCodigo", new { recuperarContrasenaRequest.Email })); } ModelState.AddModelError("Email", "El correo electrónico no está registrado"); return(View()); }
public async Task <ActionResult> Estadisticas() { try { InicializarMensaje(""); SupervisorRequest supervisorRequest = new SupervisorRequest(); int idEmpresaInt = 0; var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; idEmpresaInt = Convert.ToInt32(idEmpresa); supervisorRequest.IdEmpresa = idEmpresaInt; ApplicationDbContext db = new ApplicationDbContext(); Response response = new Response(); var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var idUsuarioActual = User.Identity.GetUserId(); supervisorRequest.IdUsuario = idUsuarioActual; supervisorRequest.IdEmpresa = idEmpresaInt; //metodo buscar supervisor response = await ApiServicio.ObtenerElementoAsync(supervisorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/obtenerSupervisorPorIdUsuario"); supervisorRequest = JsonConvert.DeserializeObject <SupervisorRequest>(response.Resultado.ToString()); supervisorRequest.IdSupervisor = supervisorRequest.IdSupervisor; var estadisticoVendedorRequest = await ApiServicio.ObtenerElementoAsync1 <EstadisticoSupervisorRequest>(supervisorRequest, new Uri(WebApp.BaseAddress), "api/Compromiso/VerEstadisticosPorSupervisor"); supervisorRequest.estadisticoSupervisorRequest = estadisticoVendedorRequest; return(View(supervisorRequest)); } catch { InicializarMensaje(Mensaje.Excepcion); return(View()); } }
public async Task <ActionResult> Edit(int id) { var vendedor = new Vendedor { VendedorId = id }; var vendedorRequest = await ApiServicio.ObtenerElementoAsync1 <Response>(vendedor, new Uri(WebApp.BaseAddress), "api/Vendedors/GetVendedor"); if (!vendedorRequest.IsSuccess) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var result = JsonConvert.DeserializeObject <Vendedor>(vendedorRequest.Result.ToString()); return(View(result)); }
public async Task <ActionResult> Estadisticas() { try { InicializarMensaje(""); SupervisorRequest supervisor = new SupervisorRequest(); var estadisticoVendedorRequest = await ApiServicio.ObtenerElementoAsync1 <EstadisticoSupervisorRequest>(supervisor, new Uri(WebApp.BaseAddress), "api/Compromiso/VerEstadisticos"); supervisor.estadisticoSupervisorRequest = estadisticoVendedorRequest; return(View(supervisor)); } catch { InicializarMensaje(Mensaje.Excepcion); return(View()); } }
public async Task <ClaimsIdentity> GenerateUserIdentityAsync(UserManager <ApplicationUser> manager) { // Tenga en cuenta que el valor de authenticationType debe coincidir con el definido en CookieAuthenticationOptions.AuthenticationType var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie); var userRequest = new UserRequest { Id = userIdentity.GetUserId() }; var response = await ApiServicio.ObtenerElementoAsync1 <Response>(userRequest, new Uri(WebApp.BaseAddress) , "api/Empresa/ObtenerEmpresaPorCliente"); if (response.IsSuccess) { var empresa = JsonConvert.DeserializeObject <AspNetUsers>(response.Resultado.ToString()); userIdentity.AddClaim(new Claim(Constantes.Empresa, Convert.ToString(empresa.IdEmpresa))); } return(userIdentity); }
public async Task <ActionResult> Edit(int id) { var clienteRequests = new ClienteRequest { IdCliente = id }; var response = await ApiServicio.ObtenerElementoAsync1 <Response>(clienteRequests, new Uri(WebApp.BaseAddress) , "api/Clientes/ObtenerCliente"); if (response.IsSuccess) { var cliente = JsonConvert.DeserializeObject <ClienteRequest>(response.Resultado.ToString()); await CargarCombos(cliente); cliente.Foto = NormalizarFoto(cliente); cliente.Firma = NormalizarFirma(cliente); return(View(cliente)); } return(View()); }
public async Task <ActionResult> Edit(int id) { if (id <= 0) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var tipoMulta = new TipoMultas { TipoMultaId = id }; var agenteRequest = await ApiServicio.ObtenerElementoAsync1 <Response>(tipoMulta, new Uri(WebApp.BaseAddress), "api/TiposMultas/GetTipoMulta"); if (!agenteRequest.IsSuccess) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var result = JsonConvert.DeserializeObject <TipoMultas>(agenteRequest.Result.ToString()); return(View(result)); }
public async Task <ActionResult> Details(int id) { if (id <= 0) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var sector = new Sector { SectorId = id }; var sectorRequest = await ApiServicio.ObtenerElementoAsync1 <Response>(sector, new Uri(WebApp.BaseAddress), "api/Sectors/GetSector"); if (!sectorRequest.IsSuccess) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var result = JsonConvert.DeserializeObject <Sector>(sectorRequest.Result.ToString()); return(View(result)); }
public async Task <ActionResult> Edit(int id) { if (id <= 0) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var salario = new SalarioBasico { SalarioBasicoId = id }; var salarioRequest = await ApiServicio.ObtenerElementoAsync1 <Response>(salario, new Uri(WebApp.BaseAddress), "api/SalariosBasicos/GetSalarioBasico"); if (!salarioRequest.IsSuccess) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var result = JsonConvert.DeserializeObject <SalarioBasico>(salarioRequest.Result.ToString()); return(View(result)); }
public async Task <ActionResult> Recorrido(int id) { if (id <= 0) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var agente = new Agente { Id = id }; var sectorRequest = await ApiServicio.ObtenerElementoAsync1 <Response>(agente, new Uri(WebApp.BaseAddress), "Simed/api/Agentes/GetAgente"); if (!sectorRequest.IsSuccess) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var result = JsonConvert.DeserializeObject <Agente>(sectorRequest.Result.ToString()); result.Fecha = DateTime.Now; return(View(result)); }
public async Task <ActionResult> Create(HttpPostedFileBase fileUpload, string Latitud, string Longitud, ClienteRequest clienteRequest) { try { var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; var lat = Latitud.Replace(".", ","); var lon = Longitud.Replace(".", ","); clienteRequest.Latitud = Convert.ToDouble(lat); clienteRequest.Longitud = Convert.ToDouble(lon); var cliente = new ClienteRequest { Identificacion = clienteRequest.Identificacion, IdEmpresa = Convert.ToInt32(idEmpresa), }; var respuesta = await ApiServicio.ObtenerElementoAsync1 <Response>(cliente, new Uri(WebApp.BaseAddress) , "api/Clientes/ExisteClientePorEmpresa"); if (respuesta == null) { ModelState.AddModelError("", "Ha ocurrido un error al conectarse al servicio..."); await CargarCombos(); return(View(clienteRequest)); } if (respuesta.IsSuccess == true) { ModelState.AddModelError("Identificacion", "El cliente ya existe..."); await CargarCombos(); clienteRequest.Identificacion = ""; return(View(clienteRequest)); } cliente.Apellido = clienteRequest.Apellido; cliente.Direccion = clienteRequest.Direccion; cliente.Email = clienteRequest.Email; cliente.IdTipoCliente = Convert.ToInt32(clienteRequest.IdTipoCliente); cliente.IdVendedor = Convert.ToInt32(clienteRequest.IdVendedor); cliente.Latitud = Convert.ToDouble(clienteRequest.Latitud); cliente.Longitud = Convert.ToDouble(clienteRequest.Longitud); cliente.Nombre = clienteRequest.Nombre; cliente.Telefono = clienteRequest.Telefono; cliente.TelefonoMovil = clienteRequest.TelefonoMovil; cliente.RazonSocial = clienteRequest.RazonSocial; cliente.Estado = EstadoCliente.Activo; var respuestaInsertar = await ApiServicio.InsertarAsync <Response>(cliente, new Uri(WebApp.BaseAddress) , "api/Clientes/InsertarCliente"); if (respuestaInsertar.IsSuccess) { if (fileUpload != null) { var clienteSalvado = JsonConvert.DeserializeObject <ClienteRequest>(respuestaInsertar.Resultado.ToString()); var fichero = readFileContents(fileUpload); var foto = new ArchivoRequest { Id = Convert.ToString(clienteSalvado.IdCliente), Array = fichero, Tipo = 1 }; var fotoRequest = await ApiServicio.InsertarAsync <Response>(foto, new Uri(WebApp.BaseAddress) , "Api/Archivos/Insertar"); if (fotoRequest.IsSuccess) { var clienteActualizarFoto = new ClienteRequest { IdCliente = clienteSalvado.IdCliente, Foto = fotoRequest.Resultado.ToString(), }; var fotoActualizar = await ApiServicio.InsertarAsync <Response>(clienteActualizarFoto, new Uri(WebApp.BaseAddress) , "api/Clientes/EditarFotoCliente"); if (fotoActualizar.IsSuccess) { return(RedirectToAction("Index", EstadoCliente.Activo)); } } } return(RedirectToAction("Index", EstadoCliente.Activo)); } return(RedirectToAction("Index", EstadoCliente.Activo)); } catch (Exception ex) { throw; } }
public async Task <ActionResult> Edit(string id, SupervisorRequest supervisorRequest) { Response response = new Response(); ApplicationDbContext db = new ApplicationDbContext(); //VALIDA SI EXITE EL CORREO AL CREAR var userManager2 = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var InstanciaUsuario = await userManager2.FindByEmailAsync(supervisorRequest.Correo); if (InstanciaUsuario != null) { var super = new SupervisorRequest { IdSupervisor = Convert.ToInt32(id) }; response = await ApiServicio.ObtenerElementoAsync(super, new Uri(WebApp.BaseAddress), "api/Supervisor/obtenerSupervisor"); var MyUser = JsonConvert.DeserializeObject <SupervisorRequest>(response.Resultado.ToString()); if (MyUser.Correo != supervisorRequest.Correo) { InicializarMensaje(Mensaje.ExisteCorreo); return(View(response.Resultado)); } } //VALIDA SI EXITE LA IDENTIFICACION AL CREAR var ExisteUsuario = await ApiServicio.ObtenerElementoAsync1 <SupervisorRequest>(supervisorRequest, new Uri(WebApp.BaseAddress), "api/Supervisor/BuscarSupervisorPorEmpresaEIdentificacion"); if (ExisteUsuario != null) { var super = new SupervisorRequest { IdSupervisor = Convert.ToInt32(id) }; response = await ApiServicio.ObtenerElementoAsync(super, new Uri(WebApp.BaseAddress), "api/Supervisor/obtenerSupervisor"); var MyUser = JsonConvert.DeserializeObject <SupervisorRequest>(response.Resultado.ToString()); if (MyUser.Identificacion != supervisorRequest.Identificacion) { InicializarMensaje(Mensaje.ExisteIdentificacionUsuario); return(View(response.Resultado)); } } var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var user = db.Users.Find(supervisorRequest.IdUsuario); user.UserName = supervisorRequest.Correo; user.Email = supervisorRequest.Correo; user.Identificacion = supervisorRequest.Identificacion; user.Apellidos = supervisorRequest.Apellidos; user.Nombres = supervisorRequest.Nombres; user.Direccion = supervisorRequest.Direccion; user.Telefono = supervisorRequest.Telefono; var result = await userManager.UpdateAsync(user); db.SaveChanges(); if (result != null) { return(RedirectToAction("Index")); } return(View()); }
public async Task <ActionResult> CalendarioIndex(int idVendedor) { SupervisorRequest supervisorRequest = new SupervisorRequest(); VendedorRequest vendedorRequest = new VendedorRequest(); var lista = new List <VendedorRequest>(); int idEmpresaInt = 0; try { var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; idEmpresaInt = Convert.ToInt32(idEmpresa); vendedorRequest.idEmpresa = idEmpresaInt; vendedorRequest.IdVendedor = idVendedor; } catch (Exception ex) { InicializarMensaje(Mensaje.ErrorIdEmpresa); return(View(lista)); } try { // Obtener supervisor ApplicationDbContext db = new ApplicationDbContext(); var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var idUsuarioActual = User.Identity.GetUserId(); supervisorRequest.IdUsuario = idUsuarioActual; supervisorRequest.IdEmpresa = idEmpresaInt; if (userManager.IsInRole(idUsuarioActual, "Supervisor")) { Response response = await ApiServicio.InsertarAsync(supervisorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/obtenerSupervisorPorIdUsuario"); supervisorRequest = JsonConvert.DeserializeObject <SupervisorRequest>(response.Resultado.ToString()); vendedorRequest.IdSupervisor = supervisorRequest.IdSupervisor; } // Carga de combo lista = await ApiServicio.ObtenerElementoAsync1 <List <VendedorRequest> >(vendedorRequest, new Uri(WebApp.BaseAddress) , "api/Vendedores/ListarVendedoresPorSupervisor"); lista.Add(new VendedorRequest { IdVendedor = 0, NombreApellido = "Seleccione" }); lista = lista.OrderBy(x => x.IdVendedor).ToList(); ViewBag.IdVendedor = new SelectList(lista, "IdVendedor", "NombreApellido"); // Lista de eventos para cargar la agenda var listaEventos = await ApiServicio.ObtenerElementoAsync1 <List <EventoRequest> >(vendedorRequest, new Uri(WebApp.BaseAddress) , "api/Agendas/ListarEventosPorVendedor"); return(View(listaEventos)); } catch (Exception ex) { InicializarMensaje(Mensaje.Excepcion); return(View()); } }
public async Task <ActionResult> EditarVendedor(HttpPostedFileBase fileUpload, VendedorRequest vendedorRequest) { InicializarMensaje(Mensaje.GuardadoSatisfactorio); int idEmpresaInt = 0; try { var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; idEmpresaInt = Convert.ToInt32(idEmpresa); vendedorRequest.idEmpresa = idEmpresaInt; vendedorRequest.TiempoSeguimiento = 5; } catch (Exception ex) { InicializarMensaje(Mensaje.ErrorIdEmpresa); return(View(vendedorRequest)); } if (!ModelState.IsValid) { InicializarMensaje(Mensaje.ModeloInvalido); return(View(vendedorRequest)); } Response response = new Response(); ApplicationDbContext db = new ApplicationDbContext(); using (var transaction = db.Database.BeginTransaction()) { try { var userManager2 = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var InstanciaUsuario = await userManager2.FindByEmailAsync(vendedorRequest.Correo); if (InstanciaUsuario != null && InstanciaUsuario.Id != vendedorRequest.IdUsuario) { InicializarMensaje(Mensaje.ExisteCorreo); return(View(vendedorRequest)); } var ExisteUsuario = await ApiServicio.ObtenerElementoAsync1 <List <VendedorRequest> >(vendedorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/BuscarUsuariosVendedoresPorEmpresaEIdentificacion"); if (ExisteUsuario.Count > 0) { for (int i = 0; i < ExisteUsuario.Count; i++) { if (ExisteUsuario.ElementAt(i).IdUsuario != vendedorRequest.IdUsuario) { InicializarMensaje(Mensaje.ExisteIdentificacionUsuario); return(View(vendedorRequest)); } } } var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); InstanciaUsuario = await userManager.FindByIdAsync(vendedorRequest.IdUsuario); InstanciaUsuario.UserName = vendedorRequest.Correo; InstanciaUsuario.Email = vendedorRequest.Correo; InstanciaUsuario.Identificacion = vendedorRequest.Identificacion; InstanciaUsuario.Nombres = vendedorRequest.Nombres; InstanciaUsuario.Apellidos = vendedorRequest.Apellidos; InstanciaUsuario.Direccion = vendedorRequest.Direccion; InstanciaUsuario.Telefono = vendedorRequest.Telefono; InstanciaUsuario.Estado = 1; InstanciaUsuario.IdEmpresa = idEmpresaInt; db.Entry(InstanciaUsuario).State = EntityState.Modified; await db.SaveChangesAsync(); response = await ApiServicio.InsertarAsync(vendedorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/EditarVendedor"); if (response.IsSuccess) { if (fileUpload != null) { var idVendedor = response.Resultado; var fichero = readFileContents(fileUpload); var foto = new ArchivoRequest { Id = Convert.ToString(vendedorRequest.IdVendedor), Array = fichero, Tipo = 3 }; var fotoRequest = await ApiServicio.InsertarAsync <Response>(foto, new Uri(WebApp.BaseAddress) , "Api/Archivos/Insertar"); if (fotoRequest.IsSuccess) { InstanciaUsuario.Foto = fotoRequest.Resultado.ToString(); db.Entry(InstanciaUsuario).State = EntityState.Modified; await db.SaveChangesAsync(); transaction.Commit(); return(RedirectToAction("VendedorIndex", new { mensaje = response.Message })); } else { transaction.Rollback(); return(RedirectToAction("VendedorIndex", new { mensaje = Mensaje.Error })); } } else { transaction.Commit(); return(RedirectToAction("VendedorIndex", new { mensaje = response.Message })); } } transaction.Rollback(); ViewData["Error"] = response.Message; return(View(vendedorRequest)); } catch (Exception ex) { transaction.Rollback(); ViewData["Error"] = response.Message; return(View(vendedorRequest)); } } }
public async Task <ActionResult> VendedorIndex(string mensaje) { List <VendedorRequest> lista = new List <VendedorRequest>(); VendedorRequest vendedorRequest = new VendedorRequest(); SupervisorRequest supervisorRequest = new SupervisorRequest(); int idEmpresaInt = 0; Response response = new Response(); InicializarMensaje(mensaje); try { var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; idEmpresaInt = Convert.ToInt32(idEmpresa); vendedorRequest.idEmpresa = idEmpresaInt; } catch (Exception ex) { InicializarMensaje(Mensaje.ErrorIdEmpresa); return(View(lista)); } try { ApplicationDbContext db = new ApplicationDbContext(); var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var idUsuarioActual = User.Identity.GetUserId(); supervisorRequest.IdUsuario = idUsuarioActual; supervisorRequest.IdEmpresa = idEmpresaInt; if (userManager.IsInRole(idUsuarioActual, "Supervisor")) { response = await ApiServicio.InsertarAsync(supervisorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/obtenerSupervisorPorIdUsuario"); supervisorRequest = JsonConvert.DeserializeObject <SupervisorRequest>(response.Resultado.ToString()); vendedorRequest.IdSupervisor = supervisorRequest.IdSupervisor; lista = await ApiServicio.ObtenerElementoAsync1 <List <VendedorRequest> >(vendedorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/ListarVendedoresPorSupervisor"); } else //(userManager.IsInRole(idUsuarioActual, "GerenteComercial")) { lista = await ApiServicio.ObtenerElementoAsync1 <List <VendedorRequest> >(vendedorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/ListarVendedores"); } lista.FirstOrDefault().NumeroMenu = 1; return(View(lista)); } catch (Exception ex) { //InicializarMensaje(Mensaje.Excepcion); //lista.FirstOrDefault().NumeroMenu = 1; return(View(lista)); } }
public async Task <ActionResult> CrearVendedor(HttpPostedFileBase fileUpload, VendedorRequest vendedorRequest) { InicializarMensaje(""); int idEmpresaInt = 0; SupervisorRequest supervisorRequest = new SupervisorRequest(); var guardar = false; try { var userWithClaims = (ClaimsPrincipal)User; var idEmpresa = userWithClaims.Claims.First(c => c.Type == Constantes.Empresa).Value; idEmpresaInt = Convert.ToInt32(idEmpresa); vendedorRequest.idEmpresa = idEmpresaInt; vendedorRequest.TiempoSeguimiento = 5; } catch (Exception ex) { InicializarMensaje(Mensaje.ErrorIdEmpresa); return(View(vendedorRequest)); } if (!ModelState.IsValid) { InicializarMensaje(Mensaje.ModeloInvalido); return(View(vendedorRequest)); } ApplicationDbContext db = new ApplicationDbContext(); Response response = new Response(); try { var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var idUsuarioActual = User.Identity.GetUserId(); supervisorRequest.IdUsuario = idUsuarioActual; supervisorRequest.IdEmpresa = idEmpresaInt; if (userManager.IsInRole(idUsuarioActual, "Supervisor")) { response = await ApiServicio.InsertarAsync(supervisorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/obtenerSupervisorPorIdUsuario"); supervisorRequest = JsonConvert.DeserializeObject <SupervisorRequest>(response.Resultado.ToString()); vendedorRequest.IdSupervisor = supervisorRequest.IdSupervisor; guardar = true; } else if (userManager.IsInRole(idUsuarioActual, "GerenteGeneral")) { guardar = true; } if (guardar == false) { InicializarMensaje("No tiene permisos para agregar un nuevo vendedor"); return(View(vendedorRequest)); } var userManager2 = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var InstanciaUsuario = await userManager2.FindByEmailAsync(vendedorRequest.Correo); if (InstanciaUsuario != null) { InicializarMensaje(Mensaje.ExisteCorreo); return(View(vendedorRequest)); } var ExisteUsuario = await ApiServicio.ObtenerElementoAsync1 <List <VendedorRequest> >(vendedorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/BuscarUsuariosVendedoresPorEmpresaEIdentificacion"); if (ExisteUsuario.Count > 0) { InicializarMensaje(Mensaje.ExisteIdentificacionUsuario); return(View(vendedorRequest)); } var user = new ApplicationUser { UserName = vendedorRequest.Correo, Email = vendedorRequest.Correo, Identificacion = vendedorRequest.Identificacion, Nombres = vendedorRequest.Nombres, Apellidos = vendedorRequest.Apellidos, Direccion = vendedorRequest.Direccion, Telefono = vendedorRequest.Telefono, Estado = 1, IdEmpresa = idEmpresaInt }; var result = await userManager.CreateAsync(user, "A123345.1a"); db.SaveChanges(); if (result != null) { InstanciaUsuario = await userManager2.FindByEmailAsync(vendedorRequest.Correo); vendedorRequest.IdUsuario = InstanciaUsuario.Id; userManager.AddToRole(InstanciaUsuario.Id, "Vendedor"); response = await ApiServicio.InsertarAsync(vendedorRequest, new Uri(WebApp.BaseAddress), "api/Vendedores/InsertarVendedor"); if (response.IsSuccess) { if (fileUpload != null) { var idVendedor = response.Resultado; var fichero = readFileContents(fileUpload); var foto = new ArchivoRequest { Id = Convert.ToString(idVendedor), Array = fichero, Tipo = 3 }; var fotoRequest = await ApiServicio.InsertarAsync <Response>(foto, new Uri(WebApp.BaseAddress) , "Api/Archivos/Insertar"); if (fotoRequest.IsSuccess) { user.Foto = fotoRequest.Resultado.ToString(); db.Entry(user).State = EntityState.Modified; await db.SaveChangesAsync(); var recuperarContrasenaRequest0 = new RecuperarContrasenaRequest(); recuperarContrasenaRequest0.Email = user.Email; var response0 = await ApiServicio.ObtenerElementoAsync1 <Response>(recuperarContrasenaRequest0, new Uri(WebApp.BaseAddress) , "api/Usuarios/GenerarCodigo"); return(RedirectToAction("VendedorIndex", new { mensaje = response.Message })); } else { InicializarMensaje(Mensaje.Error); return(View(vendedorRequest)); } } var recuperarContrasenaRequest = new RecuperarContrasenaRequest(); recuperarContrasenaRequest.Email = user.Email; var response2 = await ApiServicio.ObtenerElementoAsync1 <Response>(recuperarContrasenaRequest, new Uri(WebApp.BaseAddress) , "api/Usuarios/GenerarCodigo"); return(RedirectToAction("VendedorIndex", new { mensaje = response.Message })); } } InicializarMensaje("No se ha podido crear un usuario"); return(View(vendedorRequest)); } catch (Exception ex) { ViewData["Error"] = Mensaje.Error; return(View(vendedorRequest)); } }