Beispiel #1
0
        public List <ClaseExtraInfo> GetClasesOrdenadas()
        {
            SubmoduloList         submodulos = SubmoduloList.GetList(false);
            ModuloList            modulos    = ModuloList.GetList(false);
            List <ClaseExtraInfo> clases     = new List <ClaseExtraInfo>();

            foreach (ClaseExtraInfo clase in this)
            {
                clases.Add(clase);
            }

            for (int i = 0; i < clases.Count - 1; i++)
            {
                for (int j = i + 1; j < clases.Count; j++)
                {
                    string codigo_i = submodulos.GetItem(clases[i].OidSubmodulo).CodigoOrden;
                    string codigo_j = submodulos.GetItem(clases[j].OidSubmodulo).CodigoOrden;
                    int    valor    = codigo_i.CompareTo(codigo_j);

                    if (valor == 1)
                    {
                        ClaseExtraInfo aux = clases[i];
                        clases[i] = clases[j];
                        clases[j] = aux;
                    }
                }
            }

            return(clases);
        }
        /// <summary>
        /// Copia los atributos del objeto
        /// </summary>
        /// <param name="source">Objeto origen</param>
        protected void CopyValues(HorarioInfo source, InstructorList instructores, ModuloList modulos)
        {
            if (source == null)
            {
                return;
            }

            Oid = source.Oid;
            _base.Record.OidPlan       = source.OidPlan;
            _base.Record.OidPromocion  = source.OidPromocion;
            _base.Record.FechaInicial  = source.FechaInicial;
            _base.Record.FechaFinal    = source.FechaFinal;
            _base.Record.Observaciones = source.Observaciones;

            _lunes     = _base.Record.FechaInicial.Day;
            _martes    = _base.Record.FechaInicial.AddDays(1).Day;
            _miercoles = _base.Record.FechaInicial.AddDays(2).Day;
            _jueves    = _base.Record.FechaInicial.AddDays(3).Day;
            _viernes   = _base.Record.FechaInicial.AddDays(4).Day;
            _sabado    = _base.Record.FechaFinal.Day;

            PromocionInfo promo = moleQule.Library.Instruction.PromocionInfo.Get(_base.Record.OidPromocion, true);

            _n_alumnos      = promo.Alumnos.Count;
            _base.Promocion = promo.Nombre;

            CultureInfo cultura = new CultureInfo("es-ES");

            _fecha_titulo = cultura.TextInfo.ToTitleCase(cultura.DateTimeFormat.MonthNames[FechaInicial.Month - 1]) +
                            " de " + FechaInicial.Year.ToString();
        }
        /// <summary>
        /// Función que devuelve el nombre del módulo a la que pertenece una clase a partir del
        /// Oid y el tipo de la misma
        /// </summary>
        /// <param name="oid"></param>
        /// <param name="tipo"></param>
        /// <param name="teoricas"></param>
        /// <param name="practicas"></param>
        /// <param name="extras"></param>
        /// <param name="modulos"></param>
        /// <returns></returns>
        public string ObtieneNombreModulo(long oid, long tipo, ModuloList modulos)
        {
            long oid_clase  = oid;
            long oid_modulo = 0;

            if (oid_clase < 0)
            {
                return(string.Empty);
            }

            if (tipo.Equals(0))
            {
                ClaseTeoricaInfo clase = _teoricas.GetItem(oid_clase);
                oid_modulo = clase.OidModulo;
            }
            else
            {
                if (tipo.Equals(1))
                {
                    ClasePracticaInfo clase = null;
                    foreach (ClasePracticaList lista in _practicas)
                    {
                        clase = lista.GetItem(oid_clase);
                        if (clase != null)
                        {
                            break;
                        }
                    }
                    oid_modulo = clase.OidModulo;
                }
            }
            ModuloInfo modulo = modulos.GetItem(oid_modulo);

            return(modulo.Texto);
        }
        /// <summary>
        /// Copia los atributos del objeto
        /// </summary>
        /// <param name="source">Objeto origen</param>
        protected void CopyValues(SesionCronogramaInfo source, ModuloList modulos, ClaseTeoricaList teoricas, ClasePracticaList practicas)
        {
            if (source == null)
            {
                return;
            }

            Oid = source.Oid;
            _base.Record.OidCronograma    = source.OidCronograma;
            _base.Record.OidClaseTeorica  = source.OidClaseTeorica;
            _base.Record.OidClasePractica = source.OidClasePractica;
            _base.Record.Semana           = source.Semana;
            _base.Record.Dia    = source.Dia;
            _base.Record.Turno  = source.Turno;
            _base.Record.Numero = source.Numero;
            _base.Record.Texto  = source.Texto;
            _base.Clase         = source.Clase;
            _base.Modulo        = source.Modulo;
            _base.Record.Fecha  = source.Fecha;
            _base.Record.Hora   = source.Hora;
            _base.Duracion      = source.Duracion;

            long oid_modulo = 0;

            if (source.OidClaseTeorica > 0)
            {
                ClaseTeoricaInfo teorica = teoricas.GetItem(source.OidClaseTeorica);
                if (teorica != null)
                {
                    oid_modulo = teorica.OidModulo;
                }
            }

            if (source.OidClasePractica > 0)
            {
                ClasePracticaInfo practica = practicas.GetItem(source.OidClasePractica);
                if (practica != null)
                {
                    oid_modulo = practica.OidModulo;
                }
            }

            if (oid_modulo > 0)
            {
                ModuloInfo modulo = modulos.GetItem(oid_modulo);
                if (modulo != null)
                {
                    _base.Modulo = modulo.NumeroModulo + " " + modulo.Texto;
                }
            }

            //if (_base.Record.OidClaseTeorica != 0)
            //    _base.Duracion = "1";
            //else
            //    _base.Duracion = "5";
        }
Beispiel #5
0
            protected override void DataPortal_Execute()
            {
                // Buscar por codigo
                CriteriaEx criteria = Modulo.GetCriteria(Modulo.OpenSession());

                criteria.AddCodeSearch(_codigo);
                ModuloList list = ModuloList.GetList(criteria);

                _exists = !(list.Count == 0);
            }
        public HorarioRpt GetHorarioReport(HorarioInfo item,
                                           bool alumno,
                                           /*bool autorizado,*/
                                           ClaseTeoricaList teoricas,
                                           List <ClasePracticaList> practicas,
                                           ClaseExtraList extras,
                                           InstructorList instructores,
                                           ModuloList modulos,
                                           ListaSesiones sesiones,
                                           bool print_timestamp,
                                           DateTime timestamp)
        {
            if (item == null)
            {
                return(null);
            }

            HorarioRpt doc = new HorarioRpt();

            if (instructores == null)
            {
                instructores = InstructorList.GetList(false);
            }
            if (modulos == null)
            {
                modulos = ModuloList.GetList(false);
            }

            List <HorarioPrint> pList = new List <HorarioPrint>();

            pList.Add(item.GetPrintObject(instructores, modulos));

            doc.SetDataSource(pList);

            FormatReport(doc, sesiones, alumno /*, autorizado*/, teoricas, practicas, extras /*, instructores*/);

            if (print_timestamp)
            {
                doc.SetParameterValue("Timestamp", timestamp.ToString("dd/MM/yy HH:mm:ss"));
            }
            else
            {
                doc.SetParameterValue("Timestamp", string.Empty);
            }


            return(doc);
        }
Beispiel #7
0
        public HComboBoxSourceList(ModuloList lista, bool empty_item)
        {
            if (empty_item)
            {
                this.AddEmptyItem();
            }

            foreach (ModuloInfo item in lista)
            {
                ComboBoxSource combo = new ComboBoxSource();

                combo.Texto = item.NumeroModulo + " " + item.Texto;
                combo.Oid   = item.Oid;

                this.Add(combo);
            }
        }
Beispiel #8
0
        /// <summary>
        /// Devuelve el siguiente Serial de Alumno.
        /// </summary>
        /// <returns>Código de 9 cifras</returns>
        private static Int64 GetNewSerial()
        {
            // Obtenemos la lista de clientes ordenados por serial
            SortedBindingList <ModuloInfo> modulos =
                ModuloList.GetSortedList("Serial", ListSortDirection.Ascending);

            // Obtenemos el último serial de servicio
            Int64 lastcode;

            if (modulos.Count > 0)
            {
                lastcode = modulos[modulos.Count - 1].Serial;
            }
            else
            {
                lastcode = Convert.ToInt64(Resources.Defaults.MODULO_CODE_FORMAT);
            }

            lastcode++;
            return(lastcode);
        }
 public HorarioPrint GetPrintObject(InstructorList instructores, ModuloList modulos)
 {
     return(HorarioPrint.New(this, instructores, modulos));
 }
        public CronogramaRpt GetCronogramaReport(CronogramaInfo item, CompanyInfo empresa, ModuloList modulos,
                                                 ClaseTeoricaList teoricas, ClasePracticaList practicas, SortedBindingList <SesionCronogramaInfo> lista)
        {
            if (item == null)
            {
                return(null);
            }

            CronogramaRpt doc = new CronogramaRpt();

            List <CronogramaPrint> pList = new List <CronogramaPrint>();

            //List<SesionCronogramaInfo> sesiones = new List<SesionCronogramaInfo>();

            //foreach (SesionCronogramaInfo ses in item.Sesiones)
            //    sesiones.Add(ses.GetPrintObject(modulos, teoricas, practicas));

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


            pList.Add(item.GetPrintObject(empresa));
            doc.Subreports["SesionCronogramaListSubRpt.rpt"].SetDataSource(lista);

            doc.SetDataSource(pList);
            doc.SetParameterValue("Empresa", empresa.Name);
            if (empresa.Oid == 2)
            {
                ((CrystalDecisions.CrystalReports.Engine.TextObject)(doc.Section5.ReportObjects["Text1"])).Color = System.Drawing.Color.FromArgb(13, 176, 46);
            }

            return(doc);
        }
        public SesionCronogramaListSubRpt GetSesionCronogramaListReport(CronogramaInfo cronograma,
                                                                        SesionCronogramaList sesiones, ModuloList modulos,
                                                                        ClaseTeoricaList teoricas, ClasePracticaList practicas)
        {
            if (cronograma == null)
            {
                return(null);
            }
            if (sesiones.Count == 0)
            {
                return(null);
            }

            SesionCronogramaListSubRpt doc = new SesionCronogramaListSubRpt();

            List <SesionCronogramaPrint> pList = new List <SesionCronogramaPrint>();

            foreach (SesionCronogramaInfo sesion in sesiones)
            {
                pList.Add(sesion.GetPrintObject(modulos, teoricas, practicas));
            }

            doc.SetDataSource(pList);
            doc.SetParameterValue("Empresa", Schema.Name);
            if (Schema.Oid == 2)
            {
                ((CrystalDecisions.CrystalReports.Engine.TextObject)(doc.Section5.ReportObjects["Text1"])).Color = System.Drawing.Color.FromArgb(13, 176, 46);
            }

            return(doc);
        }
Beispiel #12
0
        public new static IAgenteHipatiaList GetAgentes(EntidadInfo entidad)
        {
            IAgenteHipatiaList lista = new IAgenteHipatiaList(new List <IAgenteHipatia>());

            if (entidad.Tipo == typeof(Alumno).Name)
            {
                AlumnoList alumnos = AlumnoList.GetList(false);

                foreach (AlumnoInfo obj in alumnos)
                {
                    if (entidad.Agentes.GetItemByProperty("Oid", obj.Oid) == null)
                    {
                        lista.Add(obj);
                    }
                }
            }
            else if (entidad.Tipo == typeof(Instructor).Name)
            {
                InstructorList instructores = InstructorList.GetList(false);

                foreach (InstructorInfo obj in instructores)
                {
                    if (entidad.Agentes.GetItemByProperty("Oid", obj.Oid) == null)
                    {
                        lista.Add(obj);
                    }
                }
            }
            else if (entidad.Tipo == typeof(Promocion).Name)
            {
                PromocionList promociones = PromocionList.GetList(false);

                foreach (PromocionInfo obj in promociones)
                {
                    if (entidad.Agentes.GetItemByProperty("Oid", obj.Oid) == null)
                    {
                        lista.Add(obj);
                    }
                }
            }
            else if (entidad.Tipo == typeof(Curso).Name)
            {
                CursoList cursos = CursoList.GetList(false);

                foreach (CursoInfo obj in cursos)
                {
                    if (entidad.Agentes.GetItemByProperty("Oid", obj.Oid) == null)
                    {
                        lista.Add(obj);
                    }
                }
            }
            else if (entidad.Tipo == typeof(Modulo).Name)
            {
                ModuloList modulos = ModuloList.GetList(false);

                foreach (ModuloInfo obj in modulos)
                {
                    if (entidad.Agentes.GetItemByProperty("Oid", obj.Oid) == null)
                    {
                        lista.Add(obj);
                    }
                }
            }
            else
            {
                throw new iQException("No se ha encontrado el tipo de entidad " + entidad.Tipo);
            }

            return(lista);
        }
Beispiel #13
0
 public HComboBoxSourceList(ModuloList lista) : this(lista, true)
 {
 }
Beispiel #14
0
 public SesionCronogramaPrint GetPrintObject(ModuloList modulos, ClaseTeoricaList teoricas, ClasePracticaList practicas)
 {
     return(SesionCronogramaPrint.New(this, modulos, teoricas, practicas));
 }