public async Task <Response> IngresarInduccionEmpleado([FromBody] Induccion induccion) { try { if (!ModelState.IsValid) { return(new Response { IsSuccess = false, Message = "" }); } var respuesta = ExisteInduccion(induccion); if (!respuesta.IsSuccess) { db.Induccion.Add(induccion); await db.SaveChangesAsync(); return(new Response { IsSuccess = true, Message = Mensaje.Satisfactorio }); } return(new Response { IsSuccess = false, Message = Mensaje.ExisteRegistro }); } catch (Exception ex) { await GuardarLogService.SaveLogEntry(new LogEntryTranfer { ApplicationName = Convert.ToString(Aplicacion.SwTH), ExceptionTrace = ex.Message, Message = Mensaje.Excepcion, LogCategoryParametre = Convert.ToString(LogCategoryParameter.Critical), LogLevelShortName = Convert.ToString(LogLevelParameter.ERR), UserName = "", }); return(new Response { IsSuccess = false, Message = Mensaje.Error, }); } }
private Response ExisteInduccion(Induccion induccion) { var bdd = induccion.IdEmpleado; var Induccionrespuesta = db.Induccion.Where(p => p.IdEmpleado == bdd).FirstOrDefault(); if (Induccionrespuesta != null) { return(new Response { IsSuccess = true, Message = Mensaje.ExisteRegistro, Resultado = null, }); } return(new Response { IsSuccess = false, Resultado = Induccionrespuesta, }); }
public async Task <IActionResult> IngresarInduccion() { Response response = new Response(); try { var claim = HttpContext.User.Identities.Where(x => x.NameClaimType == ClaimTypes.Name).FirstOrDefault(); if (claim.IsAuthenticated == true) { var NombreUsuario = claim.Claims.Where(c => c.Type == ClaimTypes.Name).FirstOrDefault().Value; var empleadoJson = ObtenerEmpleadoLogueado(NombreUsuario); var induccionEmpleado = new Induccion { IdEmpleado = empleadoJson.Result.IdEmpleado, Fecha = DateTime.Now.Date }; response = await apiServicio.InsertarAsync(induccionEmpleado, new Uri(WebApp.BaseAddress), "api/MaterialesInduccion/IngresarInduccionEmpleado"); // Aqui debo redirigir a la pagina donde se aloja el certificado return(RedirectToAction("ListarMaterialesInduccion")); } else { return(RedirectToAction("Login", "Login")); } } catch (Exception ex) { return(BadRequest()); } }
public async Task <Response> ListarMaterialesInduccion([FromBody] Induccion induccion) { try { var induccionRealizada = await db.Induccion.Where(y => y.IdEmpleado == induccion.IdEmpleado).ToListAsync(); if (induccionRealizada.Count > 0) { // Si existe registro de inducción realizada por ese empleado return(new Response { IsSuccess = true }); } else { // Si no existe registro de inducción realizada por ese empleado var lista = await db.MaterialInduccion.OrderBy(x => x.Titulo).ToListAsync(); return(new Response { IsSuccess = false, Resultado = lista }); } } catch (Exception ex) { return(new Response { IsSuccess = false, Message = Mensaje.Excepcion }); } }
public async Task <IActionResult> ListarMaterialesInduccion() { var lista = new List <MaterialInduccion>(); var imagenes = new List <MaterialInduccion>(); var documentos = new List <MaterialInduccion>(); var videos = new List <MaterialInduccion>(); try { var claim = HttpContext.User.Identities.Where(x => x.NameClaimType == ClaimTypes.Name).FirstOrDefault(); if (claim.IsAuthenticated == true) { var NombreUsuario = claim.Claims.Where(c => c.Type == ClaimTypes.Name).FirstOrDefault().Value; var empleadoJson = ObtenerEmpleadoLogueado(NombreUsuario); var induccionEmpleado = new Induccion { IdEmpleado = empleadoJson.Result.IdEmpleado }; Response response = await apiServicio.ObtenerElementoAsync(induccionEmpleado, new Uri(WebApp.BaseAddress) , "api/MaterialesInduccion/ListarMaterialesInduccion"); if (response.IsSuccess) { return(RedirectToAction("Certificado")); } else if (String.IsNullOrEmpty(response.Message) == true) { lista = JsonConvert.DeserializeObject <List <MaterialInduccion> >(response.Resultado.ToString()); foreach (var item in lista) { var ext = Path.GetExtension(item.Url); if (ext == ".jpeg" || ext == ".bmp" || ext == ".jpe" || ext == ".jpg" || ext == ".gif") { imagenes.Add(item); } else if (ext == ".pdf" || ext == ".xlsx" || ext == ".xls" || ext == ".docx" || ext == ".doc" || ext == ".pptx" || ext == ".ppt" || ext == "ppsx" || ext == "pps") { documentos.Add(item); } else { item.Url = item.Url.Replace("watch?v=", "embed/"); videos.Add(item); } } var ViewModelInduccion = new ViewModelInduccion { Imagenes = imagenes, Archivos = documentos, Videos = videos }; return(View(ViewModelInduccion)); } else { return(RedirectToAction("Error", response.Message)); } } else { return(RedirectToAction("Login", "Login")); } } catch (Exception ex) { return(BadRequest()); } }