Ejemplo n.º 1
0
        public ActionResult Delete(int semana)
        {
            List <kpisplaneacion> lista = db.kpisplaneacion.Where(x => x.wk == semana).ToList();

            foreach (var item in lista)
            {
                kpisplaneacion kpi = db.kpisplaneacion.Find(item.id);
                db.kpisplaneacion.Remove(kpi);
                db.SaveChanges();
            }
            return(RedirectToAction("Kpisplaneacion"));
        }
Ejemplo n.º 2
0
        public ActionResult ListaKpis()
        {
            var Draw          = Request.Form.GetValues("draw").FirstOrDefault();
            var Start         = Request.Form.GetValues("start").FirstOrDefault();
            var Length        = Request.Form.GetValues("length").FirstOrDefault();
            var SortColumn    = Request.Form.GetValues("columns[" + Request.Form.GetValues("order[0][column]").FirstOrDefault() + "][data]").FirstOrDefault();
            var SortColumnDir = Request.Form.GetValues("order[0][dir]").FirstOrDefault();

            var Mes         = Request.Form.GetValues("columns[1][search][value]").FirstOrDefault();
            var WK          = Request.Form.GetValues("columns[4][search][value]").FirstOrDefault();
            var Requisicion = Request.Form.GetValues("columns[8][search][value]").FirstOrDefault();

            int PageSize = Length != null?Convert.ToInt32(Length) : 0;

            int Skip = Start != null?Convert.ToInt32(Start) : 0;

            int TotalRecords = 0;

            try
            {
                List <kpisplaneacion> listaKPIS = new List <kpisplaneacion>();

                using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ToString()))
                {
                    con.Open();

                    string sql = "exec [dbo].[SP_KPISPLANEACIONES_PARAMETROSOPCIONALES] @mes, @wk, @requisicion";

                    var query = new SqlCommand(sql, con);

                    if (Mes != "")
                    {
                        query.Parameters.AddWithValue("@mes", Mes);
                    }
                    else
                    {
                        query.Parameters.AddWithValue("@mes", DBNull.Value);
                    }

                    if (Requisicion != "")
                    {
                        query.Parameters.AddWithValue("@requisicion", Requisicion);
                    }
                    else
                    {
                        query.Parameters.AddWithValue("@requisicion", DBNull.Value);
                    }

                    if (WK != "")
                    {
                        query.Parameters.AddWithValue("@wk", WK);
                    }
                    else
                    {
                        query.Parameters.AddWithValue("@wk", DBNull.Value);
                    }

                    using (var dr = query.ExecuteReader())
                    {
                        while (dr.Read())
                        {
                            // facturas
                            var kpis = new kpisplaneacion();

                            kpis.id              = Convert.ToInt32(dr["id"]);
                            kpis.mes             = dr["mes"].ToString();
                            kpis.ano             = dr["ano"].ToString();
                            kpis.fechaembarque   = Convert.ToDateTime(dr["fechaembarque"]);
                            kpis.wk              = Convert.ToInt32(dr["wk"]);
                            kpis.cv              = dr["cv"].ToString();
                            kpis.mo              = dr["mo"].ToString();
                            kpis.subinventario   = dr["subinventario"].ToString();
                            kpis.requisicion     = dr["requisicion"].ToString();
                            kpis.orden           = dr["orden"].ToString();
                            kpis.aplicacion      = dr["aplicacion"].ToString();
                            kpis.fechageneracion = Convert.ToDateTime(dr["fechageneracion"]);
                            kpis.fechaentrega    = Convert.ToDateTime(dr["fechaentrega"]);
                            kpis.tipoembarque    = dr["tipoembarque"].ToString();
                            kpis.status          = dr["status"].ToString();

                            listaKPIS.Add(kpis);
                        }
                    }
                }

                if (!(string.IsNullOrEmpty(SortColumn) && string.IsNullOrEmpty(SortColumnDir)))
                {
                    listaKPIS = listaKPIS.OrderBy(SortColumn + " " + SortColumnDir).ToList();
                }

                TotalRecords = listaKPIS.ToList().Count();
                var NewItems = listaKPIS.Skip(Skip).Take(PageSize == -1 ? TotalRecords : PageSize).ToList();

                return(Json(new { draw = Draw, recordsFiltered = TotalRecords, recordsTotal = TotalRecords, data = NewItems }, JsonRequestBehavior.AllowGet));
            }
            catch (Exception)
            {
                throw;
            }
        }
Ejemplo n.º 3
0
        // GET: kpisplaneacion
        public ActionResult Resumen()
        {
            try
            {
                var kpi = from k in db.kpisplaneacion
                          select new { k.id, status = k.status, mes = k.mes };

                var listakpis = new List <kpisplaneacion>();

                foreach (var item in kpi)
                {
                    kpisplaneacion kpisplaneacion = new kpisplaneacion();
                    kpisplaneacion.id     = item.id;
                    kpisplaneacion.mes    = item.mes;
                    kpisplaneacion.status = item.status;
                    listakpis.Add(kpisplaneacion);
                }

                var kpisAgrupados = from k in listakpis
                                    group k by k.mes into g
                                    select new GourpMeses <string, kpisplaneacion>
                {
                    Key          = g.Key,
                    Values       = g,
                    TotalRecords = g.Count(x => x.status.Contains("OK") || x.status.Contains("Desv")),
                    TotalOks     = g.Count(x => x.status.Contains("OK")),
                    TotalDesv    = g.Count(x => x.status.Contains("Desv"))
                };

                List <kpisplaneacion> lista = new List <kpisplaneacion>();

                foreach (var item in kpisAgrupados)
                {
                    kpisplaneacion kpisplaneacion = new kpisplaneacion();
                    kpisplaneacion.mes       = item.Key;
                    kpisplaneacion.Total     = (int)item.TotalRecords;
                    kpisplaneacion.TotalOks  = (int)item.TotalOks;
                    kpisplaneacion.TotalDesv = (int)item.TotalDesv;

                    if (item.TotalOks > 0)
                    {
                        var porcentajeOk          = ((int)item.TotalOks / (decimal)(int)item.TotalRecords) * 100;
                        var porcentajeDesvRounded = Math.Round(porcentajeOk, 2);
                        kpisplaneacion.procentaje = porcentajeDesvRounded;
                    }
                    else
                    {
                        kpisplaneacion.procentaje = 0;
                    }

                    lista.Add(kpisplaneacion);
                }

                Totales();

                return(PartialView(lista.ToList()));
            }
            catch (Exception _ex)
            {
                Console.WriteLine(_ex.Message.ToString());
                return(null);
            }
        }