public Object ActualizarEmpleado(int id_empleado, [FromBody] ModeloEmpleado me) { using (var transaction = db.Database.BeginTransaction()) { try { var empleado = db.Empleado.FirstOrDefault(e => e.Id == id_empleado); if (empleado == null) { return new { error = true, data = "No existe ese empleado" } } ; var persona = new Persona(); persona.Id = empleado.IdPersona; persona.Apellido = me.apellido; persona.Nombre = me.nombre; persona.FechaNacimiento = me.fecha_nacimiento; persona.IdTipoDocumento = me.id_tipo_documento; persona.NroDocumento = me.numero_documento; persona.TelefonoMovil = me.telefono; db.Persona.Update(persona); db.SaveChanges(); var usuario = ( from u in db.Usuario where u.Id == empleado.IdUsuario select u ).First(); usuario.Id = empleado.IdUsuario; usuario.Email = me.email; if (me.password != null && me.password != "") { usuario.Password = auth.getHash(me.password); } usuario.IdPerfil = me.id_perfil.Value; db.Usuario.Update(usuario); db.SaveChanges(); transaction.Commit(); } catch (Exception err) { transaction.Rollback(); return(new { error = true, data = "Error", err.Message }); } } return(new { error = false, data = "ok" }); }
public Object AgregarEmpleado([FromBody] ModeloEmpleado me) { using (var transaction = db.Database.BeginTransaction()) { try { var logueado = HttpContext.Session.Authenticated(); var persona = new Persona(); persona.Apellido = me.apellido; persona.Nombre = me.nombre; persona.FechaNacimiento = me.fecha_nacimiento; persona.IdTipoDocumento = me.id_tipo_documento; persona.NroDocumento = me.numero_documento; persona.TelefonoMovil = me.telefono; db.Persona.Add(persona); db.SaveChanges(); var usuario = new Usuario(); usuario.Email = me.email; usuario.Password = auth.getHash(me.password); // hasheo le password usuario.IdPerfil = me.id_perfil.Value; usuario.IdBarrio = logueado.IdBarrio.Value; db.Usuario.Add(usuario); db.SaveChanges(); var empleado = new Empleado(); empleado.FechaInicioActividad = DateTime.Now; empleado.IdBarrio = logueado.IdBarrio.Value; empleado.IdPersona = persona.Id; empleado.IdUsuario = usuario.Id; db.Empleado.Add(empleado); db.SaveChanges(); transaction.Commit(); } catch (Exception) { transaction.Rollback(); return(new { error = true, data = "Error" }); } } return(new { error = false, data = "ok" }); }