java课程设计报告mini人事管理系统.docx
- 文档编号:29921238
- 上传时间:2023-08-03
- 格式:DOCX
- 页数:17
- 大小:37.80KB
java课程设计报告mini人事管理系统.docx
《java课程设计报告mini人事管理系统.docx》由会员分享,可在线阅读,更多相关《java课程设计报告mini人事管理系统.docx(17页珍藏版)》请在冰豆网上搜索。
java课程设计报告mini人事管理系统
JAVA程序设计课程设计报告
课题:
mini人事管理系统
姓名:
学号:
同组姓名:
专业班级:
指导教师:
设计时间:
评阅意见:
评定成绩:
指导老师签名:
年月
日
1、系统描述1
1.前言1
2.开发系统的功能介绍1
2、分析与设计2
1.功能模块划分2
2.数据库结构描述2
3.各个模块实现方法描述3
4.测试数据及期望结果5
3、源代码5
1.主页面设计5
2.记录添加界面的开发设计12
3.上班登记子系统开发设计14
4.下班登记子系统开发设计16
5.信息统计页面的设计开发18
4、系统测试22
五、总结25
1.实验心得25
2.参考文献26
、系统描述
1.前言
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对人事信息进行管理,具有着手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高人事理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
因此,开发这样一套管理软件成为很有必要的事情。
目前,无论是机关、事业单位、还是企业单位,人事管理对于组织生存与长远发展所具备的重要性都已经有了明确的认识,而人事管理水平的提升不仅需要高素质的管理人员,而且也需要信息化工具进行辅助
在现代化的企业管理中,人事管理系统有着十分重要的作用,然而,用大型软件系统来于小型的企事业单位,不啻于“杀鸡用牛刀”,因此小型的的软件对于这种单位自然有十分重要作用。
2、开发系统的功能介绍
(1)上班登记子系统上班登记子系统主要对所有员工的上班信息进行登记,包括员工的工号、员工的姓名、员工的上班时间和相应的备注信息,并且还要能够删除错误的员工上班时间信息的记录
(2)下班登记子系统下班登记子系统主要对所有员工的下班信息进行登记,包括员工的工号、员工的姓名、员工的下班时间和相应的备注信息,并且还要能够删除错误的员工下班时间信息的记录。
(3)请假登记子系统请假登记子系统主要对所有员工的请假信息进行登记,包括员工的工号、员工的姓名、员工的请假时间和相应的备注信息,并且还要能够删除错误的员工请假时间信息的记录。
(4)信息统计子系统
信息统计系统主要对所有员工的上班时间信息、下班时间信息、请假时
间信息进行统计,包括员工的工号、员工的姓名、员工的上班时间、员工的下班时间、员工的请假时间和相应的备注信息,并且还可以删除错误的员工时间信息
的记录。
(5)记录添加子系统
记录添加子系统的主要作用是在数据库中添加员工工号、员工姓名、相应的时间和备注。
本组共有三人一起完成本次的课程设计任务,组长是李海霞,组员有李丹和周露,组内分工为:
李丹负责上班系统的开发,周露负责下班系统的开发,李海霞负责请假系统的开发以及统计信息系统的开发,然后再将每人完成的开发系统总结到一块。
大家一起研究错误出在哪里,该怎么改正这些错误。
1.功能模块划分
本系统分为如下的几大模块:
Mini人事管理系统
上班登记
子系统
下班登记
子系统
请假登记
子系统
信息统计
子系统
退出系统
2.数据库结构描述在这个MINI开发系统中,选用mysql作为系统服务数据库,这是因为mysql功
能强大,操作简便,应用较广。
数据库方面只做了一张表,根据功能不同,在每
个子系统里面读取的数据部分不同。
设计的表如表一:
表
列名
数据类型
可否允空
长度
工号
数值型
否
50
姓名
字符型
否
50
上班时间
日期型
否
30
下班时间
日期型
否
30
请假时间
日期型
是
30
备注
字符型
是
50
3.各个模块实现方法描述
1)上班登记模块描述(负责人:
李丹)
上班登记子系统主要包括一个上班信息统计界面和一个上班信息添加界面。
上班信息统计界面是一个表格,每一行就是一个员工的相关信息。
如果某条记录不符合要求,可以将此条记录删除。
上班信息添加界面主要是员工工号、员工姓名、相应时间和相关备注信息。
可以根据信息添加界面上的系统时间指示来填入相应的时间。
其流程图为:
上班登记系统
2)下班登记模块描述(负责人:
周露)
下班登记子系统主要对所有员工的下班信息进行登记,包括员工的工号、员工的
姓名、员工的下班时间和相应的备注信息,并且还要能够删除错误的员工下班时间信息的记录。
下班信息添加界面主要是员工工号、员工姓名、相应时间和相关备注信息。
可以根据信息添加界面上的系统时间指示填入相应的时间。
其流程图为:
3)请假登记模块描述(负责人:
李海霞)
请假登记子系统主要对所有员工的请假信息进行登记,包括员工的工号、员工的姓名、员工的请假时间和相应的备注信息,并且还要能够删除错误的员工请假时间信息的记录。
在这个下班信息添加界面中,主要是读取员工的ID、员工的姓名、员工的请假
时间以及相关的描述信息,并将这些信息写入到数据库中。
其流程图为:
4)信息统计模块描述(负责人:
李海霞)
信息统计系统主要对所有员工的上班时间信息、下班时间信息、请假时间信息进行统计,包括员工的工号、员工的姓名、员工的上班时间、员工的下班时间、员工的请假时间和相应的备注信息,并且还可以删除错误的员工时间信息的记录。
信息统计子系统主要是一个信息统计界面。
信息统计界面是一个表格,每一行就是一个员工的相关信息。
如果觉得某些记录不符合要求,还可以将此条记录删除。
在此界面,可以看到所有员工的上下班时间及其请假时间。
4.测试数据及期望结果这个阶段的工作主要是实际运行人事管理系统应用程序,进入人事管理系统登录界面,
在前一阶段,虽然也作了性能预测,但是仅仅做了性能估计,且在估计过程中,做了许多简化和假设,忽略了许多次要因素,因而估计是粗糙的,并可能失真。
在试运行阶段,必须进行实际测量和评价,测试数据尽可能覆盖现实世界的各种情况。
如果实际测试结果不符合设计目标,则需返回物理设计阶段,修改参数。
有时也许还需要返回初始阶段。
期望结果:
比方说,员工A3:
00来上班,点击上班登记,手动添加上班记录。
下班亦然。
在统计模块中可以自动统计并显示出每个员工每天上下班,请假的全部记录。
三、源代码
1.主页面的设计开发packagemanpowersystem;import.*;
import.*;
importclassMainFrameextendsJFrame{
privateImageIconfmImage;etBackground(newColor(210,138,177));
();
(true);
("Mini人事管理系统");
(new
MainFrame_this_windowAdapter(this));().setLayout(xYLayout1);
(newColor(212,158,217));
(new"DialogInput",1,16));
("上班登记");
(new
MainFrame_jOnWorkButton_actionAdapter(this));
(new
MainFrame_jOnWorkButton_hierarchyBoundsAdapter(this));
(newColor(212,158,217));
(new"DialogInput",1,16));
("下班登记");
(newMainFrame_jOffWorkButton_actionAdapter(this));
(new
MainFrame_jOffWorkButton_ancestorAdapter(this));
(newColor(212,158,217));
(new"DialogInput",1,16));
("请假登记");
(newMainFrame_jLeaveWorkButton_actionAdapter(this));
(new
MainFrame_jLeaveWorkButton_ancestorAdapter(this));
(newColor(212,158,217));
(new"DialogInput",1,16));
("统计情况");
(newMainFrame_jStaticButton_actionAdapter(this));
(new
MainFrame_jStaticButton_ancestorAdapter(this));
(newColor(212,158,217));
(new"DialogInput",1,16));
("退出系统");
(newMainFrame_jExitButton_actionAdapter(this));
(new
MainFrame_jExitButton_ancestorAdapter(this));
().add(jTitleButton,newXYConstraints(0,0,358,409));
().add(jOnWorkButton,newXYConstraints(393,35,115,45));().add(jOffWorkButton,
newXYConstraints(393,109,115,45));
().add(jLeaveWorkButton,
newXYConstraints(393,184,115,45));
().add(jStaticButton,
newXYConstraints(393,258,115,45));
().add(jExitButton,
newXYConstraints(393,332,115,45));(false);}voidthis_windowClosed(WindowEvente){(0);}
voidjOnWorkButton_ancestorMoved(HierarchyEvente){}voidjOffWorkButton_ancestorMoved(AncestorEvente){}voidjLeaveWorkButton_ancestorMoved(AncestorEvente){}voidjStaticButton_ancestorMoved(AncestorEvente){}voidjExitButton_ancestorMoved(AncestorEvente){}voidjExitButton_actionPerformed(ActionEvente){(0);
}录添加界面的开发设计packagemanpowersystem;
import.*;
import.*;
import.*;
import.*;importclassRecordItem{privateStringstrEmployeeID;privateStringstrEmployeeName;privateStringstrOnWorkTime;
privateStringstrOffWorkTime;privateStringstrLeaveWorkTime;privateStringstrDescribe;
publicRecordItem(){strEmployeeID=newString("");strEmployeeName=newString("");strOnWorkTime=newString("");strOffWorkTime=newString("");strLeaveWorkTime=newString("");strDescribe=newString("");}publicvoidSetOnworkItem(StringstrEmployeeID,StringstrEmployeeName,StringstrOnWorkTime,StringstrDescribe){
=strEmployeeID;
=strEmployeeName;
=strOnWorkTime;
=strDescribe;}
publicvoidSetOffworkItem(StringstrEmployeeID,StringstrEmployeeName,
StringstrOffWorkTime,StringstrDescribe){
=strEmployeeID;
=strEmployeeName;
=strOffWorkTime;
=strDescribe;}
publicvoidSetLeaveworkItem(StringstrEmployeeID,StringstrEmployeeName,
StringstrLeaveWorkTime,StringstrDescribe){
=strEmployeeID;
=strEmployeeName;
=strLeaveWorkTime;
=strDescribe;}
publicStringGetEmployeeID(){
returnstrEmployeeID;}
publicStringGetEmployeeName(){
returnstrEmployeeName;}
publicStringGetOnWorkTime(){
returnstrOnWorkTime;}
publicStringGetOffWorkTime(){
returnstrOffWorkTime;}
publicStringGetLeaveWorkTime(){
returnstrLeaveWorkTime;}
publicStringGetDescribe(){
returnstrDescribe;}
publicvoidSetEmployeeID(StringstrEmployeeID){
=strEmployeeID;}
publicvoidSetEmployeeName(StringstrEmployeeName){=strEmployeeName;}
publicvoidSetOnWorkTime(StringstrOnWorkTime){
=strOnWorkTime;}
publicvoidSetOffWorkTime(StringstrOffWorkTime){
=strOffWorkTime;}
publicvoidSetLeaveWorkTime(StringstrLeaveWorkTime){=strLeaveWorkTime;}
publicvoidSetDescribe(StringstrDescribe){
=strDescribe;}}
3.上班登记子系统开发设计packagemanpowersystem;import.*;
import.*;
import.*;import.*;import.*;
importclassOnWorkPanelextendsTablePanel{
String[]arrField={"工号","姓名","上班时间","备注"};
publicOnWorkPanel(){
tableModel=newDefaultTableModel(arrData,arrField);jRecordTable=newJTable(tableModel);
().add(jRecordTable,null);
UpdateRecord();dd(jRecordTable,null);intRow=();
if(intRow==-1)return;
try{((intRow,0).toString());}catch(Exceptione){();}UpdateRecord();dd(jRecordTable,null);
try{RecordItem[]result=newRecordItem[100];for(intj=0;j<100;j++)result[j]=newRecordItem();
result=();
for(inti=0;i<;i++){
Objectnewdata[]={result[i].GetEmployeeID(),result[i].GetEmployeeName(),result[i].GetOnWorkTime(),result[i].GetDescribe()};
StringstrTmp=result[i].GetOnWorkTime();
if(().length()==0)continue;
(newdata);}}catch(Exceptione){
();}}}
publicclassOnWorkRecordPaneextendsRecordPane{
publicOnWorkRecordPane(){}
publicvoidRestoreRecord(){StringstrTmp=();
if().length()==0){
();return;}((),
(),
(),
());try{
(item);}
catch(Exceptione){();}
();}}
4.下班登记子系统开发设计packagemanpowersystem;
import.*;
import.*;
import.*;
import.*;
import.*;
importclassOffWorkPanelextendsTablePanel{
String[]arrField={"工号","姓名","下班时间","备注"};
publicOffWorkPanel(){
tableModel=newDefaultTableModel(arrData,arrField);jRecordTable=newJTable(tableModel);
().add(jRecordTable,null);
UpdateRecord();dd(jRecordTable,null);intRow=();
if(intRow==-1)return;try{((intRow,0).toString());}catch(Exceptione){();}
UpdateRecord();dd(jRecordTable,null);try{
RecordItem[]result=newRecordItem[100];for(intj=0;j<100;j++)result[j]=newRecordItem();
result=();
for(inti=0;i<;i++){Objectnewdata[]={result[i].GetEmployeeID(),result[i].GetEmployeeName(),result[i].GetOffWorkTime(),result[i].GetDescribe()};
StringstrTmp=result[i].GetOffWorkTime();if((strTmp==null)||().length()==0))continue;
(newdata);}}catch(Exceptione){();}}}
publicclassOffWorkRecordPaneextendsRecordPane{publicOffWorkRecordPane(){}
publicvoidRestoreRecord(){StringstrTmp=();
if(().length()==0){();return;}((),(),
(),
());
try{(item);}
catch(Exceptione){
();}
();}}
5.信息统计页面的设计开发packagemanpowersystem;import.*;
import.*;
import.*;
publicclassClockextendsJPanelimplementsRunnable{booleankeepRunning=true;
intlastxs=0,lastys=0,lastxm=0,lastym=0,lastxh=0,lastyh=0;
Datedummy=newDate();
Stringlastdate=();
StringmyName;
publicClock(StringinName){myName=newString(inName);}publicvoidplotpoints(intx0,inty0,intx,inty,Graphicsg){(x0+x,y0+y,x0+x,y0+y);
(x0+y,y0+x,x0+y,y0+x);
(x0+y,y0-x,x0+y,y0-x);
(x0+x,y0-y,x0+x,y0-y);
(x0-x,y0-y,x0-x,y0-y);
(x0-y,y0-x,x0-y,y0-x);
(x0-y,y0+x,x0-y,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 课程设计 报告 mini 人事管理系统