Esempio n. 1
0
        private void BtnClock_Click(object sender, RoutedEventArgs e)
        {
            int  result      = 0;
            User currentUser = (User)this.DataContext;

            if (currentUser.WorkPeriodId > 0)
            {
                // clock out
                WorkPeriodCRUD crud   = new WorkPeriodCRUD();
                WorkPeriod     period = crud.Read(currentUser.WorkPeriodId);
                period.End = DateTime.Now;
                int clockOutIsComplete = crud.Update(period);

                if (clockOutIsComplete > 0)
                {
                    currentUser.WorkPeriodId = 0;
                    currentUser.Working      = false;
                    new UserCRUD().Update(currentUser);
                }
                UpdateScreenUI(false);
            }
            else
            {
                if (CbJobId.SelectedItem != null)
                {
                    // clock in
                    WorkPeriod period = new WorkPeriod();
                    try
                    {
                        period.UserId = Convert.ToInt32(TxtUserId.Text);
                        period.Start  = DateTime.Now;
                        period.End    = null;
                        period.JobId  = Convert.ToInt32(CbJobId.SelectedValue);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("Select a job to work on", "Notice");
                        return;
                    }

                    result = new WorkPeriodCRUD().Create(period);
                    this.TxtWorkPeriodId.Text = result.ToString();

                    currentUser.WorkPeriodId = result;
                    currentUser.Working      = true;
                    new UserCRUD().Update(currentUser);

                    UpdateScreenUI(true);
                }
                else
                {
                    MessageBox.Show("Select a job to work on", "Notice");
                }
            }
        }
        private void BtnClock_Click(object sender, RoutedEventArgs e)
        {
            int  result      = 0;
            User currentUser = (User)this.DataContext;

            if (currentUser.WorkPeriodId > 0)
            {
                // clock out
                WorkPeriodCRUD crud   = new WorkPeriodCRUD();
                WorkPeriod     period = crud.Read(currentUser.WorkPeriodId);
                period.End = DateTime.Now;
                int clockOutIsComplete = crud.Update(period);

                if (clockOutIsComplete > 0)
                {
                    currentUser.WorkPeriodId = 0;
                    currentUser.Working      = false;
                    new UserCRUD().Update(currentUser);
                }
                this.BtnClock.Content = "Clock In";
            }
            else
            {
                // clock in
                WorkPeriod period = new WorkPeriod()
                {
                    UserId = Convert.ToInt32(TxtUserId.Text),
                    Start  = DateTime.Now,
                    End    = null,
                };
                result = new WorkPeriodCRUD().Create(period);
                this.TxtWorkPeriodId.Text = result.ToString();

                currentUser.WorkPeriodId = result;
                currentUser.Working      = true;
                new UserCRUD().Update(currentUser);

                this.BtnClock.Content = "Clock Out";
            }
        }