Esempio n. 1
0
        private void InitTable(string tipoDeCiclo)
        {
            Table1.Controls.Clear();
            if (tipoDeCiclo == Curso.TipoDeCiclo.semanal.ToString())
            {
                TableRow  row = new TableRow();
                TableCell c0  = new TableCell();
                c0.Font.Size = FontUnit.Large;
                c0.Font.Bold = true;
                c0.Controls.Add(new LiteralControl("Nombre"));
                c0.BorderStyle = BorderStyle.Solid;
                c0.BorderColor = Color.Black;
                c0.BackColor   = Color.FromArgb(140, 225, 250);
                TableCell c1 = new TableCell();
                c1.Font.Bold = true;
                c1.Font.Size = FontUnit.Large;
                c1.Controls.Add(new LiteralControl("Salon"));
                c1.BorderStyle = BorderStyle.Solid;
                c1.BorderColor = Color.Black;
                c1.BackColor   = Color.FromArgb(140, 225, 250);
                TableCell c2 = new TableCell();
                c2.Font.Bold = true;
                c2.Font.Size = FontUnit.Large;
                c2.Controls.Add(new LiteralControl("Dia"));
                c2.BorderStyle = BorderStyle.Solid;
                c2.BorderColor = Color.Black;
                c2.BackColor   = Color.FromArgb(140, 225, 250);
                TableCell c3 = new TableCell();
                c3.Font.Size = FontUnit.Large;
                c3.Font.Bold = true;
                c3.Controls.Add(new LiteralControl("Hora"));
                c3.BorderStyle = BorderStyle.Solid;
                c3.BorderColor = Color.Black;
                c3.BackColor   = Color.FromArgb(140, 225, 250);
                row.Cells.Add(c0);
                row.Cells.Add(c1);
                row.Cells.Add(c2);
                row.Cells.Add(c3);
                Table1.Rows.Add(row);

                string StringActividadesDeCurso = (string)ViewState["ActividadesDeCurso"];

                char[] c = { ';' };

                string[] ActividadesDeCurso = StringActividadesDeCurso.Split(c, StringSplitOptions.RemoveEmptyEntries);

                foreach (string hashActividad in ActividadesDeCurso)
                {
                    TableRow  row0 = new TableRow();
                    TableCell c00  = new TableCell();
                    c00.Font.Size = FontUnit.Small;
                    c00.Controls.Add(new LiteralControl(HashToActividad.GetNombre(hashActividad)));
                    c00.BorderStyle = BorderStyle.Solid;
                    c00.BorderColor = Color.Black;
                    c00.BackColor   = Color.White;

                    TableCell c11 = new TableCell();
                    c11.Font.Size = FontUnit.Small;
                    c11.Controls.Add(new LiteralControl(HashToActividad.GetSalon(hashActividad).nombre));
                    c11.BorderStyle = BorderStyle.Solid;
                    c11.BorderColor = Color.Black;
                    c11.BackColor   = Color.White;

                    DateTime  inicioActividad = HashToActividad.GetDateInicial(hashActividad);
                    DateTime  finActividad    = HashToActividad.GetDateFinal(hashActividad);
                    TableCell c22             = new TableCell();
                    c22.Font.Size = FontUnit.Small;
                    c22.Controls.Add(new LiteralControl(inicioActividad.DayOfWeek.ToString()));
                    c22.BorderStyle = BorderStyle.Solid;
                    c22.BorderColor = Color.Black;
                    c22.BackColor   = Color.White;

                    TableCell c33 = new TableCell();
                    c33.Font.Size = FontUnit.Small;
                    c33.Controls.Add(new LiteralControl(inicioActividad.ToString("HH:mm") + "-" + finActividad.ToString("HH:mm")));
                    c33.BorderStyle = BorderStyle.Solid;
                    c33.BorderColor = Color.Black;
                    c33.BackColor   = Color.White;
                    row0.Cells.Add(c00);
                    row0.Cells.Add(c11);
                    row0.Cells.Add(c22);
                    row0.Cells.Add(c33);
                    Table1.Rows.Add(row0);
                }
            }
        }
Esempio n. 2
0
        protected void GenerarActividades_Click(object sender, EventArgs e)
        {
            string StringActividadesDeCurso = (string)ViewState["ActividadesDeCurso"];

            char[]   c = { ';' };
            string[] ActividadesDeCurso           = StringActividadesDeCurso.Split(c, StringSplitOptions.RemoveEmptyEntries);
            string   stringActividadesConTraslape = "";

            db = new ModelDatabase();

            bool isActividadesDeCursoValidas = true;

            if (DDLCiclo.SelectedIndex == 0)
            {
                foreach (string hash in ActividadesDeCurso)
                {
                    int      idSalon         = HashToActividad.GetIdSalon(hash);
                    DateTime inicioActividad = HashToActividad.GetDateInicial(hash);
                    DateTime finalActividad  = HashToActividad.GetDateFinal(hash);

                    String   stringFinalCurso = (String)ViewState["FinalCurso"];
                    DateTime finalCurso       = DateTime.ParseExact(stringFinalCurso, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture);

                    int i = 1;
                    while (DateTime.Compare(inicioActividad, finalCurso) < 0)
                    {
                        db = new ModelDatabase();

                        Actividad actividadNueva = new Actividad()
                        {
                            nombre         = HashToActividad.GetNombre(hash) + "numero:" + i.ToString(),
                            tipo           = "curso",
                            fecha_incio    = inicioActividad,
                            fecha_final    = finalActividad,
                            codigo_qr      = LectorDeArchivos.RandomString(8),
                            carta_id_carta = carta.id_carta,
                            salon_id_salon = idSalon,
                            curso_id_curso = curso.id_curso
                        };

                        IQueryable <Actividad> actividadsTraslapadas = Validacion.IsActividadDisponible(actividadNueva, db.Actividads);

                        if (actividadsTraslapadas.Any())
                        {
                            Actividad actividadTraslapada = actividadsTraslapadas.Take(1).First();

                            stringActividadesConTraslape += actividadNueva.nombre + "," + actividadTraslapada.id_actividad.ToString() + ";";

                            isActividadesDeCursoValidas = false;
                        }
                        else
                        {
                            db.Actividads.Add(actividadNueva);

                            db.SaveChanges();
                        }

                        inicioActividad = inicioActividad.AddDays(7);
                        finalActividad  = finalActividad.AddDays(7);

                        i++;
                    }
                }

                if (!isActividadesDeCursoValidas)
                {
                    Response.Redirect("~/PaginasOperador/EditarCurso?id_curso=" + curso.id_curso.ToString() +
                                      "&Traslapes=" + Server.UrlEncode(stringActividadesConTraslape));
                    return;
                }

                Response.Redirect("~/PaginasOperador/EditarCurso?id_curso=" + curso.id_curso.ToString());
            }
        }