示例#1
0
        public void EvaluarPropuesta(Eval_Tmp obj)
        {
            try
            {
                using (SqlConnection conection = new SqlConnection(ConfigurationManager.ConnectionStrings["cnxIndra"].ConnectionString))
                {
                    conection.Open();

                    using (SqlCommand command = new SqlCommand("[pa_spu_detallebalanceo]", conection))
                    {
                        command.CommandType = CommandType.StoredProcedure;
                        command.Parameters.AddWithValue("@vi_nid_detalle", obj.nid_detalle);
                        command.Parameters.AddWithValue("@vi_nu_accion", obj.accion);
                        command.Parameters.AddWithValue("@vi_no_comentario_rechazo", obj.no_comentario);
                        using (SqlDataReader dr = command.ExecuteReader())
                        {
                        }
                    }
                    conection.Close();
                }
            }
            catch (Exception ex)
            {
                throw (ex);
            }
        }
        public Eval_Response EvaluarPropuesta(Eval_Request obj)
        {
            try
            {
                Eval_Response retorno = new Eval_Response();
                if (obj.no_comentario == null)
                {
                    obj.no_comentario = "";
                }
                Propuesta_Request pr_para = new Propuesta_Request();
                pr_para.nid_portafolio = obj.idportafolio;
                List <Propuesta_Response> propuestas_gen   = BuscarPropuestas(pr_para);
                List <Propuesta_Response> propuestas_dt    = new List <Propuesta_Response>();
                Propuesta_Response        propuesta_tmp    = new Propuesta_Response();
                List <Eval_Tmp>           evaluaciones_tmp = new List <Eval_Tmp>();
                Eval_Tmp evl_tmp = new Eval_Tmp();
                for (int x = 0; x < obj.lista_parametros.Count(); x++)
                {
                    evl_tmp               = new Eval_Tmp();
                    evl_tmp.nid_detalle   = int.Parse(obj.lista_parametros[x]);
                    evl_tmp.no_comentario = obj.no_comentario;
                    evl_tmp.accion        = obj.accion;
                    evaluaciones_tmp.Add(evl_tmp);
                }

                for (int x = 0; x < evaluaciones_tmp.Count(); x++)
                {
                    evaluacionDA.EvaluarPropuesta(evaluaciones_tmp[x]);
                    propuesta_tmp = propuestas_gen.Where(y => y.nid_detalle.Equals(evaluaciones_tmp[x].nid_detalle)).SingleOrDefault();
                    if (propuesta_tmp != null)
                    {
                        propuestas_dt.Add(propuesta_tmp);
                    }
                }

                if (obj.accion == 0)
                {
                    retorno.resultado = 1;
                    retorno.mensaje   = "Se desaprobó satisfactoriamente las propuestas marcadas";
                }
                else
                {
                    retorno.resultado = 1;
                    retorno.mensaje   = "Se aprobó satisfactoriamente las propuestas marcadas";
                    EnviarCorreos_Responsables(propuestas_dt);
                    EnviarCorreos_Balanceadores(propuestas_dt);
                }


                return(retorno);
            }
            catch (Exception)
            {
                throw;
            }
        }