public async Task <ActionResult> Deletepop(int id) { CategoriasController controlCategoria = new CategoriasController(db, userManager); ConfiguracionsController controlConfiguracion = new ConfiguracionsController(db, userManager); Nota nota = await db.Nota.FindAsync(id); Categoria categoria = await controlCategoria.getFromId(nota.Categoria.id); var userFull = await userManager.FindByEmailAsync(User.Identity.Name); var notasE = User.HasClaim(c => (c.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/Nota.Editar" && c.Value == "1")); var super = User.HasClaim(c => (c.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/Super" && c.Value == "1")); ViewBag.editar = controlConfiguracion.Editable(userFull.IDDependencia, categoria, notasE, super); ViewBag.visible = true; ViewBag.configuracion = await controlConfiguracion.Get(); ViewBag.categoria = categoria; ViewBag.userFull = userFull; return(View(nota)); }
public async Task <List <EjecucionCategoria> > GetHijosFromCatIDPerID(int idCat, int idPeriodo) { CategoriasController controlCategoria = new CategoriasController(db, userManager); var categorias = await controlCategoria.getFromCategoria(idCat); List <EjecucionCategoria> respuesta = await GetFromCategorias(categorias, idPeriodo); return(respuesta); }
public async Task <ActionResult> Categoriapop(int categoriaid = 0, string tipo = "", string mensaje = "") { CategoriasController controlCategoria = new CategoriasController(db, userManager); ResponsablesController controlResponsable = new ResponsablesController(db, userManager); ConfiguracionsController controlConfiguracion = new ConfiguracionsController(db, userManager); int ID = Convert.ToInt32(categoriaid); Categoria categoria = await controlCategoria.getFromId(ID); if (User.Identity.Name != null) { var userFull = await userManager.FindByEmailAsync(User.Identity.Name); // obtiene las categorias var idsx = controlResponsable.GetAllIdsFromResponsable(userFull.IDDependencia); var notasE = User.HasClaim(c => (c.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/Nota.Editar" && c.Value == "1")); var super = User.HasClaim(c => (c.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/Super" && c.Value == "1")); ViewBag.tipo = tipo; ViewBag.mensaje = mensaje; ViewBag.editar = controlConfiguracion.Editable(userFull.IDDependencia, categoria, notasE, super); ViewBag.visible = true; ViewBag.configuracion = await controlConfiguracion.Get(); ViewBag.categoria = categoria; ViewBag.userFull = userFull; ViewBag.PermisoResponsable = idsx; } else { Configuracion config = await controlConfiguracion.Get(); ViewBag.tipo = tipo; ViewBag.mensaje = mensaje; ViewBag.editar = false; ViewBag.userFull = false; ViewBag.configuracion = config; ViewBag.visible = config.libre; ViewBag.PermisoResponsable = false; } var notas = await db.Nota.Include(n => n.Categoria).Include(n => n.User).Where(n => n.IdCategoria == ID).OrderByDescending(n => n.FechaCreacion).ToListAsync(); return(View(notas.ToList())); }
public async Task <ActionResult> CategoriaRuta(String numero, String id, String periodo, string alto, string ancho, string titulo, string tipo) { CategoriasController controlCategoria = new CategoriasController(db, userManager); var Numero = Int32.Parse(numero); var IdCategoria = Int32.Parse(id); var IdPeriodo = Int32.Parse(periodo); List <Categoria> Categorias = new List <Categoria>(); Categoria categoria = await controlCategoria.getFromId(IdCategoria); Categorias.Add(categoria); while (categoria.CategoriaPadre != null) { Categorias.Add(categoria.CategoriaPadre); categoria = await controlCategoria.getFromId(categoria.CategoriaPadre.id); } ViewBag.Numero = Numero; ViewBag.alto = alto; ViewBag.ancho = ancho; ViewBag.titulo = titulo; ViewBag.periodo = periodo; Categorias.Reverse(); ViewBag.tipo = tipo; //listado de periodos ViewBag.Periodos = new SelectList(await db.Periodo.Where(n => n.tipo == "periodo" || n.tipo == "subtotal" || n.tipo == "Total").ToListAsync(), "id", "nombre", System.Convert.ToInt32(periodo)); return(View(Categorias)); }
public async Task <ActionResult> CategoriaInfo(String numero, String id, String periodo, string alto, string ancho, string titulo, string tipo) { ConfiguracionsController controlConfiguración = new ConfiguracionsController(db, userManager); CategoriasController controlCategoria = new CategoriasController(db, userManager); IndicadorsController controlIndicador = new IndicadorsController(db, userManager); PeriodosController controlPeriodo = new PeriodosController(db, userManager); Configuracion config = await controlConfiguración.Get(); var Numero = Int32.Parse(numero); var IdCategoria = Int32.Parse(id); var IdPeriodo = Int32.Parse(periodo); Categoria categoria = await controlCategoria.getFromId(IdCategoria); //hijos var hijos = await controlCategoria.getFromCategoria(categoria.id); if (hijos.Count > 0) { ViewBag.nombreHijos = hijos[0].Nivel.nombre; ViewBag.numeroHijos = hijos.Count; } //ponderador if (config.PonderacionTipo == "PonderacionAbsoluta") { PonderacionAbsoluta pond = new PonderacionAbsoluta(db, userManager); categoria.Ponderador = await pond.CategoriaPonderador(categoria.id); //80 } //indicadores var indi = await controlIndicador.getFromCategoria(categoria.id); var indicadores = indi.Where(n => n.ponderador > 0); if (indicadores.Count() > 0) { ViewBag.numeroIndicadores = indicadores.Count(); } else { ViewBag.numeroIndicadores = await controlCategoria.NumeroIndicadores(categoria.id); //81 } //numero de indicadores en cada evaluacion del último periodo reportado if (IdPeriodo != 0) { // var LastPeriodoReport = COntrolPeriodos.UltimoPeriodoRepFromSubtotal(IdPeriodo); ViewBag.periodo = await controlPeriodo.GetFromId(IdPeriodo); var periodoSubtotal = await controlPeriodo.GetSubtotalFromPeriodo(IdPeriodo); if (periodoSubtotal > 0) { ViewBag.periodoSubtotal = await db.Periodo.FindAsync(periodoSubtotal); } } ViewBag.Numero = Numero; ViewBag.alto = alto; ViewBag.ancho = ancho; ViewBag.titulo = titulo; //ViewBag.periodo = periodo; ViewBag.tipo = tipo; return(View(categoria)); }
public async Task <ActionResult> Basic(string tperiodo = "", int id = 0) { var hijos = "Cumplimiento desagregado"; PeriodosController controlPeriodo = new PeriodosController(db, userManager); CategoriasController controlCategoria = new CategoriasController(db, userManager); NivelsController controlNivel = new NivelsController(db, userManager); List <Widget> Widgets = new List <Widget>(); int Periodo = 0; //obtiene el periopdo por defecto si no se define 1 if (tperiodo == "" || tperiodo == null) { var pertemp = await controlPeriodo.GetLastSubtotalEnabled(); if (pertemp == null) { return(RedirectToAction("Index", "Main")); } Periodo = pertemp.id; } else { Periodo = Int32.Parse(tperiodo); } // obtener la categoria principal si no se define 1 if (id == 0) { Categoria categoria = await controlCategoria.getMain(); if (categoria != null) { id = categoria.id; var nivel = categoria.Nivel.numero + 1; var nivelH = await controlNivel.getFromNumero(nivel); if (nivelH != null) { hijos = "Cumplimiento acumulado por " + nivelH.nombre; } } } else { Categoria categoria = await controlCategoria.getFromId(id); if (categoria != null) { var nivel = categoria.Nivel.numero + 1; var nivelH = await controlNivel.getFromNumero(nivel); if (nivelH != null) { hijos = "Cumplimiento acumulado por " + nivelH.nombre; } } } Widget widget0 = new Widget(); widget0.Ancho = "12"; widget0.Alto = "fit-content"; widget0.Name = "CategoriaRuta"; Widgets.Add(widget0); Widget widget = new Widget(); widget.Ancho = "4"; widget.Alto = "calc(45% - 37px)"; widget.Name = "CategoriaGaugaje"; widget.Titulo = "Cumplimiento anual acumulado"; Widgets.Add(widget); Widget widget2 = new Widget(); widget2.Ancho = "8"; widget2.Alto = "calc(45% - 37px)"; widget2.Name = "CategoriaTrimestral"; // widget2.Titulo = "Histórico Anual"; widget2.Tipo = "default"; Widgets.Add(widget2); Widget widget3 = new Widget(); widget3.Ancho = "4"; widget3.Alto = "55%"; widget3.Name = "CategoriaInfo"; widget3.Titulo = "Información"; Widgets.Add(widget3); Widget widget4 = new Widget(); widget4.Ancho = "8"; widget4.Alto = "55%"; //widget4.Name = "IndicadoresCategoria"; widget4.Name = "CategoriaHijosEstadoBarras"; widget4.Titulo = hijos; Widgets.Add(widget4); ViewBag.IdCategoria = id; ViewBag.Periodo = Periodo; ViewBag.Widgets = Widgets; return(View()); }