RELEASE VER 1.0.0.1 , complete version 1 , add scalarUi

master
Amir Hossein Khademi 2024-05-27 00:35:53 +03:30
parent ab343077bd
commit 91a73cbcef
44 changed files with 131 additions and 57 deletions

View File

@ -1 +1 @@
0.7.12.12 1.0.0.1

View File

@ -6,8 +6,8 @@
<ImplicitUsings>enable</ImplicitUsings> <ImplicitUsings>enable</ImplicitUsings>
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS> <DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
<DockerComposeProjectPath>..\docker-compose.dcproj</DockerComposeProjectPath> <DockerComposeProjectPath>..\docker-compose.dcproj</DockerComposeProjectPath>
<AssemblyVersion>0.6.10.11</AssemblyVersion> <AssemblyVersion>1.0.0.1</AssemblyVersion>
<FileVersion>0.6.10.11</FileVersion> <FileVersion>1.0.0.1</FileVersion>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>

View File

@ -7,6 +7,7 @@ using Brizco.Domain.Models.Settings;
using Brizco.Infrastructure; using Brizco.Infrastructure;
using Brizco.Repository; using Brizco.Repository;
using System.Configuration; using System.Configuration;
using Brizco.Api.WebFramework.ScalarUi;
using Carter; using Carter;
using FluentValidation; using FluentValidation;
using MediatR.Extensions.Autofac.DependencyInjection; using MediatR.Extensions.Autofac.DependencyInjection;
@ -109,7 +110,9 @@ if (app.Environment.IsDevelopment())
} }
app.UseCors("CorsPolicy"); app.UseCors("CorsPolicy");
app.UseCustomSwagger(siteSetting.BaseUrl); //app.UseCustomSwagger(siteSetting.BaseUrl);
app.UseSwagger();
app.MapScalarUi();
app.UseAuthorization(); app.UseAuthorization();
app.UseAuthentication(); app.UseAuthentication();

View File

@ -21,7 +21,7 @@
"Docker": { "Docker": {
"commandName": "Docker", "commandName": "Docker",
"launchBrowser": true, "launchBrowser": true,
"launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/swagger", "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/scalar/v1",
"environmentVariables": { "environmentVariables": {
"ASPNETCORE_URLS": "http://+:80" "ASPNETCORE_URLS": "http://+:80"
}, },

View File

@ -0,0 +1,44 @@
namespace Brizco.Api.WebFramework.ScalarUi;
public static class ScalarUiConfiguration
{
public static void MapScalarUi(this IEndpointRouteBuilder app)
{
app.MapGet("/scalar/{documentName}", (string documentName) =>
{
var scalarScript = $$"""
<!doctype html>
<html>
<head>
<title>Scalar API Reference</title>
<meta charset="utf-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1" />
</head>
<body>
<!-- Add your own OpenAPI/Swagger specification URL here: -->
<!-- Note: The example is our public proxy (to avoid CORS issues). You can remove the `data-proxy-url` attribute if you dont need it. -->
<script
id="api-reference"
data-url="/swagger/{{documentName}}/swagger.json"></script>
<!-- Optional: You can set a full configuration object like this: -->
<script>
var configuration = {
theme: 'purple',
}
document.getElementById('api-reference').dataset.configuration =
JSON.stringify(configuration)
</script>
<script src="https://cdn.jsdelivr.net/npm/@scalar/api-reference"></script>
</body>
</html>
""";
return Results.Content(scalarScript, "text/html");
}).ExcludeFromDescription();
}
}

View File

@ -37,7 +37,7 @@
<Using Include="Brizco.Core.EntityServices.Abstracts" /> <Using Include="Brizco.Core.EntityServices.Abstracts" />
<Using Include="Brizco.Domain.CommandQueries.Commands" /> <Using Include="Brizco.Domain.CommandQueries.Commands" />
<Using Include="Brizco.Domain.CommandQueries.Queries" /> <Using Include="Brizco.Domain.CommandQueries.Queries" />
<Using Include="Brizco.Domain.Dtos.LargDtos" /> <Using Include="Brizco.Domain.Dtos.LargeDtos" />
<Using Include="Brizco.Domain.Dtos.PageDto" /> <Using Include="Brizco.Domain.Dtos.PageDto" />
<Using Include="Brizco.Domain.Dtos.RequestDtos" /> <Using Include="Brizco.Domain.Dtos.RequestDtos" />
<Using Include="Brizco.Domain.Dtos.ResponseDto" /> <Using Include="Brizco.Domain.Dtos.ResponseDto" />

View File

@ -50,7 +50,7 @@ public class PageService : IPageService
UnDoneActivitiesToday = todayTasks.Count(t => t.IsDone!), UnDoneActivitiesToday = todayTasks.Count(t => t.IsDone!),
TotalShiftToday = todayShiftPlans.Count, TotalShiftToday = todayShiftPlans.Count,
TodayStaffNames = names, TodayStaffNames = names,
TotalStaffToday = todayShiftPlans.SelectMany(sp => sp.Users).Count() TotalStaffToday = todayShiftPlans.SelectMany(sp => sp.Users).GroupBy(u=>u.UserId).Count()
}; };
var currentShift = todayShiftPlans.FirstOrDefault(s => s.EndAt >= DateTime.Now.TimeOfDay && s.StartAt <= DateTime.Now.TimeOfDay); var currentShift = todayShiftPlans.FirstOrDefault(s => s.EndAt >= DateTime.Now.TimeOfDay && s.StartAt <= DateTime.Now.TimeOfDay);
@ -164,7 +164,7 @@ public class PageService : IPageService
} }
} }
page.SignUpCompletePercent = ((totalStepCount * 100) / completeStepCount); page.SignUpCompletePercent = completeStepCount != 0 ? ((totalStepCount * 100) / completeStepCount) : 0;
page.CurrentSignUpStep = currentStep; page.CurrentSignUpStep = currentStep;
} }
@ -185,13 +185,14 @@ public class PageService : IPageService
var shifts = await _mediator.Send(new GetRoutineShiftsQuery(routineId, 0), var shifts = await _mediator.Send(new GetRoutineShiftsQuery(routineId, 0),
cancellationToken); cancellationToken);
for (int i = 0 ; i < 15; i++ , day = day.AddDays(i)) for (int i = 0 ; i < 15; i++ , day = day.AddDays(1))
{ {
var item = new AppShiftingPageDayDto var item = new AppShiftingPageDayDto
{ {
DateTime = DateTimeExtensions.DateTimeToUnixTimeStamp(day) DateTime = DateTimeExtensions.DateTimeToUnixTimeStamp(day)
}; };
shifts.Where(s=>s.Day == day.DayOfWeek).SelectMany(s=>s.Shifts).ToList().ForEach(s=>item.Shifts.Add(s.Clone())); shifts.Where(s=>s.Day == day.DayOfWeek)
.SelectMany(s=>s.Shifts).OrderBy(s=>s.StartAt).ToList().ForEach(s=>item.Shifts.Add(s.Clone()));
foreach (var shift in item.Shifts) foreach (var shift in item.Shifts)
{ {
var existedShiftPlan = await _repositoryWrapper.SetRepository<Domain.Entities.Shift.ShiftPlan>() var existedShiftPlan = await _repositoryWrapper.SetRepository<Domain.Entities.Shift.ShiftPlan>()

View File

@ -1,4 +1,5 @@
using Brizco.Domain.Entities.Task; using Brizco.Domain.Dtos.LargeDtos;
using Brizco.Domain.Entities.Task;
using Task = System.Threading.Tasks.Task; using Task = System.Threading.Tasks.Task;
namespace Brizco.Core.CoreServices.ReportServices; namespace Brizco.Core.CoreServices.ReportServices;

View File

@ -52,7 +52,7 @@
<Using Include="Brizco.Common.Extensions" /> <Using Include="Brizco.Common.Extensions" />
<Using Include="Brizco.Common.Models.Entity" /> <Using Include="Brizco.Common.Models.Entity" />
<Using Include="Brizco.Common.Models.Mapper" /> <Using Include="Brizco.Common.Models.Mapper" />
<Using Include="Brizco.Domain.Dtos.LargDtos" /> <Using Include="Brizco.Domain.Dtos.LargeDtos" />
<Using Include="Brizco.Domain.Dtos.ResponseDto" /> <Using Include="Brizco.Domain.Dtos.ResponseDto" />
<Using Include="Brizco.Domain.Dtos.SmallDtos" /> <Using Include="Brizco.Domain.Dtos.SmallDtos" />
<Using Include="Brizco.Domain.Entities.Complex" /> <Using Include="Brizco.Domain.Entities.Complex" />

View File

@ -1,4 +1,6 @@
namespace Brizco.Domain.CommandQueries.Commands; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.CommandQueries.Commands;
public sealed record CreateActivityCommand( public sealed record CreateActivityCommand(
TaskType Type, TaskType Type,

View File

@ -1,4 +1,6 @@
namespace Brizco.Domain.CommandQueries.Commands; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.CommandQueries.Commands;
public record CreateShiftPlanCommand(long PlanDate,Guid ShiftId,Guid RoutineId,Guid SupervisionUserId, List<KeyValuePair<Guid,Guid>> UserAndPositionIds) public record CreateShiftPlanCommand(long PlanDate,Guid ShiftId,Guid RoutineId,Guid SupervisionUserId, List<KeyValuePair<Guid,Guid>> UserAndPositionIds)
:IRequest<ShiftPlanLDto>; :IRequest<ShiftPlanLDto>;

View File

@ -1,4 +1,6 @@
namespace Brizco.Domain.CommandQueries.Commands; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.CommandQueries.Commands;
public sealed record CreateTaskCommand(TaskType Type, public sealed record CreateTaskCommand(TaskType Type,
string Title, string Title,

View File

@ -1,4 +1,6 @@
namespace Brizco.Domain.CommandQueries.Queries; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.CommandQueries.Queries;
public sealed record GetActivitiesQuery(int Page = 0 , long SelectedDate = 0 , Guid SelectedShiftPlanId = default , DateQueryFilter? DateQueryFilter = null) : IRequest<List<ActivitySDto>>; public sealed record GetActivitiesQuery(int Page = 0 , long SelectedDate = 0 , Guid SelectedShiftPlanId = default , DateQueryFilter? DateQueryFilter = null) : IRequest<List<ActivitySDto>>;

View File

@ -1,4 +1,6 @@
namespace Brizco.Domain.CommandQueries.Queries; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.CommandQueries.Queries;
public sealed record GetPositionsQuery(int Page = 0) : public sealed record GetPositionsQuery(int Page = 0) :
IRequest<List<PositionSDto>>; IRequest<List<PositionSDto>>;

View File

@ -1,4 +1,6 @@
namespace Brizco.Domain.CommandQueries.Queries; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.CommandQueries.Queries;
public sealed record GetSectionsQuery(int Page = 0) : public sealed record GetSectionsQuery(int Page = 0) :
IRequest<List<SectionSDto>>; IRequest<List<SectionSDto>>;

View File

@ -1,4 +1,6 @@
namespace Brizco.Domain.CommandQueries.Queries; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.CommandQueries.Queries;
public sealed record GetShiftPlansQuery(int Page = 0 , long SelectedDate = 0 , DateTimeQueryFilter? DateTimeQueryFilter = DateTimeQueryFilter.CustomDate) : public sealed record GetShiftPlansQuery(int Page = 0 , long SelectedDate = 0 , DateTimeQueryFilter? DateTimeQueryFilter = DateTimeQueryFilter.CustomDate) :
IRequest<List<ShiftPlanSDto>>; IRequest<List<ShiftPlanSDto>>;

View File

@ -1,4 +1,6 @@
namespace Brizco.Domain.CommandQueries.Queries; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.CommandQueries.Queries;
public sealed record GetShiftsQuery(int Page = 0,long SelectedDate = 0) : public sealed record GetShiftsQuery(int Page = 0,long SelectedDate = 0) :
IRequest<List<ShiftSDto>>; IRequest<List<ShiftSDto>>;

View File

@ -1,4 +1,6 @@
namespace Brizco.Domain.CommandQueries.Queries; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.CommandQueries.Queries;
public sealed record GetTasksQuery(int Page = 0) : public sealed record GetTasksQuery(int Page = 0) :
IRequest<List<TaskSDto>>; IRequest<List<TaskSDto>>;

View File

@ -1,6 +1,4 @@
using Brizco.Domain.Entities.Task; namespace Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.Dtos.LargDtos;
public class ActivityLDto : BaseDto<ActivityLDto , Activity> public class ActivityLDto : BaseDto<ActivityLDto , Activity>
{ {

View File

@ -1,6 +1,4 @@
using Brizco.Domain.Entities.Complex; namespace Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.Dtos.LargDtos;
public class ComplexLDto : BaseDto<ComplexLDto,Complex> public class ComplexLDto : BaseDto<ComplexLDto,Complex>
{ {

View File

@ -1,4 +1,4 @@
namespace Brizco.Domain.Dtos.LargDtos; namespace Brizco.Domain.Dtos.LargeDtos;
public class PositionLDto : BaseDto<PositionLDto, Position> public class PositionLDto : BaseDto<PositionLDto, Position>
{ {

View File

@ -1,4 +1,4 @@
namespace Brizco.Domain.Dtos.LargDtos; namespace Brizco.Domain.Dtos.LargeDtos;
public class SectionLDto : BaseDto<SectionLDto, Section> public class SectionLDto : BaseDto<SectionLDto, Section>
{ {

View File

@ -1,4 +1,4 @@
namespace Brizco.Domain.Dtos.LargDtos; namespace Brizco.Domain.Dtos.LargeDtos;
public class ShiftLDto : BaseDto<ShiftLDto,Shift> public class ShiftLDto : BaseDto<ShiftLDto,Shift>
{ {

View File

@ -1,6 +1,4 @@
using Brizco.Domain.Entities.Shift; namespace Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.Dtos.LargDtos;
public class ShiftPlanLDto : BaseDto<ShiftPlanLDto , ShiftPlan> public class ShiftPlanLDto : BaseDto<ShiftPlanLDto , ShiftPlan>
{ {

View File

@ -1,6 +1,4 @@
using Brizco.Domain.Entities.Task; namespace Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Domain.Dtos.LargDtos;
public class TaskLDto : BaseDto<TaskLDto, Entities.Task.Task> public class TaskLDto : BaseDto<TaskLDto, Entities.Task.Task>
{ {

View File

@ -1,6 +1,6 @@
using System; using System;
using System.Linq.Expressions; using System.Linq.Expressions;
using Brizco.Domain.Dtos.LargDtos; using Brizco.Domain.Dtos.LargeDtos;
using Brizco.Domain.Dtos.SmallDtos; using Brizco.Domain.Dtos.SmallDtos;
using Brizco.Domain.Entities.Shift; using Brizco.Domain.Entities.Shift;
using Brizco.Domain.Entities.Task; using Brizco.Domain.Entities.Task;

View File

@ -2,7 +2,7 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Linq.Expressions; using System.Linq.Expressions;
using Brizco.Domain.Dtos.LargDtos; using Brizco.Domain.Dtos.LargeDtos;
using Brizco.Domain.Dtos.SmallDtos; using Brizco.Domain.Dtos.SmallDtos;
using Brizco.Domain.Entities.Complex; using Brizco.Domain.Entities.Complex;
using Brizco.Domain.Entities.User; using Brizco.Domain.Entities.User;

View File

@ -1,6 +1,6 @@
using System; using System;
using System.Linq.Expressions; using System.Linq.Expressions;
using Brizco.Domain.Dtos.LargDtos; using Brizco.Domain.Dtos.LargeDtos;
using Brizco.Domain.Dtos.SmallDtos; using Brizco.Domain.Dtos.SmallDtos;
using Brizco.Domain.Entities.Complex; using Brizco.Domain.Entities.Complex;
using Mapster.Models; using Mapster.Models;

View File

@ -2,7 +2,7 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Linq.Expressions; using System.Linq.Expressions;
using Brizco.Domain.Dtos.LargDtos; using Brizco.Domain.Dtos.LargeDtos;
using Brizco.Domain.Dtos.SmallDtos; using Brizco.Domain.Dtos.SmallDtos;
using Brizco.Domain.Entities.Complex; using Brizco.Domain.Entities.Complex;

View File

@ -2,7 +2,7 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Linq.Expressions; using System.Linq.Expressions;
using Brizco.Domain.Dtos.LargDtos; using Brizco.Domain.Dtos.LargeDtos;
using Brizco.Domain.Dtos.SmallDtos; using Brizco.Domain.Dtos.SmallDtos;
using Brizco.Domain.Entities.Complex; using Brizco.Domain.Entities.Complex;
using Brizco.Domain.Entities.Shift; using Brizco.Domain.Entities.Shift;

View File

@ -2,7 +2,7 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Linq.Expressions; using System.Linq.Expressions;
using Brizco.Domain.Dtos.LargDtos; using Brizco.Domain.Dtos.LargeDtos;
using Brizco.Domain.Dtos.SmallDtos; using Brizco.Domain.Dtos.SmallDtos;
using Brizco.Domain.Entities.Complex; using Brizco.Domain.Entities.Complex;
using Brizco.Domain.Entities.Routine; using Brizco.Domain.Entities.Routine;

View File

@ -3,7 +3,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Linq.Expressions; using System.Linq.Expressions;
using Brizco.Common.Extensions; using Brizco.Common.Extensions;
using Brizco.Domain.Dtos.LargDtos; using Brizco.Domain.Dtos.LargeDtos;
using Brizco.Domain.Dtos.SmallDtos; using Brizco.Domain.Dtos.SmallDtos;
using Brizco.Domain.Entities.Complex; using Brizco.Domain.Entities.Complex;
using Brizco.Domain.Entities.Shift; using Brizco.Domain.Entities.Shift;

View File

@ -1,4 +1,5 @@
using MD.PersianDateTime.Standard; using Brizco.Domain.Dtos.LargeDtos;
using MD.PersianDateTime.Standard;
using Task = Brizco.Domain.Entities.Task.Task; using Task = Brizco.Domain.Entities.Task.Task;
namespace Brizco.Domain; namespace Brizco.Domain;

View File

@ -7,13 +7,14 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\Brizco.Core\Brizco.Core.csproj" /> <PackageReference Include="Refit" Version="7.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Refit" Version="7.0.0" /> <ProjectReference Include="..\Brizco.Core\Brizco.Core.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Folder Include="Models\RestApi\KaveNegar\" /> <Folder Include="Models\RestApi\KaveNegar\" />
<Folder Include="Services\" /> <Folder Include="Services\" />

View File

@ -42,7 +42,7 @@
<Using Include="Brizco.Common.Models.Exception" /> <Using Include="Brizco.Common.Models.Exception" />
<Using Include="Brizco.Domain.CommandQueries.Commands" /> <Using Include="Brizco.Domain.CommandQueries.Commands" />
<Using Include="Brizco.Domain.CommandQueries.Queries" /> <Using Include="Brizco.Domain.CommandQueries.Queries" />
<Using Include="Brizco.Domain.Dtos.LargDtos" /> <Using Include="Brizco.Domain.Dtos.LargeDtos" />
<Using Include="Brizco.Domain.Dtos.ResponseDto" /> <Using Include="Brizco.Domain.Dtos.ResponseDto" />
<Using Include="Brizco.Domain.Dtos.SmallDtos" /> <Using Include="Brizco.Domain.Dtos.SmallDtos" />
<Using Include="Brizco.Domain.Entities.Complex" /> <Using Include="Brizco.Domain.Entities.Complex" />

View File

@ -1,4 +1,6 @@
namespace Brizco.Repository.Handlers.Activity; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Repository.Handlers.Activity;
public class CreateActivityCommandHandler : IRequestHandler<CreateActivityCommand, ActivityLDto> public class CreateActivityCommandHandler : IRequestHandler<CreateActivityCommand, ActivityLDto>
{ {

View File

@ -1,4 +1,4 @@
using Brizco.Domain.Dtos.LargDtos; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Repository.Handlers.Activity; namespace Brizco.Repository.Handlers.Activity;

View File

@ -1,4 +1,6 @@
namespace Brizco.Repository.Handlers.Position; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Repository.Handlers.Position;
public class GetPositionQueryHandler : IRequestHandler<GetPositionQuery, PositionLDto> public class GetPositionQueryHandler : IRequestHandler<GetPositionQuery, PositionLDto>
{ {

View File

@ -1,4 +1,6 @@
namespace Brizco.Repository.Handlers.Section; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Repository.Handlers.Section;
public class GetSectionQueryHandler : IRequestHandler<GetSectionQuery, SectionLDto> public class GetSectionQueryHandler : IRequestHandler<GetSectionQuery, SectionLDto>
{ {

View File

@ -1,4 +1,5 @@
using Brizco.Domain.Entities.Shift; using Brizco.Domain.Dtos.LargeDtos;
using Brizco.Domain.Entities.Shift;
namespace Brizco.Repository.Handlers.Shift; namespace Brizco.Repository.Handlers.Shift;

View File

@ -1,4 +1,6 @@
namespace Brizco.Repository.Handlers.ShiftPlan; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Repository.Handlers.ShiftPlan;
public class CreateShiftPlanCommandHandler : IRequestHandler<CreateShiftPlanCommand, ShiftPlanLDto> public class CreateShiftPlanCommandHandler : IRequestHandler<CreateShiftPlanCommand, ShiftPlanLDto>
{ {

View File

@ -1,4 +1,6 @@
namespace Brizco.Repository.Handlers.ShiftPlan; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Repository.Handlers.ShiftPlan;
public class GetShiftPlanQueryHandler : IRequestHandler<GetShiftPlanQuery, ShiftPlanLDto> public class GetShiftPlanQueryHandler : IRequestHandler<GetShiftPlanQuery, ShiftPlanLDto>
{ {

View File

@ -1,4 +1,6 @@
namespace Brizco.Repository.Handlers.Task; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Repository.Handlers.Task;
public class CreateActivityCommandHandler : IRequestHandler<CreateTaskCommand, TaskLDto> public class CreateActivityCommandHandler : IRequestHandler<CreateTaskCommand, TaskLDto>
{ {

View File

@ -1,4 +1,4 @@
using Brizco.Domain.Dtos.LargDtos; using Brizco.Domain.Dtos.LargeDtos;
namespace Brizco.Repository.Handlers.Task; namespace Brizco.Repository.Handlers.Task;