PDA

View Full Version : سوال: مقایسه زمان در یک بازه ی زمانی



hadi46
سه شنبه 14 آبان 1392, 10:13 صبح
با سلام
فرض کنید سه شیفت کاری با ساعت های زیر دارید
شیفت 1: 06:00 تا 14:00
شیفت 2: 14:00 تا 22:00
شیفت 3 : 22:00 تا 06:00
حالا برای مقایسه زمان جاری که ببینم داخل کدوم شیفت است داخل یک تایمر کد نوشتم مقایسه شود ولی برای ساعت 12 شب 00:00:00 هیچکدام رو انتخاب نمی کند

TimeSpan tm = DateTime.Now.TimeOfDay;
DataTable dt = GetShift();
for (int i = 0; i < dt.Rows.Count; i++)
{
if (tm >= TimeSpan.Parse( dt.Rows[i]["startTime"].ToString()))
{
if (tm < TimeSpan.Parse( dt.Rows[i]["EndTime"].ToString()))
{
txtShif.Text = dt.Rows[i]["NameShift"].ToString();
}
}
}
دوستان راه حلی دارن

مهرداد صفا
سه شنبه 14 آبان 1392, 12:07 عصر
سلام.
با این کد در شیفت سوم کلا مشکل باید داشته باشید. به نظر شما ساعت 2:00 از 22 بزرگتر و یا ساعت 23 از 6 کوچکتر است؟

hadi46
سه شنبه 14 آبان 1392, 12:29 عصر
ممنون از پاسخگویی شما دوست عزیز

مشکل سر همون شیفت هست
راه حلی به ذهن دوستان نمیرسه یا روشی که بصورت بازه ای چک بشه

مهرداد صفا
سه شنبه 14 آبان 1392, 12:53 عصر
خواهش می کنم.
نیازی به چک کردن آخرین شیفت نیست، طبیعاتا مثلا اگر ساعت 02:00 در شیفت 1 و 2 نباشد مربوط به شیف 3 می شود.