using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Web;
|
using System.Web.Security;
|
using System.Web.SessionState;
|
using System.Web.Routing;
|
using CY.WebForm.Helper;
|
using CY.BLL;
|
using System.Data.SqlClient;
|
using CY.SQLDAL;
|
using CY.Infrastructure.Logging;
|
using System.Data;
|
using System.Globalization;
|
|
namespace CY.WebForm
|
{
|
public class Global : System.Web.HttpApplication
|
{
|
|
void Application_Start(object sender, EventArgs e)
|
{
|
// 在应用程序启动时运行的代码
|
log4net.Config.XmlConfigurator.Configure(new System.IO.FileInfo(Server.MapPath("~/config/log4net.config")));
|
// 在应用程序启动时运行的代码
|
TimeTaskHelper.Instance().ExecuteTask += new System.Timers.ElapsedEventHandler(Global_ExecuteTask);
|
TimeTaskHelper.Instance().Interval = 1000*10;//表示间隔 1个小时
|
TimeTaskHelper.Instance().Start();
|
}
|
void Global_ExecuteTask(object sender, System.Timers.ElapsedEventArgs e)
|
{
|
//在这里编写需要定时执行的逻辑代码
|
|
//这里执行定时任务
|
DateTime time = DateTime.Now;
|
if (time.ToString("ddd HH") == "周一 00")
|
{
|
|
Database DC = new Database();
|
string sqlStr = "USE [ECTEST] UPDATE[dbo].[OA_CorporateClients] SET [NeedWiHu] = 'true' WHERE[Shifouwanjie] = 2";
|
|
try
|
{
|
SqlCommand myCmd = new SqlCommand(sqlStr, DC.Connection);
|
//SqlDataAdapter myDa = new SqlDataAdapter(myCmd);
|
int a = myCmd.ExecuteNonQuery();
|
//myDa.Dispose();
|
|
|
}
|
catch (Exception ee)
|
{
|
new Log4NetAdapter().Log("周一执行为完结客户 提醒设置失败 错误:" + ee.Message);
|
|
}
|
finally
|
{
|
if (DC.Connection.State != System.Data.ConnectionState.Closed)
|
DC.Connection.Close();
|
}
|
|
|
|
|
|
|
|
|
}
|
string strtime = time.ToString("MM dd HH");
|
if (strtime == "01 01 01" || strtime == "04 01 01" || strtime == "07 01 01" || strtime == "10 01 01")
|
{
|
//1 、4、7、10月 1号1点,刷新 已完结订单的维护提醒
|
Database DC = new Database();
|
string sqlStr = "USE [ECTEST] UPDATE[dbo].[OA_CorporateClients] SET [NeedWiHu] = 'true' WHERE[Shifouwanjie] = 1";
|
|
try
|
{
|
SqlCommand myCmd = new SqlCommand(sqlStr, DC.Connection);
|
//SqlDataAdapter myDa = new SqlDataAdapter(myCmd);
|
int a = myCmd.ExecuteNonQuery();
|
//myDa.Dispose();
|
|
|
}
|
catch (Exception ee)
|
{
|
new Log4NetAdapter().Log("完结订单客户3个月一次提醒错误 提醒设置失败 错误:" + ee.Message);
|
|
}
|
finally
|
{
|
if (DC.Connection.State != System.Data.ConnectionState.Closed)
|
DC.Connection.Close();
|
}
|
}
|
///以下为节日提醒
|
time.AddDays(20);
|
|
ChineseLunisolarCalendar chineseLunisolarCalendar = new ChineseLunisolarCalendar();
|
int lyear = chineseLunisolarCalendar.GetYear(time);
|
int lmonth = chineseLunisolarCalendar.GetMonth(time);
|
int lday = chineseLunisolarCalendar.GetDayOfMonth(time);
|
//获取闰月, 0 则表示没有闰月
|
int leapMonth = chineseLunisolarCalendar.GetLeapMonth(lyear);
|
|
|
if(lmonth==1&&lday==1&& time.Hour==1)
|
{
|
|
Database DC = new Database();
|
string sqlStr = "USE [ECTEST] UPDATE[dbo].[OA_CorporateClients] SET [[JieJiaRiWiHu]] = 'true'";
|
|
try
|
{
|
SqlCommand myCmd = new SqlCommand(sqlStr, DC.Connection);
|
//SqlDataAdapter myDa = new SqlDataAdapter(myCmd);
|
int a = myCmd.ExecuteNonQuery();
|
//myDa.Dispose();
|
|
|
}
|
catch (Exception ee)
|
{
|
new Log4NetAdapter().Log("春节设置提醒错误 错误:" + ee.Message);
|
|
}
|
finally
|
{
|
if (DC.Connection.State != System.Data.ConnectionState.Closed)
|
DC.Connection.Close();
|
}
|
|
//春节提醒
|
}
|
if (leapMonth == 0)
|
{
|
//没有闰月
|
if (lmonth == 8 && lday == 15&&time.Hour==1)
|
{
|
//中秋节提醒
|
Database DC = new Database();
|
string sqlStr = "USE [ECTEST] UPDATE[dbo].[OA_CorporateClients] SET [[JieJiaRiWiHu]] = 'true'";
|
|
try
|
{
|
SqlCommand myCmd = new SqlCommand(sqlStr, DC.Connection);
|
//SqlDataAdapter myDa = new SqlDataAdapter(myCmd);
|
int a = myCmd.ExecuteNonQuery();
|
//myDa.Dispose();
|
|
|
}
|
catch (Exception ee)
|
{
|
new Log4NetAdapter().Log("中秋节提醒错误 错误:" + ee.Message);
|
|
}
|
finally
|
{
|
if (DC.Connection.State != System.Data.ConnectionState.Closed)
|
DC.Connection.Close();
|
}
|
|
}
|
|
if (lmonth == 5 && lday == 5 && time.Hour == 1)
|
{
|
//端午节
|
Database DC = new Database();
|
string sqlStr = "USE [ECTEST] UPDATE[dbo].[OA_CorporateClients] SET [[JieJiaRiWiHu]] = 'true'";
|
|
try
|
{
|
SqlCommand myCmd = new SqlCommand(sqlStr, DC.Connection);
|
//SqlDataAdapter myDa = new SqlDataAdapter(myCmd);
|
int a = myCmd.ExecuteNonQuery();
|
//myDa.Dispose();
|
|
|
}
|
catch (Exception ee)
|
{
|
new Log4NetAdapter().Log("端午节设置提醒错误 错误:" + ee.Message);
|
|
}
|
finally
|
{
|
if (DC.Connection.State != System.Data.ConnectionState.Closed)
|
DC.Connection.Close();
|
}
|
|
}
|
}
|
else
|
{
|
//有闰月
|
//没有闰月
|
int ms = 8;
|
if (leapMonth < 8)
|
ms++;
|
if (lmonth == ms && lday == 15 && time.Hour == 1)
|
{
|
//中秋节提醒
|
Database DC = new Database();
|
string sqlStr = "USE [ECTEST] UPDATE[dbo].[OA_CorporateClients] SET [[JieJiaRiWiHu]] = 'true'";
|
|
try
|
{
|
SqlCommand myCmd = new SqlCommand(sqlStr, DC.Connection);
|
//SqlDataAdapter myDa = new SqlDataAdapter(myCmd);
|
int a = myCmd.ExecuteNonQuery();
|
//myDa.Dispose();
|
|
|
}
|
catch (Exception ee)
|
{
|
new Log4NetAdapter().Log("中秋节设置提醒错误 错误:" + ee.Message);
|
|
}
|
finally
|
{
|
if (DC.Connection.State != System.Data.ConnectionState.Closed)
|
DC.Connection.Close();
|
}
|
|
}
|
|
ms = 5;
|
if (leapMonth < 5)
|
ms++;
|
if (lmonth == ms && lday == 5 && time.Hour == 1)
|
{
|
//端午节
|
Database DC = new Database();
|
string sqlStr = "USE [ECTEST] UPDATE[dbo].[OA_CorporateClients] SET [[JieJiaRiWiHu]] = 'true'";
|
|
try
|
{
|
SqlCommand myCmd = new SqlCommand(sqlStr, DC.Connection);
|
//SqlDataAdapter myDa = new SqlDataAdapter(myCmd);
|
int a = myCmd.ExecuteNonQuery();
|
//myDa.Dispose();
|
|
|
}
|
catch (Exception ee)
|
{
|
new Log4NetAdapter().Log("端午节设置提醒错误 错误:" + ee.Message);
|
|
}
|
finally
|
{
|
if (DC.Connection.State != System.Data.ConnectionState.Closed)
|
DC.Connection.Close();
|
}
|
|
}
|
}
|
|
}
|
|
protected void Application_BeginRequest(Object sender, EventArgs e)
|
{
|
|
}
|
|
void Application_End(object sender, EventArgs e)
|
{
|
// 在应用程序关闭时运行的代码
|
|
}
|
|
void Application_Error(object sender, EventArgs e)
|
{
|
// 在出现未处理的错误时运行的代码
|
|
}
|
|
void Session_Start(object sender, EventArgs e)
|
{
|
// 在新会话启动时运行的代码
|
|
}
|
|
void Session_End(object sender, EventArgs e)
|
{
|
// 在会话结束时运行的代码。
|
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
|
// InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
|
// 或 SQLServer,则不会引发该事件。
|
|
}
|
|
}
|
}
|