调度器图书催还用例介绍

需求描述:

基于平台的图书管理,调度器每周一至五运行(不考虑节日、调休),每天运行一次。借出超过一个月的,自动发邮件催还。

根据需求整理设计思路如下:

1、添加报表任务,通过自定义任务周期接口实现周一到周五执行。

为了方便重复使用,自定义任务周期可配置星期几执行,可多选,通过配置页面选择,最后拼接好参数传给扩展类,例如1,2,3,4,5,6,7

2、将weekDayCycle.jsp放到\mis2\schedule\taskmanage目录下。

3、将WeekDayCycle.java编译好后放入运行环境中。

4、修改WEB-INF\zhuce\task_cycle.jsp,添加<option value=”com.runqianapp.schedule.cycle.WeekDayCycle” linkValue=”weekDayCycle.jsp”> 每周多次任务 </option>

5、对象文件选择 图书催还.raq上传至服务器。

6、输出文档MHT

7、以Email方式推送mht到指定邮件地址,此处邮件地址是动态的参数,收件人地址编写@email。(注:email参数下面介绍在任务参数中添加sql类型参数)

8、任务参数中设计sql类型的参数两个,一个bookNum为图书编号,作为报表所需参数;另一个Email是邮件地址,用作推送邮件地址。该sql查询一个月未归还的图书记录以及借书人的邮件地址。

sql如下:

SELECT ROS_LIBRARYLIST.BOOKNUMBER,T_USER.USER_EMAIL

FROM ROS_LIBRARYLIST,T_USER

WHERE ROS_LIBRARYLIST.BOOKSTATUS =0

and MONTHS_BETWEEN (sysdate,ROS_LIBRARYLIST.LENDINGDATE) >1

and T_USER.USER_NAME = ROS_LIBRARYLIST.BOOKBORROWER

总结,每一个未归还的书籍生成一个实例,将生成的报表结果(为方便查看,采用mhtml)推送到借书人的邮箱。

本文标签: