private static CycleParams GetCycleParams(int cycleNumber)
        {
            int        estimatedDuration = 0;
            CycleTypes cycleType         = 0;
            int        nextCycleNumber   = cycleNumber;

            if (cycleNumber < 2)
            {
                estimatedDuration = 25;
                cycleType         = CycleTypes.Working;
            }
            else if (cycleNumber == 2)
            {
                estimatedDuration = 5;
                cycleType         = CycleTypes.ShortBreak;
            }
            else if (cycleNumber == 3)
            {
                estimatedDuration = 25;
                cycleType         = CycleTypes.Working;
            }
            else
            {
                estimatedDuration = 15;
                cycleType         = CycleTypes.LongBreak;
                nextCycleNumber   = 0;
            }

            return(new CycleParams
            {
                EstimatedDuration = TimeSpan.FromMinutes(estimatedDuration).Add(TimeSpan.FromSeconds(1)),
                CycleType = cycleType,
                NextCycleNumber = nextCycleNumber
            });
        }
示例#2
0
        private TaskbarItemProgressState GetProgressState(CycleTypes type)
        {
            switch (type)
            {
            case CycleTypes.NotWorking:
                return(TaskbarItemProgressState.None);

            case CycleTypes.Working:
                return(TaskbarItemProgressState.Error);

            case CycleTypes.ShortBreak:
            case CycleTypes.LongBreak:
                return(TaskbarItemProgressState.Normal);

            default:
                throw new ArgumentOutOfRangeException(nameof(type), type, null);
            }
        }
示例#3
0
        private string GetCycleName(CycleTypes type)
        {
            switch (type)
            {
            case CycleTypes.NotWorking:
                return("Nie pracuję");

            case CycleTypes.Working:
                return("Pracuję");

            case CycleTypes.ShortBreak:
                return("Krótka przerwa");

            case CycleTypes.LongBreak:
                return("Długa przerwa");;
            }

            return(string.Empty);
        }
示例#4
0
        private CycleTypes GetSelectedCycleType()
        {
            CycleTypes cycleType = CycleTypes.D;

            if (rdoDay.Checked)
            {
                cycleType = CycleTypes.D;
            }
            else if (rdoMonth.Checked)
            {
                cycleType = CycleTypes.M;
            }
            else if (rdoWeek.Checked)
            {
                cycleType = CycleTypes.W;
            }

            return(cycleType);
        }
        /// <summary>
        /// 获取SQL查询条件开始和结束时间
        /// </summary>
        /// <param name="cycleType"></param>
        /// <returns></returns>
        public virtual ISqlQueryTime GetSqlQueryTimeStragety(CycleTypes cycleType)
        {
            ISqlQueryTime sqlQueryTime = null;

            switch (cycleType)
            {
            case  CycleTypes.M:
                sqlQueryTime = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(MonthSqlQueryTime).Name);
                break;

            case  CycleTypes.W:
                sqlQueryTime = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(WeekSqlQueryTime).Name);
                break;

            case  CycleTypes.D:
                sqlQueryTime = AutoFacContainer.ResolveNamed <ISqlQueryTime>(typeof(DaySqlQueryTime).Name);
                break;

            default:
                throw new ArgumentNullException("GetSqlQueryTimeStragety()方法,参数cycleType为空");
            }

            return(sqlQueryTime);
        }
示例#6
0
 public Cycle(int cycleNumber, CycleTypes type)
 {
     CycleNumber = cycleNumber;
     Type        = type;
 }
示例#7
0
 public NotifyCycleChanged(int cycleNumber, CycleTypes cycleType)
 {
     CycleNumber = cycleNumber;
     CycleType   = cycleType;
 }