ASP.NET2.0 (ASP:Active Server Page) 是微软的。NET框架更新版本。NET2.0中的一部分,是一种重要的,流行的动态WEB开发技术。使用ASP.NET 2.0进行开发,最常用的,也是最方便的,最重要的工具,莫过于微软自身提供的Visual STudio 了,最新版本为Visual Studio 2010,但是2008及2005版本仍然有很多公司及开发人员在使用。使用这种IDE的最大好处就是方便,大大的提高了生产效率。当然仅仅使用NOte PAD也可以编出像样的东西来,但是应该没有开发人员使用那种简单低效的方法进行开发。
为了实现派车单的流转,本系统采取对数据库表中关键字判断的方式实现流程的控制,如一个长途派车单;申请人填写的内容只是长途车辆使用表中的部分字段;如果表中该记录"部门审核结果"字段为空就说明部门领导还没有审核,这时如部门主任登陆就可以看到该派车单,然后需要对该派车单审批。审批完后,"部门审批人"和"部门审批结果"字段就不为空,但是因为总经部还未审核,所以"总经部审核结果"字段为空。根据这个判断条件,可以显示出总经部要审核的派车单,总经部主任登陆后可以看到该派车单,然后进行审批,当"部门审核结果"和"总经部审核结果"都不为空时,就说明派车单审核流程已完成,接下来就需要申请人在用车后填写公里数和费用,这个派车单才算结束。
派车单流转的过程中,还涉及车辆的状态问题,在该系统中,部门派车是用车者自己选择部门的车辆出车;而总经部派车是总经部主任选择公司的车辆出车。派车单的派车类型如果是部门派车,在申请人选择本部门车辆的同时,该车辆的状态就由"空闲"变为"出车",而总经部派车是在总经部主任分配了公司的某个车辆出车后该车辆的状态才变为"出车".车辆的状态一旦变为"出车"就不能再被派遣,只有在申请人还车时填写了公里数和费用后车辆的状态才变为"空闲".
4.3 车辆养护和车辆信息
这两个模块在逻辑功能上相对较简单,通过司机用户进入相应的界面可以实现信息的录入,特殊用户、高级用户可以对车辆信息和车辆养护情况了解和查看。
4.4 统计报表
统计报表分为按月统计和年度统计两部分,它们的实现主要采用分为SQL语句中的SUM函数通过限定一定的时间范围从而得出想要的结果。以下就是年度统计页面中用到的SQL语句。
string YearSum="SELECT 车辆, 月份, sum(汽油费合计) AS 总汽油费, sum(公里合计) AS 总公里数"
+ " FROM (SELECT 车辆, month(出车时间) AS 月份, sum(汽油费) AS 汽油费合计, sum(止公里数-起公里数) AS 公里合计"
+ " FROM CTCLSYB"
+ " WHERE 车辆=′" + DropDownList1.SelectedValue + "′and year(出车时间)=′"+DropDownList2.SelectedValue+"′"
+ "GROUP BY month(出车时间), 车辆"
+ "UNION select 车辆,month(出车时间) as 月份,sum(汽油费) AS 汽油费合计, sum(止公里数-起公里数) AS 公里合计"
+ "FROM JTCLSYB"
+ "WHERE 车辆=′"+DropDownList1.SelectedValue+"′and year(出车时间)=′"+DropDownList2.SelectedValue+"′"
+ "group BY month(出车时间), 车辆) AS A"
+ "GROUP BY 月份, 车辆"); DataTable dt = DataLayer.Select("SELECT 车辆, 月份, sum(汽油费合计) AS 总汽油费, sum(公里合计) AS 总公里数"
+ " FROM (SELECT 车辆, month(出车时间) AS 月份, sum(汽油费) AS 汽油费合计, sum(止公里数-起公里数) AS 公里合计"
+ " FROM CTCLSYB"
+ " WHERE 车辆=′" + DropDownList1.SelectedValue + "′and year(出车时间)=′" + DropDownList2.SelectedValue + "′"
+ " GROUP BY month(出车时间), 车辆"
+ " UNION select 车辆, month(出车时间) as月份,sum(汽油费) AS 汽油费合计, sum(止公里数-起公里数) AS 公里合计"
+ " FROM JTCLSYB"
+ " WHERE 车辆=′"+DropDownList1.SelectedValue + "′and year(出车时间)=′"+DropDownList2.SelectedValue+"'"
+ " group BY month(出车时间), 车辆) AS A"
+ " GROUP BY 月份, 车辆");
4.5 系统管理
系统管理主要负责对数据库中所有表的管理,包括修改和删除、增加用户、备份和恢复数据库等。
车辆管理系统目前已经在公司使用,取得了良好的效果。B/S模式下,客户端较简单,便于应用程序的维护;集中式的数据管理,使数据库的维护更加方便,而且使得信息统计更为全面准确。