コード例 #1
0
        public AddResult SaveClient(ClientDTO client, string oldTel)
        {
            if (!DataValidation.ValidateTelNum(client.TelNum))
            {
                return(AddResult.InvalidInput);
            }

            if (!string.IsNullOrEmpty(client.Passport))
            {
                if (!DataValidation.ValidatePassport(client.Passport))
                {
                    return(AddResult.InvalidInput);
                }
            }

            var res = HotelApiClient.GetInstance().UpdateClient(client, oldTel);

            if (res == System.Net.HttpStatusCode.NoContent)
            {
                Storage.Instance.ChangeAllClients(client);
                return(AddResult.Success);
            }
            if (res == System.Net.HttpStatusCode.Conflict)
            {
                return(AddResult.AlreadyCreated);
            }

            return(AddResult.Error);
        }
コード例 #2
0
 internal void CreateCleaning(CleaningDTO cleaning)
 {
     if (!HotelApiClient.GetInstance().CreateCleaning(cleaning))
     {
         MessageBox.Show("gg");
     }
 }
コード例 #3
0
        public AddResult CreateNewPersonnel(UserCreateDTO user, UserRoles role)
        {
            if (!DataValidation.ValidateTelNum(user.TelNumber))
            {
                return(AddResult.InvalidInput);
            }
            if (!DataValidation.ValidatePassport(user.Passport))
            {
                return(AddResult.InvalidInput);
            }
            if (!DataValidation.ValidatePassport(user.EmplBook))
            {
                return(AddResult.InvalidInput);
            }

            user.Role = role;
            var res = HotelApiClient.GetInstance().CreatePersonnel(user);

            if (res == System.Net.HttpStatusCode.NoContent)
            {
                //Storage.Instance.ChangeAllClients(clientDTO);
                return(AddResult.Success);
            }
            if (res == System.Net.HttpStatusCode.Conflict)
            {
                return(AddResult.AlreadyCreated);
            }

            return(AddResult.Error);
        }
コード例 #4
0
ファイル: App.xaml.cs プロジェクト: c-tel/TT-HotelManagement
        protected override void OnStartup(StartupEventArgs e)
        {
            base.OnStartup(e);

            ContentWindow   contentWindow   = new ContentWindow();
            NavigationModel navigationModel = new NavigationModel(contentWindow);

            NavigationManager.Instance.Initialize(navigationModel);
            contentWindow.Show();
            if (AUTHORIZATION_STUB != null)
            {
                var authResp = HotelApiClient.GetInstance().Login(AUTHORIZATION_STUB.Login, AUTHORIZATION_STUB.Password);
                if (authResp != null)
                {
                    var userRole = authResp.User.Role;
                    Storage.Instance.ChangeUser(new User(LoginModel.RightsDictionary[userRole]));

                    NavigationManager.Instance.Navigate(ModesEnum.Main);
                }
            }
            else
            {
                navigationModel.Navigate(ModesEnum.Login);
            }
        }
コード例 #5
0
        public PayResult AddPayment(PaymentTypes paymentType, string amount)
        {
            var valid = double.TryParse(amount, out var amountParsed);

            if (!valid)
            {
                return(PayResult.InvalidInput);
            }

            if (amountParsed > BookingModel.CalculateToPay(Storage.Instance.SelectedBooking))
            {
                return(PayResult.TooMuch);
            }

            var id = Storage.Instance.SelectedBooking.BookingId;

            if (HotelApiClient.GetInstance().AddPayment(id, paymentType, amountParsed))
            {
                var booking = HotelApiClient.GetInstance().GetBookingById(id);
                Storage.Instance.ChangeBooking(booking);

                return(PayResult.Success);
            }

            return(PayResult.Error);
        }
コード例 #6
0
ファイル: MainModel.cs プロジェクト: c-tel/TT-HotelManagement
        public void ProcessBookingSelection(int bookingId)
        {
            var res = HotelApiClient.GetInstance().GetBookingById(bookingId);

            Storage.Instance.ChangeBooking(res);

            NavigationManager.Instance.Navigate(ModesEnum.Booking);
        }
コード例 #7
0
 public List <RoomStatisticsDTO> GetStatistics(DateTime dateFrom, DateTime dateTo)
 {
     if (dateFrom > dateTo)
     {
         MessageBox.Show("Початкова дата пізніше кінцевої!");
     }
     return(HotelApiClient.GetInstance().GetRoomsStats(dateFrom, dateTo));
 }
コード例 #8
0
 public bool CreateNewBooking(DateTime dateFrom, DateTime dateTo, int num, string telNum, string commentText)
 {
     if (HotelApiClient.GetInstance().CreateBooking(dateFrom, dateTo, num, telNum, commentText))
     {
         Storage.Instance.ChangeBookings();
         return(true);
     }
     return(false);
 }
コード例 #9
0
        public bool Cancel(BookingDTO booking)
        {
            if (HotelApiClient.GetInstance().SetBookingStatus(booking.BookingId, BookingStates.Canceled))
            {
                var _ = HotelApiClient.GetInstance().GetBookingById(booking.BookingId);
                Storage.Instance.ChangeBooking(_);

                return(true);
            }
            return(false);
        }
コード例 #10
0
        public bool Edit(BookingDTO booking, DateTime from)
        {
            booking.StartDate = from;
            if (HotelApiClient.GetInstance().EditBooking(booking))
            {
                var _ = HotelApiClient.GetInstance().GetBookingById(booking.BookingId);
                Storage.Instance.ChangeBooking(_);

                return(true);
            }
            return(false);
        }
コード例 #11
0
        public void GoToClient(ClientAnalisedDTO selectedClient)
        {
            var client = HotelApiClient.GetInstance().GetClient(selectedClient.TelNum);

            var data = new ClientDisplayData
            {
                Client   = client,
                Mode     = DisplayModes.Editing,
                CameFrom = ModesEnum.Statistic
            };

            Storage.Instance.ChangeClientDisplayData(data);

            NavigationManager.Instance.Navigate(ModesEnum.Client);
        }
コード例 #12
0
ファイル: MainModel.cs プロジェクト: c-tel/TT-HotelManagement
        public void ProcessRoomSelection(int roomNumber)
        {
            var room = HotelApiClient.GetInstance().GetRoom(roomNumber);

            var data = new RoomDisplayData
            {
                CameFrom = ModesEnum.Main,
                Room     = room,
                Mode     = DisplayModes.Editing
            };

            Storage.Instance.ChangeRoomDisplayData(data);

            NavigationManager.Instance.Navigate(ModesEnum.Room);
        }
コード例 #13
0
ファイル: RoomModel.cs プロジェクト: c-tel/TT-HotelManagement
        public int CreateNewRoom(RoomDTO room, Contracts.Bookings.RoomType selectedType)
        {
            room.Type = selectedType;
            var res = HotelApiClient.GetInstance().CreateRoom(room);

            if (res == System.Net.HttpStatusCode.NoContent)
            {
                Storage.Instance.ChangeBookings();
                return(1);
            }
            if (res == System.Net.HttpStatusCode.Conflict)
            {
                return(2);
            }

            return(0);
        }
コード例 #14
0
        public bool Login(string login, string pwd)
        {
            var authResp = HotelApiClient.GetInstance().Login(login, pwd);

            if (authResp == null)
            {
                return(false);
            }

            var userRole = authResp.User.Role;

            Storage.Instance.ChangeUser(new User(RightsDictionary[userRole]));

            if (userRole == UserRoles.Maid)
            {
                NavigationManager.Instance.Navigate(ModesEnum.Maid);
            }
            else
            {
                NavigationManager.Instance.Navigate(ModesEnum.Main);
            }

            return(true);
        }
コード例 #15
0
 public List <ClientAnalisedDTO> GetClientsList()
 {
     return(HotelApiClient.GetInstance().GetAnalisedClients());
 }
コード例 #16
0
 public ClientDTO GetClient(string clientTel)
 {
     return(HotelApiClient.GetInstance().GetClient(clientTel));
 }
コード例 #17
0
 public TodayBookingsViewModel()
 {
     BookList = HotelApiClient.GetInstance().GetTodayBook();
 }
コード例 #18
0
 public List <RoomDTO> GetRoomsList(DateTime dateFrom, DateTime dateTo, int places)
 {
     return(HotelApiClient.GetInstance().GetFreeRooms(dateFrom, dateTo, places));
 }
コード例 #19
0
 public List <ClientDTO> GetClientsList()
 {
     return(HotelApiClient.GetInstance().GetAllClients());
 }
コード例 #20
0
 internal List <CleaningDTO> GetCleanings()
 {
     return(HotelApiClient.GetInstance().GetAllCleanings());
 }
コード例 #21
0
ファイル: MainModel.cs プロジェクト: c-tel/TT-HotelManagement
        public ObservableCollection <RoomInfo> ChangeInfoTable(DateTime dateFrom, DateTime dateTo)
        {
            var inp = HotelApiClient.GetInstance().RoomInfos(dateFrom, dateTo);

            return(new ObservableCollection <RoomInfo>(inp));
        }
コード例 #22
0
 public List <ClientDTO> GetClientsSuitList()
 {
     return(HotelApiClient.GetInstance().GetAnalisedSuitClients());
 }
コード例 #23
0
 private void ReinitItems()
 {
     Stats = new ObservableCollection <CleaningStatsDTO>(HotelApiClient.GetInstance().GetCleaningsStats(SelectedDate));
 }
コード例 #24
0
 internal List <ReportItem> GetReportItems(DateTime selectedDate)
 {
     return(HotelApiClient.GetInstance().GetReport(selectedDate));
 }