public async Task <ActionResult <IndicatorsGraphProxy> > GetIndicatorsGraph(int selectedYear) { var totalStudents = await _context.Set <Student>().CountAsync(); var totalMembers = await _context.Set <Member>().CountAsync(); var totalStudentsPerMonth = await GetClassImpacted(selectedYear); return(new IndicatorsGraphProxy { TotalStudents = totalStudents, TotalMembers = totalMembers, TotalStudentsPerMonth = totalStudentsPerMonth }); }
public async Task <ActionResult <WebApiMessageOnly> > Update(ChangeStudentDto dto, [FromServices] ICrudServices service) { var student = await _context.Set <Student>().FirstOrDefaultAsync(m => m.Id == dto.Id); if (student == null) { return(StatusCode(404, new { Message = "O membro com essa identificação não foi encontrado", Status = 404 })); } student.Age = dto.Age ?? student.Age; student.Date = dto.Date ?? student.Date; student.Name = dto.Name ?? student.Name; student.Type = dto.Type ?? student.Type; student.Email = dto.Email ?? student.Email; student.Month = dto.Month ?? student.Month; student.Phone = dto.Phone ?? student.Phone; student.Gender = dto.Gender ?? student.Gender; student.Invoice = dto.Invoice ?? student.Invoice; service.UpdateAndSave(student); return(service.Response()); }
public async Task <ActionResult <TokenProxy> > Authenticate( [FromBody] LoginPayload loginPayload, [FromServices] SigningConfigurations signingConfigurations, [FromServices] TokenConfigurations tokenConfigurations ) { var user = await _context.Set <User>().FirstOrDefaultAsync(u => u.Email == loginPayload.Email); if (user == null) { return(StatusCode(404, new { Message = "O usuário com esse e-mail não foi encontrado", Status = 404 })); } if (user.Password != loginPayload.Password.HashMD5()) { return(BadRequest(new { Message = "A senha está incorreta.", Status = 400 })); } var identity = new ClaimsIdentity( new[] { new Claim(ClaimTypes.Name, user.Id.ToString()), new Claim(ClaimTypes.Role, user.Roles) } ); var dataCriacao = DateTime.Now; var dataExpiracao = dataCriacao + TimeSpan.FromSeconds(tokenConfigurations.Seconds); var handler = new JwtSecurityTokenHandler(); var securityToken = handler.CreateToken(new SecurityTokenDescriptor { Issuer = tokenConfigurations.Issuer, Audience = tokenConfigurations.Audience, SigningCredentials = signingConfigurations.SigningCredentials, Subject = identity, NotBefore = dataCriacao, Expires = dataExpiracao }); var token = handler.WriteToken(securityToken); return(StatusCode(200, new TokenProxy { Created = dataCriacao.ToString("yyyy-MM-dd HH:mm:ss"), Expiration = dataExpiracao.ToString("yyyy-MM-dd HH:mm:ss"), Token = $"Bearer {token}" })); }
public async Task <ActionResult <WebApiMessageOnly> > Update(ChangeMemberDto dto, [FromServices] ICrudServices service) { var member = await _context.Set <Member>().FirstOrDefaultAsync(m => m.Id == dto.Id); if (member == null) { return(StatusCode(404, new { Message = "O membro com essa identificação não foi encontrado", Status = 404 })); } member.Age = dto.Age ?? member.Age; member.Email = dto.Email ?? member.Email; member.Job = dto.Job ?? member.Job; member.Name = dto.Name ?? member.Name; member.Tags = dto.Tags ?? member.Tags; member.Group = dto.Group ?? member.Group; member.Phone = dto.Phone ?? member.Phone; member.Gender = dto.Gender ?? member.Gender; member.Address = dto.Address ?? member.Address; member.Twitter = dto.Twitter ?? member.Twitter; member.Website = dto.Website ?? member.Website; member.Facebook = dto.Facebook ?? member.Facebook; member.Interest = dto.Interest ?? member.Interest; member.Projects = dto.Projects ?? member.Projects; member.Last_name = dto.Last_name ?? member.Last_name; member.Signature = dto.Signature ?? member.Signature; member.Newsletter = dto.Newsletter ?? member.Newsletter; member.Cad_software = dto.Cad_software ?? member.Cad_software; member.Invoice_disabled = dto.Invoice_disabled ?? member.Invoice_disabled; member.Validated_training = dto.Validated_training ?? member.Validated_training; member.Number_Invoices = dto.Number_Invoices ?? member.Number_Invoices; member.Ecocience = dto.Ecocience ?? member.Ecocience; member.Organization = dto.Organization ?? member.Organization; member.Organization_Address = dto.Organization_Address ?? member.Organization_Address; member.Aux_Group = dto.Aux_Group ?? member.Aux_Group; member.Aux_Training = dto.Aux_Training ?? member.Aux_Training; member.Aux_Group_Training = dto.Aux_Group_Training ?? member.Aux_Group_Training; service.UpdateAndSave(member); return(service.Response()); }
public User BizAction(CreateUserDTO inputData) { if (_context.Set <User>().Any(user => user.Email == inputData.Email)) { throw new InvalidConstraintException("Já existe um usuário com esse e-mail"); } var item = new User { Email = inputData.Email, Password = inputData.Password.HashMD5(), Roles = "user" }; _context.Add(item); Message = "A entidade foi criada com sucesso."; return(item); }