public ActionResult AprovaReprova(int id) { CampanhaMarketing_Model data = new CampanhaMarketing_Model { Obs = "", CampanhaMarketing = db.CampanhaMarketing.Find(id) }; bool _ind_finalizada = false; if (_ind_finalizada) { return(RedirectToAction("Details", new { id = id })); } string ids = Convert.ToString(id); ViewBag.comentarios = db.ListaComentarios.Where(a => a.cod_interno == ids && a.tipo_nota == "CAMPANHA").ToList(); ViewBag.troca_estagio = db.CampanhaMarketingEstagios.Where(a => a.campanhaId == id).OrderBy(p => p.num_seq).ToList(); if (data.CampanhaMarketing == null) { return(InvokeHttpNotFound()); } return(View(data)); }
public ActionResult AprovaReprova(CampanhaMarketing_Model data, bool aprovado) { bool _ind_finalizada = false; if (_ind_finalizada) { return(RedirectToAction("Details", new { id = data.CampanhaMarketing.campanhaID })); } CampanhaMarketing data_update = db.CampanhaMarketing.Find(data.CampanhaMarketing.campanhaID); if (data_update == null) { return(View(data)); } string ids = data.CampanhaMarketing.campanhaID.ToString(); ViewBag.comentarios = db.ListaComentarios.Where(a => a.cod_interno == ids && a.tipo_nota == "CAMPANHA").ToList(); ViewBag.troca_estagio = db.CampanhaMarketingEstagios.Where(a => a.campanhaId == data.CampanhaMarketing.campanhaID).OrderBy(p => p.num_seq).ToList(); if (ModelState.IsValid) { int estagioId = 0; int statusId = 0; Estagio estagio = db.Estagio.Where(a => a.estagioId == data_update.estagioId).FirstOrDefault(); if (aprovado) { estagioId = Convert.ToInt32(estagio.estagioid_proximo); Estagio proximo_estagio = db.Estagio.Where(a => a.estagioId == estagioId).FirstOrDefault(); statusId = Convert.ToInt32(proximo_estagio.statusid); } else { estagioId = Convert.ToInt32(estagio.estagioid_anterior); if (data_update.estagioId == 23) { estagioId = 21; } statusId = 2; Estagio estagio_anterior = db.Estagio.Where(a => a.estagioId == estagioId).FirstOrDefault(); if (estagio_anterior.ind_liberado == "S") { statusId = Convert.ToInt32(estagio_anterior.statusid); } } CampanhaMarketingEstagios altera_linha = AddDataSaidaEstagioAnterior(data_update.campanhaID); CampanhaMarketingEstagios nova_linha = AddNovaLinhaTrocaEstagio(data_update.campanhaID, data_update.estagioId, estagioId, data.Obs); data_update.dta_alteracao = System.DateTime.Now; data_update.cod_usuario_alteracao = cd_usuario; data_update.estagioId = estagioId; data_update.statusId = statusId; data_update.des_ult_obs = data.Obs; try { db.Entry(data_update).State = EntityState.Modified; db.Entry(altera_linha).State = EntityState.Modified; db.CampanhaMarketingEstagios.Add(nova_linha); db.SaveChanges(); _email.EnviarEmailCampanha(data_update.campanhaID, "NovaCampanha.htm"); return(RedirectToAction("WorkFlow")); } catch (Exception e) { Response.StatusCode = 500; // Replace .AddHeader return(Json(new { Error = e.Message }, JsonRequestBehavior.AllowGet)); } } return(View(data)); }