30 lines
1.2 KiB
C#
30 lines
1.2 KiB
C#
using DigitalData.Core.API;
|
|
using DigitalData.UserManager.Application.Contracts;
|
|
using DigitalData.UserManager.Application.DTOs.Group;
|
|
using DigitalData.UserManager.Domain.Entities;
|
|
using DigitalData.UserManager.Infrastructure.Contracts;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
namespace DigitalData.UserManager.API.Controllers
|
|
{
|
|
public class GroupController : CRUDControllerBase<GroupController, IGroupService, IGroupRepository, GroupCreateDto, GroupReadDto, GroupUpdateDto, Group, int>
|
|
{
|
|
public GroupController(ILogger<GroupController> logger, IGroupService service) : base(logger, service)
|
|
{
|
|
}
|
|
|
|
[HttpPost("ByAD")]
|
|
public async Task<IActionResult> CreateByAD(ADGroup adGroup)
|
|
{
|
|
var result = await _service.CreateAsync(adGroup);
|
|
if (result.IsSuccess)
|
|
{
|
|
var createdResource = new { Id = result.Data };
|
|
var actionName = nameof(GetById);
|
|
var routeValues = new { id = createdResource.Id };
|
|
return CreatedAtAction(actionName, routeValues, createdResource);
|
|
}
|
|
return BadRequest(result);
|
|
}
|
|
}
|
|
} |