/// <summary>
/// 计算某时间段含有假期的天数
/// </summary>
/// <param name="date">开始时间</param>
/// <param name="date1">结束时间</param>
/// <returns></returns>
public
int
JSjqDay(DateTime date,DateTime date1)
{
int
day = 0;
//假期的天数
DateTime resultDate1 = date1;
DateTime dateNow;
string
connStr = ConfigurationManager.AppSettings[
"ExFlowConnStr"
];
using
(SqlConnection conn =
new
SqlConnection(connStr))
{
//type:1,节日 2,工作日
string
SQL =
"select date,type from exnewframe..ExHoliday where year >= "
+ date.Year.ToString();
SqlDataAdapter adp =
new
SqlDataAdapter(SQL, conn);
DataTable dt =
new
DataTable();
adp.Fill(dt);
dateNow = DateTime.Now;
int
n = (date - dateNow).Days;
//resultTmp = GetNewDate2(date, dt, ref date1);
try
{
//Response.Write("<script>alert(\"" + (DateTime.Compare(date, date1) <= 0 )+ "\");</script>");
while
(DateTime.Compare(date, date1) <= 0)
{
if
(date.DayOfWeek == DayOfWeek.Saturday || date.DayOfWeek == DayOfWeek.Sunday)
//周末
{
if
(dt.Select(
"type=2 and date='"
+ date.ToString(
"yyyy-MM-dd 00:00:00.000"
) +
"'"
).Length > 0)
//在工作日中
{
}
else
//不在工作日
{
day++;
}
}
else
//不是周末
{
//LogForYiDongBanGong.WriteLog(result.ToString("yyyy-MM-dd 00:00:00.000") + "||" + trnTime.ToString("yyyy-MM-dd") + "||" + "在节日表中");
if
(dt.Select(
"type=1 and date='"
+ date.ToString(
"yyyy-MM-dd 00:00:00.000"
) +
"'"
).Length > 0)
//在节日表中
{
day++;
}
else
//不在节日表中
{
}
}
date = date.AddDays(1);
}
}
catch
(Exception ex)
{
Response.Write(
"786:"
+ ex.Message);
}
}
//Response.Write("<script>alert(\"" + date + "||" + date1 + "day" + day + "\");</script>");
return
day;
}