예제 #1
0
        /// <summary>自動設定する
        /// </summary>
        /// <param name="ptable">設定するタイムテーブル</param>
        /// <param name="start">開始</param>
        /// <param name="end">終了</param>
        public virtual void AutoAllwithChief(CTimeTable ptable, DateTime start, DateTime end)
        {
            DateTime today = DateTime.Today;

            if (DayAfter > 0)
            {
                today = DateTime.Today.AddDays(DayAfter);
            }
            AutoAllwithChief(ptable, today, start, end);
        }
예제 #2
0
 /// <summary>スケジュール化された日の作成</summary>
 public CScheduledDate(CTimeTable parent) : base()
 {
     // 保持オブジェクト
     timeTable = parent;
     // ハッシュテーブル
     MemberToMembersPattern  = new Dictionary <CMember, MembersPattern>();
     PatternToPatternsMember = new Dictionary <CPattern, PatternsMember>();
     //
     validMembers     = new List <CMember>();
     MemberToSchedule = new Dictionary <CMember, CSchedule>();
 }
예제 #3
0
        /// <summary>自動設定する
        /// </summary>
        /// <param name="ptable">設定するタイムテーブル</param>
        /// <param name="today">基準日</param>
        /// <param name="start">開始</param>
        /// <param name="end">終了</param>
        public virtual void AutoAllwithChief(CTimeTable ptable, DateTime today, DateTime start, DateTime end)
        {
            this.Table = ptable;
            DateTime work = start.Date;

            while (work <= end)
            {
                // 終了日以前で
                if (work >= today)
                {
                    // 今日以降
                    CScheduledDate sdate = this.Table[work];
                    AutoAllwithChief(sdate);
                }
                work = work.AddDays(1.0);
            }
        }
예제 #4
0
 /// <summary>スケジュール化された日の作成</summary>
 public CScheduledDate(System.DateTime date, CTimeTable parent) : base()
 {
     // 保持オブジェクト
     timeTable = parent;
     this.date = date;
     //
     MakeMembers();
     // ハッシュテーブル
     MemberToMembersPattern  = new Dictionary <CMember, MembersPattern>();
     PatternToPatternsMember = new Dictionary <CPattern, PatternsMember>();
     //
     if (validMembers == null)
     {
         validMembers = new List <CMember>();
     }
     if (MemberToSchedule == null)
     {
         MemberToSchedule = new Dictionary <CMember, CSchedule>();
     }
 }
예제 #5
0
 /// <summary>自動設定する
 /// </summary>
 /// <param name="ptable">設定するタイムテーブル</param>
 /// <param name="Adate">開始</param>
 public virtual void AutoAllwithChief(CTimeTable ptable, DateTime Adate)
 {
     AutoAllwithChief(ptable, Adate, Adate);
 }
예제 #6
0
 /// <summary>指定された曜日を稼働日とするかどうか
 /// </summary>
 /// <param name="weekday">曜日</param>
 /// <param name="available">true:稼働日 false:休み</param>
 public void SetAvailableDay(DayOfWeek weekday, bool available)
 {
     SetAvailableDay(CTimeTable.DayOfWeek2Int(weekday), available);
 }
예제 #7
0
 /// <summary>指定された曜日は稼働日かどうか
 /// </summary>
 /// <param name="weekday">曜日</param>
 /// <returns>true:稼働日 false:休み</returns>
 public bool IsAvalableDay(DayOfWeek weekday)
 {
     return(IsAvailableDay(CTimeTable.DayOfWeek2Int(weekday)));
 }