Esempio n. 1
0
 public IHttpActionResult GetFreeRooms(string FromDate, string ToDate)
 {
     return(Json(_unitOfWork.Room_List.GetRoomsForReservationInDate(new DataSourceRequest()
     {
         Page = 0, PageSize = 0
     }, PersianDateConvertor.ConvertToGregorian(FromDate).Date, PersianDateConvertor.ConvertToGregorian(ToDate).Date, null)));
 }
Esempio n. 2
0
        public ActionResult Edit(ReservationViewModel reservation)
        {
            if (ModelState.IsValid)
            {
                var result = _unitOfWork.Reservation_List.UpdateWithRooms(ReservationMapper.Map(reservation), reservation.SelectedRooms);

                if (result)
                {
                    if (reservation.SelectedFellows != null)
                    {
                        _unitOfWork.Customer_List.UpdateFellows(reservation.ParentId, reservation.SelectedFellows);
                    }
                    Ok();
                    Reservation reservationSignalR = _unitOfWork.Reservation_List.Find(Guid.Parse(reservation.ID));
                    var         hub = new dashboardHub();
                    hub.Refresh(
                        reservationSignalR.ID.ToString(),
                        Translator.ReservationStateToPersian(reservationSignalR.Reservation_ReservationState.Title.ToString()),
                        reservationSignalR.Number.ToString(),
                        PersianDateConvertor.ConvertToPersianDate(reservationSignalR.FromDate, true),
                        PersianDateConvertor.ConvertToPersianDate(reservationSignalR.ToDate, true)
                        );
                    Response.Redirect("/Admin/Home/Index");
                    return(RedirectToAction("Index", "Reservation", null));
                }
            }
            Forbidden();
            return(Content(GenerateError()));
        }
Esempio n. 3
0
        public DataSourceResult GetAllByDataSourceResultInDate(DataSourceRequest request, DateTime requestDate)
        {
            if (GetAll().Where(w => w.ReservationRooms_Reservation.FromDate <= requestDate && w.ReservationRooms_Reservation.ToDate >= requestDate).Count() != 0)
            {
                return(GetAll().Where(w => w.ReservationRooms_Reservation.FromDate <= requestDate && w.ReservationRooms_Reservation.ToDate >= requestDate).ToDataSourceResult(request, reservation => new
                {
                    ID = reservation.ID,
                    RequeestDate = PersianDateConvertor.ConvertToPersianDate(requestDate, true),
                    ReservationID = reservation.ReservationID,
                    RoomID = reservation.RoomID,
                    RoomNumber = reservation.ReservationRooms_Room.Number,
                    ReservationNumber = reservation.ReservationRooms_Reservation.Number,
                    ReservationType = Translator.ReservationStateToPersian(reservation.ReservationRooms_Reservation.Reservation_ReservationState.Title.ToString()),
                    DatePeriod = $"از تاریخ {PersianDateConvertor.ConvertToPersianDate(reservation.ReservationRooms_Reservation.FromDate, true)} تا {PersianDateConvertor.ConvertToPersianDate(reservation.ReservationRooms_Reservation.ToDate, true)}"
                }));
            }
            else
            {
                List <string> RequeestDate = new List <string>();
                RequeestDate.Add(PersianDateConvertor.ConvertToPersianDate(requestDate, true));

                DataSourceResult result = new DataSourceResult();
                result.Data = RequeestDate;

                return(result);
            }
        }
Esempio n. 4
0
        public DataSourceResult GetFreeRooms(DataSourceRequest request, DateTime requestDate)
        {
            List <Room> freeRooms = new List <Room>();

            foreach (Room roomItem in GetAll())
            {
                bool AddOrNot = true;
                if (roomItem.Room_Checking_List != null)
                {
                    foreach (Checking checkingItem in roomItem.Room_Checking_List)
                    {
                        if ((requestDate > checkingItem.FromDate && requestDate > checkingItem.ToDate) || (requestDate < checkingItem.FromDate && requestDate < checkingItem.ToDate))
                        {
                            continue;
                        }
                        AddOrNot = false;
                    }
                }
                if (roomItem.Room_ReservationRooms_List != null)
                {
                    foreach (ReservationRooms reservationItem in roomItem.Room_ReservationRooms_List)
                    {
                        if ((requestDate > reservationItem.ReservationRooms_Reservation.FromDate && requestDate > reservationItem.ReservationRooms_Reservation.ToDate) || (requestDate < reservationItem.ReservationRooms_Reservation.FromDate && requestDate < reservationItem.ReservationRooms_Reservation.ToDate))
                        {
                            continue;
                        }
                        AddOrNot = false;
                    }
                }
                if (AddOrNot)
                {
                    freeRooms.Add(roomItem);
                }
            }


            if (freeRooms.Count != 0)
            {
                return(freeRooms.ToDataSourceResult(request, rooms => new
                {
                    ID = rooms.ID,
                    RequeestDate = PersianDateConvertor.ConvertToPersianDate(requestDate, true),
                    RoomNumber = rooms.Number
                }));
            }
            else
            {
                List <string> RequeestDate = new List <string>();
                RequeestDate.Add(PersianDateConvertor.ConvertToPersianDate(requestDate, true));
                DataSourceResult result = new DataSourceResult();
                result.Data = RequeestDate;
                return(result);
            }
        }
Esempio n. 5
0
 public DataSourceResult GetAllByDataSourceResult(DataSourceRequest request)
 {
     return(GetAll().OrderByDescending(o => o.Number).ToDataSourceResult(request, reservation => new
     {
         ID = reservation.ID,
         State = Translator.ReservationStateToPersian(reservation.Reservation_ReservationState.Title.ToString()),
         CustomerID = reservation.CustomerID,
         CustomerFullName = reservation.Reservation_Customer.FullName,
         Number = reservation.Number,
         FromDate = $"{PersianDateConvertor.ConvertToPersianDate(reservation.FromDate, true)}",
         ToDate = $"{PersianDateConvertor.ConvertToPersianDate(reservation.ToDate, true)}",
         DatePeriod = $"از {PersianDateConvertor.ConvertToPersianDate(reservation.FromDate)} تا {PersianDateConvertor.ConvertToPersianDate(reservation.ToDate)}"
     }));
 }
Esempio n. 6
0
        public DataSourceResult GetAllByDataSourceResult(DataSourceRequest request)
        {
            //Guid? reservationId = null;

            return(GetAll().OrderByDescending(d => d.CreateDate).ToDataSourceResult(request, checking => new
            {
                ID = checking.ID,
                RoomID = checking.Checking_Room.ID,
                RoomNumber = checking.Checking_Room.Number,
                FromDate = PersianDateConvertor.ConvertToPersianDate(checking.FromDate, true),
                ToDate = PersianDateConvertor.ConvertToPersianDate(checking.ToDate, true),
                ReservationID = checking.ReservationID,
                ReservationNumber = checking.Checking_Reservation == null ? "" : checking.Checking_Reservation.Number.ToString(),
            }));
        }
Esempio n. 7
0
        public DataSourceResult GetAllForCustomerByDataSourceResult(DataSourceRequest request, string id)
        {
            Guid customerId = Guid.Parse(id);

            return(GetAll().Where(w => w.CustomerID == customerId).OrderByDescending(o => o.Number).ToDataSourceResult(request, reservation => new
            {
                ID = reservation.ID,
                State = reservation.Reservation_ReservationState.Title.ToString(),
                CustomerID = reservation.CustomerID,
                CustomerFullName = reservation.Reservation_Customer.FullName,
                Number = reservation.Number,
                FromDate = $"{PersianDateConvertor.ConvertToPersianDate(reservation.FromDate)}",
                ToDate = $"{PersianDateConvertor.ConvertToPersianDate(reservation.ToDate)}",
                DatePeriod = $"از {PersianDateConvertor.ConvertToPersianDate(reservation.FromDate)} تا {PersianDateConvertor.ConvertToPersianDate(reservation.ToDate)}"
            }));
        }
Esempio n. 8
0
        public static Checking Map(CheckingViewModel checkingViewModel)
        {
            Guid?_reservationId = null;

            if (!string.IsNullOrEmpty(checkingViewModel.ReservationID))
            {
                _reservationId = Guid.Parse(checkingViewModel.ReservationID);
            }
            return(new Checking()
            {
                ID = checkingViewModel.ID == null?Guid.NewGuid() : Guid.Parse(checkingViewModel.ID),
                         FromDate = PersianDateConvertor.ConvertToGregorian(checkingViewModel.FromDate),
                         ToDate = PersianDateConvertor.ConvertToGregorian(checkingViewModel.ToDate),
                         RoomID = Guid.Parse(checkingViewModel.RoomID),
                         ReservationID = _reservationId
            });
        }
Esempio n. 9
0
        public JsonResult Detail(string id)
        {
            InternshipHMSModels.Models.Checking checking = _unitOfWork.Checking_List.Find(Guid.Parse(id));

            return(Json(new
            {
                ID = checking.ID.ToString(),
                FromDate = PersianDateConvertor.ConvertToPersianDate(checking.FromDate, true),
                ToDate = PersianDateConvertor.ConvertToPersianDate(checking.ToDate, true),
                RoomID = checking.Checking_Room.ID.ToString(),
                RoomNumber = checking.Checking_Room.Number.ToString(),
                ReservationID = checking.Checking_Reservation == null ? "" : checking.Checking_Reservation.ID.ToString(),
                ReservationNumber = checking.Checking_Reservation == null ? "" : checking.Checking_Reservation.Number.ToString(),
                Passengers = _unitOfWork.Passenger_List.GetRoomPassengersByDataSourceResult(new DataSourceRequest()
                {
                    Page = 1, PageSize = 0
                }, checking.ID.ToString()),
            }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 10
0
 public JsonResult Detail(string id)
 {
     InternshipHMSModels.Models.Customer customer = _unitOfWork.Customer_List.Find(Guid.Parse(id));
     return(Json(new
     {
         ID = customer.ID,
         FirstName = customer.FirstName,
         LastName = customer.LastName,
         FullName = customer.FullName,
         NationalCode = customer.NationalCode,
         CustomerCode = customer.CustomerCode,
         PassportNumber = customer.PassportNumber,
         Birthdate = customer.Birthdate == null ? "" : $"{PersianDateConvertor.ConvertToPersianDate((DateTime)customer.Birthdate)} ({DateTime.Now.Year - customer.Birthdate.Value.Year})",
         Nationality = customer.Nationality,
         LivingPlace = customer.LivingPlace,
         ParentID = customer.ParentID == null ? "" : customer.ParentID.ToString(),
         ParentFullName = customer.ParentID == null ? "" : _unitOfWork.Customer_List.GetAll().FirstOrDefault(f => f.ID == customer.ParentID).FullName,
         Email = customer.Person_ApplicationUser == null ? "" : customer.Person_ApplicationUser.Email,
         LockoutEnabled = customer.Person_ApplicationUser == null ? "" : customer.Person_ApplicationUser.LockoutEnabled.ToString()
     }, JsonRequestBehavior.AllowGet));
 }
Esempio n. 11
0
        public static Customer Map(CustomerViewModel customerViewModel)
        {
            DateTime?_lockoutEndDateUtc = null;

            if (customerViewModel.LockoutEnabled)
            {
                _lockoutEndDateUtc = DateTime.Parse("2400-05-05");
            }
            DateTime?_birthdate = null;

            if (!string.IsNullOrEmpty(customerViewModel.Birthdate) || !string.IsNullOrWhiteSpace(customerViewModel.Birthdate))
            {
                _birthdate = PersianDateConvertor.ConvertToGregorian(customerViewModel.Birthdate);
            }
            Guid?_parentId = null;

            if (!string.IsNullOrEmpty(customerViewModel.ParentID) || !string.IsNullOrWhiteSpace(customerViewModel.ParentID))
            {
                _parentId = Guid.Parse(customerViewModel.ParentID);
            }
            return(new Customer()
            {
                ID = customerViewModel.ID == null?Guid.NewGuid() : Guid.Parse(customerViewModel.ID),
                         FirstName = customerViewModel.FirstName,
                         LastName = customerViewModel.LastName,
                         NationalCode = customerViewModel.NationalCode,
                         Birthdate = _birthdate,
                         Nationality = customerViewModel.Nationality,
                         LivingPlace = customerViewModel.LivingPlace,
                         PassportNumber = customerViewModel.PassportNumber,
                         ParentID = _parentId,
                         Person_ApplicationUser = new ApplicationUser()
                {
                    Email = customerViewModel.Email,
                    UserName = customerViewModel.Email,
                    LockoutEnabled = customerViewModel.LockoutEnabled,
                    LockoutEndDateUtc = _lockoutEndDateUtc
                }
            });
        }
Esempio n. 12
0
        public static Reservation Map(ReservationViewModel reservationViewModel)
        {
            string GetStateID(string val)
            {
                switch (val)
                {
                case "0":
                    return("4c825c2b-ad88-48d5-af69-277d97351651");

                case "1":
                    return("4c825c2b-ad88-48d5-af69-296d97351441");

                case "2":
                    return("4c825c2b-ad88-48d5-af69-277d97396441");

                case "3":
                    return("4c825c2b-ad46-48d5-af69-277d97396441");

                default:
                    return("4c825c2b-ad88-48d5-af69-277d97351651");
                }
            }

            Guid _reservationState = Guid.Parse("4c825c2b-ad88-48d5-af69-277d97351651");

            if (!string.IsNullOrEmpty(reservationViewModel.State))
            {
                _reservationState = Guid.Parse(GetStateID(reservationViewModel.State));
            }

            return(new Reservation()
            {
                ID = reservationViewModel.ID == null?Guid.NewGuid() : Guid.Parse(reservationViewModel.ID),
                         ReservationStateID = _reservationState,
                         CustomerID = Guid.Parse(reservationViewModel.ParentId),
                         FromDate = PersianDateConvertor.ConvertToGregorian(reservationViewModel.FromDate),
                         ToDate = PersianDateConvertor.ConvertToGregorian(reservationViewModel.ToDate)
            });
        }
Esempio n. 13
0
 public ActionResult PriceCreate(RoomPriceViewModel room)
 {
     if (ModelState.IsValid)
     {
         if (string.IsNullOrEmpty(room.Date))
         {
             DateTime seed     = PersianDateConvertor.ConvertToGregorian(room.FromDate).Date;
             DateTime finalDay = PersianDateConvertor.ConvertToGregorian(room.ToDate).AddDays(1).Date;
             do
             {
                 _unitOfWork.RoomPrice_List.Add(RoomPriceMapper.Map(room, seed));
                 seed = seed.AddDays(1);
             } while (seed != finalDay);
         }
         else
         {
             _unitOfWork.RoomPrice_List.Add(RoomPriceMapper.Map(room, DateTime.Parse(room.Date)));
         }
         Ok();
         return(RedirectToAction("Index", "Room", null));
     }
     return(Content(GenerateError()));
 }
Esempio n. 14
0
 public DataSourceResult GetAllByDataSourceResultInDate(DataSourceRequest request, DateTime requestDate)
 {
     if (GetAll().Where(w => w.FromDate <= requestDate && w.ToDate >= requestDate).Count() != 0)
     {
         return(GetAll().Where(w => w.FromDate <= requestDate && w.ToDate >= requestDate).ToDataSourceResult(request, checking => new
         {
             ID = checking.ID,
             RequeestDate = PersianDateConvertor.ConvertToPersianDate(requestDate, true),
             ReservationID = checking.ReservationID,
             RoomID = checking.RoomID,
             RoomNumber = checking.Checking_Room.Number,
             ReservationNumber = checking.Checking_Reservation == null ? "" : checking.Checking_Reservation.Number.ToString(),
             DatePeriod = $"از تاریخ {PersianDateConvertor.ConvertToPersianDate(checking.FromDate, true)} تا {PersianDateConvertor.ConvertToPersianDate(checking.ToDate, true)}"
         }));
     }
     else
     {
         List <string> RequeestDate = new List <string>();
         RequeestDate.Add(PersianDateConvertor.ConvertToPersianDate(requestDate, true));
         DataSourceResult result = new DataSourceResult();
         result.Data = RequeestDate;
         return(result);
     }
 }
Esempio n. 15
0
        public JsonResult Detail(string id)
        {
            InternshipHMSModels.Models.Reservation reserve = _unitOfWork.Reservation_List.Find(Guid.Parse(id));

            return(Json(new
            {
                ID = reserve.ID.ToString(),
                Number = reserve.Number.ToString(),
                CustomerID = reserve.Reservation_Customer.ID.ToString(),
                CustomerFullName = reserve.Reservation_Customer.FullName.ToString(),
                State = Translator.ReservationStateToPersian(reserve.Reservation_ReservationState.Title.ToString()),
                StateID = reserve.Reservation_ReservationState.Title,
                FromDate = PersianDateConvertor.ConvertToPersianDate(reserve.FromDate, true),
                ToDate = PersianDateConvertor.ConvertToPersianDate(reserve.ToDate, true),
                Fellows = _unitOfWork.Customer_List.GetChildByDataSourceResult(new DataSourceRequest()
                {
                    Page = 1, PageSize = 0
                }, reserve.Reservation_Customer.ID.ToString()),
                Rooms = _unitOfWork.ReservationRooms_List.GetRoomsForReservationByDataSourceResult(new DataSourceRequest()
                {
                    Page = 1, PageSize = 0
                }, id)
            }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 16
0
 public DataSourceResult RoomsInDate_Read([System.Web.Http.ModelBinding.ModelBinder(typeof(WebApiDataSourceRequestModelBinder))] DataSourceRequest request, string FromDate, string ToDate)
 {
     return(_unitOfWork.Room_List.GetRoomsForReservationInDate(request, PersianDateConvertor.ConvertToGregorian(FromDate).Date, PersianDateConvertor.ConvertToGregorian(ToDate).Date, null));
     //return service;
 }
Esempio n. 17
0
 public ActionResult RoomsInDate_Read([DataSourceRequest] DataSourceRequest request, string FromDate, string ToDate, string ReservationId)
 {
     return(Json(_unitOfWork.Room_List.GetRoomsForReservationInDate(request, PersianDateConvertor.ConvertToGregorian(FromDate).Date, PersianDateConvertor.ConvertToGregorian(ToDate).Date, ReservationId)));
 }
Esempio n. 18
0
        public JsonResult RoomPriceCalendarSearch(string roomID, string requestDate)
        {
            DateTime        currentDate     = PersianDateConvertor.ConvertToGregorian(requestDate);
            PersianCalendar pc              = new PersianCalendar();
            DateTime        firstDayOfMonth = currentDate;

            #region KabiseList
            int        nearkabise = 1399;
            List <int> kabise     = new List <int>();
            for (int i = 0; i < 201; i++)
            {
                kabise.Add(nearkabise + (i * 4));
            }
            for (int i = 1; i <= 201; i++)
            {
                kabise.Add(nearkabise - (i * 4));
            }

            #endregion

            #region PersianMonthRange
            int MonthRange;
            if (pc.GetMonth(currentDate) == 12)
            {
                if (kabise.Contains(pc.GetYear(currentDate)))
                {
                    MonthRange = 30;
                }
                else
                {
                    MonthRange = 29;
                }
            }
            else if (pc.GetMonth(currentDate) < 7)
            {
                MonthRange = 31;
            }
            else
            {
                MonthRange = 30;
            }
            #endregion

            #region HeaderDetail
            List <string> headerWeek = new List <string>();
            for (int i = 0; i < 7; i++)
            {
                headerWeek.Add(GetPersianCurrentDayOfWeek(((int)firstDayOfMonth.AddDays(i).DayOfWeek).ToString()));
            }
            string MonthYearTitle = $"{GetPersianMonthName(pc.GetMonth(currentDate).ToString())} {pc.GetYear(currentDate)}";
            MonthYearTitle = MonthYearTitle.Replace("0", "۰").Replace("1", "۱").Replace("2", "۲").Replace("3", "۳").Replace("4", "۴").Replace("5", "۵").Replace("6", "۶").Replace("7", "۷").Replace("8", "۸").Replace("9", "۹");
            #endregion


            List <DataSourceResult> roomPrices = new List <DataSourceResult>();


            for (int i = 0; i < MonthRange; i++)
            {
                roomPrices.Add(_unitOfWork.RoomPrice_List.GetForRoomWithDateByDataSourceResult(new DataSourceRequest()
                {
                    Page = 1, PageSize = 0
                }
                                                                                               , Guid.Parse(roomID)
                                                                                               , firstDayOfMonth.AddDays(i).Date));
            }


            return(Json(new
            {
                HeaderTitle = MonthYearTitle,
                HeaderWeek = headerWeek,
                CalendarPrices = roomPrices,
                CurrentDay = currentDate.Date.ToShortDateString()
            }, JsonRequestBehavior.AllowGet));
        }