using domain.Request; using domain.Service; using domain.UseCase; using Microsoft.AspNetCore.Mvc; using Presence.Api.Response; namespace Presence.Api.Controllers { [ApiController] [Route("api/[contrtoller]")] public class GroupController: ControllerBase { private readonly IGroupUseCase _groupService; public GroupController(IGroupUseCase groupService) { _groupService = groupService; } [HttpGet("/group")] public async Task> GetAllGroups() { var result = await _groupService .GetGroupsWithStudentsAsync(); var response = result .Select(group => new GroupResponse { Id = group.Id, Name = group.Name, Users = group.Users?.Select( user => new UserResponse { Guid = user.Guid, Name = user.Name, }).ToList() }).ToList(); return Ok(result); } [HttpPost("/admin/{groupId}/students")] public void AddGroup(int groupId, [FromBody] AddGroupRequest addGroupRequest) { Console.WriteLine(groupId); _groupService.AddGroup(addGroupRequest); } } }