/
softailor
/
gridient
Обзор
Документация
Войти
/
softailor
/
gridient
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
backend/Gridient.Core/Controllers/RecycleBinController.cs
54 строки
2 KB
Jenkins
Auto add
18 фев 2026, 10:19
18 фев 2026, 10:19
1e6c4f8
Код
Авторство
О чём код?
using Gridient.Core.Features.RecycleBin.Commands; using Gridient.Core.Features.RecycleBin.Queries; using Gridient.Core.Models; using MediatR; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; namespace Gridient.Core.Controllers { [Route("api/[controller]")] [ApiController] [Authorize] public class RecycleBinController(IMediator mediator) : ListsBaseController { private readonly IMediator _mediator = mediator; [HttpGet] [Route(nameof(GetItems))] public async Task<IActionResult> GetItems([FromQuery] int skip, [FromQuery] int take, CancellationToken cancellationToken) { var query = new GetRecycleBinItemsQuery(skip, take); var items = await _mediator.Send(query, cancellationToken); return Ok(items); } [HttpDelete] [Route(nameof(RemoveAll))] public async Task<IActionResult> RemoveAll(CancellationToken cancellationToken) { var command = new RemoveAllCommand(); await _mediator.Send(command, cancellationToken); return Ok(); } [HttpPost] [Route(nameof(Remove))] public async Task<IActionResult> Remove([FromBody] RecycleBinRequest request, CancellationToken cancellationToken) { var command = new RemoveCommand(request.Items); await _mediator.Send(command, cancellationToken); return Ok(); } [HttpPost] [Route(nameof(Restore))] public async Task<IActionResult> Restore([FromBody] RecycleBinRequest request, CancellationToken cancellationToken) { var command = new RestoreCommand(request.Items); await _mediator.Send(command, cancellationToken); return Ok(); } } }