Exemplo n.º 1
0
        /// <summary>
        /// 保存今日数据
        /// </summary>
        public void Refresh()
        {
            if (this.Reoprt != null)
            {
                var now = DateTime.Now;
                if (this.Reoprt.Date.Day != now.Day)
                {
                    // 保存上一天的
                    this.Reoprt.Stop();
                    Common.SerializableHelper <DayReprot> helper = new Common.SerializableHelper <DayReprot>(this.Reoprt);
                    helper.JsonSerialize(RecordPath);

                    DayChange(now);
                    TimeDefine temp = this.Reoprt.CurRecordTime;
                    this.Reoprt      = new DayReprot();
                    this.Reoprt.Date = now;
                    this.Reoprt.Start(temp, "日期更换");
                }
                else
                {
                    if (this.Reoprt.Date.Hour != now.Hour)
                    {
                        this.Reoprt.HourChange(this.Reoprt.Date, now);
                    }

                    Common.SerializableHelper <DayReprot> helper = new Common.SerializableHelper <DayReprot>(this.Reoprt);
                    helper.JsonSerialize(RecordPath + "today.json");
                    this.SaveTotal(this.Reoprt.Total, RecordPath, this.Reoprt.Date.Hour);
                    this.Reoprt.Date = now;
                }
            }
        }
        /// <summary>
        /// 开始计时
        /// </summary>
        /// <param name="define">计时类别</param>
        /// <param name="opterName">附加名称</param>
        public void Start(TimeDefine define, string opterName)
        {
            if (define != this.CurRecordTime ||
                define == TimeDefine.ChangeLineTime)
            {
                // 如果 上一次为换线,且这一次不是换线,且换线没有完成
                if (CurRecordTime == TimeDefine.ChangeLineTime && define != TimeDefine.ChangeLineTime &&
                    !ChangeLineFinished)
                {
                    return;
                }

                if (define == TimeDefine.ChangeLineTime)
                {
                    ControusPCBCount   = 0;
                    ChangeLineFinished = false;
                }

                if (CurRecordTime != TimeDefine.NULL)
                {
                    Times[CurRecordTime].Stop(DateTime.Now);
                }
                CurRecordTime = define;
                Times[CurRecordTime].Start(opterName, DateTime.Now);
            }
        }
Exemplo n.º 3
0
        private TimeClassification GetRecord(string name, TimeDefine define, int startTime, int endTime)
        {
            TimeClassification classification = new TimeClassification(name);

            classification.Items = this.Times[define].Items.FindAll(delegate(TimeRecorder t)
            {
                return(t.StartTime.Hour >= startTime && t.StartTime.Hour < endTime && t.EndTime.Hour < endTime);
            });

            return(classification);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 开始计时
        /// </summary>
        /// <param name="define">计时类别</param>
        /// <param name="opterName">附加名称</param>
        public void Start(TimeDefine define, string opterName)
        {
            if (define != this.CurRecordTime ||
                define == TimeDefine.ChangeLineTime)
            {
                // 如果 上一次为换线,且这一次不是换线,且换线没有完成
                if (CurRecordTime == TimeDefine.ChangeLineTime && define != TimeDefine.ChangeLineTime &&
                    !ChangeLineFinished)
                {
                    return;
                }

                if (define == TimeDefine.ChangeLineTime)
                {
                    ControusPCBCount   = 0;
                    ChangeLineFinished = false;
                }

                if (CurRecordTime != TimeDefine.NULL)
                {
                    Times[CurRecordTime].Stop(DateTime.Now);
                }

                //if (this.CurRecordTime == TimeDefine.DTTime) // DT 5分钟不计算在内
                //{
                //    var item = Times[CurRecordTime].Items.Last();
                //    if ((item.EndTime - item.StartTime).TotalMinutes < 5)
                //    {
                //        Times[CurRecordTime].Items.Remove(item);
                //        Times[TimeDefine.PauseTime].Items.Add(item);
                //    }
                //}

                CurRecordTime = define;
                Times[CurRecordTime].Start(opterName, DateTime.Now);
            }
        }
Exemplo n.º 5
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="wd"></param>
        /// <param name="td"></param>
        /// <returns></returns>
        private K.UC.UCTimeDefine CreateTimeDefineControl(WorkDefine wd, TimeDefine td)
        {
            UC.UCTimeDefine ucTd = new K.UC.UCTimeDefine();
            ucTd.WorkDefine = wd;
            ucTd.TimeDefine = td;

            return ucTd;
        }