使用jquery datepicker从数据库获取假期

问题描述 投票:0回答:1

我已使用JQuery UI DatePicker选择日期,然后显示数据库中的数据。我有2张桌子,HOLIDAYSSUMMARYDATA。现在,我正在寻找一种从数据库中获取表HOLIDAYS的方法。然后,我想在STATUSINHOLIDAYDATE中设置一些条件:if STATUSIN == HOLIDAYDATE THEN TOTALWH = '00:00:00'

SUMMARYDATA

NIP  NAME   DEPARTMENT  STATUSIN                STATUSOUT               TOTALWH       
A1   ARIA   BB          1/21/2020  8:06:23 AM   1/21/2020  8:07:53 AM   00:01:30
A2   CHLOE  BB          1/21/2020  8:16:07 AM   1/21/2020  9:51:21 AM   01:35:14
A1   ARIA   BB          1/22/2020  9:06:23 AM   1/22/2020  10:07:53 AM  00:01:30

HOLIDAYS

ID  HOLIDAYDATE   HOLIDAYNAME  
1   2020-01-01    New Year's Day
2   2020-01-25    Chinese Lunar New Year's Day

这是我在周末设置的示例代码

if ((pRow.Field<DateTime>("STATUSIN").DayOfWeek == DayOfWeek.Saturday)
    || (pRow.Field<DateTime>("STATUSIN").DayOfWeek == DayOfWeek.Sunday))
{
    if (pRow.Field<DateTime>("STATUSIN") == DateTime.MinValue)
    {

    }
    else
    {    
        pRow["TOTALWH"] = "00:00:00";                                        
    }    
}
asp.net jquery-ui-datepicker
1个回答
0
投票

正如我所说,由于我不知道假期和摘要数据表中都使用什么日期格式,因此无法提供确切的代码。

但是,您可以使用以下代码并根据需要进行修改。

if ((pRow.Field<DateTime>("STATUSIN").DayOfWeek == DayOfWeek.Saturday) || pRow.Field<DateTime>("STATUSIN").DayOfWeek == DayOfWeek.Sunday))
{
  if (pRow.Field<DateTime>("STATUSIN") == DateTime.MinValue)
  {

  }
  else
  {
     pRow["TOTALWH"] = "00:00:00";
  }
}
else if (HOLIDAYS.AsEnumerable()
         .Select(p => new { ID = p.Field<string>("ID"), HOLIDAYDATE = p.Field<string>("HOLIDAYDATE"), HOLIDAYNAME = p.Field<string>("HOLIDAYNAME") })
         .ToList()
         .Where(b => b.HOLIDAYDATE == pRow.Field<DateTime>("STATUSIN").ToString())
         .Any())
  {
    pRow["TOTALWH"] = "00:00:00";
  }
© www.soinside.com 2019 - 2024. All rights reserved.