예제 #1
0
        private void checkInBtn_Click(object sender, RoutedEventArgs e)
        {
            int      roomID;
            string   customerCardID = customerCardIDTxt.Text.Trim();
            string   roomIDStr      = roomIDTxt.Text.Trim();
            DateTime?checkInDate    = checkInDatepicker.SelectedDate;
            DateTime?checkOutDate   = checkOutDatepicker.SelectedDate;

            bool success = int.TryParse(roomIDStr, out roomID);

            MessageBox.Show(DateTime.Now.Hour.ToString());
            if (!success)
            {
                errorLbl.Text = "Room ID must be a number";
            }
            else if (DateTime.Now.Hour <= 10)
            {
                errorLbl.Text = "Check in time is 10 AM";
            }
            else if (customerCardID == "" || !checkInDate.HasValue || !checkOutDate.HasValue)
            {
                errorLbl.Text = "Please input all field!";
            }
            else
            {
                RoomMediator rmediator = new RoomMediator();
                Room         room      = rmediator.getRoom(roomID);
                if (room == null || room.status == "Not Available")
                {
                    errorLbl.Text = "Room is not available";
                }
                else
                {
                    CustomerMediator cmediator = new CustomerMediator();
                    Customer         customer  = cmediator.getCustomer(customerCardID);
                    if (customer == null)
                    {
                        showField();
                        errorLbl.Text = "Please register customer!";
                    }
                    else
                    {
                        ReservationMediator mediator    = new ReservationMediator();
                        ReservationFactory  factory     = new ReservationFactory();
                        Reservation         reservation = mediator.addReservation(factory.createNewReservation(customer.customerID, roomID, checkInDate, checkOutDate));
                        room.status        = "Not Available";
                        room               = rmediator.updateRoom(roomID, room);
                        totalPriceTxt.Text = "Total Price = Rp. " + room.price;
                        if (reservation == null)
                        {
                            MessageBox.Show("Reservation failed!");
                        }
                        else
                        {
                            MessageBox.Show("Reservation success!");
                        }
                    }
                }
            }
        }
예제 #2
0
        private void registerBtn_Click(object sender, RoutedEventArgs e)
        {
            string   idCardNumber = customerCardIDTxt.Text.Trim();
            string   name         = nameTxt.Text.Trim();
            string   address      = addressTxt.Text.Trim();
            DateTime?dateOfBirth  = dateOfBirthPicker.SelectedDate;

            if (idCardNumber == "" || name == "" || address == "" || !dateOfBirth.HasValue || genderComboBox.SelectedItem == null)
            {
                errorLbl.Text = "Please input all field!";
            }
            else
            {
                string gender = (string)((ComboBoxItem)genderComboBox.SelectedValue).Content;

                CustomerMediator mediator = new CustomerMediator();
                CustomerFactory  factory  = new CustomerFactory();
                Customer         customer = mediator.addCustomer(factory.createNewCustomer(idCardNumber, name, dateOfBirth, address, gender));
                if (customer == null)
                {
                    MessageBox.Show("Register customer failed!");
                }
                else
                {
                    MessageBox.Show("Register customer success!");
                }
            }
        }
예제 #3
0
    void OnBtnClick(GameObject go)
    {
        if (go == CatGroupBtn)
        {
            Debug.Log(" CatGroupBtn");
            AppFacade.getInstance.SendNotification(NotiConst.GET_CAT_GROUP_DATA);
            CatGroupMenuMediator catGroupMediator = AppFacade.getInstance.RetrieveMediator(CatGroupMenuMediator.NAME) as CatGroupMenuMediator;
            //            catGroupMediator.catGroupMenuView.catGroupMenuGameObject.SetActive(true);
            //0107 lgx 修改 显示猫分组不能这就草草的显示界面就行需要准备
            catGroupMediator.catGroupMenuView.menutype = EnumGlobal.MenuType.CatGroupMenu;
            catGroupMediator.catGroupMenuView.showCatGroup();
        }
        else if (go == PromoteBtn)
        {
            CustomerMediator customerMediator = AppFacade.GetInstance().RetrieveMediator(CustomerMediator.NAME) as CustomerMediator;
            (customerMediator.ViewComponent as CustomerView).RemoveCustomer();

            //AppFacade.getInstance.SendNotification(NotiConst.CAT_LEAVE_ADD_GOLD);
            //StartCoroutine(SpawnCats());
        }
        else if (go == PromoteBtn_Exp)
        {
            SetExp(Exp + 1000);
        }
        else if (go == BattleBtn)
        {
            (AppFacade.getInstance.RetrieveMediator(SceneMediator.NAME) as SceneMediator).LoadScene(SceneConst.BattleScene);
        }
    }
예제 #4
0
    void ClickCat(GameObject go)
    {
        CustomerMediator customerMediator = AppFacade.getInstance.RetrieveMediator(CustomerMediator.NAME) as CustomerMediator;

        customerMediator.customerSpawnView.RemoveCustomer();
        //LeaveManor();
    }
예제 #5
0
        public Customer createNewCustomer(string idCardNumber, string name, DateTime?dateOfBirth, string address, string gender)
        {
            CustomerMediator mediator = new CustomerMediator();
            Customer         customer = new Customer();

            customer.customerID   = mediator.getLastID() + 1;
            customer.idCardNumber = idCardNumber;
            customer.name         = name;
            customer.dateOfBirth  = dateOfBirth;
            customer.address      = address;
            customer.gender       = gender;
            customer.status       = "Active";

            return(customer);
        }
예제 #6
0
    public override void Execute(INotification notification)
    {
        //base.Execute(notification);
        //暂时用Find,没想到好办法
        GameObject customerViewObj = GameObject.FindGameObjectWithTag(TagName.CUSTOMER_VIEW);

        CustomerMediator customerMediator = new CustomerMediator();
        CustomerView     customerView     = customerViewObj.GetComponent <CustomerView>();

        customerMediator.ViewComponent = customerView;

        Facade.RegisterProxy(new CustomerProxy());
        Facade.RegisterMediator(customerMediator);

        customerView.enabled = true;
    }