Example #1
0
 private static TimeInterval ExtractTimeIntervalFromTimeslot(TimeregWithTimeslot tkTimeslot)
 {
     return(new TimeInterval()
     {
         Id = tkTimeslot.TimeslotId,
         Interval = tkTimeslot.Timeslot
     });
 }
Example #2
0
        private static List <TimeregWithTimeslot> GetTopTimeregsWithTimeslot(ClientRuntimeContext clientContext, List spList, Toolkit tk)
        {
            var rowLimit = 250;
            var query    = new CamlQuery()
            {
                ViewXml = $@"<View><Query><Where><IsNotNull><FieldRef Name='{tk.TimeslotFieldName}'/></IsNotNull></Where><OrderBy><FieldRef Name='ID' Ascending='FALSE'/></OrderBy></Query><ViewFields><FieldRef Name='Sag_x003a_Sags_x0020_Id' /><FieldRef Name='{tk.TimeslotFieldName}' /></ViewFields><RowLimit>{rowLimit}</RowLimit></View>"
            };

            var listItems = spList.GetItems(query);

            clientContext.Load(listItems);
            clientContext.ExecuteQuery();

            var listOfTimeregsWithTimelots = new List <TimeregWithTimeslot>();

            foreach (var item in listItems)
            {
                var timeregWithTimeslot = new TimeregWithTimeslot
                {
                    Timeslot = tk.TimeslotIsFieldLookup
                        ? (from field in item.FieldValues
                           where field.Key == tk.TimeslotFieldName
                           select((FieldLookupValue)field.Value).LookupValue).Single()
                        : (from field in item.FieldValues
                           where field.Key == tk.TimeslotFieldName
                           select field.Value.ToString()).Single(),
                    TimeslotId = tk.TimeslotIsFieldLookup
                        ? (from field in item.FieldValues
                           where field.Key == tk.TimeslotFieldName
                           select((FieldLookupValue)field.Value).LookupId).Single()
                        : -1,
                    CaseId = (from field in item.FieldValues
                              where field.Key == "Sag_x003a_Sags_x0020_Id"
                              select ExtractCaseIdFromField(((FieldLookupValue)field.Value).LookupValue)).Single()
                };

                listOfTimeregsWithTimelots.Add(timeregWithTimeslot);
            }

            return(listOfTimeregsWithTimelots);
        }