Ejemplo n.º 1
0
        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));
        }
Ejemplo n.º 2
0
        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));
        }