I have a problem when i am trying to compare start Hour with DateTime.Now.Hour and also the End Hour with DateTime.Now.Hour in order to get the Shift currently, so the problem is how to Compare time in 24 hour.
The problem in this code : taking 17:00 > 00:00 and this is wrong
public void GetShift()
{
DateTime S1_Start = Convert.ToDateTime("00:00");
string S1_HourEnd = Convert.ToDateTime("00:00").AddHours(8).ToString("HH:mm");
DateTime S1_End = Convert.ToDateTime(S1_HourEnd);
DateTime S2_Start = Convert.ToDateTime("08:00");
string S2_HourEnd = Convert.ToDateTime("08:00").AddHours(8).ToString("HH:mm");
DateTime S2_End = Convert.ToDateTime(S2_HourEnd);
DateTime S3_Start = Convert.ToDateTime("16:00");
string S3_HourEnd = Convert.ToDateTime("16:00").AddHours(8).ToString("HH:mm");
DateTime S3_End = Convert.ToDateTime(S3_HourEnd);
if (S1_Start.Hour <= DateTime.Now.Hour && S1_End.Hour > DateTime.Now.Hour)
{
HourStart_Shift = new TimeSpan(S1_Start.Hour, 0, 0);
HourEnd_Shift = new TimeSpan(S1_End.Hour, 0, 0);
Current_Shift = "Shift_1";
}
if (S2_Start.Hour <= DateTime.Now.Hour && S2_End.Hour > DateTime.Now.Hour)
{
HourStart_Shift = new TimeSpan(S2_Start.Hour, 0, 0);
HourEnd_Shift = new TimeSpan(S2_End.Hour, 0, 0);
Current_Shift = "Shift_2";
}
if (S3_Start.Hour <= DateTime.Now.Hour && S3_End.Hour > DateTime.Now.Hour)
{
HourStart_Shift = new TimeSpan(S3_Start.Hour, 0, 0);
HourEnd_Shift = new TimeSpan(S3_End.Hour, 0, 0);
Current_Shift = "Shift_3";
}
}