使用jquery datepicker从数据库获取假期 [英] Get holidays from database using jquery datepicker

查看:62
本文介绍了使用jquery datepicker从数据库获取假期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I've used the JQuery UI DatePicker for selecting a date and then showing the data from the database. I have 2 tables, HOLIDAYS and SUMMARYDATA. And now I'm looking for a way to get my table HOLIDAYS from database. And then, I want to set some condition in STATUSIN and HOLIDAYDATE : 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

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

And this is my sample code to set that in weekend

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";                                        
    }    
}

推荐答案

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

As I said, it won't be possible to provide the exact code since I don't know what date formats you are using in both the holidays and Summary data table.

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

But, you can use the below code and modify according to your requirements.

此代码只是将假期表硬编码到数据表中.

This code just hardcodes holiday table in the datatable.

  DataTable HOLIDAYS = new DataTable();
            DataColumn[] dc1 = new DataColumn[] {new DataColumn("ID",typeof(string)),
                                                new DataColumn("HOLIDAYDATE",typeof(string)),
            new DataColumn("HOLIDAYNAME",typeof(string))};
            HOLIDAYS.Columns.AddRange(dc1);

            DataRow dr3 = SUMMARYDATA.NewRow();
            dr3["ID"] = "1"; dr3["HOLIDAYDATE"] = "2020-01-01"; dr3["HOLIDAYNAME"] = "New Year's Day";
            SUMMARYDATA.Rows.Add(dr3);

            DataRow dr4 = SUMMARYDATA.NewRow();
            dr4["ID"] = "2"; dr4["HOLIDAYDATE"] = "2020-01-25"; dr4["HOLIDAYNAME"] = "Chinese Lunar New Year's Day";
            SUMMARYDATA.Rows.Add(dr4);

逻辑

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";
  }

这篇关于使用jquery datepicker从数据库获取假期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆