public static int session_time(int day, int month, int year, int sec, int min, int hour, string id) { int count_sec = 0; int count_min = 0; int count_hour = 0; int count_day = 0; user_time time_current = new user_time(day, month, year, sec, min, hour); database Database = new database(); current_user CurrentUser = new current_user(id); Database.open_connection(); List <string> list; list = Database.get_from_datebase("data_start_Day, data_start_Month, data_start_Year, data_start_Hour, data_start_Min, data_start_Sec", "user_session", "where user_id='" + CurrentUser.Get_user_id() + "' and start_status='1'"); if (list.LongCount() == 6) { int Day = int.Parse(list[0]); int Month = int.Parse(list[1]); int Year = int.Parse(list[2]); int Hour = int.Parse(list[3]); int Min = int.Parse(list[4]); int Sec = int.Parse(list[5]); user_time time_in_datebase = new user_time(Day, Month, Year, Sec, Min, Hour); user_time different = new user_time(); different = time_in_datebase; count_day = different.day_difference(time_current); count_hour = time_current.Get_hour() - time_in_datebase.Get_hour(); count_min = time_current.Get_min() - time_in_datebase.Get_min(); count_sec = time_current.Get_sec() - time_in_datebase.Get_sec(); count_sec = count_sec + (count_min + (count_hour + count_day * 24) * 60) * 60; } save_session_time(count_sec, id); return(count_sec); }
public static bool checkTimeDelete(string id, int day, int month, int year, int sec, int min, int hour) { bool boolean = false; database Database = new database(); current_user CurrentUser = new current_user(id); Database.open_connection(); user_time time_curent = new user_time(day, month, year, sec, min, hour); List <string> list; list = Database.get_from_datebase("data_start_Day, data_start_Month, data_start_Year, data_start_Hour, data_start_Min, data_start_Sec", "user_session", "where user_id='" + CurrentUser.Get_user_id() + "'"); if (list != null) { if (list.LongCount() != 0) { user_time time_start = new user_time(int.Parse(list[0]), int.Parse(list[1]), int.Parse(list[2]), int.Parse(list[5]), int.Parse(list[4]), int.Parse(list[3])); user_time different = new user_time(); different = time_start; int count_day = different.day_difference(time_curent); int count_hour = time_curent.Get_hour() - time_start.Get_hour(); int count_min = time_curent.Get_min() - time_start.Get_min(); int count_sec = time_curent.Get_sec() - time_start.Get_sec(); count_sec = count_sec + (count_min + (count_hour + count_day * 24) * 60) * 60; if (count_sec < 60) { Database.delete_datebase("user_recording", "where user_id='" + id + "' and data_finish_Day='0'"); boolean = true; } } } Database.close_connection(); return(boolean); }
public string[] get_records_for_month(int month, int year) { int[] month_days = new int[] { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; //если текущий год високосный - устанавливаем в феврале 28 дней if (((year % 4 != 0) && (year % 100 == 0)) || ((year % 100 != 0) && (year % 400 != 0))) { month_days[1] = 28; } database _database_ = new database(); _database_.open_connection(); List <string> list_curent_month; list_curent_month = _database_.get_from_datebase("data_start_Day, data_start_Month, data_start_Year, data_start_Sec, data_start_Min, data_start_Hour, data_finish_Day, data_finish_Month, data_finish_Year, data_finish_Sec, data_finish_Min, data_finish_Hour", "user_recording", "where user_id='" + user_id + "' and data_finish_Month=" + month + " and data_finish_Year=" + year + ""); string[] records_for_month = new string[month_days[month - 1] * 2]; if (list_curent_month != null) { if (list_curent_month.Count >= 0) { string[] day_of_month = new string[month_days[month - 1]]; for (int i = 0; i < month_days[month - 1]; i++) { day_of_month[i] = i + 1 + ":" + month + ":" + year; records_for_month[i] = day_of_month[i]; } int count_work = 0; int count_all_day_work = 0; int count_recording_month = list_curent_month.Count() / 12; int pos = month_days[month - 1]; for (int zt = pos; zt < records_for_month.Length; zt++) { records_for_month[zt] = count_all_day_work.ToString(); } int count_sec = 0; int count_min = 0; int count_hour = 0; int count_day = 0; for (int i = 0; i < month_days[month - 1]; i++) { for (int x = 0; x < count_recording_month; x++) { if (day_of_month[i] == list_curent_month[x] + ":" + list_curent_month[x + count_recording_month] + ":" + list_curent_month[x + count_recording_month * 2]) { user_time time_finish = new user_time(int.Parse(list_curent_month[x + count_recording_month * 6]), int.Parse(list_curent_month[x + count_recording_month * 7]), int.Parse(list_curent_month[x + count_recording_month * 8]), int.Parse(list_curent_month[x + count_recording_month * 9]), int.Parse(list_curent_month[x + count_recording_month * 10]), int.Parse(list_curent_month[x + count_recording_month * 11])); user_time time_start = new user_time(int.Parse(list_curent_month[x]), int.Parse(list_curent_month[x + count_recording_month]), int.Parse(list_curent_month[x + count_recording_month * 2]), int.Parse(list_curent_month[x + count_recording_month * 3]), int.Parse(list_curent_month[x + count_recording_month * 4]), int.Parse(list_curent_month[x + count_recording_month * 5])); user_time different = new user_time(); different = time_start; count_day = different.day_difference(time_finish); count_hour = time_finish.Get_hour() - time_start.Get_hour(); count_min = time_finish.Get_min() - time_start.Get_min(); count_sec = time_finish.Get_sec() - time_start.Get_sec(); count_sec = count_sec + (count_min + (count_hour + count_day * 24) * 60) * 60; count_work = count_sec; count_all_day_work = count_work + int.Parse(records_for_month[pos]); records_for_month[pos] = count_all_day_work.ToString(); if (day_of_month[i] != list_curent_month[x + 1] + ":" + list_curent_month[x + 1 + count_recording_month] + ":" + list_curent_month[x + 1 + count_recording_month * 2]) { break; } } else { count_work = 0; records_for_month[pos] = count_work.ToString(); } } pos++; } } } _database_.close_connection(); return(records_for_month); }