//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! //public static void PlaySnooze(CodeTimeToUser _codeTimeToUser, long timeId) public static void PlaySnooze(long userId, DateTime time) //מקבל קוד ילד וזמן שההתראה התבצעה { int hour = time.Hour, minute = time.Minute; if ((hour >= 0 && hour <= 23) && (minute >= 0 && minute <= 59)) { DetailsAlert smoozeUserDidNotTakeMedicines = _userDetailsOfAlert[hour, minute].Find(u => u.snooze.userId == userId); if (smoozeUserDidNotTakeMedicines.snooze.snoozeCounter >= smoozeUserDidNotTakeMedicines.AlertCount) { if (minute + smoozeUserDidNotTakeMedicines.snooze.snoozePeriod < 60) { _userDetailsOfAlert[hour, minute + smoozeUserDidNotTakeMedicines.snooze.snoozePeriod].Add(smoozeUserDidNotTakeMedicines); } else { if (hour + 1 < 24) { _userDetailsOfAlert[hour + 1, (minute + smoozeUserDidNotTakeMedicines.snooze.snoozePeriod) - 60].Add(smoozeUserDidNotTakeMedicines); } //else? } } } }
//הפעלת נודניק על ידי הילד. //שליחה של זמן ההתראה ע"י הפיירבייס public static void SendSMSToGuardians(DetailsAlert childrenAlert) { //הילד חרג בהפעלת הנודניק- שליחת הודעה להורים List <Guardian> _guardiansDetails = _GuardiansDAL.GetGuardiansByUserId(childrenAlert.snooze.userId); foreach (var guardians in _guardiansDetails) { Console.WriteLine(guardians.guardianName + " " + guardians.PhoneNumber + " child name " + childrenAlert.UserName); SendUsingAPIAsync(guardians.PhoneNumber, childrenAlert.UserName); //This Method Sends Using API and its ASYNC (You have to wait until the process ends) Thread.Sleep(5000); //Sleep for 5 SECOND Until API FINISH His Work } //return true; }
//public static void EditSnoozeToUser(TimeOfAlertForUser dAlert) //{ // int countDelete = 0; // for (int i = 0; i < 24&&countDelete<4; i++) // { // for (int j = 0; j < 60 && countDelete < 4; j++) // { // DetailsAlert snoozeToRemove = _userDetailsOfAlert[i, j].FirstOrDefault(a => a.snooze.userId == dAlert.snooze.userId && a.CodeTime)); // if (snoozeToRemove != null) // { // countSnooze = snoozeToRemove.AlertCount; // _userDetailsOfAlert[i, j].Remove(snoozeToRemove); // countDelete ++; // } // } // } // AddTimesToMatForNewUser(dAlert); //} public static int RemoveSnooze(CodeTimeToUser codeTimeToUser) { //למחוק מהמטריצה את הנודניק DateTime now = DateTime.Now; int hour = now.Hour; codeTimeToUser.UserID = 30010; codeTimeToUser.TimeOfDay = 1; bool continueLoop = true; int countSnooze = 0; for (int j = now.Minute + 1; j < now.Minute + 15 && continueLoop; j++) { if (j <= 59) { DetailsAlert snoozeToRemove = _userDetailsOfAlert[hour, j].FirstOrDefault(a => a.snooze.userId == codeTimeToUser.UserID && a.CodeTime == codeTimeToUser.TimeOfDay); if (snoozeToRemove != null) { countSnooze = snoozeToRemove.AlertCount; _userDetailsOfAlert[hour, j].Remove(snoozeToRemove); continueLoop = false; } //snoozeToRemove = _userDetailsOfAlert[hour, j].RemoveAll(a => a.snooze.userId == codeTimeToUser.UserID && a.CodeTime == codeTimeToUser.TimeOfDay); } else { DetailsAlert snoozeToRemove = _userDetailsOfAlert[hour + 1, j - 60].FirstOrDefault(a => a.snooze.userId == codeTimeToUser.UserID && a.CodeTime == codeTimeToUser.TimeOfDay); if (snoozeToRemove != null) { countSnooze = snoozeToRemove.AlertCount; _userDetailsOfAlert[hour + 1, j - 60].Remove(snoozeToRemove); continueLoop = false; } //snoozeToRemove = _userDetailsOfAlert[hour+1, j - 60].RemoveAll(a => a.snooze.userId == codeTimeToUser.UserID && a.CodeTime == codeTimeToUser.TimeOfDay); } } return(countSnooze); }