示例#1
0
        public void AddExtraTaskTime(float time)
        {
            float taskTime = (float)(Math.Ceiling((TaskWatch.Elapsed.TotalMinutes - Setting.Value.Timer_RoundUpMinutes) / 15) * .25) + (LeftoverTransfer >= 0.25f ? LeftoverTransfer : 0);

            extraTaskTime += time;
            if (taskTime + extraTaskTime < 0.0f)
            {
                extraTaskTime = -taskTime;
            }
            CalculateCurrentTaskLabel();
            for (int i = UseComboBox.Items.Count - 1; i >= 0; i--)
            {
                if (float.Parse(UseComboBox.Items[i].ToString()) > taskTime + extraTaskTime)
                {
                    UseComboBox.Items.RemoveAt(i);
                    UseComboBox.SelectedIndex = i - 1;
                    if (UseComboBox.Items.Count == 0)
                    {
                        UseComboBox.Items.Clear();
                        UseComboBox.ResetText();
                        UseComboBox.Text = "Use";
                    }
                }
            }
        }
        //private MyCommand _clickCommand;

        //public MyCommand<object[]> LoginCommand
        //{
        //    get
        //    {
        //        return  new MyCommand<object[]>(x=> Login_Click(x));
        //    }
        //}
        //窗口登录操作

        #region 方法
        private void Login_Click(object[] obj)
        {
            #region

            RunState = true;

            UseComboBox             cmb     = obj[0] as UseComboBox;
            List <WaterMarkTextBox> TextBox = DependencyObjectHelper.FindVisualChild <WaterMarkTextBox>(cmb);
            string Phone = TextBox[0].Text;

            PasswordBox pwd    = obj[1] as PasswordBox;
            string      Pwd    = pwd.Password;
            Page        page   = obj[2] as Page;
            Window      window = Window.GetWindow(page);//获取当前页的母窗体(LoginWindow)
            CheckBox    ch     = obj[3] as CheckBox;

            Task.Factory.StartNew(new Action(delegate
            {
                string LoginCallBack    = account.Account_Login(Phone, Pwd);
                JObject LoginCallBackJo = (JObject)JsonConvert.DeserializeObject(LoginCallBack);
                if (JObjectHelper.GetStrNum(LoginCallBackJo["code"].ToString()) == 200)
                {
                    if (LoginCallBackJo["dataList"]["enterpriseUserFlag"].GetInt() == 0)
                    {
                        DispatcherHelper.CheckBeginInvokeOnUI(() =>
                        {
                            RunState = false;
                            MessageBox.Show("您还未进行企业认证,请至移动端申请企业认证后登陆");
                        });
                        return;
                    }
                    Bo = true;
                    DispatcherHelper.CheckBeginInvokeOnUI(() =>
                    {
                        if ((bool)ch.IsChecked)
                        {
                            SaveUserLoginInfo(Phone, Pwd);
                        }
                        bool bo = LoginHelper.LoginCallBack(LoginCallBackJo);
                        if (bo)
                        {
                            Bo = true;
                            ViewModelLocator.Win_Content.Show();
                            //new ContentWindow().Show(); //contentwindow打开
                            //var cc= ViewModelLocator.Pipe;
                            Thread thread = new Thread(LoginHelper.AddPrinter);
                            thread.Start();
                            window.Close();
                        }
                    });
                }
                else
                {
                    Bo       = false;
                    RunState = false;
                    DispatcherHelper.CheckBeginInvokeOnUI(() => { MessageBox.Show(LoginCallBackJo["message"].ToString()); });
                }
            }));

            #endregion
        }
示例#3
0
        private void UseTime()
        {
            string IssueText = "";

            if (IssueNumber.Visible)
            {
                IssueText = IssueNumber.Text.Trim();
            }
            else
            {
                IssueText = IssueNumberCombo.Text.Trim();
            }
            if (IssueText == "")
            {
                MessageBox.Show("You need to fill out an issue number");
                return;
            }

            if (TaskTracker.isCurrentTaskNull)
            {
                TaskTracker.StartNewTask();
            }

            if (UseComboBox.Items.Count <= 0)
            {
                return;
            }
            LeftoverTransfer = 0.0f;

            string sendTime = UseComboBox.SelectedItem.ToString();

            if (sendTime.StartsWith("."))
            {
                sendTime = "0" + sendTime;
            }
            float useAmount = float.Parse(sendTime);

            float leftover = CurrentTask - useAmount;

            if (leftover >= 0.25f)
            {
                Leftover += leftover;
            }

            if (Leftover > 0f)
            {
                MoveLeftOverButton.Enabled = true;
            }
            else
            {
                MoveLeftOverButton.Enabled = false;
            }

            LastTaskLabel.Text = sendTime;
            AddQuarterProgress(useAmount);
            TaskTracker.EndCurrentTask(IssueText, Task_Hour.Text + ":" + Task_Minute.Text + ":" + Task_Second.Text + "." + Task_Millisecond.Text, DateTime.Now.ToLongTimeString(), sendTime, APSCheckbox.Checked);

            APSCheckbox.Checked = false;

            RecentIssuesAutoCompleteSource.Add(IssueText);

            UpdateRecentIssues();
            IssueNumber.Text      = "";
            IssueNumberCombo.Text = "";

            extraTaskTime = 0.0f;
            UseComboBox.Items.Clear();
            UseComboBox.ResetText();
            UseComboBox.Text          = "Use";
            UseComboBox.SelectedIndex = -1;
            if (TaskWatch.IsRunning)
            {
                TaskWatch.Restart();
                TaskTracker.StartNewTask();
            }
            else
            {
                TaskWatch.Reset();
            }

            SetGlobalTimer();
            SetTaskTimer();
            CalculateCurrentTaskLabel();
        }