Пример #1
0
        private void btnEditar_Click(object sender, EventArgs e)
        {
            if (dgvDatos.SelectedRows.Count == 0)
            {
                return;
            }

            DataGridViewRow r = dgvDatos.SelectedRows[0];
            var             empleadoListDto = r.Tag as EmpleadoListDto;
            var             empleadoCopia   = (EmpleadoListDto)empleadoListDto.Clone();
            frmEmpleadoAE   frm             = DI.Create <frmEmpleadoAE>();

            frm.Titulo("Editar Empleado");
            EmpleadoEditDto empleadoEditDto = servicio.GetEmpleadoPorId(empleadoListDto.EmpleadoId);

            frm.SetEmpleado(empleadoEditDto);
            DialogResult dr = frm.ShowDialog(this);

            if (dr == DialogResult.Cancel)
            {
                return;
            }

            empleadoEditDto = frm.GetEmpleado();
            if (servicio.Existe(empleadoEditDto))
            {
                frmMessageBox messageBox = new frmMessageBox();
                messageBox.Show();
                messageBox.ShowError("Empleado Existente", $"{empleadoEditDto.Nombre}, {empleadoEditDto.Apellido} ya existe en la base de datos");
                SetearFila(r, empleadoCopia);
                return;
            }
            try
            {
                servicio.Guardar(empleadoEditDto);
                var eListDto = mapper.Map <EmpleadoListDto>(empleadoEditDto);
                empleadoListDto.TipoDeTarea = (servicioTipoDeTarea
                                               .GetTipoDeTareaId(empleadoEditDto.TipoDeTareaId))
                                              .Descripcion;
                SetearFila(r, eListDto);
                frmMessageBox messageBox = new frmMessageBox();
                messageBox.Show();
                messageBox.ShowInfo("Empleado Editado", $"{eListDto.Nombre} " +
                                    $"ah sido editada correctamente");
            }
            catch (Exception)
            {
                frmMessageBox messageBox = new frmMessageBox();
                messageBox.Show();
                messageBox.ShowError("Error", $"Ocurrio un problema no se pudo completar la transaccion. Intentelo nuevamente.");
            }
        }
Пример #2
0
        private void btnAgregar_Click(object sender, EventArgs e)
        {
            frmEmpleadoAE frm = DI.Create <frmEmpleadoAE>();

            frm.Titulo("Nuevo Empleado");
            DialogResult dr = frm.ShowDialog(this);

            if (dr == DialogResult.OK)
            {
                try
                {
                    EmpleadoEditDto empleadoEditDto = frm.GetEmpleado();
                    if (servicio.Existe(empleadoEditDto))
                    {
                        frmMessageBox messageBox = new frmMessageBox();
                        messageBox.Show();
                        messageBox.ShowError("Empleado Existente", $"{empleadoEditDto.Nombre}, {empleadoEditDto.Apellido} ya existe en la base de datos");
                    }
                    servicio.Guardar(empleadoEditDto);
                    DataGridViewRow r = ConstruirFila();
                    EmpleadoListDto empleadoListDto = mapper.Map <EmpleadoListDto>(empleadoEditDto);
                    empleadoListDto.TipoDeTarea = (servicioTipoDeTarea
                                                   .GetTipoDeTareaId(empleadoEditDto.TipoDeTareaId))
                                                  .Descripcion;
                    SetearFila(r, empleadoListDto);
                    AgregarFila(r);
                    frmMessageBox frmMessage = new frmMessageBox();
                    frmMessage.Show();
                    frmMessage.ShowInfo("Registro Agregado", $"{empleadoListDto.Nombre} ya a sido agergado");
                }
                catch (Exception)
                {
                    frmMessageBox frmMessage = new frmMessageBox();
                    frm.Show();
                    frmMessage.ShowError("Error", $"El registro no se pudo agregar. Intentelo nuevamente");
                }
            }
        }