public Replanejamento BuscaReplanejamento(int?id_replanejamento, int?id_iniciativa, string oper)
        {
            SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["NovoControleProjetos"].ConnectionString);

            Replanejamento replanejamento = new Replanejamento();

            using (con)
            {
                var cmd = new SqlCommand("producao.UP_Controle_Projetos_Oper_M_Replanejamento", con);
                cmd.CommandType = System.Data.CommandType.StoredProcedure;
                con.Open();
                cmd.Parameters.AddWithValue("@id_replanejamento", id_replanejamento);
                cmd.Parameters.AddWithValue("@OPER", "S");

                var reader = cmd.ExecuteReader();

                while (reader.Read())
                {
                    replanejamento.id_replanejamento     = reader["id_replanejamento"] != DBNull.Value ? Convert.ToInt32(reader["id_replanejamento"]) : (int?)null;
                    replanejamento.motivo_replanejamento = reader["motivo_replanejamento"] != DBNull.Value ? reader["motivo_replanejamento"] as string : null;
                    replanejamento.data_replanejamento   = reader["dt_replanejamento"] != DBNull.Value ? Convert.ToDateTime(reader["dt_replanejamento"]) : (DateTime?)null;
                }
                return(replanejamento);
            }
        }
        /// <summary>
        /// Método para pegar os dados mvp e tratalos caso a data venha nula
        /// </summary>
        /// <param name="id_iniciativa"></param>
        /// <param name="replanejamento"></param>
        /// <returns></returns>
        public ActionResult _DetalhesIniciativa(int?id_iniciativa, Replanejamento replanejamento)
        {
            ViewBag.id_Iniciativa = id_iniciativa;
            ViewBag.MVP           = Mvp_DAL.MvpsBuscaNoBanco(ViewBag.id_Iniciativa);
            int auxiliar  = 0;
            int auxiliar2 = 0;
            int contador  = 0;

            string[] dtConvertido;

            foreach (Mvp item in ViewBag.MVP)
            {
                if (item.Id_Iniciativa == 0 || item.Id_Iniciativa == null)
                {
                    auxiliar2++;
                }
                auxiliar++;
            }
            //Efetuando for para armazenar data convertida
            dtConvertido = new string[auxiliar];
            foreach (Mvp item in ViewBag.MVP)
            {
                if (item.Dt_Mvp == null)
                {
                    item.Dt_Mvp = null;
                }
                else
                {
                    dtConvertido[contador] = item.Dt_Mvp.Value.ToShortDateString();
                }
                contador++;
            }
            ViewBag.dtConvertido = dtConvertido;

            if (auxiliar == auxiliar2)
            {
                ViewBag.acao = "criar";
            }

            return(PartialView(replanejamento));
        }
        public int InsereReplanejamentoRetornaId(Replanejamento replanejamento, int?id_iniciativa, int?id_replanejamento, string oper)
        {
            SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["NovoControleProjetos"].ConnectionString);

            using (con)
            {
                var cmd = new SqlCommand("producao.UP_Controle_Projetos_Oper_M_Replanejamento", con);
                cmd.CommandType = System.Data.CommandType.StoredProcedure;
                con.Open();
                if (id_replanejamento != null && id_replanejamento > 0)
                {
                    cmd.Parameters.AddWithValue("@id_replanejamento", id_replanejamento);
                }
                cmd.Parameters.AddWithValue("@OPER", oper);
                cmd.Parameters.AddWithValue("@motivo_replanejamento", replanejamento.motivo_replanejamento);


                if (replanejamento.data_replanejamento != null)
                {
                    cmd.Parameters.AddWithValue("@dt_replanejamento", replanejamento.data_replanejamento);
                }
                else
                {
                    cmd.Parameters.AddWithValue("@dt_replanejamento", SqlDbType.DateTime).Value = SqlDateTime.Null;
                }

                if (oper == "U")
                {
                    cmd.ExecuteNonQuery();

                    return((int)id_replanejamento);
                }
                else
                {
                    return((int)cmd.ExecuteScalar());
                }
            }
        }
        public ActionResult Create(Iniciativa iniciativa, Orcamento orcamento, List <Origem> origens, List <Etapa> etapas, List <Vertical> verticais,
                                   List <Canal> canais, Visita visita, Jornada jornada, Ceti ceti, Replanejamento replanejamento, Farol farol)
        {
            try
            {
                if (verticais != null)
                {
                    bool Ok = relacionamentosController.RelacionamentosProjetoComListas(iniciativa.Id_Iniciativa, verticais.Select(x => x.Id_Vertical).ToList(), "Verticais", null, null);
                    if (!Ok)
                    {
                        return(new HttpStatusCodeResult(404));
                    }
                }
                else
                {
                    bool Ok = relacionamentosController.DeletaRelacionamento(iniciativa.Id_Iniciativa, "projeto_verticais", "id_projeto");
                    if (!Ok)
                    {
                        return(RedirectToAction("Error", "Home"));
                    }
                }

                if (origens != null)
                {
                    bool Ok = relacionamentosController.RelacionamentosProjetoComListas(iniciativa.Id_Iniciativa, origens.Select(x => x.Id_Origem).ToList(), "Origens", null, null);
                    if (!Ok)
                    {
                        return(new HttpStatusCodeResult(404));
                    }
                }
                else
                {
                    bool Ok = relacionamentosController.DeletaRelacionamento(iniciativa.Id_Iniciativa, "projeto_origens", "id_projeto");
                    if (!Ok)
                    {
                        return(RedirectToAction("Error", "Home"));
                    }
                }

                if (etapas != null)
                {
                    bool Ok = relacionamentosController.RelacionamentosProjetoComListas(iniciativa.Id_Iniciativa, null, "Etapas", etapas, null);
                    if (!Ok)
                    {
                        return(new HttpStatusCodeResult(404));
                    }
                }
                else
                {
                    bool Ok = relacionamentosController.DeletaRelacionamento(iniciativa.Id_Iniciativa, "projeto_etapas", "id_projeto");
                    if (!Ok)
                    {
                        return(RedirectToAction("Error", "Home"));
                    }
                }


                if (canais != null)
                {
                    bool Ok = relacionamentosController.RelacionamentosProjetoComListas(iniciativa.Id_Iniciativa, canais.Select(x => x.Id_Canal).ToList(), "Canais", null, canais);
                    if (!Ok)
                    {
                        return(new HttpStatusCodeResult(404));
                    }
                }
                else
                {
                    bool Ok = relacionamentosController.DeletaRelacionamento(iniciativa.Id_Iniciativa, "projeto_canais", "id_projeto");
                    if (!Ok)
                    {
                        return(RedirectToAction("Error", "Home"));
                    }
                }

                if (orcamento != null)
                {
                    orcamentoController.InsereOrcamento(orcamento, iniciativa.Id_Iniciativa);
                }

                if (jornada != null)
                {
                    iniciativa.id_jornada = jornadaController.InsereJornada(jornada, iniciativa.Id_Iniciativa);
                }


                if (ceti.Data_Ceti != null || ceti.Total_Aprovado_Ceti != null || iniciativa.id_ceti != null)
                {
                    Ceti   objCeti = new Ceti();
                    string oper    = null;
                    if (iniciativa.id_ceti != null)
                    {
                        objCeti = cetiController.BuscaCeti(null, iniciativa.id_ceti);
                        oper    = ceti.Data_Ceti != objCeti.Data_Ceti ? "I" : "U";
                    }

                    var id_ceti = cetiController.InsereCeti(ceti, iniciativa.Id_Iniciativa, iniciativa.id_ceti, oper ?? "I");

                    iniciativa.id_ceti = id_ceti;
                }

                if (replanejamento.data_replanejamento != null || replanejamento.motivo_replanejamento != null)
                {
                    Replanejamento objReplan = new Replanejamento();
                    string         oper      = null;
                    if (iniciativa.id_replanejamento != null)
                    {
                        objReplan = replanejamentoController.BuscaReplanejamento(null, iniciativa.id_replanejamento);
                        oper      = replanejamento.data_replanejamento != objReplan.data_replanejamento ? "I" : "U";
                    }

                    iniciativa.id_replanejamento = replanejamentoController.InsereReplanejamento(replanejamento, iniciativa.Id_Iniciativa, iniciativa.id_replanejamento, oper ?? "I");
                }


                if (farol.Comentario_Farol != null)
                {
                    string oper   = null;
                    Farol  _farol = new Farol();

                    if (iniciativa.id_farol != null)
                    {
                        var objfarol = farolController.BuscaFarol(iniciativa.Id_Iniciativa, iniciativa.id_farol);
                        oper = objfarol.Id_Comentario_Farol != null ? "U" : "I";
                    }

                    farolController.InsereComentarioFarol(farol, iniciativa.Id_Iniciativa, iniciativa.id_farol, farol.Id_Comentario_Farol != null ? farol.Id_Comentario_Farol : null, oper);
                }

                if (visita.Data_Visita != null || visita.Cod_Agencia != null)
                {
                    string oper    = null;
                    Visita _visita = new Visita();

                    if (iniciativa.id_visita != null)
                    {
                        var objVisita = visitaController.BuscaVisita(iniciativa.id_visita, null);
                        oper = objVisita.Data_Visita != visita.Data_Visita || objVisita.Cod_Agencia != visita.Cod_Agencia ? "I" : "U";
                    }

                    iniciativa.id_visita = visitaController.InsereVisita(visita, iniciativa.Id_Iniciativa, iniciativa.id_visita, oper ?? "I");
                }

                //iniciativa.id_orcamento = idOrcamento;
                //relacionamentosController.RelacionamentoOrcamentoProjeto(iniciativa.Id_Iniciativa, idOrcamento);

                iniciativa_DAL.UpdateIniciativa(iniciativa);

                return(RedirectToAction("Index", "Home", true));
            }
            catch (Exception ex)
            {
                throw;
            }
        }
예제 #5
0
        public int InsereReplanejamento(Replanejamento replanejamento, int?id_iniciativa, int?id_replanejamento, string oper)
        {
            var idReplanejamento = replanejamento_DAL.InsereReplanejamentoRetornaId(replanejamento, id_iniciativa, id_replanejamento, oper);

            return(idReplanejamento);
        }