parent
81762ecb64
commit
a8f6fe66b3
|
@ -2,9 +2,6 @@
|
||||||
|
|
||||||
public class TaskController : ICarterModule
|
public class TaskController : ICarterModule
|
||||||
{
|
{
|
||||||
public TaskController()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
public virtual void AddRoutes(IEndpointRouteBuilder app)
|
public virtual void AddRoutes(IEndpointRouteBuilder app)
|
||||||
{
|
{
|
||||||
var group = app.NewVersionedApi("Task")
|
var group = app.NewVersionedApi("Task")
|
||||||
|
@ -13,12 +10,12 @@ public class TaskController : ICarterModule
|
||||||
|
|
||||||
group.MapGet("", GetAllAsync)
|
group.MapGet("", GetAllAsync)
|
||||||
.WithDisplayName("GetAllTask")
|
.WithDisplayName("GetAllTask")
|
||||||
.RequireAuthorization(builder => builder.RequireClaim(CustomClaimType.Permission, ApplicationPermission.ManageTasks,ApplicationPermission.ViewTasks))
|
.RequireAuthorization(builder => builder.RequireClaim(CustomClaimType.Permission, ApplicationPermission.ManageTasks, ApplicationPermission.ViewTasks))
|
||||||
.HasApiVersion(1.0);
|
.HasApiVersion(1.0);
|
||||||
|
|
||||||
group.MapGet("{id}", GetAsync)
|
group.MapGet("{id}", GetAsync)
|
||||||
.WithDisplayName("GetOneTask")
|
.WithDisplayName("GetOneTask")
|
||||||
.RequireAuthorization(builder => builder.RequireClaim(CustomClaimType.Permission, ApplicationPermission.ManageTasks,ApplicationPermission.ViewTasks))
|
.RequireAuthorization(builder => builder.RequireClaim(CustomClaimType.Permission, ApplicationPermission.ManageTasks, ApplicationPermission.ViewTasks))
|
||||||
.HasApiVersion(1.0);
|
.HasApiVersion(1.0);
|
||||||
|
|
||||||
group.MapPost("", Post)
|
group.MapPost("", Post)
|
||||||
|
@ -35,12 +32,15 @@ public class TaskController : ICarterModule
|
||||||
}
|
}
|
||||||
|
|
||||||
// GET:Get All Entity
|
// GET:Get All Entity
|
||||||
public async Task<IResult> GetAllAsync([FromQuery] int page,ISender sender, CancellationToken cancellationToken)
|
public async Task<IResult> GetAllAsync([FromQuery] int page,
|
||||||
=> TypedResults.Ok(await sender.Send(new GetTasksQuery(page), cancellationToken));
|
[FromQuery] int? count,
|
||||||
|
[FromQuery] Guid shiftId,
|
||||||
|
ISender sender, CancellationToken cancellationToken)
|
||||||
|
=> TypedResults.Ok(await sender.Send(new GetTasksQuery(page, ShiftId: shiftId, Count: count), cancellationToken));
|
||||||
|
|
||||||
// GET:Get An Entity By Id
|
// GET:Get An Entity By Id
|
||||||
public async Task<IResult> GetAsync(Guid id, ISender sender, CancellationToken cancellationToken)
|
public async Task<IResult> GetAsync(Guid id, ISender sender, CancellationToken cancellationToken)
|
||||||
=> TypedResults.Ok(await sender.Send(new GetTaskQuery(id),cancellationToken));
|
=> TypedResults.Ok(await sender.Send(new GetTaskQuery(id), cancellationToken));
|
||||||
|
|
||||||
// POST:Create Entity
|
// POST:Create Entity
|
||||||
public async Task<IResult> Post([FromBody] CreateTaskCommand ent, ISender mediator, CancellationToken cancellationToken)
|
public async Task<IResult> Post([FromBody] CreateTaskCommand ent, ISender mediator, CancellationToken cancellationToken)
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
7bec0081-0f19-4cf7-84a9-7deed79e4f61
|
|
|
@ -10,11 +10,6 @@ public static class LoggerConfig
|
||||||
Log.Logger = new LoggerConfiguration()
|
Log.Logger = new LoggerConfiguration()
|
||||||
.Enrich.FromLogContext()
|
.Enrich.FromLogContext()
|
||||||
.WriteTo.Console(theme: AnsiConsoleTheme.Literate)
|
.WriteTo.Console(theme: AnsiConsoleTheme.Literate)
|
||||||
.WriteTo.Sentry(o =>
|
|
||||||
{
|
|
||||||
o.MinimumEventLevel = LogEventLevel.Error;
|
|
||||||
o.Dsn = "https://592b7fbb29464442a8e996247abe857f@watcher.igarson.app/7";
|
|
||||||
})
|
|
||||||
.MinimumLevel.Override("Microsoft.EntityFrameworkCore.Database.Command", LogEventLevel.Warning)
|
.MinimumLevel.Override("Microsoft.EntityFrameworkCore.Database.Command", LogEventLevel.Warning)
|
||||||
.CreateLogger();
|
.CreateLogger();
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
namespace Brizco.Domain.CommandQueries.Queries;
|
namespace Brizco.Domain.CommandQueries.Queries;
|
||||||
|
|
||||||
public sealed record GetTasksQuery(int Page = 0) :
|
public sealed record GetTasksQuery(int Page = 0 , int? Count = null,Guid? ShiftId = null) :
|
||||||
IRequest<List<TaskSDto>>;
|
IRequest<List<TaskSDto>>;
|
||||||
|
|
||||||
public sealed record GetTaskQuery(Guid Id) :
|
public sealed record GetTaskQuery(Guid Id) :
|
||||||
|
|
|
@ -1,24 +1,27 @@
|
||||||
namespace Brizco.Repository.Handlers.Tasks;
|
using Brizco.Domain.Entities.Tasks;
|
||||||
|
|
||||||
public class GetActivitiesQueryHandler : IRequestHandler<GetTasksQuery, List<TaskSDto>>
|
namespace Brizco.Repository.Handlers.Tasks;
|
||||||
|
|
||||||
|
public class GetActivitiesQueryHandler(IRepositoryWrapper repositoryWrapper, ICurrentUserService currentUserService) : IRequestHandler<GetTasksQuery, List<TaskSDto>>
|
||||||
{
|
{
|
||||||
private readonly IRepositoryWrapper _repositoryWrapper;
|
|
||||||
private readonly ICurrentUserService _currentUserService;
|
|
||||||
|
|
||||||
public GetActivitiesQueryHandler(IRepositoryWrapper repositoryWrapper, ICurrentUserService currentUserService)
|
|
||||||
{
|
|
||||||
_repositoryWrapper = repositoryWrapper;
|
|
||||||
_currentUserService = currentUserService;
|
|
||||||
}
|
|
||||||
public async Task<List<TaskSDto>> Handle(GetTasksQuery request, CancellationToken cancellationToken)
|
public async Task<List<TaskSDto>> Handle(GetTasksQuery request, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
if (_currentUserService.ComplexId == null)
|
if (currentUserService.ComplexId == null)
|
||||||
throw new AppException("ComplexId is null", ApiResultStatusCode.NotFound);
|
throw new AppException("ComplexId is null", ApiResultStatusCode.NotFound);
|
||||||
if (!Guid.TryParse(_currentUserService.ComplexId, out Guid complexId))
|
if (!Guid.TryParse(currentUserService.ComplexId, out Guid complexId))
|
||||||
throw new AppException("ComplexId is wrong", ApiResultStatusCode.NotFound);
|
throw new AppException("ComplexId is wrong", ApiResultStatusCode.NotFound);
|
||||||
|
var query = repositoryWrapper.SetRepository<Domain.Entities.Tasks.Task>().TableNoTracking
|
||||||
|
.Where(t => t.ComplexId == complexId && t.IsActivity == false);
|
||||||
|
|
||||||
var tasks = await _repositoryWrapper.SetRepository<Domain.Entities.Tasks.Task>().TableNoTracking
|
if (request.ShiftId != null)
|
||||||
.Where(t=>t.ComplexId==complexId && t.IsActivity == false)
|
query = from taskShift in repositoryWrapper.SetRepository<TaskShift>().TableNoTracking
|
||||||
|
where taskShift.ShiftId == request.ShiftId
|
||||||
|
join task in query on taskShift.TaskId equals task.Id
|
||||||
|
select task;
|
||||||
|
|
||||||
|
query = query.Distinct();
|
||||||
|
|
||||||
|
var tasks = await query
|
||||||
.OrderByDescending(s => s.CreatedAt)
|
.OrderByDescending(s => s.CreatedAt)
|
||||||
.Skip(request.Page * 15).Take(15)
|
.Skip(request.Page * 15).Take(15)
|
||||||
.Select(TaskMapper.ProjectToSDto)
|
.Select(TaskMapper.ProjectToSDto)
|
||||||
|
|
Loading…
Reference in New Issue