Esempio n. 1
0
        protected void UpgradeBtn_Click(object sender, EventArgs e)
        {
            Machines     m           = Session["Machines"] as Machines;
            List <Items> invItemList = ViewState["InvetoryList"] as List <Items>;

            if (ProcessList.SelectedItem.Text != "===Select Upgrade===")
            {
                m.MachineProcessor = ProcessList.SelectedItem.Text;
                m.Health           = int.Parse(ProcessList.SelectedValue);
            }
            if (GraphicList.SelectedItem.Text != "===Select Upgrade===")
            {
                m.MachineGraphicCard = GraphicList.SelectedItem.Text;
                m.Speed = int.Parse(GraphicList.SelectedValue);
            }
            if (MemoryList.SelectedItem.Text != "===Select Upgrade===")
            {
                m.MachineMemory = MemoryList.SelectedItem.Text;
                m.Attack        = int.Parse(MemoryList.SelectedValue);
            }
            if (PowerSupList.SelectedItem.Text != "===Select Upgrade===")
            {
                m.MachinePowerSupply = PowerSupList.SelectedItem.Text;
                m.Defence            = int.Parse(PowerSupList.SelectedValue);
            }

            MachineLogic.UpdateMachine(m);
            Response.Redirect("Workstation.aspx", true);
        }
Esempio n. 2
0
 public void ChangeMachineName(string newName, string oldName)
 {
     if (newName == oldName)
     {
         return;
     }
     ///
     if (string.IsNullOrEmpty(newName))
     {
         ErrorDialogCon errorcon = new ErrorDialogCon();
         errorcon.ErrorMsg = "名称不能为空";
         errorcon.PopupDialog();
         return;
     }
     ///
     if (MachineLogic.ChangeMachineName(MachineLogic.localMachine().machineId, newName) == false)
     {
         ErrorDialogCon errorcon = new ErrorDialogCon();
         errorcon.ErrorMsg = "更新名称错误";
         errorcon.PopupDialog();
         return;
     }
     ///
     foreach (var m in myMachines)
     {
         WebSocketClient.SendMessage(m.machineId, newName, msgType.client_onNameChange);
     }
 }
Esempio n. 3
0
        private void MainWindow_Loaded(object sender, RoutedEventArgs e)
        {
            try
            {
                var machineInfo    = MachineLogic.localMachine();
                var netmachineInfo = UserLogic.AutoLogin(machineInfo.token);
                if (netmachineInfo == null)
                {
                    NavigationHelper.NavigatedToView("用户登录");
                }
                if (netmachineInfo.machineId != machineInfo.machineId)
                {
                    NavigationHelper.NavigatedToView("用户登录");
                }
                machineInfo.machineName = netmachineInfo.machineName;
                machineInfo.machinepwd  = netmachineInfo.machinePwd;
                MachineLogic.RecordMachineInfo(machineInfo);
                NavigationHelper.NavigatedToView("主界面");
            }
            catch (Exception)
            {
                NavigationHelper.NavigatedToView("用户登录");
            }

            var Swatches = new SwatchesProvider().Swatches;
            var swatch   = Swatches.FirstOrDefault(o => o.Name == "blue");

            ModifyTheme(theme =>
            {
                theme.SetBaseTheme(Theme.Light);
            });
            ModifyTheme(theme => theme.SetPrimaryColor(swatch.ExemplarHue.Color));
            ModifyTheme(theme => theme.SetSecondaryColor(swatch.AccentExemplarHue.Color));
        }
Esempio n. 4
0
        /// <summary>
        /// 接收到对方的Candidate,进行处理
        /// </summary>
        /// <param name="candidate"></param>
        public void AddRemoteCandidate(string mchineId, IceCandidate iceCandidate)
        {
            var ice = JsonConvert.SerializeObject(iceCandidate);

            if (mchineId == MachineLogic.localMachine().machineId)
            {
                return;
            }
            this.PeerConnection.AddCandidate(iceCandidate);
        }
Esempio n. 5
0
 public void loginMethod(object param)
 {
     if (UserLogic.Login(this.userName, pwd, Environment.MachineName))
     {
         var machineInfo = MachineLogic.localMachine();
         var msg         = "登录成功,机器ID:" + machineInfo.machineId + ",机器密码:" + machineInfo.machinepwd;
         this.ShowMessageBoxSuccess(msg, "成功", System.Windows.MessageBoxButton.OK);
         NavigationHelper.NavigatedToView("主界面");
     }
 }
 public void loginMethod(object param)
 {
     if (UserLogic.Login(this.userName, pwd, Environment.MachineName))
     {
         var            machineInfo = MachineLogic.localMachine();
         ErrorDialogCon con         = new ErrorDialogCon();
         con.ErrorMsg = "登录成功,机器ID:" + machineInfo.machineId + ",机器密码:" + machineInfo.machinepwd;
         //show the dialog
         con.PopupDialog();
         NavigationHelper.NavigatedToView("主界面");
     }
 }
Esempio n. 7
0
 protected RemoteControlBase()
 {
     this.Id                = Guid.NewGuid();
     this.config            = new WebRtcConfig();
     this.config.iceServers = new List <iceServer>();
     this.config.iceServers.Add(new iceServer
     {
         url        = "turn:" + ServerAddrs.lylRtcServerAddr + "?transport=udp",
         username   = MachineLogic.localMachine().machineId,
         credential = MachineLogic.localMachine().machineId,
     });
     this.config.iceTransportPolicy = iceTransportPolicyType.kRelay;
     PeerConnection.RegisterIceServer(this.config);
 }
Esempio n. 8
0
        public bool ReciveRemoteConnection(string machineId, SdpInfo remoteOfferInfo)
        {
            this.remoteMachine = MachineLogic.GetMachineById(machineId);
            this.InitlizeConnetion();
            var answerInfo = this.PeerConnection.SetRemoteDescription(remoteOfferInfo.sdp, remoteOfferInfo.type).Result;

            if (answerInfo == null)
            {
                this.showInfo("流媒体设备启动失败");
                return(false);
            }

            WebSocketClient.SendMessage(machineId, answerInfo, msgType.client_onCallee_CreateAnswer);
            return(true);
        }
Esempio n. 9
0
        public void SendMessage_Should_Return_Correct_Instruction_For_Message(string message, string expectedMessage)
        {
            // arrange
            var drinkMakerProtocol = new Mock <IDrinkMakerProtocol>();

            drinkMakerProtocol.Setup(x => x.BuildMessage(message)).Returns(expectedMessage);

            var CoffeeMachineLogic = new MachineLogic(drinkMakerProtocol.Object);

            // act
            string forwardedMessage = CoffeeMachineLogic.SendMessage(message);

            // assert
            Assert.Equal(expectedMessage, forwardedMessage);
        }
Esempio n. 10
0
        public void SendOrder_Should_Return_Message_With_Insufficient_Money_in_Message(double drinkprice, double InsertedAmount, string expectedMessage)
        {
            // arrange
            var drinkorder = new Mock <IDrinkOrder>();

            drinkorder.Setup(x => x.GetDrinkPrice()).Returns(drinkprice);

            var drinkMakerProtocol = new DrinkMakerProtocol();
            var machineLogic       = new MachineLogic(drinkMakerProtocol);

            machineLogic.InsertMoney(InsertedAmount);

            // act
            string sendededMessage = machineLogic.SendOrder(drinkorder.Object);

            // assert
            Assert.Equal(expectedMessage, sendededMessage);
        }
Esempio n. 11
0
        public void SendOrder_Should_Return_Empty_Message(string codeDrink)
        {
            // arrange
            var beverageQuantityChecker = new Mock <IBeverageQuantityChecker>();

            beverageQuantityChecker.Setup(x => x.IsEmpty(codeDrink)).Returns(false);
            var emailNotifier = new Mock <IEmailNotifier>();

            emailNotifier.Setup(x => x.NotifyMissingDrink(codeDrink));
            var drinkmakerprotocol = new DrinkMakerProtocol();
            var machinelogic       = new MachineLogic(drinkmakerprotocol, beverageQuantityChecker.Object, emailNotifier.Object);
            var drinkorder         = new Mock <IDrinkOrder>();

            //act
            string command = machinelogic.SendOrder(drinkorder.Object);

            //assert
            Assert.Equal(string.Empty, command);
        }
Esempio n. 12
0
        /// <summary>
        /// 主动呼叫
        /// </summary>
        /// <param name="mmachineId"></param>
        public bool ConnectRemote(string machineId)
        {
            this.remoteMachine = MachineLogic.GetMachineById(machineId);
            if (this.remoteMachine == null)
            {
                return(false);
            }
            this.InitlizeConnetion();
            this.keyMouseChannel = this.PeerConnection.CreateDataChannel(ChannelName.keyMouseChannel.ToString());
            this.fileChannel     = this.PeerConnection.CreateDataChannel(ChannelName.fileChannel.ToString());
            FileChannelMessageDeal.RegisterFileChannel(fileChannel);
            var offerInfo = this.PeerConnection.CreateOffer().Result;

            if (offerInfo == null)
            {
                this.showInfo("流媒体设备启动失败");
            }
            WebSocketClient.SendMessage(machineId, offerInfo, msgType.client_onCaller_CreateOffer);
            return(true);
        }
Esempio n. 13
0
        protected void Page_Load(object sender, EventArgs e)
        {
            ScriptManager.RegisterStartupScript(this, this.GetType(), "HelpBtn", "showTutorial();", true);
            using (DataContext db = new DataContext())
            {
                // Machines.DefaultMachine(CurrentUser.Entity(), db);
                Machines m = Machines.GetUserMachine(CurrentUser.Entity().UserID, db);
                Session["Machines"] = m;
                List <Items> InvItmList = ItemLogic.GetUserInvItems(CurrentUser.Entity(), -1, db);

                // Store into Encrypted Viewstate
                ViewState["InvetoryList"] = InvItmList;

                // Text Labels
                WorkstationNameLbl.Text = m.MachineName;
                ProcessorLbl.Text       = m.MachineProcessor;
                GraphicLbl.Text         = m.MachineGraphicCard;
                MemoryLbl.Text          = m.MachineMemory;
                PwsupLbl.Text           = m.MachinePowerSupply;

                // Attribute Labels
                HpattrLabel.Text    = m.Health.ToString();
                AtkattrLabel.Text   = m.Attack.ToString();
                DefattrLabel.Text   = m.Defence.ToString();
                SpeedattrLabel.Text = m.Speed.ToString();

                // Upgrade Panel
                WorkStnUpgradeName.Text = m.MachineName;
                MachineLogic.LoadItemIntoList(ProcessList, InvItmList, 1);
                MachineLogic.LoadItemIntoList(GraphicList, InvItmList, 4);
                MachineLogic.LoadItemIntoList(MemoryList, InvItmList, 2);
                MachineLogic.LoadItemIntoList(PowerSupList, InvItmList, 3);

                CurrentProcessStatLbl.Text = m.Health.ToString();
                CurrentGPUStatLbl.Text     = m.Speed.ToString();
                CurrentMemStatLbl.Text     = m.Attack.ToString();
                CurrentPowStatLbl.Text     = m.Defence.ToString();
            }
        }
Esempio n. 14
0
        public void SendOrder_Should_Return_Message_If_There_Shortage(string codeDrink, double drinkprice, string expectedMessage)
        {
            // arrange
            var beverageQuantityChecker = new Mock <IBeverageQuantityChecker>();

            beverageQuantityChecker.Setup(x => x.IsEmpty(codeDrink)).Returns(true);
            var emailNotifier = new Mock <IEmailNotifier>();

            emailNotifier.Setup(x => x.NotifyMissingDrink(codeDrink));
            var drinkorder = new Mock <IDrinkOrder>();

            drinkorder.Setup(x => x.GetDrinkCode()).Returns(codeDrink);
            var drinkMakerProtocol = new DrinkMakerProtocol();
            var machineLogic       = new MachineLogic(drinkMakerProtocol, beverageQuantityChecker.Object, emailNotifier.Object);

            machineLogic.InsertMoney(drinkprice);

            // act
            string sendededMessage = machineLogic.SendOrder(drinkorder.Object);

            // assert
            Assert.Equal(expectedMessage, sendededMessage);
        }
Esempio n. 15
0
        public void sendOrder_Sould_Build_Message_For_Orange(string codeDrink, string expectedMessage)
        {
            // arrange
            var beverageQuantityChecker = new Mock <IBeverageQuantityChecker>();

            beverageQuantityChecker.Setup(x => x.IsEmpty(codeDrink)).Returns(false);
            var emailNotifier = new Mock <IEmailNotifier>();

            emailNotifier.Setup(x => x.NotifyMissingDrink(codeDrink));
            var drink              = new OrangeJuice();
            var drinkOrder         = new DrinkOrder(drink);
            var drinkMakerProtocol = new DrinkMakerProtocol();
            var logicMachine       = new MachineLogic(drinkMakerProtocol, beverageQuantityChecker.Object, emailNotifier.Object);

            logicMachine.InsertMoney(.60);


            // act
            string message = logicMachine.SendOrder(drinkOrder);

            // assert
            Assert.Equal(expectedMessage, message);
        }
Esempio n. 16
0
        private void ChangeMachineNameButton_OnClick(object sender, RoutedEventArgs e)
        {
            ChangeMachineNameCon popup = new ChangeMachineNameCon(MachineLogic.localMachine().machineName);

            popup.PopupDialog(closingEventHandler: this.onChangeMachineNamePopupClosed);
        }
Esempio n. 17
0
 private void MenuPopupButton_OnClick(object sender, RoutedEventArgs e)
 {
     MachineLogic.DeleteMachineInfo();
     NavigationHelper.NavigatedToView("用户登录");
 }
Esempio n. 18
0
 public MachineFacade(IServiceProvider serviceProvider, ProductionDbContext dbContext)
 {
     this.DbContext    = dbContext;
     this.DbSet        = DbContext.Set <MachineModel>();
     this.MachineLogic = serviceProvider.GetService <MachineLogic>();
 }