public void InitTimetablePreview(ProviderEDSC.ActivityScheduleDTDataTable dt)
        {
            var schedule = CreateSeasonalTimetable(dt);

            ListView1.DataSource = schedule;
            ListView1.DataBind();
        }
Exemple #2
0
        protected void btnAdd_Click(object sender, EventArgs e)
        {
            lblError.Visible = false;
            if (infoIsValid())
            {
                if (timeTableDT == null)
                {
                    timeTableDT = new ProviderEDSC.ActivityScheduleGridDTDataTable();
                }

                ScheduleDT = getTimetable(false);

                ProviderEDSC.ActivityScheduleGridDTRow dr = timeTableDT.NewActivityScheduleGridDTRow();
                if (txtEndDate.Text == "")
                {
                    lblError.Text = "* Required";
                    txtEndDate.Focus();
                }
                else
                {
                    var aSched = getTimetableInput();
                    ScheduleDT.AddActivityScheduleDTRow(aSched);
                    SetScheduleDataSource();
                    //SetTimetableDataSource();
                    SetTimetablePreview();
                    btnAdd.Text = "Add another timetable";
                }
            }
            else
            {
                lblError.Visible = true;
            }
        }
 public void Refresh()
 {
     dt = new ProviderDAC().RetrieveActivitySchedules(ActivityID);
     if (dt != null)
     {
         SetdataSource();
     }
 }
Exemple #4
0
        public ProviderEDSC.ActivityScheduleDTRow getTimetableInput()
        {
            if (ScheduleDT == null)
            {
                ScheduleDT = new ProviderEDSC.ActivityScheduleDTDataTable();
            }
            var drShced = ScheduleDT.NewActivityScheduleDTRow();

            drShced.OnMonday    = false;
            drShced.OnTuesday   = false;
            drShced.OnWednesday = false;
            drShced.OnThursday  = false;
            drShced.OnFriday    = false;
            drShced.OnSaturday  = false;
            drShced.OnSunday    = false;

            drShced.ActivityStartDatetime = Convert.ToDateTime(txtCalendarFrom.Text + " " + ddlTimeStart.SelectedItem.Text);
            drShced.ActivityExpiryDate    = Convert.ToDateTime(txtEndDate.Text);
            if (ddlTimeEnds.SelectedItem.Value != SystemConstants.nodate.ToShortTimeString())
            {
                drShced.ActivityEndDatetime = Convert.ToDateTime(txtEndDate.Text + " " + ddlTimeEnds.SelectedItem.Text);
            }
            else
            {
                drShced.ActivityEndDatetime = SystemConstants.nodate;
            }

            drShced.RecurrenceType = (int)SystemConstants.RecurrenceSchedule.Weekly;
            if (radWeekly.Checked)
            {
                drShced.RecurEvery = 1;
            }
            else if (radFortnightly.Checked)
            {
                drShced.RecurEvery = 2;
            }
            else if (radMonthly.Checked)
            {
                drShced.RecurEvery = 4;
            }
            else if (radNoRecurrence.Checked)
            {
                drShced.RecurEvery     = 0;
                drShced.RecurrenceType = (int)SystemConstants.RecurrenceSchedule.NotRecurring;
            }
            drShced.OnMonday    = chkMonday.Checked;
            drShced.OnTuesday   = chkTuesday.Checked;
            drShced.OnWednesday = chkWebnesday.Checked;
            drShced.OnThursday  = chkThursday.Checked;
            drShced.OnFriday    = chkFriday.Checked;
            drShced.OnSaturday  = chkSaturday.Checked;
            drShced.OnSunday    = chkSunday.Checked;



            return(drShced);
        }
Exemple #5
0
 protected void lnkDelete2_Click(object sender, EventArgs e)
 {
     ScheduleDT = getTimetable(true);
     SetScheduleDataSource();
     //SetTimetableDataSource();
     SetTimetablePreview();
     if (gridviewTimetable.Rows.Count == 0)
     {
         btnAdd.Text = "Add timetable";
     }
 }
Exemple #6
0
        //protected void lnkSelectAll_Click(object sender, EventArgs e)
        //{
        //    ProviderEDSC.ActivityScheduleDTDataTable dt = new ProviderEDSC.ActivityScheduleDTDataTable();
        //    foreach (GridViewRow row in gridviewPreview.Rows)
        //    {
        //        if (row.RowType == DataControlRowType.DataRow)
        //        {
        //            CheckBox chkboxSelected = row.FindControl("chkboxSelected") as CheckBox;
        //            chkboxSelected.Checked = true;
        //        }
        //    }
        //}

        protected void lnkSelect2All_Click(object sender, EventArgs e)
        {
            ProviderEDSC.ActivityScheduleDTDataTable dt = new ProviderEDSC.ActivityScheduleDTDataTable();
            foreach (GridViewRow row in gridviewTimetable.Rows)
            {
                if (row.RowType == DataControlRowType.DataRow)
                {
                    CheckBox chkboxSelected = row.FindControl("chkboxSelected0") as CheckBox;
                    chkboxSelected.Checked = true;
                }
            }
        }
Exemple #7
0
        public void getExpiry(out DateTime activityExpiry, out bool usingTimetable)
        {
            usingTimetable = radEnableTimetable.Checked;

            if (radEnableTimetable.Checked)
            {
                ScheduleDT = getTimetable(false);
                List <DateTime> expiry = new List <DateTime>();
                foreach (var dr in ScheduleDT)
                {
                    expiry.Add(dr.ActivityExpiryDate);
                }

                expiry.Sort((a, b) => a.CompareTo(b));

                activityExpiry = expiry[expiry.Count() - 1];
            }
            else
            {
                activityExpiry = DateTime.Now.AddDays(90);
            }
        }
Exemple #8
0
        public void initTimetable()
        {
            SetTimeDDL();
            var dr = new ProviderDAC().RetrieveActivity(ActivityID);

            if (dr != null)
            {
                if (dr.TimetableType == (int)SystemConstants.ScheduleViewFormat.noTimetable)
                {
                    radEnableTimetable.Checked = false;
                    radNoTimetable.Checked     = true;
                    divTimetable.Visible       = false;
                }
                else
                {
                    if (EditMode)
                    {
                        ScheduleDT = new ProviderDAC().RetrieveActivitySchedules(ActivityID);
                    }
                    SetScheduleDataSource();
                    //SetTimetableDataSource();
                }
            }
        }
Exemple #9
0
        public ProviderEDSC.ActivityScheduleDTDataTable getTimetable(bool checkDelete)
        {
            ScheduleDT = new ProviderEDSC.ActivityScheduleDTDataTable();
            foreach (GridViewRow row in gridviewTimetable.Rows)
            {
                CheckBox    chkboxSelected0   = row.FindControl("chkboxSelected0") as CheckBox;
                HiddenField hdnStartDateTime  = row.FindControl("hdnStartDateTime") as HiddenField;
                HiddenField hdnEndDateTime    = row.FindControl("hdnEndDateTime") as HiddenField;
                HiddenField hdnExpiryDateTime = row.FindControl("hdnExpiryDateTime") as HiddenField;
                HiddenField hdnRecurrenceType = row.FindControl("hdnRecurrenceType") as HiddenField;
                HiddenField hdnRecurEvery     = row.FindControl("hdnRecurEvery") as HiddenField;
                HiddenField hdnOnMonday       = row.FindControl("hdnOnMonday") as HiddenField;
                HiddenField hdnOnTuesday      = row.FindControl("hdnOnTuesday") as HiddenField;
                HiddenField hdnOnWednesday    = row.FindControl("hdnOnWednesday") as HiddenField;
                HiddenField hdnOnThursday     = row.FindControl("hdnOnThursday") as HiddenField;
                HiddenField hdnOnFriday       = row.FindControl("hdnOnFriday") as HiddenField;
                HiddenField hdnOnSaturday     = row.FindControl("hdnOnSaturday") as HiddenField;
                HiddenField hdnOnSunday       = row.FindControl("hdnOnSunday") as HiddenField;
                if (checkDelete)
                {
                    if (!chkboxSelected0.Checked)
                    {
                        var dr = ScheduleDT.NewActivityScheduleDTRow();

                        dr.ActivityID            = ActivityID;
                        dr.ActivityStartDatetime = Convert.ToDateTime(hdnStartDateTime.Value);
                        dr.ActivityEndDatetime   = Convert.ToDateTime(hdnEndDateTime.Value);
                        dr.ActivityExpiryDate    = Convert.ToDateTime(hdnExpiryDateTime.Value);
                        dr.RecurrenceType        = Convert.ToInt32(hdnRecurrenceType.Value);
                        dr.RecurEvery            = Convert.ToInt32(hdnRecurEvery.Value);
                        dr.OnMonday    = Convert.ToBoolean(hdnOnMonday.Value);
                        dr.OnTuesday   = Convert.ToBoolean(hdnOnTuesday.Value);
                        dr.OnWednesday = Convert.ToBoolean(hdnOnWednesday.Value);
                        dr.OnThursday  = Convert.ToBoolean(hdnOnThursday.Value);
                        dr.OnFriday    = Convert.ToBoolean(hdnOnFriday.Value);
                        dr.OnSaturday  = Convert.ToBoolean(hdnOnSaturday.Value);
                        dr.OnSunday    = Convert.ToBoolean(hdnOnSunday.Value);

                        ScheduleDT.AddActivityScheduleDTRow(dr);
                    }
                }
                else
                {
                    var dr = ScheduleDT.NewActivityScheduleDTRow();

                    dr.ActivityID            = ActivityID;
                    dr.ActivityStartDatetime = Convert.ToDateTime(hdnStartDateTime.Value);
                    dr.ActivityEndDatetime   = Convert.ToDateTime(hdnEndDateTime.Value);
                    dr.ActivityExpiryDate    = Convert.ToDateTime(hdnExpiryDateTime.Value);
                    dr.RecurrenceType        = Convert.ToInt32(hdnRecurrenceType.Value);
                    dr.RecurEvery            = Convert.ToInt32(hdnRecurEvery.Value);
                    dr.OnMonday    = Convert.ToBoolean(hdnOnMonday.Value);
                    dr.OnTuesday   = Convert.ToBoolean(hdnOnTuesday.Value);
                    dr.OnWednesday = Convert.ToBoolean(hdnOnWednesday.Value);
                    dr.OnThursday  = Convert.ToBoolean(hdnOnThursday.Value);
                    dr.OnFriday    = Convert.ToBoolean(hdnOnFriday.Value);
                    dr.OnSaturday  = Convert.ToBoolean(hdnOnSaturday.Value);
                    dr.OnSunday    = Convert.ToBoolean(hdnOnSunday.Value);

                    ScheduleDT.AddActivityScheduleDTRow(dr);
                }
            }
            return(ScheduleDT);
        }
Exemple #10
0
        /*
         * public static void UpdateActivity(ProviderEDSC.ActivityDTRow drDetail, ProviderEDSC.ActivityContactDetailDTRow contactDetails, ProviderEDSC.ActivityGroupingDTRow drActGrouping, ProviderEDSC.ActivityScheduleDTDataTable dtActSchedule)
         * {
         *  ProviderDAC dac = new ProviderDAC();
         *
         *
         *  dac.UpdateActivities(drDetail);
         *  dac.UpdateActivityContactDetail(contactDetails);
         *  dac.DeleteActivitySchedules(drDetail.ID);
         *  foreach (var drActSchedule in dtActSchedule)
         *      dac.CreateActivitySchedule(drActSchedule);
         *  dac.UpdateActivityGrouping(drActGrouping);
         *
         *
         * }
         *
         * public static void UpdateActivity(ProviderEDSC.ActivityDTRow drDetail, ProviderEDSC.ActivityContactDetailDTRow contactDetails, ProviderEDSC.ActivityGroupingDTRow drActGrouping)
         * {
         *  ProviderDAC dac = new ProviderDAC();
         *
         *
         *  dac.UpdateActivities(drDetail);
         *  dac.UpdateActivityContactDetail(contactDetails);
         *  dac.DeleteActivitySchedules(drDetail.ID);
         *  dac.UpdateActivityGrouping(drActGrouping);
         * }
         *
         * public static void SaveActivity(ProviderEDSC.ActivityDTRow ActivityDetailDR, ProviderEDSC.ActivityContactDetailDTRow contactDetailsDR, ProviderEDSC.ActivityGroupingDTRow ActGroupingDR, ProviderEDSC.ActivityScheduleDTDataTable ActScheduleDT, out int activityID)
         * {
         *  ProviderDAC dac = new ProviderDAC();
         *
         *  using (TransactionScope trans = new TransactionScope())
         *  {
         *      activityID = 0;
         *      dac.CreateActivities(ActivityDetailDR, out activityID);
         *
         *      //Activity was Created, update all foreign key
         *      contactDetailsDR.ActivityID = activityID;
         *      ActGroupingDR.ActivityID = activityID;
         *
         *      //CreateContactDetails
         *      dac.CreateActivityContactDetail(contactDetailsDR);
         *
         *      //Create Schedule
         *      foreach (var ActScheduleDR in ActScheduleDT)
         *      {
         *          ActScheduleDR.ActivityID = activityID;
         *          dac.CreateActivitySchedule(ActScheduleDR);
         *      }
         *      //Create Grouping
         *      dac.CreateActivityGrouping(ActGroupingDR);
         *
         *      trans.Complete();
         *
         *  }
         * }
         *
         * public static void SaveActivity(ProviderEDSC.ActivityDTRow ActivityDetailDR, ProviderEDSC.ActivityContactDetailDTRow contactDetailsDR, ProviderEDSC.ActivityGroupingDTRow ActGroupingDR, out int activityID)
         * {
         *  ProviderDAC dac = new ProviderDAC();
         *
         *  using (TransactionScope trans = new TransactionScope())
         *  {
         *      activityID = 0;
         *      dac.CreateActivities(ActivityDetailDR, out activityID);
         *
         *      //Activity was Created, update all foreign key
         *      contactDetailsDR.ActivityID = activityID;
         *      ActGroupingDR.ActivityID = activityID;
         *
         *      //CreateContactDetails
         *      dac.CreateActivityContactDetail(contactDetailsDR);
         *
         *      //Create Grouping
         *      dac.CreateActivityGrouping(ActGroupingDR);
         *
         *      trans.Complete();
         *
         *  }
         * }
         */
        public static void SaveActivity(ProviderEDSC.ActivityDTRow ActivityDetailDR, ProviderEDSC.ActivityContactDetailDTRow contactDetailsDR, ProviderEDSC.ActivityGroupingDTRow ActGroupingDR, ProviderEDSC.ActivityScheduleDTDataTable ActScheduleDT, ProviderEDSC.ActivityImageDTRow ImageDetail, ProviderEDSC.ActivityImageDetailDTDataTable Images, out int activityID)
        {
            ProviderDAC dac = new ProviderDAC();

            using (TransactionScope trans = new TransactionScope())
            {
                activityID = 0;
                dac.CreateActivities(ActivityDetailDR, out activityID);

                //Activity was Created, Creat other
                contactDetailsDR.ActivityID = activityID;
                ActGroupingDR.ActivityID    = activityID;

                //CreateContactDetails
                dac.CreateActivityContactDetail(contactDetailsDR);

                if (ActScheduleDT != null)
                {
                    //Create Schedule
                    foreach (var ActScheduleDR in ActScheduleDT)
                    {
                        ActScheduleDR.ActivityID = activityID;
                        dac.CreateActivitySchedule(ActScheduleDR);
                    }
                }
                //Create Grouping
                dac.CreateActivityGrouping(ActGroupingDR);

                //Create Images
                if (ImageDetail.ImageAmount != 0)
                {
                    ImageDetail.ActivityID = activityID;
                    int imgDetID = 0;
                    dac.createActivityImageInformation(ImageDetail, out imgDetID);
                    int count = 1;
                    foreach (var drImageDetail in Images)
                    {
                        if (count == 1)
                        {
                            drImageDetail.isPrimaryImage = true;
                        }
                        drImageDetail.ActivityID      = activityID;
                        drImageDetail.ActivityImageID = imgDetID;
                        dac.CreateActivityImage(drImageDetail);
                        count++;
                    }
                }
                trans.Complete();
            }
        }
Exemple #11
0
        public static void UpdateActivity(int activityID, ProviderEDSC.ActivityDTRow ActivityDetailDR, ProviderEDSC.ActivityContactDetailDTRow contactDetailsDR, ProviderEDSC.ActivityGroupingDTRow ActGroupingDR, ProviderEDSC.ActivityScheduleDTDataTable ActScheduleDT)
        {
            ProviderDAC dac = new ProviderDAC();

            dac.DeleteActivitySchedules(activityID);
            using (TransactionScope trans = new TransactionScope())
            {
                ActivityDetailDR.ID = contactDetailsDR.ActivityID = ActGroupingDR.ActivityID = activityID;
                //Activity was update, Create other
                dac.UpdateActivities(ActivityDetailDR);


                //CreateContactDetails
                dac.UpdateActivityContactDetail(contactDetailsDR);

                //Delete old Schedule before insert new one

                if (ActScheduleDT != null)
                {
                    //Create Schedule
                    foreach (var ActScheduleDR in ActScheduleDT)
                    {
                        ActScheduleDR.ActivityID = activityID;
                        dac.CreateActivitySchedule(ActScheduleDR);
                    }
                }
                //Create Grouping
                dac.UpdateActivityGrouping(ActGroupingDR);


                trans.Complete();
            }
        }
        private List <List <slot> > CreateSeasonalTimetable(ProviderEDSC.ActivityScheduleDTDataTable SchedulesDT)
        {
            List <List <slot> > schedule  = new List <List <slot> >();
            List <slot>         monday    = new List <slot>();
            List <slot>         tuesday   = new List <slot>();
            List <slot>         wednesday = new List <slot>();
            List <slot>         thursday  = new List <slot>();
            List <slot>         friday    = new List <slot>();
            List <slot>         saturday  = new List <slot>();
            List <slot>         sunday    = new List <slot>();

            //var SortSchedulesDT = SchedulesDT.OrderByDescending(day => day.ActivityStartDatetime.Hour);

            foreach (var schedules in SchedulesDT)
            {
                if (!schedules.OnMonday && !schedules.OnTuesday && !schedules.OnWednesday && !schedules.OnThursday &&
                    !schedules.OnFriday && !schedules.OnSaturday && !schedules.OnSunday)
                {
                    DayOfWeek day = schedules.ActivityStartDatetime.DayOfWeek;
                    if (day == DayOfWeek.Monday)
                    {
                        schedules.OnMonday = true;
                    }
                    if (day == DayOfWeek.Tuesday)
                    {
                        schedules.OnTuesday = true;
                    }
                    if (day == DayOfWeek.Wednesday)
                    {
                        schedules.OnWednesday = true;
                    }
                    if (day == DayOfWeek.Thursday)
                    {
                        schedules.OnThursday = true;
                    }
                    if (day == DayOfWeek.Friday)
                    {
                        schedules.OnFriday = true;
                    }
                    if (day == DayOfWeek.Saturday)
                    {
                        schedules.OnSaturday = true;
                    }
                    if (day == DayOfWeek.Sunday)
                    {
                        schedules.OnSunday = true;
                    }
                }
                if (schedules.OnMonday)
                {
                    slot slMon = new slot();
                    slMon.startTime = schedules.ActivityStartDatetime;
                    slMon.EndTime   = schedules.ActivityEndDatetime;
                    slMon.Day       = DayOfWeek.Monday.ToString();
                    monday.Add(slMon);
                }
                if (schedules.OnTuesday)
                {
                    slot slTue = new slot();
                    slTue.startTime = schedules.ActivityStartDatetime;
                    slTue.EndTime   = schedules.ActivityEndDatetime;
                    slTue.Day       = DayOfWeek.Tuesday.ToString();
                    tuesday.Add(slTue);
                }
                if (schedules.OnWednesday)
                {
                    slot slWednesday = new slot();
                    slWednesday.startTime = schedules.ActivityStartDatetime;
                    slWednesday.EndTime   = schedules.ActivityEndDatetime;
                    slWednesday.Day       = DayOfWeek.Wednesday.ToString();
                    wednesday.Add(slWednesday);
                }
                if (schedules.OnThursday)
                {
                    slot slThursday = new slot();
                    slThursday.startTime = schedules.ActivityStartDatetime;
                    slThursday.EndTime   = schedules.ActivityEndDatetime;
                    slThursday.Day       = DayOfWeek.Thursday.ToString();
                    thursday.Add(slThursday);
                }
                if (schedules.OnFriday)
                {
                    slot slFriday = new slot();
                    slFriday.startTime = schedules.ActivityStartDatetime;
                    slFriday.EndTime   = schedules.ActivityEndDatetime;
                    slFriday.Day       = DayOfWeek.Friday.ToString();
                    friday.Add(slFriday);
                }
                if (schedules.OnSaturday)
                {
                    slot slSaturday = new slot();
                    slSaturday.startTime = schedules.ActivityStartDatetime;
                    slSaturday.EndTime   = schedules.ActivityEndDatetime;
                    slSaturday.Day       = DayOfWeek.Saturday.ToString();
                    saturday.Add(slSaturday);
                }
                if (schedules.OnSunday)
                {
                    slot slSunday = new slot();
                    slSunday.startTime = schedules.ActivityStartDatetime;
                    slSunday.EndTime   = schedules.ActivityEndDatetime;
                    slSunday.Day       = DayOfWeek.Sunday.ToString();
                    sunday.Add(slSunday);
                }
            }
            if (monday.Count() != 0)
            {
                monday.Sort((x, y) => y.startTime.CompareTo(x.startTime));
                monday.Reverse();
                schedule.Add(monday);
            }
            if (tuesday.Count() != 0)
            {
                tuesday.Sort((x, y) => y.startTime.CompareTo(x.startTime));
                tuesday.Reverse();
                schedule.Add(tuesday);
            }
            if (wednesday.Count() != 0)
            {
                wednesday.Sort((x, y) => y.startTime.CompareTo(x.startTime));
                wednesday.Reverse();
                schedule.Add(wednesday);
            }
            if (thursday.Count() != 0)
            {
                thursday.Sort((x, y) => y.startTime.CompareTo(x.startTime));
                thursday.Reverse();
                schedule.Add(thursday);
            }
            if (friday.Count() != 0)
            {
                friday.Sort((x, y) => y.startTime.CompareTo(x.startTime));
                friday.Reverse();
                schedule.Add(friday);
            }
            if (saturday.Count() != 0)
            {
                saturday.Sort((x, y) => y.startTime.CompareTo(x.startTime));
                saturday.Reverse();
                schedule.Add(saturday);
            }
            if (sunday.Count() != 0)
            {
                sunday.Sort((x, y) => y.startTime.CompareTo(x.startTime));
                sunday.Reverse();
                schedule.Add(sunday);
            }
            return(schedule);
        }