| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- using AutoMapper;
- using Diligent.WebAPI.Business.Services;
- using Diligent.WebAPI.Data.Entities;
- using Diligent.WebAPI.Host.DTOs.Request;
- using Diligent.WebAPI.Host.Mediator.Request.Queries;
- using MediatR;
-
- namespace Diligent.WebAPI.Host.Mediator.Request.Handlers
- {
- public class GetRoomsForWhichRequestExistHandler : IRequestHandler<GetRoomsForWhichRequestExistQuery, List<RequestRoomReadDTO>>
- {
- private readonly RequestService _requestService;
- private readonly RoomService _roomService;
- private readonly IMapper _mapper;
-
- public GetRoomsForWhichRequestExistHandler(RequestService requestService,RoomService roomService,IMapper mapper)
- {
- _requestService = requestService;
- _roomService = roomService;
- _mapper = mapper;
- }
- public async Task<List<RequestRoomReadDTO>> Handle(GetRoomsForWhichRequestExistQuery request, CancellationToken cancellationToken)
- {
- var requests = await _requestService.GetRequestsAsync();
- var rooms = await _roomService.GetRoomsAsync();
- List<Room> temp = new();
- foreach (var req in requests)
- {
- foreach (var room in rooms)
- {
- if (req.RoomId == room.Id)
- {
- if (!temp.Contains(room))
- {
- temp.Add(room);
- }
- }
-
- }
- }
- return _mapper.Map<List<RequestRoomReadDTO>>(temp);
- }
- }
- }
|