public void ModificarTareas(Alc.Model.ControlHoras.Tareas tareas, Tareas ventanaTareas)
        {
            try
            {
                if (accesoDatos == null)
                {
                    accesoDatos = new AccesoFichador();
                }

                var idSel  = listaTareas.IDUsuario;
                var usuSel = accesoDatos.getUsuarioById(idSel);
                listaTareas.IDUsuario        = idSel;
                listaTareas.descripcionTarea = txtDescripcionAM2.Text;

                var val = listaTareas.duracion;

                if (int.TryParse(nmrDuracion2.Value.ToString(), out val) == true && val >= 0)
                {
                    listaTareas.duracion = Convert.ToInt32(nmrDuracion2.Value);
                }
                else
                {
                    MessageBox.Show("No se pueden poner numeros");
                }

                listaTareas.nombreTarea = txtNombreTareaAM2.Text;
                var calculoHoraInicio = accesoDatos.sumaDiaYHora(DateDiaPickerAM2.Value, (DateTime)radTimePickerHoraInicioAM2.Value);
                listaTareas.HoraInicioTarea = Convert.ToDateTime(calculoHoraInicio);
                DateTime dt = (DateTime)listaTareas.HoraInicioTarea;
                dt = dt.AddMinutes(listaTareas.duracion);
                listaTareas.HoraFinTarea = dt;

                int minutosFichados = accesoDatos.obtenerHorasTrabajadasDiaFichador(DateDiaPickerAM2.Value.ToString("d"), idSel);

                if (listaTareas.duracion <= minutosFichados)
                {
                    accesoDatos.ControlHorasDB.Update(listaTareas);
                }
                else
                {
                    MessageBox.Show("REVISAR MINUTOS DE LAS TAREAS");
                }

                this.Close();
            }
            catch (Exception ex)
            {
                accesoDatos.guardarLog(ex.Message, 2);
            }
            accesoDatos.guardarLog("ModificarTareas correctamente realizado", 4);
        }
Example #2
0
        public AnadirYModificar(Alc.Model.ControlHoras.Tareas tareas, Tareas ventanaTareas)
        {
            InitializeComponent();

            if (accesoDatos == null)
            {
                accesoDatos = new AccesoFichador();
            }

            if (tareas == null)
            {
                comprueba    = true;
                this.vTareas = ventanaTareas;
                this.Text    = "Añadir";
                label1.Text  = "*Añadir una Tarea";
            }
            else
            {
                comprueba             = false;
                this.Text             = "Modificar";
                label1.Text           = "*Modificar Tarea";
                txtDescripcionAM.Text = tareas.descripcionTarea;
                nmrDuracion.Value     = tareas.duracion;
                txtNombreTareaAM.Text = tareas.nombreTarea;
                DateDiaPickerAM.Text  = Convert.ToDateTime(tareas.HoraInicioTarea).ToString("d");

                DateDiaPickerAM.Value = Convert.ToDateTime(tareas.HoraInicioTarea);
                //radTimePickerHoraInicioAM.Value = Convert.ToDateTime(tareas.HoraInicioTarea);

                this.vTareas = ventanaTareas;

                if (accesoDatos == null)
                {
                    accesoDatos = new AccesoFichador();
                }

                //por un lado relleno el combobox
                var listas = accesoDatos.RellenaComboBox();

                cBoxListadoAM.DisplayMember = "nombre";
                cBoxListadoAM.ValueMember   = "nombre";

                //por otro lado
                var idSel  = tareas.IDUsuario;
                var usuSel = accesoDatos.getUsuarioById(idSel);

                cBoxListadoAM.DataSource    = listas;
                cBoxListadoAM.SelectedValue = usuSel;

                //PARA CONTROLAR EL MODIFICAR LAS HORAS:
                var day = DateDiaPickerAM.Value.ToString("d");

                //sacamos la hora de fin de ese dia y de ese id
                var valorMax = accesoDatos.GetHoraFinByDia(Convert.ToDateTime(day), idSel);
                var valorMin = accesoDatos.GetHoraInicioByDia(Convert.ToDateTime(day), idSel);
                //construimos la fecha haciendo la suma del dia + la hora
                //le decimos que el valor maximo sea esa fecha;
                radTimePickerHoraInicioAM.MaxValue = Convert.ToDateTime(valorMax);
                radTimePickerHoraInicioAM.MinValue = Convert.ToDateTime(valorMin);

                cBoxListadoAM.Enabled = false;
                tareaslista           = tareas;
                tareas = tar;
            }
        }