Exemple #1
0
        }//end AddAppt2DayScheduleXML

        /// <summary>
        ///Returns the XMLDocument created from staff daily Shedule
        /// it returns fileName by default
        /// </summary>
        /// <param name="employee"></param>
        /// <param name="filePath"></param>
        /// <param name="date"></param>
        /// <param name="isFileNameReq"></param>
        /// <returns></returns>
        public static XmlDocument CreateXMLFromDaySchedule(EmployeeBLL employee, string filePath, DateTime date)
        {
            try {
                //get staff's agenda calendar
                SerializableDictionary <DateTime, DaySchedule> staffCalendar = employee.agenda.staffCalendar;
                //get staff day schedule for given day
                DaySchedule employeeDaySchedule = AgendaBLL.GetDaySchedule(ref staffCalendar, date);

                //create XML file
                XmlDocument xdoc     = new XmlDocument();
                string      fileName = DayScheduleXML.CreateDayScheduleXML(filePath, employee.agenda.ID, date, isFileNameReq: true);

                if (employeeDaySchedule != null)
                {
                    //loop through day schedule. ie: each hr and 1/h of the staff agenda
                    foreach (var pair in employeeDaySchedule.daySchedule)
                    {
                        //get time and availability
                        int    tempTime       = pair.Key;   //ie: 1100, 1130
                        string tempTimeStatus = pair.Value; //ie BUSY, AVAILABLE
                        System.Diagnostics.Debug.Print("Key: {0},  Value: {1}", tempTime, tempTimeStatus);


                        //check if staff is busy
                        if (pair.Value == DaySchedule.GetDayStatusEnumString(DayStatusEnum.BUSY))
                        {
                            //Add child to xml / appointment
                            xdoc = DayScheduleXML.AddApptNode2DayScheduleXML(fileName, date, tempTime);
                        }
                    } //endforloop
                }     //endif
                else
                {
                    //staff daySchedule is empty so enable all buttons
                    System.Diagnostics.Debug.Print("<h2>BLL.DayScheduleXML.CreateXMLFromDaySchedule()</h2> \t  staff daySchedule is empty!");
                    return(null);
                }

                //return XML file
                return(xdoc);
            }
            catch (Exception ex) {
                ExceptionHandling.LogException(ref ex);
                return(null);
            }
        }//end CreateDayScheduleXML