Exemplo n.º 1
0
        public static Suceso ConvertToSucesos(DataRow dr)
        {
            Suceso sc = new Suceso();

            sc.SucesoId          = Convert.ToInt32(dr["SucesoId"]);
            sc.DeportePeriodoId  = Convert.ToInt32(dr["DeportePeriodoId"]);
            sc.Tiempo            = Convert.ToString(dr["Tiempo"]);
            sc.CompetidorId      = Convert.ToInt32(dr["CompetidorId"]);
            sc.PlanillaId        = Convert.ToInt32(dr["PlanillaId"]);
            sc.ParametroSucesoId = Convert.ToInt32(dr["ParametroSucesoId"]);
            sc.Valor             = Convert.ToInt32(dr["Valor"]);
            return(sc);
        }
Exemplo n.º 2
0
        public static List <Suceso> GetHistorialSuceso(int planillaId, int deportePeriodoId, int competidorId)
        {
            List <Suceso>       lsu = new List <Suceso>();
            List <SqlParameter> lp  = new List <SqlParameter>();

            lp.Add(new SqlParameter("PlanillaId", planillaId));
            lp.Add(new SqlParameter("DeportePeriodoId", deportePeriodoId));
            lp.Add(new SqlParameter("CompetidorId", competidorId));

            DBTransaction db = new DBTransaction();

            DataTable dt         = db.GetStoreProcedure("conj.pHistorialSuceso", lp);
            int       FindIndice = -1;

            foreach (DataRow dr in dt.Rows)
            {
                Suceso sc = ConvertToSucesos(dr);
                sc.Competidor = Competidor.ConvertToCompetidor(dr);

                sc.Competidor.Equipo = Equipo.ConvertToEquipo(dr);
                sc.ParametrosSuceso  = ParametrosSuceso.ConvertToParametroSuceso(dr);
                sc.SucesoPersonas    = new List <SucesoPersona>();

                if (sc.ParametrosSuceso.RegistraPersona >= 1 && !string.IsNullOrEmpty(dr["PlanillaPersonaId"].ToString()))
                {
                    SucesoPersona scp = SucesoPersona.ConvertToSucesoPersona(dr);
                    scp.PlanillaPersona = PlanillaPersona.ConvertPlanillaPersona(dr, true);

                    FindIndice = lsu.FindIndex(delegate(Suceso s) { return(s.SucesoId == sc.SucesoId); });
                    if (FindIndice > 0)
                    {
                        lsu.ElementAt(FindIndice).SucesoPersonas.Add(scp);
                    }
                    else
                    {
                        sc.SucesoPersonas.Add(scp);
                        FindIndice = -1;
                    }
                }
                else
                {
                    FindIndice = -1;
                }
                if (FindIndice < 0)
                {
                    lsu.Add(sc);
                }
            }
            return(lsu);
        }