private async void frmMantenciones_Load(object sender, EventArgs e) { Main.Enabled = false; do { Depto = await ClienteHttp.Peticion.Get <Departamento>(idDepto); } while (Depto == null); pEdicion.Height = 0; funcionarios = new List <Funcionario>(); Fun = await ClienteHttp.Peticion.Get <PersonaUsuario>("localidad/asignado/" + Depto.Id_localidad, SesionManager.Token, urlEspecial : true); Thread.Sleep(300); cbTipo.DataSource = Main.Repos.TipoMantenciones; cbTipo.DisplayMember = "Nombre"; cbTipo.ValueMember = "Id_tipo"; dtFecha.MinDate = DateTime.Now; CargarDatos(); }
public async Task <IActionResult> Post([FromBody] PersonaUsuario creador, [FromHeader(Name = "User-Agent")] String userAgent) { if (!ConexionOracle.Activa) { ConexionOracle.Open(); if (!ConexionOracle.Activa) { return(StatusCode(504, ConexionOracle.NoConResponse)); } } try { Usuario usuario = creador.Usuario; Persona persona = creador.Persona; usuario.Username = usuario.Username.ToLower(); if (!userAgent.Equals("TurismoRealDesktop")) { usuario.Id_rol = 5; usuario.Clave = Tools.Encriptar(usuario.Clave); } else { usuario.Clave = Tools.Encriptar(Tools.CodigoAleatorio(persona.Rut)); } usuario.Activo = '1'; usuario.Frecuente = '0'; usuario.Rut = persona.Rut; if (userAgent.Equals("TurismoRealDesktop")) { usuario.Activo = '0'; usuario.Clave = Tools.Encriptar(Tools.CodigoAleatorio(usuario.Username)); var reset = new ClaveReset { Codigo = Tools.CodigoAleatorio(persona.Rut, 20), Fecha = DateTime.Now, Vencimiento = DateTime.Now.AddMonths(1), Canjeado = '0', Username = usuario.Username }; if (await cmd.Insert(reset)) { if (await cmd.Insert(persona, false)) { if (await cmd.Insert(usuario, false)) { var rol = await cmd.Get <Rol>(usuario.Id_rol); String salt = Tools.EncriptarUrlCompatible(usuario.Username + reset.Codigo); var m = Mensajes.ActivacionCuenta; m.AgregarDestinatario(persona.Email, persona.Nombres + " " + persona.Apellidos); m.ConfigurarAsunto("rol", rol.Nombre); m.ConfigurarMensaje("rol", rol.Nombre); m.ConfigurarMensaje("usuario", usuario.Username); m.ConfigurarMensaje("codigo", reset.Codigo); m.ConfigurarMensaje("salt", salt); ClienteSmtp.Enviar(m); return(Ok()); } await cmd.Delete(usuario); } await cmd.Delete(persona); } } else if (await cmd.Insert(persona, false)) { if (await cmd.Insert(usuario, false)) { return(Ok(Tools.GenerarToken(usuario, persona))); } await cmd.Delete(persona); } return(BadRequest()); } catch (Exception e) { var a = new { Error = new { Mensaje = e.Message, Inner = e.InnerException, Fuente = e.Source } }; return(StatusCode(400, a)); } }
private async void PrepararModificar() { Main.EstadoTrabajo = EstadoTrabajo.Modificando; usuarioActual = null; do { usuarioActual = await ClienteHttp.Peticion.Get <PersonaUsuario>(tablaUsuarios.SelectedRows[0].Cells[0].Value.ToString(), SesionManager.Token); } while (usuarioActual == null); lbEstado.Visible = true; chkActivo.Visible = true; btnAplicar.Text = "Aplicar"; chkClave.Checked = false; claveVisible = false; btnOjo.Image = imgCerrado; pClave.Visible = true; chkClave.Visible = true; pClave.Enabled = false; PrepararComboboxes(); //Se preparan los campos var u = usuarioActual.Usuario; var p = usuarioActual.Persona; txtClave.Text = ""; txtUsername.Text = u.Username; txtUsername.Enabled = false; chkActivo.Checked = u.Activo == '1'; txtFrecuente.Text = (u.Frecuente == '1') ? "Si" : "No"; if (u.Id_rol == 5) { txtFrecuente.Visible = true; lbFrecuente.Visible = true; } else { txtFrecuente.Visible = false; lbFrecuente.Visible = false; } txtRut.Text = p.Rut; txtRut.Enabled = false; txtNombres.Text = p.Nombres; txtApellidos.Text = p.Apellidos; try { dtNacimiento.Value = p.Nacimiento; } catch (Exception e) { dtNacimiento.Value = dtNacimiento.MaxDate; } txtEmail.Text = p.Email; txtTelefono.Text = p.Telefono.ToString(); txtDireccion.Text = p.Direccion; cbRol.SelectedItem = Repositorios.Buscar((List <Rol>)cbRol.DataSource, "Id_rol", u.Id_rol); cbRegion.SelectedItem = Repositorios.Buscar((List <ProxyRegion>)cbRegion.DataSource, "Region", p.Region); cbRegion_SelectionChangeCommitted(cbRegion); cbComuna.SelectedItem = Repositorios.Buscar((List <Comuna>)cbComuna.DataSource, "Nombre", p.Comuna); cbGenero.SelectedItem = Repositorios.Buscar((List <Genero>)cbGenero.DataSource, "Id_genero", p.Id_genero); cbRegion.Refresh(); cbComuna.Refresh(); cbGenero.Refresh(); cbRol.Refresh(); }