public async Task <ActionResult <UsuarioItem> > Post(UsuarioItem item) { _context.UsuarioItems.Add(item); await _context.SaveChangesAsync(); return(CreatedAtAction(nameof(GetUsuario), new { identificacion = item.Identificacion }, item)); }
public async Task <IActionResult> SalvarUsuario([FromBody] UsuarioItem usuarioToSave) { string msgRule = ""; UsuarioItem objLstUsuario = new UsuarioItem(); objLstUsuario = _usuarioContext.UsuarioItems.Where(m => m.id_Usuario == usuarioToSave.id_Usuario).FirstOrDefault(); if (objLstUsuario != null) { objLstUsuario.id_Usuario = usuarioToSave.id_Usuario; objLstUsuario.Ativo = usuarioToSave.Ativo; objLstUsuario.login_Usuario = usuarioToSave.login_Usuario; objLstUsuario.nome_Usuario = usuarioToSave.nome_Usuario; objLstUsuario.senha_Usuario = usuarioToSave.senha_Usuario; objLstUsuario.UsuarioEmpresaPerfilItems = usuarioToSave.UsuarioEmpresaPerfilItems; IEnumerable <UsuarioEmpresaPerfilItem> query = _usuarioContext.UsuarioEmpresaPerfilItems .OfType <UsuarioEmpresaPerfilItem>() .Where(c => c.id_Usuario == usuarioToSave.id_Usuario); foreach (UsuarioEmpresaPerfilItem item in query) { _usuarioContext.UsuarioEmpresaPerfilItems.Remove(item); } _usuarioContext.UsuarioItems.Update(objLstUsuario); } else { _usuarioContext.UsuarioItems.Add(usuarioToSave); } //Create Integration Event to be published through the Event Bus var usuarioInclusaoEvent = new UsuarioInclusaoIE(usuarioToSave.id_Usuario, usuarioToSave.nome_Usuario, usuarioToSave.login_Usuario, usuarioToSave.senha_Usuario); try { // Achieving atomicity between original Catalog database operation and the IntegrationEventLog thanks to a local transaction await _usuarioIntegrationEventService.SaveEventAndUsuarioContextChangesAsync(usuarioInclusaoEvent, usuarioToSave); } catch (Exception e) { //ruleValidaNomeUsuarioUnique(e.Message, ref msgRule)) //Validações das CONSTRAINTS do BANCO if (ruleValidaLoginUsuarioUnique(e.Message, ref msgRule)) { return(BadRequest(msgRule)); } else { return(BadRequest(e.Message)); } } // Publish through the Event Bus and mark the saved event as published await _usuarioIntegrationEventService.PublishThroughEventBusAsync(usuarioInclusaoEvent); return(CreatedAtAction(nameof(SalvarUsuario), usuarioToSave.id_Usuario)); }
public async Task <IActionResult> Put(string id, UsuarioItem item) { if (id != item.Identificacion) { return(BadRequest()); } _context.Entry(item).State = EntityState.Modified; await _context.SaveChangesAsync(); return(NoContent()); }
private UsuarioItem CreateSetorItem(string[] column, string[] headers) { if (column.Count() != headers.Count()) { throw new Exception($"column count '{column.Count()}' not the same as headers count'{headers.Count()}'"); } var setorItem = new UsuarioItem() { id_Empresa = Guid.Parse(column[Array.IndexOf(headers, "id_empresa")].Trim('"').Trim()), id_Setor = Guid.Parse(column[Array.IndexOf(headers, "id_setor")].Trim('"').Trim()), nome_Setor = column[Array.IndexOf(headers, "nome_setor")].Trim('"').Trim() }; return(setorItem); }
public async Task Inc_SaveUsuario() { //using (var server = CreateServer()) //{ for (int i = 0; i < 1000; i++) { //var myTestClient = server.CreateClient(); IEnumerable <string> Ltoken = await GetAsync(); using (var myTestClient = new HttpClient()) { UsuarioItem usuarioItem = new UsuarioItem(); usuarioItem.nome_Usuario = "TESTE" + i.ToString(); //+ Guid.NewGuid().ToString(); var content = new StringContent(JsonConvert.SerializeObject(usuarioItem), System.Text.Encoding.UTF8, "application/json"); myTestClient.SetBearerToken(((string[])Ltoken)[0]); var response = await myTestClient.PostAsync(Post.SaveUsuario(), content); } } //} }
public static UsuarioItem GetUser() { int user_id = 0; UsuarioItem usuario = null; if (HttpContext.Current.User != null && HttpContext.Current.User.Identity is FormsIdentity) { FormsAuthenticationTicket ticket = ((FormsIdentity)HttpContext.Current.User.Identity).Ticket; if (ticket != null) { user_id = Convert.ToInt32(ticket.UserData); } } using (AppDBContext db = new AppDBContext()) { try { var objUser = db.Usuarios .Where(u => u.deleted_at == null && u.idUsuario.Equals(user_id)) .Select(u => new UsuarioItem { idUsuario = u.idUsuario, nombre = u.nombre, apellido = u.apellido, usuario = u.usuario, email = u.email, rol = u.Roles.rol }).FirstOrDefault(); usuario = objUser; } catch (Exception e) { Console.WriteLine(e.StackTrace); } } return(usuario); }
public async Task SaveEventAndUsuarioContextChangesAsync(IntegrationEvent evt, UsuarioItem usuarioToSave) { var strategy = _usuarioContext.Database.CreateExecutionStrategy(); await strategy.ExecuteAsync(async() => { using (var transaction = _usuarioContext.Database.BeginTransaction()) { try { await _usuarioContext.SaveChangesAsync(); //Tratamento de Identity ((Events.UsuarioInclusaoIE)evt).UsuarioId = usuarioToSave.id_Usuario; //Tratamento relacionamento ((Events.UsuarioInclusaoIE)evt).UsuarioEmpresaPerfilItems = usuarioToSave.UsuarioEmpresaPerfilItems; await _eventLogService.SaveEventAsync(evt, _usuarioContext.Database.CurrentTransaction.GetDbTransaction()); transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); var sqlException = ex.InnerException as System.Data.SqlClient.SqlException; throw new Exception(sqlException.Number + "::" + sqlException.Message); } } }); }