Exemple #1
0
        private void printMinutes(ref TextBox[,] grid, int dayNum, DateTime tStart)
        {
            //This work period is wrong
            int srchResult = workPeriods.BinarySearch(new work_period(tStart.AddDays(dayNum)),
                                                      work_period.CompareByDate());

            int         index = srchResult < 0 ? ~srchResult - 1 : srchResult;
            work_period p     = workPeriods[index];

            TimeSpan cumulMins = p != null ? p.CumulativeMins : TimeSpan.Zero;

            TimeSpan extraMins;

            if (srchResult >= 0 && p.IsValid())
            {
                extraMins = ShiftInformation.CalcExtraTime(p.StartTime, p.EndTime, settings.RoundOT);
            }
            else
            {
                extraMins = TimeSpan.Zero;
            }

            int column = dayNum * 2;

            grid[PhoenixOTSheetDims.RowsPerGrid - 2, column].Text =
                "+" + extraMins.TotalMinutes.ToString();
            grid[PhoenixOTSheetDims.RowsPerGrid - 2, column + 1].Text = "Extra mins";
            grid[PhoenixOTSheetDims.RowsPerGrid - 1, column].Font     = new Font("Arial", STANDARD_FONT_SIZE, FontStyle.Bold);

            grid[PhoenixOTSheetDims.RowsPerGrid - 1, column].Text     = cumulMins.TotalMinutes.ToString();
            grid[PhoenixOTSheetDims.RowsPerGrid - 1, column + 1].Font = new Font("Arial", STANDARD_FONT_SIZE, FontStyle.Bold);
            grid[PhoenixOTSheetDims.RowsPerGrid - 1, column + 1].Text = "Total mins";
        }
Exemple #2
0
        private void calcCumulMins(work_period p)
        {
            //  If date modified is more than 35 days ago, do nothing
            DateTime day = p.Date;

            if (day < DateTime.Now.AddDays(-DAY_CUTOFF))
            {
                return;
            }

            //  Calculate extra minutes
            TimeSpan diff = ShiftInformation.CalcExtraTime(p.StartTime, p.EndTime, settings.RoundOT);

            diff = diff < TimeSpan.Zero ? TimeSpan.Zero : diff;

            //  Find cumulative minutes from before
            TimeSpan cumulMins = diff.Add(findCarryMins(wp, p.Date, DAY_CUTOFF));

            //  Set flag and reset minutes if >15
            if (cumulMins.TotalMinutes >= 15)
            {
                p.AddCumulativeOT = true;
                cumulMins         = cumulMins.Subtract(new TimeSpan(0, 15, 0));
            }
            else
            {
                p.AddCumulativeOT = false;
            }

            p.CumulativeMins = cumulMins;
        }