示例#1
0
        public Task commProgressStatus(ProgressStatusEnum _status)
        {
            return(Task.Run(() =>
                            Activity.RunOnUiThread(() =>
            {
                switch (_status)
                {
                case ProgressStatusEnum.DISCONNECTED:
                    socksProgress.Visibility = ViewStates.Gone;
                    socksProgress.IndeterminateDrawable.SetColorFilter(null);
                    socksProgress.IndeterminateDrawable.SetColorFilter(Color.Red, PorterDuff.Mode.SrcIn);
                    socksProgress.Visibility = ViewStates.Visible;
                    break;

                case ProgressStatusEnum.CONNECTED:
                    socksProgress.Visibility = ViewStates.Gone;
                    socksProgress.IndeterminateDrawable.SetColorFilter(null);
                    socksProgress.IndeterminateDrawable.SetColorFilter(Color.Green, PorterDuff.Mode.SrcIn);
                    socksProgress.Visibility = ViewStates.Visible;
                    break;

                case ProgressStatusEnum.TRANSMITTING:
                    socksProgress.Visibility = ViewStates.Gone;
                    socksProgress.IndeterminateDrawable.SetColorFilter(null);
                    socksProgress.IndeterminateDrawable.SetColorFilter(Color.Blue, PorterDuff.Mode.SrcIn);
                    socksProgress.Visibility = ViewStates.Visible;
                    break;

                case ProgressStatusEnum.GONE:
                    socksProgress.Visibility = ViewStates.Gone;
                    break;
                }
            })));
        }
示例#2
0
        protected override ProgressStatusEnum GetPlanProgressStatus()
        {
            ProgressStatusEnum     progressStatus = ProgressStatusEnum.NotStarted;
            ScheduleItemCollection items          = _items as ScheduleItemCollection;

            if (EndDate <= StartDate)
            {
                progressStatus = ProgressStatusEnum.NotStarted;
            }
            else if (DateTime.Now.Date > EndDate)
            {
                progressStatus = ProgressStatusEnum.Uncompleted;
            }
            else
            {
                ScheduleItem item = items.LastDailyItem as ScheduleItem;

                if (item != null)
                {
                    if (item.CurrentIndex >= EndIndex)
                    {
                        progressStatus = ProgressStatusEnum.Completed;
                    }
                    else
                    {
                        progressStatus = ProgressStatusEnum.InProgress;
                    }
                }
            }

            return(progressStatus);
        }
示例#3
0
 internal Plan(Guid id, string name, DateTime startDate, DateTime endDate, string details, string review, ProgressStatusEnum status, DailyItemCollection items)
 {
     _id = id;
     Name = name;
     _startDate = startDate;
     _endDate = endDate;
     Details = details;
     Review = review;
     _items = items;
     _planStatus = status;
 }
示例#4
0
        public EbbinghausItem(Guid id, DateTime executeDate, string name, Guid planId, ProgressStatusEnum progressStatus, TimeSpan costTime)
        {
            if (string.IsNullOrEmpty(name))
            {
                throw new ArgumentNullException("name");
            }

            _id             = id;
            _executeDate    = executeDate;
            _name           = name;
            _planID         = planId;
            _progressStatus = progressStatus;
            _costTime       = costTime;
        }
示例#5
0
        private DailyItem ConstructDailyItem(SqlDataReader reader, Dictionary <Guid, DailyItemBuilder> builders)
        {
            int                i              = 0;
            Guid               id             = reader.ReadGuid(i++);
            Guid               planId         = reader.ReadGuid(i++);
            DateTime           executeTime    = reader.ReadDate(i++);
            string             name           = reader.ReadString(i++);
            ProgressStatusEnum progressStatus = reader.ReadEnum(i++, ProgressStatusEnum.Uncompleted);
            TimeSpan           costTime       = reader.ReadTimeSpan(i++);

            if (builders.ContainsKey(id))
            {
                return(builders[id].CreateDailyItem(id, executeTime, name, planId, progressStatus, costTime));
            }
            return(null);
        }
示例#6
0
        private Dictionary <Guid, PlanBuilder> ConstructPlan(SqlDataReader reader)
        {
            Dictionary <Guid, PlanBuilder> result = GetPlanBuilder(reader);

            while (reader.Read())
            {
                int                i         = 0;
                Guid               id        = reader.ReadGuid(i++);
                string             name      = reader.ReadString(i++);
                DateTime           startDate = reader.ReadDate(i++);
                DateTime           endDate   = reader.ReadDate(i++);
                ProgressStatusEnum status    = reader.ReadEnum <ProgressStatusEnum>(i++, ProgressStatusEnum.NotStarted);
                string             details   = reader.ReadString(i++);
                string             review    = reader.ReadString(i++);
                if (result.ContainsKey(id))
                {
                    result[id].CreatePlan(id, name, startDate, endDate, details, review, status);
                }
            }
            return(result);
        }
 public override DailyItem CreateDailyItem(Guid id, DateTime executeTime, string name, Guid planId, ProgressStatusEnum progressStatus, TimeSpan costTime)
 {
     _dailyItem = new ScheduleItem(_currentIndex, id, name, executeTime, planId, progressStatus, _note, costTime);
     return(_dailyItem);
 }
 public CommonEbbinghausItem(Guid id, DateTime executeTime, string name, Guid planId, ProgressStatusEnum progressStatus, int score, TimeSpan costTime)
     : base(id, executeTime, name, planId, progressStatus, costTime)
 {
     _score      = score;
     _ebbinghaus = CommonEbbinghausTemplate.Instance;
 }
示例#9
0
 public override DailyItem CreateDailyItem(Guid id, DateTime executeTime, string name, Guid planId,
                                           ProgressStatusEnum progressStatus, TimeSpan costTime)
 {
     _dailyItem = new CommonEbbinghausItem(id, executeTime, name, planId, progressStatus, _score, costTime);
     return(_dailyItem);
 }
示例#10
0
 public abstract DailyItem CreateDailyItem(Guid id, DateTime executeTime, string name, Guid planId,
                                           ProgressStatusEnum progressStatus, TimeSpan costTime);
示例#11
0
 public void Refresh()
 {
     _planStatus = GetPlanProgressStatus();
 }
示例#12
0
 public override Plan CreatePlan(Guid id, string name, DateTime startDate, DateTime endDate, string details, string review, ProgressStatusEnum status)
 {
     _plan = new CommonEbbPlan(id, name, startDate, endDate, details, review, status);
     return(_plan);
 }
示例#13
0
 internal SchedulePlan(Guid id, string name, DateTime startDate, DateTime endDate, string details, string review, ProgressStatusEnum status)
     : base(id, name, startDate, endDate, details, review, status, new ScheduleItemCollection())
 {
 }
示例#14
0
        public override Plan CreatePlan(Guid id, string name, DateTime startDate, DateTime endDate, string details, string review, ProgressStatusEnum status)
        {
            SchedulePlan tempPlan = new SchedulePlan(id, name, startDate, endDate, details, review, status);

            tempPlan.SetParameter(_startIndex, _endIndex, _weekDayWorkload, _weekendWorkload, _buffer);
            _plan = tempPlan;
            return(_plan);
        }
示例#15
0
 public ScheduleItem(int currentIndex, Guid id, string name, DateTime executeDate, Guid planId, ProgressStatusEnum progressStatus, string note, TimeSpan costTime)
 {
     this._currentIndex   = currentIndex;
     this._id             = id;
     this._name           = name;
     this._executeDate    = executeDate;
     this._planID         = planId;
     this._progressStatus = progressStatus;
     Note           = note;
     this._costTime = costTime;
 }
示例#16
0
 public abstract Plan CreatePlan(Guid id, string name, DateTime startDate, DateTime endDate, string details, string review, ProgressStatusEnum status);
示例#17
0
 internal CommonEbbPlan(Guid id, string name, DateTime startDate, DateTime endDate, string details, string review, ProgressStatusEnum status)
     : base(id, name, startDate, endDate, details, review, status, new CommonEbbCollection())
 {
 }