Esempio n. 1
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                ValidateForm();
                var vigente = rdNo.Checked ? true : false;
                var roles   = lbRoles.Items.Cast <Model.Rol>().ToList();
                var hoteles = lbHoteles.Items.Cast <Model.Hotel>().ToList();

                if (_editObject == null || _editObject.Id == 0)
                {
                    var direccion = new Model.Direccion(
                        txtCalle.Text,
                        Decimal.Parse(txtNumeroCalle.Text),
                        0,
                        "",
                        "",
                        null);
                    var datosPersona = new Model.Persona(
                        txtNombre.Text,
                        txtApellido.Text,
                        dtFechaNacimiento.Value,
                        txtTelefono.Text,
                        (Model.TipoDocumento)cbTipoDocumento.SelectedValue,
                        Decimal.Parse(txtNumeroDocumento.Text),
                        direccion,
                        txtMail.Text,
                        null,
                        false);
                    _editObject = new Model.Usuario(
                        txtNombreUsuario.Text,
                        txtPassword.Text,
                        vigente,
                        datosPersona,
                        roles,
                        hoteles);
                }
                else
                {
                    _editObject.NombreUsuario                 = txtNombreUsuario.Text;
                    _editObject.Password                      = txtPassword.Text;
                    _editObject.Baja                          = vigente;
                    _editObject.Persona.Nombre                = txtNombre.Text;
                    _editObject.Persona.Apellido              = txtApellido.Text;
                    _editObject.Persona.Mail                  = txtMail.Text;
                    _editObject.Persona.Telefono              = txtTelefono.Text;
                    _editObject.Persona.TipoDocumento         = (Model.TipoDocumento)cbTipoDocumento.SelectedValue;
                    _editObject.Persona.NumeroDocumento       = Decimal.Parse(txtNumeroDocumento.Text);
                    _editObject.Persona.FechaNacimiento       = dtFechaNacimiento.Value;
                    _editObject.Persona.Direccion.Calle       = txtCalle.Text;
                    _editObject.Persona.Direccion.NumeroCalle = Decimal.Parse(txtNumeroCalle.Text);

                    _editObject.Roles            = roles;
                    _editObject.HotelesAsignados = hoteles;
                }
                DAO.DAOFactory.UsuarioDAO.CreateOrUpdate(_editObject);

                if (_listado != null)
                {
                    _listado.UpdateUsuarios();
                }

                Close();
            }
            catch (Exception ex)
            {
                string            message = ex.Message;
                string            caption = "Error de Validación";
                MessageBoxButtons buttons = MessageBoxButtons.OK;
                MessageBox.Show(message, caption, buttons);
            }
        }