public decimal HrsInRatePeriod(DateTime jobStartTime, DateTime jobEndTime)
        {
            jobStartTime = TimeUtil.AdjustTimesAfterMidnight(jobStartTime);
            jobEndTime   = TimeUtil.AdjustTimesAfterMidnight(jobEndTime);

            if (jobStartTime > EndTime || jobEndTime < StartTime)
            {
                return(0);
            }
            else if (jobStartTime < StartTime && jobStartTime <= EndTime)
            {
                var timeSpan = jobEndTime - StartTime;
                var decTime  = (decimal)timeSpan.TotalHours;
                return(Math.Ceiling(decTime));
            }
            else if (jobStartTime >= StartTime && jobEndTime > EndTime)
            {
                var timeSpan = EndTime - jobStartTime;
                var decTime  = (decimal)timeSpan.TotalHours;
                return(Math.Ceiling(decTime));
            }
            else
            {
                var timeSpan = jobEndTime - jobStartTime;
                var decTime  = (decimal)timeSpan.TotalHours;
                return(Math.Ceiling(decTime));
            }
        }
 public RatePeriod(DateTime startTime, DateTime endTime, decimal rate)
 {
     StartTime = TimeUtil.AdjustTimesAfterMidnight(startTime);
     EndTime   = TimeUtil.AdjustTimesAfterMidnight(endTime);
     Rate      = rate;
 }