using DigitalData.Core.API; using DigitalData.UserManager.Application.Contracts; using DigitalData.UserManager.Application.DTOs.GroupOfUser; using DigitalData.UserManager.Domain.Entities; using DigitalData.UserManager.Infrastructure.Contracts; using Microsoft.AspNetCore.Mvc; namespace DigitalData.UserManager.API.Controllers { public class GroupOfUserController : CRUDControllerBase { public GroupOfUserController(ILogger logger, IGroupOfUserService service) : base(logger, service) { } [HttpDelete] public async Task Delete([FromQuery] int groupId, [FromQuery] int userId) { var result = await _service.DeleteAsyncByGroupUserId(groupId, userId); if (result.IsSuccess) { return Ok(result); } return BadRequest(result); } [NonAction] public override Task GetAll() => base.GetAll(); [HttpGet] public async Task GetAll([FromQuery]bool withUser = false, [FromQuery]bool withGroup = false) { var result = await _service.ReadAllAsyncWith(withUser, withGroup); if (result.IsSuccess) { return Ok(result); } return NotFound(result); } } }