如何实现劳动合同到期提前自动提醒功能.

时间:2022-02-10 05:06:48
小弟人事系统想实现 员工劳动合同到期前一个月, 自动发EMAIL提醒人事部门.  不知道如何下手, 感觉用SQL 发EMAIL比较麻烦. 希望能在ASP.NET中实现.  劳动合同表中有"员工工号","合同开始日期","合同结束日期".  希望有高手指点.谢谢.

22 个解决方案

#1


你先在数据库里面查处劳动合同到期时间,然后跟当前服务器时间对比,如果相差一个月以内,你就发份邮件到人事提醒

#2


先从数据库里面读取到期时间。然后和当前时间进行对比。如果时间小于一个月的话。就发送邮件咯!

#3


程序中设置一定时器Timer
每天凌晨访问一次数据库,查询符合条件的数据时行发邮件操作

或用sql作业事先收集好数据放入数据仓库内

#4


在SQL里添加作业勒,比较当前时间和员工合同到期时间。

如果相差一个月就发送邮件提醒

#5


路过....

#6


写一个Windows Service定期检查发送提示邮件

#7


写个webservice.貌似可以实现.没写过...

#8


windows服务定时检查,或TIMER
还有ajax心跳实现数据发送

#9


sql的数据库的触发器能够调用WEB中c#的类库的:
http://blog.csdn.net/cejay/archive/2010/06/20/5682262.aspx

#10


sql的数据库的触发器能够调用WEB中c#的类库的:
http://blog.csdn.net/cejay/archive/2010/06/20/5682262.aspx

#11


写个console程序,放到Windows的计划任务中,执行每天晚上查询一遍,然后发送邮件即可

#12



select 员工工号 from 劳动合同表 where datediff(m,开始日期,结束日期)=1;


then

dosomething

#13


貌似我同事正在做这样的一个功能,不过要做的是开机弹窗提醒

#14


拜托。
这么冷的内容页不指定用timer、任务调度之类的功能作吧。
多浪费数据库性能。

每天登陆的时候顺便执行一个检查的存储过程就得了,符合就添加提醒email到表里面。

#15


这么冷的内容页不指定用timer、任务调度之类的功能作吧。
================================
这么冷的内容不值得用timer、任务调度之类的功能作吧。

#16


提醒的工作交给ADO.NET查询执行,发送EMAIL的用网络编程的知识来做,C#都可以写!
就是一条SQL语句,发送Email的工作就不要在数据库里操作了!

#17


引用 15 楼 winner2050 的回复:
这么冷的内容页不指定用timer、任务调度之类的功能作吧。
================================
这么冷的内容不值得用timer、任务调度之类的功能作吧。


数据库压力大?

#18


学习……

#19


最好做一个windows服务每天检查一次即可。

#20


直接开机运行个C#C/S程序,把窗口隐藏,窗体加载时查一次数据库,有过期的就发邮件,完成后直接注消程序。把你程序写好后 .exe文件放在启动项里就行了

#21


上面说得差不多了

#22


数据库里写一个job就可以了

现在SQL也能发邮件,直接在服务器上发,呵呵

#1


你先在数据库里面查处劳动合同到期时间,然后跟当前服务器时间对比,如果相差一个月以内,你就发份邮件到人事提醒

#2


先从数据库里面读取到期时间。然后和当前时间进行对比。如果时间小于一个月的话。就发送邮件咯!

#3


程序中设置一定时器Timer
每天凌晨访问一次数据库,查询符合条件的数据时行发邮件操作

或用sql作业事先收集好数据放入数据仓库内

#4


在SQL里添加作业勒,比较当前时间和员工合同到期时间。

如果相差一个月就发送邮件提醒

#5


路过....

#6


写一个Windows Service定期检查发送提示邮件

#7


写个webservice.貌似可以实现.没写过...

#8


windows服务定时检查,或TIMER
还有ajax心跳实现数据发送

#9


sql的数据库的触发器能够调用WEB中c#的类库的:
http://blog.csdn.net/cejay/archive/2010/06/20/5682262.aspx

#10


sql的数据库的触发器能够调用WEB中c#的类库的:
http://blog.csdn.net/cejay/archive/2010/06/20/5682262.aspx

#11


写个console程序,放到Windows的计划任务中,执行每天晚上查询一遍,然后发送邮件即可

#12



select 员工工号 from 劳动合同表 where datediff(m,开始日期,结束日期)=1;


then

dosomething

#13


貌似我同事正在做这样的一个功能,不过要做的是开机弹窗提醒

#14


拜托。
这么冷的内容页不指定用timer、任务调度之类的功能作吧。
多浪费数据库性能。

每天登陆的时候顺便执行一个检查的存储过程就得了,符合就添加提醒email到表里面。

#15


这么冷的内容页不指定用timer、任务调度之类的功能作吧。
================================
这么冷的内容不值得用timer、任务调度之类的功能作吧。

#16


提醒的工作交给ADO.NET查询执行,发送EMAIL的用网络编程的知识来做,C#都可以写!
就是一条SQL语句,发送Email的工作就不要在数据库里操作了!

#17


引用 15 楼 winner2050 的回复:
这么冷的内容页不指定用timer、任务调度之类的功能作吧。
================================
这么冷的内容不值得用timer、任务调度之类的功能作吧。


数据库压力大?

#18


学习……

#19


最好做一个windows服务每天检查一次即可。

#20


直接开机运行个C#C/S程序,把窗口隐藏,窗体加载时查一次数据库,有过期的就发邮件,完成后直接注消程序。把你程序写好后 .exe文件放在启动项里就行了

#21


上面说得差不多了

#22


数据库里写一个job就可以了

现在SQL也能发邮件,直接在服务器上发,呵呵