Ejemplo n.º 1
0
        private void CargarArchivo(string rutaArchivo)
        {
            try
            {
                this.lstUiHorarios.Clear();

                using (var fs = File.OpenRead(rutaArchivo))
                    using (var reader = new StreamReader(fs))
                    {
                        while (!reader.EndOfStream)
                        {
                            var line = reader.ReadLine();

                            BE.UI.Horario uiHorario = this.CSVtoUI(line);

                            this.lstUiHorarios.Add(uiHorario);
                        }
                    }

                this.CargarHorarioMensual();
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 2
0
 public bool Actualizar(BE.UI.Horario uiHorario)
 {
     try
     {
         var beHorario = this.HorarioUItoBE(uiHorario);
         return(new DA.Horario().Actualizar(beHorario));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Ejemplo n.º 3
0
 public bool Insertar(ref BE.UI.Horario uiHorario)
 {
     try
     {
         var beHorario = this.HorarioUItoBE(uiHorario);
         return(new DA.Horario().Insertar(ref beHorario));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Ejemplo n.º 4
0
        private BE.Horario HorarioUItoBE(BE.UI.Horario uiHorario)
        {
            var beHorario = new BE.Horario();

            beHorario.IdHorario   = uiHorario.IdHorario;
            beHorario.Anho        = uiHorario.Anho;
            beHorario.Semana      = uiHorario.Semana;
            beHorario.FechaInicio = uiHorario.FechaHoraInicio.Date;
            beHorario.FechaFinal  = uiHorario.FechaHoraFinal.Date;
            beHorario.HoraInicio  = uiHorario.FechaHoraInicio.TimeOfDay;
            beHorario.HoraFinal   = uiHorario.FechaHoraFinal.TimeOfDay;
            beHorario.IdSala      = uiHorario.SalaId;
            beHorario.IdCargo     = uiHorario.CargoId;
            beHorario.Fecha       = uiHorario.Fecha;
            beHorario.Codigo      = uiHorario.EmpleadoCodigo;
            beHorario.Dia         = uiHorario.DiaNumero;
            beHorario.Turno       = uiHorario.Turno;
            beHorario.Horas       = uiHorario.Horas;
            return(beHorario);
        }
Ejemplo n.º 5
0
        public List <BE.UI.Horario> ListarSemana(int anho, byte semana, int idSala)
        {
            try
            {
                List <BE.Horario> lstBeHorario = new DA.Horario().ListarSemana(anho, semana, idSala);

                var lstUiHorario = new List <BE.UI.Horario>();
                foreach (BE.Horario beHorario in lstBeHorario)
                {
                    BE.UI.Horario uiHorario = this.HorarioBEtoUI(beHorario);
                    lstUiHorario.Add(uiHorario);
                }

                return(lstUiHorario);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 6
0
        private BE.UI.Horario HorarioBEtoUI(BE.Horario beHorario)
        {
            string nombreCargo = "";
            var    beCargo     = new DA.Cargo().Obtener(beHorario.IdCargo);

            if (beCargo != null)
            {
                nombreCargo = beCargo.Nombre;
            }

            var uiHorario = new BE.UI.Horario();

            uiHorario.IdHorario       = beHorario.IdHorario;
            uiHorario.Anho            = beHorario.Anho;
            uiHorario.Semana          = beHorario.Semana;
            uiHorario.FechaHoraInicio = beHorario.FechaInicio.Add(beHorario.HoraInicio);
            uiHorario.FechaHoraFinal  = beHorario.FechaFinal.Add(beHorario.HoraFinal);
            uiHorario.SalaId          = beHorario.IdSala;
            uiHorario.CargoId         = beHorario.IdCargo;
            uiHorario.CargoNombre     = nombreCargo;
            uiHorario.Fecha           = beHorario.Fecha;
            uiHorario.EmpleadoCodigo  = beHorario.Codigo;

            if (uiHorario.EmpleadoCodigo.Length > 0)
            {
                string nombreEmpleado = new DA.Trabajador().ObtenerNombreCompleto(beHorario.Codigo);
                uiHorario.EmpleadoNombreCompleto = nombreEmpleado.Length == 0 ? "NO DEFINIDO" : nombreEmpleado;
            }
            else
            {
                uiHorario.EmpleadoNombreCompleto = "";
            }

            uiHorario.DiaNumero = beHorario.Dia;
            uiHorario.DiaNombre = this.ObtenerDia(beHorario.Dia);
            uiHorario.Turno     = beHorario.Turno;
            uiHorario.Horas     = beHorario.Horas;
            return(uiHorario);
        }
Ejemplo n.º 7
0
        private void BtnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (this.lblHorarios.Text.Length == 0)
                {
                    return;
                }

                if (Util.ConfirmationMessage("¿Desea guardar el horario semanal?") == false)
                {
                    return;
                }

                for (int i = 0; i < this.lstUiHorarioNuevos.Count; i++)
                {
                    BE.UI.Horario uiHorarioNuevo = this.lstUiHorarioNuevos[i];
                    bool          exito          = new LN.Horario().Insertar(ref uiHorarioNuevo);
                }

                for (int i = 0; i < this.lstUiHorarioEliminados.Count; i++)
                {
                    BE.UI.Horario uiHorarioEliminado = this.lstUiHorarioEliminados[i];
                    bool          exito = new LN.Horario().Eliminar(uiHorarioEliminado.IdHorario);
                }

                Util.InformationMessage("Se guardo el horario semanal");

                this.frmList.CargarListadoHorarios();

                this.Close();
            }
            catch (Exception ex)
            {
                Util.ErrorMessage(ex.Message);
            }
        }
Ejemplo n.º 8
0
        private BE.UI.Horario CSVtoUI(string line, char separator = ',')
        {
            try
            {
                BE.UI.Horario uiHorario = null;

                #region Obtener datos de la fila

                var values = line.Split(separator);

                string   nomCargo        = values[0].ToString();
                string   codEmpleado     = values[1].ToString();
                DateTime fechaHorario    = DateTime.ParseExact(values[2].ToString(), "dd/MM/yyyy", CultureInfo.InvariantCulture);
                byte     numDia          = (byte)fechaHorario.DayOfWeek;
                DateTime fechaHoraInicio = DateTime.ParseExact(values[3].ToString(), "dd/MM/yyyy HH:mm:ss", CultureInfo.InvariantCulture);
                DateTime fechaHoraFin    = DateTime.ParseExact(values[4].ToString(), "dd/MM/yyyy HH:mm:ss", CultureInfo.InvariantCulture);
                byte     horas           = (byte)(fechaHoraFin - fechaHoraInicio).TotalHours;
                byte     turno           = byte.Parse(values[5].ToString());

                #endregion

                var lstUiCargos     = new LN.Cargo().ListarCombo();
                var lstTrabajadores = this.ListadoTrabajadores();

                #region Cargar registro
                uiHorario = new BE.UI.Horario();

                uiHorario.IdHorario = 0;
                uiHorario.SalaId    = this.idSala;
                uiHorario.Anho      = fechaHorario.Year;
                uiHorario.Semana    = (byte)Util.GetWeekNumber(fechaHorario);

                uiHorario.FechaHoraInicio = fechaHoraInicio;
                uiHorario.FechaHoraFinal  = fechaHoraFin;

                var uiCargo = lstUiCargos.FirstOrDefault(x => x.Nombre.Equals(nomCargo));
                if (uiCargo != null)
                {
                    uiHorario.CargoId     = uiCargo.Id;
                    uiHorario.CargoNombre = uiCargo.Nombre;
                }

                uiHorario.Fecha = fechaHorario;

                uiHorario.EmpleadoCodigo = codEmpleado;
                var beTrabajador = lstTrabajadores.FirstOrDefault(x => x.Codigo.Equals(codEmpleado));
                if (beTrabajador != null)
                {
                    uiHorario.EmpleadoNombreCompleto = beTrabajador.Nombre;
                }

                uiHorario.DiaNumero = numDia;
                uiHorario.DiaNombre = Util.GetNameOfDay(numDia);

                uiHorario.Turno = turno;
                uiHorario.Horas = horas;

                #endregion

                return(uiHorario);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 9
0
        private void btnHorarioAgregar_Click(object sender, EventArgs e)
        {
            try
            {
                #region Validaciones

                if (this.CboCargo.SelectedIndex == 0)
                {
                    return;
                }

                if (this.cboEmpleado.SelectedIndex == 0)
                {
                    return;
                }

                if (this.CboDia.SelectedIndex == 0)
                {
                    return;
                }

                #endregion

                var uiHorario = new BE.UI.Horario();
                uiHorario.IdHorario       = this.idHorario;
                uiHorario.Anho            = this.uiHorarioSemanal.Anho;
                uiHorario.Semana          = this.uiHorarioSemanal.Semana;
                uiHorario.SalaId          = this.uiHorarioSemanal.SalaId;
                uiHorario.FechaHoraInicio = this.dtpTurnoDesde.Value;
                uiHorario.FechaHoraFinal  = this.dtpTurnoHasta.Value;

                var uiCargo = (BE.UI.Cargo) this.CboCargo.SelectedItem;
                uiHorario.CargoId     = uiCargo.Id;
                uiHorario.CargoNombre = uiCargo.Nombre;

                uiHorario.Fecha = DateTime.Parse(this.txtFechaDia.Text);

                var beEmpleado = (BE.Record) this.cboEmpleado.SelectedItem;
                uiHorario.EmpleadoCodigo         = beEmpleado.Codigo;
                uiHorario.EmpleadoNombreCompleto = beEmpleado.Nombre;

                var beDia = (BE.Record) this.CboDia.SelectedItem;
                uiHorario.DiaNumero = byte.Parse(beDia.Codigo);
                uiHorario.DiaNombre = beDia.Nombre;

                uiHorario.Turno = byte.Parse(this.nudTurno.Value.ToString());
                uiHorario.Horas = byte.Parse(this.txtHoras.Text);

                this.lstUiHorario.Add(uiHorario);
                this.lstUiHorarioNuevos.Add(uiHorario);

                BindingSource source = new BindingSource();
                source.DataSource           = this.lstUiHorario;
                this.dgvHorarios.DataSource = source;

                this.txtNroRegistros.Text = this.lstUiHorario.Count.ToString();

                int lastRowIndex = this.dgvHorarios.Rows.Count - 1;
                this.dgvHorarios.Rows[lastRowIndex].Selected     = true;
                this.dgvHorarios.FirstDisplayedScrollingRowIndex = lastRowIndex;
                this.dgvHorarios.Update();

                this.LimpiarHorario();
            }
            catch (Exception ex)
            {
                Util.ErrorMessage(ex.Message);
            }
        }