public async Task <ActionResult> Delete(int id)
        {
            RoomReservation reservation = await _roomReservationService.GetRoomReservation(id);

            if (reservation != null && !await _roomReservationService.CheckIfDateExpired(reservation.ReservationDate, reservation.TimeId))
            {
                RoomReservation roomReservation = await _roomReservationService.GetAllRoomReservations().Include(m => m.Time).Include(m => m.Member).ThenInclude(u => u.UserRoles).FirstOrDefaultAsync(m => m.Id == id);

                await _roomReservationService.Delete(id);

                await _roomReservationService.CommitAsync();

                if (_configuration.Notify)
                {
                    try
                    {
                        Message message = new Message(
                            _memberService.GetValidMembersEmails(),
                            "Meeting-Room: " + roomReservation.Member.Name + " " + roomReservation.Member.Surname + " rezervasiyasini sildi.",
                            roomReservation.Description + "\n" + roomReservation.ReservationDate + " " + roomReservation.Time.StartTime + "-" + roomReservation.Time.EndTime);
                        await _emailSender.SendEmailAsync(message);
                    }
                    catch
                    {
                    }
                }


                return(Ok());
            }
            return(BadRequest());
        }
Ejemplo n.º 2
0
        public ActionResult <List <GetRoomReservationDto> > GetReservations(int?year, int?month)
        {
            DateTime currentDate  = DateTime.Now;
            var      filteredData = _roomReservationService.GetAllRoomReservations().OrderBy(m => m.ReservationDate).ThenBy(m => m.Time.StartTime).ToList();

            if (year == null && month == null)
            {
                filteredData = filteredData.Where(m => m.ReservationDate.Year == currentDate.Year && m.ReservationDate.Month == currentDate.Month).ToList();
            }
            else if (year != null && month != null)
            {
                filteredData = filteredData.Where(m => m.ReservationDate.Year == year && m.ReservationDate.Month == month).ToList();
            }
            else if (year != null)
            {
                filteredData = filteredData.Where(m => m.ReservationDate.Year == year).ToList();
            }

            List <GetRoomReservationDto> result = new List <GetRoomReservationDto>();

            foreach (var item in filteredData)
            {
                result.Add(_mapper.Map <GetRoomReservationDto>(item));
            }
            return(result);
        }