public static async System.Threading.Tasks.Task <bool> WritePrefsToSPList(Preference body) { string token = await GetDataHelper.GetAuthenticationToken(); //"{'UserName':'******', 'Uni_ID':'likansf3993', 'TenantID':'7454731348764','ServiceURL':'abcghij','SelectedCategories':'a, b, c','NewsNotificationTime':' ','EnTNotifyMe':' ','EnTNotificationTime':' ','TaskNotificationTime':' ','NewsNotificationFlag':' ','EnTNotificationFlag':' ','NewsNotifyMe':' '}"; string cats = string.Join(",", body.News.SelectedCategories); //change below code to some model string finalBody = "{'UserName' :'" + body.UserName + "', 'Uni_ID' :'" + body.UserInfo[0].UniqueID + "', 'TenantID' :'" + body.UserInfo[0].TenantID + "', 'ServiceURL' :'" + body.UserInfo[0].ServiceURl + "', 'SelectedCategories' :'" + cats + "', 'NewsNotificationTime' :'" + body.News.NewsNotificationTime + "', 'EnTNotifyMe' :'" + body.EandT.EandTNotifyMe + "', 'EnTNotificationTime' :'" + body.EandT.EandTNotificationTime + "', 'TaskNotificationTime' :'" + body.Task.TaskNotificationTime + "', 'NewsNotificationFlag' :'" + body.News.NewsNotificationFlag + "', 'EnTNotificationFlag' :'" + body.EandT.EandTNotificationFlag + "', 'NewsNotifyMe' :'" + body.News.NewsNotifyMe + "'}"; string endpoint = "https://avadheshftc.sharepoint.com/sites/EmployeeConnectPrototype/_api/web/lists/GetByTitle('PreferencesList')/items"; using (var client = new HttpClient()) { using (var request = new HttpRequestMessage(HttpMethod.Post, endpoint)) { request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", token); request.Content = new StringContent(finalBody, Encoding.UTF8, "application/json"); using (HttpResponseMessage response = await client.SendAsync(request)) { if (response.IsSuccessStatusCode) { return(true); } return(false); } } } }
//news notification as per preferences public static async System.Threading.Tasks.Task CheckPrefAndSendNewsCard() { UPreferences UserPref = GetDataHelper.ReadPreferences(); int UPrefCount = UserPref.Preferences.Count(); Attachment card = null; for (int i = 0; i < UPrefCount; i++) { string userName = UserPref.Preferences[i].UserName; string NewsNotificationTime1 = UserPref.Preferences[i].News.NewsNotificationTime; DateTime NewsNotificationTime = DateTime.ParseExact(UserPref.Preferences[i].News.NewsNotificationTime, "H:mm tt", CultureInfo.InvariantCulture); //List<string[]> NewsCat = UserPref.preferences[i].News.Select(c => c.SelectedCategories).ToList(); DateTime currTime = DateTime.Now; if (NewsNotificationTime >= currTime.AddMinutes(-10) || NewsNotificationTime <= currTime.AddMinutes(10)) { card = Helper.CardHelper.GetNewsCard(userName); string uIn = UserPref.Preferences[i].UserInfo.Select(c => c.UniqueID).ToString(); string tenID = UserPref.Preferences[i].UserInfo.Select(c => c.UniqueID).ToString(); string serURL = UserPref.Preferences[i].UserInfo.Select(c => c.UniqueID).ToString(); await NotificationHelper.SendNotification(uIn, serURL, tenID, card); } } }
public static Preference UserPreference(string userName) { UPreferences uPrefs = GetDataHelper.ReadPreferences(); Preference uPref = uPrefs.Preferences.Where(c => c.UserName == userName).FirstOrDefault();; return(uPref); }
public static async System.Threading.Tasks.Task GetPreferencesandWriteToFile() // need to decide how many time it will run and update the data file. { string token = await GetDataHelper.GetAuthenticationToken(); string endpoint = "https://avadheshftc.sharepoint.com/sites/EmployeeConnectPrototype/_api/web/Lists(guid'e8937172-f3f3-478e-97bb-d5699f8d8945')/items"; SPFXPreferences pref = null; using (var client = new HttpClient()) { using (var request = new HttpRequestMessage(HttpMethod.Get, endpoint)) { string location = System.Web.Hosting.HostingEnvironment.MapPath(@"~\TestData\"); request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", token); using (HttpResponseMessage response = await client.SendAsync(request)) { if (response.IsSuccessStatusCode) { var json = await response.Content.ReadAsStringAsync(); try { pref = (new JavaScriptSerializer().Deserialize <SPFXPreferences>(json)); File.WriteAllText(location + "PreferencesMock.json", json); } catch (Exception ex) { } } } } } }
public static void UpdateETMockData() { string filename = System.Web.Hosting.HostingEnvironment.MapPath("~/TestData/") + @"/EventsAndTraining_June.json"; if (File.Exists(filename)) { EandTModel eandt = GetDataHelper.GetEandT(); int eandtCount = eandt.EventsAndtraining.Count(); for (int i = 0; i < eandtCount; i++) { } string json = File.ReadAllText(filename); } //EventsAndTraining et = new JavaScriptSerializer().Deserialize<EventsAndTraining>(json); //foreach(EventsAndTraining i in et) //{ // et.ETDate = DateTime.Now.Date.ToString("MM/dd/yyyy"); //} }
public static void SaveTicketsInfo(JObject ticketData) { TicketsDataModel currentTicket = GetDataHelper.GetTickets(); int TicketCount = currentTicket.Tickets.Count(); var tNo = Convert.ToInt32(ticketData.GetValue("TicketNo")); var ticDes = ticketData.GetValue("Description").ToString(); var ticDate = ticketData.GetValue("Date").ToString(); var ticPriority = ticketData.GetValue("Priority").ToString(); var ticCat = ticketData.GetValue("Category").ToString(); JavaScriptSerializer js = new JavaScriptSerializer(); string TicketJson = js.Serialize(currentTicket); string filePath = System.Web.Hosting.HostingEnvironment.MapPath("~/TestData/SupportTickets") + @"/Tickets.json"; if (File.Exists(filePath)) { File.WriteAllText(filePath, TicketJson); } }
public static void UpdateNewsMockData() { string filename = System.Web.Hosting.HostingEnvironment.MapPath("~/TestData/") + @"/NewsData.json"; if (File.Exists(filename)) { NewsModel news = GetDataHelper.GetNews(); int NewsCount = news.news.Count(); DateTime[] last15Days = Enumerable.Range(0, 15).Select(i => DateTime.Now.Date.AddDays(-i)).ToArray(); for (int i = 0; i < NewsCount; i++) { Random r = new Random(); int randomnum = r.Next(0, last15Days.Length); news.news[i].NewsDateTIme = last15Days[randomnum].ToString("M/dd/yyyy, h:mm tt"); } string json = JsonConvert.SerializeObject(news); //create json object File.WriteAllText(filename, json); } }