Exemplo n.º 1
0
        public ActionResult Create(T_Metas meta)
        {
            Validacoes(meta);
            if (ModelState.IsValid)
            {
                meta.MET_DTINICIO = DateTime.ParseExact(meta.MET_DTINICIO, "dd/MM/yyyy", CultureInfo.InvariantCulture).ToString("yyyyMMdd");
                meta.MET_DTFIM    = DateTime.ParseExact(meta.MET_DTFIM, "dd/MM/yyyy", CultureInfo.InvariantCulture).ToString("yyyyMMdd");

                db.T_Metas.Add(meta);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            if (Request["T_Indicadores_NEG_ID"] != "")
            {
                int?idNegocio = Int32.Parse(Request["T_Indicadores_NEG_ID"]);
                ViewBag.IND_ID = new SelectList(db.T_Indicadores.Where(x => x.NEG_ID == idNegocio).ToList(), "IND_ID", "IND_DESCRICAO", meta.IND_ID);
                ViewBag.T_Indicadores_NEG_ID = new SelectList(db.T_Negocio, "NEG_ID", "NEG_DESCRICAO", Int32.Parse(Request["T_Indicadores_NEG_ID"]));
            }
            else
            {
                ViewBag.IND_ID = new SelectList(new List <T_Indicadores>(), "IND_ID", "IND_DESCRICAO");
                ViewBag.T_Indicadores_NEG_ID = new SelectList(db.T_Negocio, "NEG_ID", "NEG_DESCRICAO");
            }
            return(View(meta));
        }
Exemplo n.º 2
0
        public ActionResult DeleteConfirmed(int id)
        {
            T_Metas meta = db.T_Metas.Find(id);

            #region Validacoes
            if (db.T_Informacoes_Complementares.Count(x => x.MET_ID == id) > 0)
            {
                ModelState.Remove("indNome");
                ModelState.AddModelError("indNome", "Não é possível excluir a meta, a mesma possui informações complementares.");
            }

            if (db.T_Medicoes.Count(x => x.MET_ID == id) > 0)
            {
                ModelState.Remove("indNome");
                ModelState.AddModelError("indNome", "Não é possível excluir a meta, a mesma possui medições cadastradas.");
            }
            #endregion Validacoes
            if (ModelState.IsValid)
            {
                db.T_Metas.Remove(meta);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(meta));
        }
Exemplo n.º 3
0
        public ActionResult Create()
        {
            var meta = new T_Metas();

            meta.MET_DTINICIO            = DateTime.Now.ToString("dd/MM/yyyy");
            meta.MET_DTFIM               = DateTime.Now.ToString("dd/MM/yyyy");
            ViewBag.T_Indicadores_NEG_ID = new SelectList(db.T_Negocio, "NEG_ID", "NEG_DESCRICAO");
            ViewBag.IND_ID               = new SelectList(new List <T_Indicadores>(), "IND_ID", "IND_DESCRICAO");
            return(View(meta));
        }
Exemplo n.º 4
0
        public void Validacoes(T_Metas metas)
        {
            /*VALIDACAO DE DATA INICIO*/
            if (metas.MET_DTINICIO == null || metas.MET_DTINICIO.Trim().Equals(""))
            {
                ModelState.Remove("MET_DTINICIO");
                ModelState.AddModelError("MET_DTINICIO", "Data de início não informada.");
            }

            /*VALIDACAO DE DATA FIM*/
            if (metas.MET_DTFIM == null || metas.MET_DTFIM.Trim().Equals(""))
            {
                ModelState.Remove("MET_DTFIM");
                ModelState.AddModelError("MET_DTFIM", "Data de término não informada.");
            }
            else
            {
                if (metas.MET_DTINICIO != null && metas.MET_DTFIM != null)
                {
                    #region ValidaDataExistente
                    var MET_DTINICIO = DateTime.ParseExact(metas.MET_DTINICIO, "dd/MM/yyyy", CultureInfo.InvariantCulture).ToString("yyyyMMdd");
                    var MET_DTFIM    = DateTime.ParseExact(metas.MET_DTFIM, "dd/MM/yyyy", CultureInfo.InvariantCulture).ToString("yyyyMMdd");
                    var sql          = "select * from T_Metas ";
                    sql += "where IND_ID = '" + metas.IND_ID + "' AND (('" + MET_DTINICIO + "' BETWEEN MET_DTINICIO AND MET_DTFIM) or ('" + MET_DTFIM + "' BETWEEN MET_DTINICIO AND MET_DTFIM)) ";
                    if (metas.MET_ID > 0)
                    {
                        sql += "AND MET_ID != '" + metas.MET_ID + "' ";
                    }

                    var listaMetas = db.Database.SqlQuery <T_Metas>(sql).ToList();
                    //Valida se existe data nesse periodo
                    if (listaMetas.Count() > 0)
                    {
                        ModelState.Remove("MET_DTINICIO");
                        ModelState.AddModelError("MET_DTINICIO", "Já existe meta cadastrada para este periódo.");
                    }
                    #endregion ValidaDataExistente

                    //Valida data final menor que a inicial
                    if (Convert.ToDateTime(metas.MET_DTFIM) < Convert.ToDateTime(metas.MET_DTINICIO))
                    {
                        ModelState.Remove("MET_DTFIM");
                        ModelState.AddModelError("MET_DTFIM", "Data de término é menor que a data inicial.");
                    }
                }


                if (metas.MET_DTINICIO == null || metas.IND_ID <= 0)
                {
                    ModelState.Remove("IND_ID");
                    ModelState.AddModelError("IND_ID", "Selecione um indicador.");
                }
            }
        }
Exemplo n.º 5
0
 public ActionResult Edit(T_Metas meta)
 {
     Validacoes(meta);
     if (ModelState.IsValid)
     {
         meta.MET_DTINICIO    = DateTime.ParseExact(meta.MET_DTINICIO, "dd/MM/yyyy", CultureInfo.InvariantCulture).ToString("yyyyMMdd");
         meta.MET_DTFIM       = DateTime.ParseExact(meta.MET_DTFIM, "dd/MM/yyyy", CultureInfo.InvariantCulture).ToString("yyyyMMdd");
         db.Entry(meta).State = System.Data.Entity.EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     meta.T_Indicadores = db.T_Indicadores.Find(meta.IND_ID);
     return(View(meta));
 }