三、 应用逻辑实现
1、应用概述
系统管理员,各个部门主管及员工从同样的登陆页面分别进入前后台系统。系统管理员完成后台员工信息管理,部门信息管理,各个部门评测标准信息管理等。前台用户包括各部门主管和普通员工。部门主管进入评测主页面后,可以选择本部门的任一员工,选择工作当月为其打分;普通员工只能给自己当月评测。员工在主管为自己本月工作情况评测前可多次修改自己以前的评测结果,一旦主管为自己评测过就无法修改了;主管只有在员工评测之后才能为其打分,主管可为员工多次评定。
2、重要服务器和页面控件的使用
我们使用了相当多的基本控件,比如Button,TextBox,HtmlSelect,DropDownList,隐藏控件等。由于篇幅有限,现只介绍其中起到关键作用的控件。
(1) HtmlTable控件
。
前台评测主页面如下所示(源代码1):
该页面在实现中的逻辑并不复杂,我们以文字叙述如下:遍历bigRules表中每条评测分类,根据当前细则分类ID从smallRules取出对应的若干条评测细则,同时判断当前员工当月是否已经有过成绩,如果有,则取出,放入”黄色”方框中,便于参考。进入该页面后,还需要判断是”谁”在给”谁”评测,如果是主管或者员工的自测,则将评测结果存入数据库时
testPersonID,testedPersonID都填入同一ID,否则testPersonID存放主管ID,testedPersonID存放被测人ID.
该页面主要使用了HtmlTable控件。使用 HtmlTable控件对 HTML <table> 元素进行编程。在后台页面IDE设计环境中,该控件不含任何内容。在从数据库中取出数据后,我们可以体会到该控件的强大功能。HtmlTable控件由一个表Table的 Rows 集合中存储的行(由 HtmlTableRow 对象表示)组成。每行均由存储在行的 Cells 集合中的单元格(由 HtmlTableCell 对象表示)组成。在实际编程中,首先需要填充若干个HtmlTableCell内容,一次加入到HtmlTableRow对象中,再将该HtmlTableRow对象加入到HtmlTable对象中。
(2) DataGrid
.后台管理员维护评测标准主页面如下图所示:
DataGrid控件与HtmlTable控件不同在于DataGrid控件是Web服务器端控件。以html语言书写和以服务器端控件的实现在思维方式上已经有了很大的不同,对于html语言而言,只是一种标识;而对服务器端html控件而言,却已演变成为一段程序,一个对象。
它不仅可以方便,快捷的完成数据库中数据的绑定显示,还可以在设计时生成包含“编辑”、“更新”、“取消”按钮的列、包含自定义按钮的列以及模板列。在后台管理页面中我们使用了该控件的编辑数据功能,点击每一小项的Edit按钮可以更新该项内容。点击Update 控件就可完成数据库内容的更新。
另外,在其他情况下也可使用DataGrid控件,例如,评测结果页面如下所示:(源代码2)
从该控件在不同情况下的使用我们体会到该控件的强大功能。这也正是Asp.net编程构架给用户提供的切实利益。
四、结束语 笔者在一家开发超市软件的公司进行毕业设计时为公司开发了这个员工评测中心。尽管由于时间短促,未能做出功能更多,更丰富的页面,但是也确实体会到了Asp.net的种种优势。同样在数据库的设计和使用上也积累了一定的经验,希望能对大家有一定的启迪。相信使用该技术同样可以为公司做出功能更加全面的办公自动化产品。