Пример #1
0
 public static string SELECT_BY_FECHA(InstructorInfo item, DateTime inicio, DateTime fin)
 {
     return(Submodulo_Instructor.SELECT(new QueryConditions()
     {
         Instructor = item, FechaAuxIni = inicio, FechaAuxFin = fin
     }, false));
 }
Пример #2
0
        /// <summary>
        /// Copia los atributos del objeto
        /// </summary>
        /// <param name="source">Objeto origen</param>
        protected void CopyValues(Instructor_PromocionInfo source)
        {
            if (source == null)
            {
                return;
            }

            Oid = source.Oid;
            _base.Record.OidInstructor = source.OidInstructor;
            _base.Record.OidPromocion  = source.OidPromocion;

            InstructorInfo instructor = InstructorInfo.Get(OidInstructor, false);

            if (instructor != null && instructor.Oid > 0)
            {
                _instructor = instructor.Nombre;
            }

            PromocionInfo promocion = PromocionInfo.Get(OidPromocion, false);

            if (promocion != null && promocion.Oid > 0)
            {
                _curso = promocion.Nombre;
            }
        }
Пример #3
0
 public static string SELECT(InstructorInfo item)
 {
     return(Submodulo_Instructor.SELECT(new QueryConditions()
     {
         Instructor = item
     }, false));
 }
Пример #4
0
        /// <summary>
        /// Copia los atributos del objeto
        /// </summary>
        /// <param name="source">Objeto origen</param>
        protected void CopyValues(InstructorInfo source)
        {
            if (source == null)
            {
                return;
            }

            _base.ProviderBase.CopyValues(source);
            _base.Record.Alias = source.Alias;

            Oid = source.Oid;
            _base.Record.NivelEstudios = source.NivelEstudios;
            _base.Record.Perfil        = source.Perfil;
            _base.Record.Foto          = source.Foto;
            _base.Record.Activo        = source.Activo;

            if (Foto != string.Empty)
            {
                string path = Images.GetRootPath() + Resources.Paths.FOTO_INSTRUCTORES.Substring(2) + Foto;

                // Cargamos la imagen en el buffer
                if (File.Exists(path))
                {
                    //Declaramos fs para poder abrir la imagen.
                    FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read);

                    // Declaramos un lector binario para pasar la imagen a bytes
                    BinaryReader br = new BinaryReader(fs);
                    _foto_instructor = new byte[(int)fs.Length];
                    br.Read(FotoInstructor, 0, (int)fs.Length);
                    br.Close();
                    fs.Close();
                }
            }
        }
Пример #5
0
        public CapacitacionInstructorRpt GetDetailReport(CompanyInfo empresa,
                                                         InstructorInfo instructor,
                                                         Submodulo_Instructor_PromocionList registros)
        {
            if (registros == null)
            {
                return(null);
            }
            CapacitacionInstructorRpt doc = new CapacitacionInstructorRpt();

            List <InstructorInfo> pList = new List <InstructorInfo>();
            List <Submodulo_Instructor_PromocionPrint> capacitaciones = new List <Submodulo_Instructor_PromocionPrint>();

            foreach (Submodulo_Instructor_PromocionInfo info in registros)
            {
                capacitaciones.Add(info.GetPrintObject());
            }

            //Si no existen conceptos, no tiene sentido un informe detallado. Además, falla en Crystal Reports
            if (capacitaciones.Count <= 0)
            {
                return(null);
            }

            pList.Add(instructor);

            doc.SetDataSource(pList);

            doc.Subreports["CapacitacionInstructorSubListRpt"].SetDataSource(registros);

            //FormatReport(doc);

            return(doc);
        }
Пример #6
0
        public SesionPrint GetPrintObject(ClaseTeoricaList teoricas, ClasePracticaList practicas,
                                          ClaseExtraList extras, string clases, long grupo, bool print_alumno)
        {
            //HorarioInfo horario = HorarioInfo.Get(this.OidHorario);
            InstructorInfo instructor = InstructorInfo.Get(this.OidProfesor, true);

            return(SesionPrint.New(this, instructor, teoricas, practicas, extras, clases, grupo, print_alumno));
        }
        public static string SELECT_BY_INSTRUCTOR(long oid_instructor)
        {
            QueryConditions conditions = new QueryConditions()
            {
                Instructor = InstructorInfo.New()
            };

            conditions.Instructor.Oid = oid_instructor;

            return(CursoFormacion.SELECT(conditions, true));
        }
Пример #8
0
        public HComboBoxSourceList(Submodulo_Instructor_PromocionList lista, InstructorList instructores)
        {
            AddEmptyItem();

            foreach (Submodulo_Instructor_PromocionInfo item in lista)
            {
                if (item.OidInstructor != 0)
                {
                    ComboBoxSource combo      = new ComboBoxSource();
                    InstructorInfo instructor = instructores.GetItem(item.OidInstructor);
                    if (instructor != null)
                    {
                        combo.Texto    = instructor.Alias;
                        combo.Oid      = item.OidInstructor;
                        combo.OidAjeno = item.OidSubmodulo;

                        this.Add(combo);
                    }
                }
            }
        }
        private static void FormatReport(HorarioRpt rpt,
                                         ListaSesiones list,
                                         bool alumnos,
                                         /*bool autorizado,*/
                                         ClaseTeoricaList teoricas,
                                         List <ClasePracticaList> practicas,
                                         ClaseExtraList extras /*,
                                                                * InstructorList instructores*/)
        {
            List <string> lista = new List <string>();

            lista.Add("Lunes8AM");
            lista.Add("Lunes");
            lista.Add("Lunes2");
            lista.Add("Lunes3");
            lista.Add("Lunes4");
            lista.Add("Lunes5");
            lista.Add("Lunes6");
            lista.Add("Lunes7");
            lista.Add("Lunes8");
            lista.Add("Lunes9");
            lista.Add("Lunes10");
            lista.Add("Lunes11");
            lista.Add("Lunes12");
            lista.Add("Lunes13");

            lista.Add("Martes8AM");
            lista.Add("Martes");
            lista.Add("Martes2");
            lista.Add("Martes3");
            lista.Add("Martes4");
            lista.Add("Martes5");
            lista.Add("Martes6");
            lista.Add("Martes7");
            lista.Add("Martes8");
            lista.Add("Martes9");
            lista.Add("Martes10");
            lista.Add("Martes11");
            lista.Add("Martes12");
            lista.Add("Martes13");

            lista.Add("Miercoles8AM");
            lista.Add("Miercoles");
            lista.Add("Miercoles2");
            lista.Add("Miercoles3");
            lista.Add("Miercoles4");
            lista.Add("Miercoles5");
            lista.Add("Miercoles6");
            lista.Add("Miercoles7");
            lista.Add("Miercoles8");
            lista.Add("Miercoles9");
            lista.Add("Miercoles10");
            lista.Add("Miercoles12");
            lista.Add("Miercoles11");
            lista.Add("Miercoles13");

            lista.Add("Jueves8AM");
            lista.Add("Jueves");
            lista.Add("Jueves2");
            lista.Add("Jueves3");
            lista.Add("Jueves4");
            lista.Add("Jueves5");
            lista.Add("Jueves6");
            lista.Add("Jueves7");
            lista.Add("Jueves8");
            lista.Add("Jueves9");
            lista.Add("Jueves10");
            lista.Add("Jueves11");
            lista.Add("Jueves12");
            lista.Add("Jueves13");

            lista.Add("Viernes8AM");
            lista.Add("Viernes");
            lista.Add("Viernes2");
            lista.Add("Viernes3");
            lista.Add("Viernes4");
            lista.Add("Viernes5");
            lista.Add("Viernes6");
            lista.Add("Viernes7");
            lista.Add("Viernes8");
            lista.Add("Viernes9");
            lista.Add("Viernes10");
            lista.Add("Viernes11");
            lista.Add("Viernes12");
            lista.Add("Viernes13");

            lista.Add("Sabado");
            lista.Add("Sabado2");
            lista.Add("Sabado3");
            lista.Add("Sabado4");
            lista.Add("Sabado5");

            InstructorList instructores = InstructorList.GetList(true);

            int    ultimo   = 0;
            int    n_clases = 0;
            string aux      = string.Empty;

            foreach (SesionAuxiliar info in list)
            {
                int indice = list.IndexOf(info);

                //si la sesión no tienen ninguna clase asignada, se elimina la etiqueta
                if (info.OidClaseTeorica <= 0 &&
                    info.OidClasePractica == 0 &&
                    info.OidClaseExtra == 0)
                {
                    rpt.SetParameterValue(lista[indice], "");
                    ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).ObjectFormat.EnableSuppress = true;
                }
                else
                {
                    //si la sesión tiene una clase asignada una clase teórica
                    if (info.OidClaseTeorica != 0)
                    {
                        ClaseTeoricaInfo teorica = teoricas.GetItem(info.OidClaseTeorica);
                        //si no es la primera clase del día
                        //se comprueba si pertenece a la misma clase que la hora anterior
                        if (indice % 14 != 0 && list[indice - 1].OidClaseTeorica > 0)
                        {
                            bool misma_clase = false;
                            if (teorica.OidModulo ==
                                teoricas.GetItem(list[indice - 1].OidClaseTeorica).OidModulo &&
                                teorica.OidSubmodulo ==
                                teoricas.GetItem(list[indice - 1].OidClaseTeorica).OidSubmodulo &&
                                info.OidProfesor == list[indice - 1].OidProfesor)
                            {
                                misma_clase = true;
                                rpt.SetParameterValue(lista[indice], "");
                                ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).ObjectFormat.EnableSuppress = true;
                                if (!alumnos)
                                {
                                    InstructorInfo item       = instructores.GetItem(info.OidProfesor);
                                    string         instructor = item.Alias;
                                    instructor += Environment.NewLine;
                                    int ind = aux.IndexOf(instructor);
                                    if (ind == -1)
                                    {
                                        misma_clase = false;
                                    }
                                }
                                else
                                {
                                    aux = Environment.NewLine + aux;
                                }
                                if (misma_clase)
                                {
                                    ((FieldObject)(rpt.Section3.ReportObjects[lista[ultimo]])).Height = ((FieldObject)(rpt.Section3.ReportObjects[lista[ultimo]])).Height + 720;
                                    rpt.SetParameterValue(lista[ultimo], aux);
                                    if (n_clases == 1)
                                    {
                                        ((FieldObject)(rpt.Section3.ReportObjects[lista[ultimo]])).Top += 80;
                                    }
                                    n_clases++;
                                }
                            }
                            if (!misma_clase)
                            {
                                ModuloInfo modulo = ModuloInfo.Get(teorica.OidModulo, false);
                                aux  = Environment.NewLine + modulo.Alias + Environment.NewLine;
                                aux += teorica.Submodulo + Environment.NewLine;
                                if (!alumnos)
                                {
                                    InstructorInfo item       = instructores.GetItem(info.OidProfesor);
                                    string         instructor = item.Alias;
                                    instructor += Environment.NewLine;
                                    aux        += instructor;
                                }
                                ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).ObjectFormat.EnableSuppress = false;
                                ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).Top -= 80;
                                rpt.SetParameterValue(lista[indice], aux);
                                ultimo   = indice;
                                n_clases = 1;
                            }
                        }
                        else
                        {
                            ModuloInfo modulo = ModuloInfo.Get(teorica.OidModulo, false);
                            aux  = Environment.NewLine + modulo.Alias + Environment.NewLine;
                            aux += teorica.Submodulo + Environment.NewLine;
                            if (!alumnos)
                            {
                                InstructorInfo item       = instructores.GetItem(info.OidProfesor);
                                string         instructor = item.Alias;
                                instructor += Environment.NewLine;
                                aux        += instructor;
                            }
                            ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).ObjectFormat.EnableSuppress = false;
                            ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).Top -= 80;
                            rpt.SetParameterValue(lista[indice], aux);
                            ultimo   = indice;
                            n_clases = 1;
                        }
                    }
                    else
                    {
                        if (info.OidClasePractica != 0)
                        {
                            ClasePracticaInfo practica = practicas[(int)info.Grupo].GetItem(info.OidClasePractica);
                            //if (indice % 14 != 0)
                            {
                                int  ind_aux  = 1;
                                bool esta     = false;
                                bool anterior = false;

                                //if (indice % 14 != 0)
                                //{
                                while (ind_aux < 5 && (indice - ind_aux) >= 0 && (indice - ind_aux) % 14 < indice % 14)
                                {
                                    if (list[indice - ind_aux].OidClasePractica != 0 &&
                                        practica.OidModulo ==
                                        practicas[(int)list[indice - ind_aux].Grupo].GetItem(list[indice - ind_aux].OidClasePractica).OidModulo &&
                                        info.OidProfesor == list[indice - ind_aux].OidProfesor &&
                                        info.Grupo == list[indice - ind_aux].Grupo)       //comprobación de grupo por si fuera la misma práctica para los dos grupos
                                    {
                                        esta = true;
                                        break;
                                    }
                                    if (list[indice - ind_aux].OidClasePractica != 0)
                                    {
                                        anterior = true;
                                    }
                                    ind_aux++;
                                }

                                ind_aux = 1;
                                bool posterior = false;
                                while (ind_aux < 5 && (indice + ind_aux) % 14 > indice % 14 && (indice + ind_aux) < 75)
                                {
                                    if (list[indice + ind_aux].OidClasePractica != 0 &&
                                        list[indice + ind_aux].OidClasePractica != list[indice].OidClasePractica)
                                    {
                                        posterior = true;
                                    }
                                    ind_aux++;
                                }
                                //}

                                if (!esta)
                                {
                                    aux  = Environment.NewLine + practica.Modulo + Environment.NewLine;
                                    aux += practica.Alias + " G" + list[indice].Grupo.ToString() + Environment.NewLine;
                                    if (!alumnos)
                                    {
                                        InstructorInfo item       = instructores.GetItem(info.OidProfesor);
                                        string         instructor = item.Alias;
                                        instructor += Environment.NewLine;
                                        aux        += instructor;
                                        aux        += Environment.NewLine;
                                        aux        += "5H";
                                    }
                                    rpt.SetParameterValue(lista[indice], aux);
                                    if (!anterior)
                                    {
                                        if (posterior)
                                        {
                                            ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).Height = 1560;
                                        }
                                        else
                                        {
                                            ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).Height = 3200;
                                        }
                                    }
                                    else
                                    {
                                        int top = 0;
                                        int i   = 1;
                                        while (i < 5 && indice - i >= 0)
                                        {
                                            if (!((FieldObject)(rpt.Section3.ReportObjects[lista[indice - i]])).ObjectFormat.EnableSuppress)
                                            {
                                                top = ((FieldObject)(rpt.Section3.ReportObjects[lista[indice - i]])).Top + 1560 + 240;
                                                break;
                                            }
                                            i++;
                                        }
                                        ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).Height = 1560;
                                        ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).Top    = top;
                                    }
                                    ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).ObjectFormat.EnableSuppress = false;
                                }
                                else
                                {
                                    rpt.SetParameterValue(lista[indice], "");
                                    ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).ObjectFormat.EnableSuppress = true;
                                }
                            }
                        }
                        else
                        {
                            ClaseExtraInfo extra = extras.GetItem(info.OidClaseExtra);
                            //si no es la primera clase del día
                            //se comprueba si pertenece a la misma clase que la hora anterior
                            if (indice % 14 != 0 && list[indice - 1].OidClaseExtra > 0)
                            {
                                bool misma_clase = false;
                                if (extra.OidModulo ==
                                    extras.GetItem(list[indice - 1].OidClaseExtra).OidModulo &&
                                    extra.OidSubmodulo ==
                                    extras.GetItem(list[indice - 1].OidClaseExtra).OidSubmodulo &&
                                    info.OidProfesor == list[indice - 1].OidProfesor)
                                {
                                    misma_clase = true;
                                    rpt.SetParameterValue(lista[indice], "");
                                    ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).ObjectFormat.EnableSuppress = true;
                                    if (!alumnos)
                                    {
                                        InstructorInfo item       = instructores.GetItem(info.OidProfesor);
                                        string         instructor = item.Alias;
                                        instructor += Environment.NewLine;
                                        int ind = aux.IndexOf(instructor);
                                        if (ind == -1)
                                        {
                                            misma_clase = false;
                                        }
                                    }
                                    else
                                    {
                                        aux = Environment.NewLine + aux;
                                    }

                                    if (misma_clase)
                                    {
                                        ((FieldObject)(rpt.Section3.ReportObjects[lista[ultimo]])).Height = ((FieldObject)(rpt.Section3.ReportObjects[lista[ultimo]])).Height + 720;
                                        rpt.SetParameterValue(lista[ultimo], aux);
                                        if (n_clases == 1)
                                        {
                                            ((FieldObject)(rpt.Section3.ReportObjects[lista[ultimo]])).Top += 80;
                                        }
                                        n_clases++;
                                    }
                                }
                                if (!misma_clase)
                                {
                                    ModuloInfo modulo = ModuloInfo.Get(extra.OidModulo, false);
                                    aux  = Environment.NewLine + modulo.Alias + Environment.NewLine;
                                    aux += extra.Submodulo + Environment.NewLine;
                                    if (!alumnos)
                                    {
                                        InstructorInfo item       = instructores.GetItem(info.OidProfesor);
                                        string         instructor = item.Alias;
                                        instructor += Environment.NewLine;
                                        aux        += instructor;
                                    }
                                    ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).ObjectFormat.EnableSuppress = false;
                                    ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).Top -= 80;
                                    rpt.SetParameterValue(lista[indice], aux);
                                    ultimo   = indice;
                                    n_clases = 1;
                                }
                            }
                            else
                            {
                                ModuloInfo modulo = ModuloInfo.Get(extra.OidModulo, false);
                                aux  = Environment.NewLine + modulo.Alias + Environment.NewLine;
                                aux += extra.Submodulo + Environment.NewLine;
                                if (!alumnos)
                                {
                                    InstructorInfo item       = instructores.GetItem(info.OidProfesor);
                                    string         instructor = item.Alias;
                                    instructor += Environment.NewLine;
                                    aux        += instructor;
                                }
                                ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).ObjectFormat.EnableSuppress = false;
                                ((FieldObject)(rpt.Section3.ReportObjects[lista[indice]])).Top -= 80;
                                rpt.SetParameterValue(lista[indice], aux);
                                ultimo   = indice;
                                n_clases = 1;
                            }
                        }
                    }
                }
            }
        }
Пример #10
0
        /// <summary>
        /// Copia los atributos del objeto
        /// </summary>
        /// <param name="source">Objeto origen</param>
        protected void CopyValues(SesionInfo source, InstructorInfo instructor, ClaseTeoricaList teoricas,
                                  ClasePracticaList practicas, ClaseExtraList extras, string clases, long grupo, bool print_alumno)
        {
            if (source == null)
            {
                return;
            }

            Oid = source.Oid;
            _base.Record.OidHorario       = source.OidHorario;
            _base.Record.OidClaseTeorica  = source.OidClaseTeorica;
            _base.Record.OidClasePractica = source.OidClasePractica;
            _base.Record.OidClaseExtra    = source.OidClaseExtra;
            _base.Record.OidProfesor      = source.OidProfesor;
            _base.Record.Fecha            = source.Fecha;
            _base.Record.Hora             = source.Hora;
            _base.Record.Estado           = source.Estado;
            _base.Record.Observaciones    = source.Observaciones;
            _base.Record.Grupo            = grupo;
            _base.Record.Forzada          = source.Forzada;

            if (OidClaseTeorica != 0)
            {
                ClaseTeoricaInfo clase = teoricas.GetItem(OidClaseTeorica);
                if (clase != null)
                {
                    _modulo    = ModuloInfo.Get(clase.OidModulo, false).Alias;
                    _submodulo = SubmoduloInfo.Get(clase.OidSubmodulo, false).Codigo;    // clases;

                    if (instructor != null)
                    {
                        foreach (Submodulo_InstructorInfo item in instructor.Submodulos)
                        {
                            if (item.OidSubmodulo == clase.OidSubmodulo &&
                                item.FechaInicio.Date <= source.Fecha.Date &&
                                item.FechaFin >= source.Fecha.Date
                                )
                            {
                                instructor = InstructorInfo.Get(item.OidInstructorSuplente);
                                break;
                            }
                        }
                        if (instructor != null)
                        {
                            _instructor = instructor.Apellidos + ", " + instructor.NombrePropio;
                        }
                    }
                }
            }
            else
            {
                if (OidClasePractica != 0)
                {
                    ClasePracticaInfo clase = practicas.GetItem(OidClasePractica);
                    if (clase != null)
                    {
                        _modulo    = ModuloInfo.Get(clase.OidModulo, false).Alias;
                        _submodulo = clases;
                        _titulo    = clase.Alias;

                        if (instructor != null)
                        {
                            foreach (Submodulo_InstructorInfo item in instructor.Submodulos)
                            {
                                if (item.OidSubmodulo == clase.OidSubmodulo &&
                                    item.FechaInicio.Date <= source.Fecha.Date &&
                                    item.FechaFin >= source.Fecha.Date
                                    )
                                {
                                    instructor = InstructorInfo.Get(item.OidInstructorSuplente);
                                    break;
                                }
                            }
                            if (instructor != null)
                            {
                                _instructor = instructor.Apellidos + ", " + instructor.NombrePropio;
                            }
                        }
                    }
                }
                else
                {
                    if (OidClaseExtra != 0)
                    {
                        ClaseExtraInfo clase = extras.GetItem(OidClaseExtra);
                        if (clase != null)
                        {
                            _modulo    = ModuloInfo.Get(clase.OidModulo, false).Alias;
                            _submodulo = SubmoduloInfo.Get(clase.OidSubmodulo, false).Codigo;    //clases;

                            if (instructor != null)
                            {
                                foreach (Submodulo_InstructorInfo item in instructor.Submodulos)
                                {
                                    if (item.OidSubmodulo == clase.OidSubmodulo &&
                                        item.FechaInicio.Date <= source.Fecha.Date &&
                                        item.FechaFin >= source.Fecha.Date
                                        )
                                    {
                                        instructor = InstructorInfo.Get(item.OidInstructorSuplente);
                                        break;
                                    }
                                }
                                if (instructor != null)
                                {
                                    _instructor = instructor.Apellidos + ", " + instructor.NombrePropio;
                                }
                            }
                        }
                    }
                }
            }

            if (print_alumno)
            {
                _instructor = string.Empty;
            }
        }