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)); }
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)); }
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)); }
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."); } } }
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)); }