个人日程管理系统.docx
- 文档编号:10052230
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:54
- 大小:1.06MB
个人日程管理系统.docx
《个人日程管理系统.docx》由会员分享,可在线阅读,更多相关《个人日程管理系统.docx(54页珍藏版)》请在冰豆网上搜索。
个人日程管理系统
PowerDesigner15系统分析与建模实战
课程设计报告
题目:
个人日程管理
院系:
专业:
班级:
学号:
姓名:
指导老师:
2013年11月10日
1项目.......................................................................................
1.1项目背景………………………………………………
1.2项目目标…..........................................................................
2系统需求分析.......................................................................
2.1用户需求.............................................................................
2.2功能分析.............................................................................
2.3开发环境.........................................................................
3系统设计..............................................................................
3.1设计目标...............................................................................
3.2系统角色...............................................................................
3.3系统流程图...........................................................................
4数据库设计...........................................................................
4.1ER图和表结构设计...............................................................
4.2创建数据库表代码···········································
4.3存储过程计...................................................................
4.4创建视图······························································
5系统实现.....................................................................................
5.1模块设计和实现..........................................................
6总结............................................................................................
参考文献.....................................................................................
1项目
1.1项目背景
随着计算机技术的飞速发展,计算机应用的迅速推广,计算机及技术给人们的日常生活、工作、学习带来了十分巨大的影响,计算机改变了人们的生活,工作的方式。
而在使用计算机时有一些好的、实用的软件,将会给使用者提供非常便利的环境。
因此我们采用C#和SQLSever技术开发一个实用的个人日程管理系统。
1.2项目目标
1.通过关于本系统管理系统的实现,是个人的日程管理更加完善。
2. 可以编辑日程事务,了解行程。
3.可以提醒备忘事项,大大提高了办事效率。
2系统分析
2.1用户需求
(1)功能需求:
本系统完成对自己昨天的日程进行记录,今天、明天的日程安排以及查看修改工作。
(2)权限需求:
用户管理员拥有最高的权限,可以对系统中所有的数据进行查看、添加、修改和删除等操作;普通用户只可以对自己的行程进行查看、修改、删除和删除等操作。
(3)系统安全性需求:
一是用户进入系统时必须进行口令校验;二是连接数据库是使用windows身份验证。
2.2功能需求
(1)用户登录、用户注册:
用户通过登录的方式进行口令校验安全进入在线日程管理系统:
用户注册是用户为进入该系统时将个人信息提交到数据库中。
(2)人员管理:
系统管理员可以对用户进行修改,其中对用户密码进行修改,对一些长期没有用的人员进行删除操作,以减少系统压力。
(3)个人日程管理:
其中使用TabControl控件,对某一天或某段时间的日程进行查看,和对某个日程的地点、开始时间、重要性及联系电话进行修改,更新等操作。
2.3开发环境
操作系统:
Windows7
开发软件:
MicrosoftVisualStudio
数据库:
SQLServer2008
3系统设计
3.1设计目标
个人日程管理系统是对已完成的工作进行记录,对未完成的工作进行有效、合理的安排,提高工作效率。
3.2系统角色
本系统的角色主要包括有:
系统管理员(拥有整个系统的访问权限,可以对本系统的所有数据进行查看、添加、修改、删除的操作),普通用户(拥有次级管理权限,可以进行本人日程管理)。
3.3系统流程图
4数据库设计
4.1ER图和表结构设计
(1)ER图
(2)表结构设计
根据系统功能设计的要求以及功能模块的划分,对于系统用户信息数据库,可以列出以下数据项和数据结构:
表4-1用户信息表(tbl_user)
字段名
字段类型
长度
主/外键
字段值约束
对应中文名
username
varchar
20
主键
Notnull
用户姓名
userpassword
varchar
20
Notnull
用户密码
userpurview
varchar
10
Notnull
用户权限
usere_mail
varchar
50
邮箱
usersex
char
4
性别
question
varchar
50
问题
answer
varchar
50
答案
表4-2所有日程表(tbl_message)
字段名
字段类型
长度
主/外键
字段值约束
对应中文名
username
varchar
20
外键
Notnull
用户姓名
messagename
varchar
20
Notnull
事件标题
content
varchar
50
主键
Notnull
内容
location
varchar
50
Notnull
地点
relatedphone
bigint
12
Notnull
联系电话
begintime
datetime
10
Notnull
开始时间
createtime
datetime
10
创建时间
priority
varchar
20
Notnull
重要性
endtime
datetime
10
结束时间
remarks
varchar
100
备注
创建PDM
4.2创建数据库表代码
创建tbl_user
altertable"tbl_message"
dropconstraintFK_TBL_MESS_REFERENCE_TBL_USER;
droptable"tbl_user"cascadeconstraints;
/*==============================================================*/
/*Table:
"tbl_user"*/
/*==============================================================*/
createtable"tbl_user"
(
"username"char(20)notnull,
"userpassword"char(20),
"userpurview"char(10),
"usere_mail"char(50),
"usersex"char(4),
"question"dec(50),
"answer"binary(50),
constraintPK_TBL_USERprimarykey("username")
);
创建tbl_message
altertable"tbl_message"
dropconstraintFK_TBL_MESS_REFERENCE_TBL_USER;
droptable"tbl_message"cascadeconstraints;
/*==============================================================*/
/*Table:
"tbl_message"*/
/*==============================================================*/
createtable"tbl_message"
(
"username"char(20),
"messagename"char(20),
"content"char(50)notnull,
"location"char(50),
"relatedphone"bigint(12),
"begintime"datetime(10),
"createtime"datetime(10),
"priority"char(20),
"endtime"datetime(10),
"remarks"char(100),
constraintPK_TBL_MESSAGEprimarykey("content")
);
altertable"tbl_message"
addconstraintFK_TBL_MESS_REFERENCE_TBL_USERforeignkey("username")
references"tbl_user"("username");
4.3存储过程设计
用来删除某个用户:
CREATEPROCEDUREDeleteusername
@Usernamevarchar(20)
AS
delete
fromtbl_user
whereusername=@Userna
4.4创建视图
dropview"VIEW_message";
/*==============================================================*/
/*View:
"VIEW_message"*/
/*==============================================================*/
createorreplaceview"VIEW_message"as
select
usernameas用户名,
MESSAGENAMEas标题,
contentas内容,
locationas地点,
priorityas重要性,
begintimeas开始时间,
relatedphoneas联系电话,
createtimeas创建时间
fromtbl_message
withreadonly;
5.1登录模块的设计和实现
5.1.1用户登录模块的窗体设计
1.用户身份验证
输入:
用户名和密码,选择权限
处理:
(1)用户登录窗体启动。
(2)输入用户名和密码。
(3)从用户信息表中检查是否有相应的用户名和密码。
(4)如果用户名或密码为空或者错误,进行提示。
如果忘记密码可以单击“忘记密码?
”字样,进入找回密码窗体。
(5)如果输入的用户名和密码正确,则允许该用户进入系统。
(6)进入主控制平台。
输出:
主控制平台。
2.用户登录模块的窗体设计,如下图所示:
主要代码如下:
(1)登录按钮代码:
privatevoidbt_OK_Click(objectsender,EventArgse)
{
try
{
DataSetds=newDataSet();
databasedb=newdatabase();
stringsqlStr="selectuserPassword,userPurviewfromtbl_userwhereusername='"+text_name.Text.Trim()+"'";
ds=db.GetDataFromDB(sqlStr);
if(ds.Tables[0].Rows[0].ItemArray[0].ToString()==text_password.Text.Trim()&&ds.Tables[0].Rows[0].ItemArray[1].ToString()==combo_register.Text.Trim())
{
fmainob_FrmMain=newfmain();
database.userInfo[0]=text_name.Text.Trim();
database.userInfo[1]=ds.Tables[0].Rows[0].ItemArray[1].ToString();
ob_FrmMain.Show();
this.Hide();
}
else
{
MessageBox.Show("用户名或密码或权限错误,请重新输入!
","提示");
text_name.Text="";
text_password.Text="";
text_name.Focus();
}
}
catch(Exceptionex)
{
MessageBox.Show("用户名或密码错误,请重新输入!
"+ex.Message,"提示");
}
}
(2)取消按钮代码:
privatevoidbt_close_Click(objectsender,EventArgse)
{
Application.Exit();
}
(3)注册按钮代码:
privatevoidbt_register_Click(objectsender,EventArgse)
{
fregisterobj_fregister=newfregister();
obj_fregister.iform=this;
obj_fregister.Show();
this.Hide();
}
(4)按回车直接跳入下一个编辑框代码:
privatevoidtext_name_KeyDown(objectsender,KeyEventArgse)
{
if(e.KeyCode==Keys.Enter)
{
text_password.Focus();
}
}
privatevoidtext_password_KeyDown(objectsender,KeyEventArgse)
{
if(e.KeyCode==Keys.Enter)
{
combo_register.Focus();
}
}
privatevoidcombo_register_KeyDown(objectsender,KeyEventArgse)
{
if(e.KeyCode==Keys.Enter)
{
bt_OK_Click(sender,e);
}
}
publicvoidGetusername(stringname)
{
text_name.Text=name;
}
5.2找回密码设计界面如下:
(1)确定按钮代码如下:
privatevoidbOK_Click(objectsender,EventArgse)
{
try
{
DataSetds=newDataSet();
databasedb=newdatabase();
stringsqlStr="selectuserPassword,answerfromtbl_userwhereusername='"+tuser.Text.Trim()+"'";
ds=db.GetDataFromDB(sqlStr);
database.user[0]=ds.Tables[0].Rows[0].ItemArray[0].ToString();
database.user[1]=ds.Tables[0].Rows[0].ItemArray[1].ToString();
if(database.user[1].Trim()==tanswer.Text.Trim())
{
MessageBox.Show("您的密码是:
\n"+database.user[0]+"","提示");
floginoomain=newflogin();
oomain.Show();
this.Close();
}
else
{
MessageBox.Show("你输入的问题或答案有错,请重新输入!
!
","提示");
tanswer.Text="";
tquestion.Focus();
}
}
catch(Exceptionex)
{
MessageBox.Show("问题或答案错误,请重新输入!
"+ex.Message,"提示");
}
}
(2)显示问题按钮代码:
privatevoidbshow_Click(objectsender,EventArgse)
{
DataSetds=newDataSet();
databasedb=newdatabase();
stringsqlStr="selectquestionfromtbl_userwhereusername='"+tuser.Text.Trim()+"'";
ds=db.GetDataFromDB(sqlStr);
database.user1[0]=ds.Tables[0].Rows[0].ItemArray[0].ToString();
tquestion.Text=database.user1[0];
}
5.3用户注册界面设置如下图:
(1)检测用户名是否可用按钮代码:
privatevoidbt_check_Click(objectsender,EventArgse)
{
stringconnStr="DataSource=(local);InitialCatalog=schedule;IntegratedSecurity=True";
SqlConnectiondConnection=newSqlConnection(connStr);
dConnection.Open();
SqlCommandmycom=newSqlCommand();
mycom.CommandType=CommandType.Text;
stringcomstr="selectusernamefromtbl_userwhereusername='"+text_name.Text.Trim()+"'";
mycom.CommandText=comstr;
mycom.Connection=dConnection;
SqlDataReadermyreader=mycom.ExecuteReader();
boolisture=myreader.Read();
if(text_name.Text=="")
{
MessageBox.Show("请输入用户名!
","提示");
}
elseif(isture==false)
{
MessageBox.Show("用户名可用!
请继续填写!
","注册信息");
text_password.Focus();
}
else
{
MessageBox.Show("该用户名已存在,请重新填写用户名!
");
text_name.Text="";
text_name.Focus();
}
}
(2)检测用户名、密码是否为空和两次输入的密码是否一致的代码:
privateboolCheckEmpty()
{
boolresult=true;
if(text_name.Text.Trim()==string.Empty)
{
label1.Visible=true;
result=false;
}
else
{
label1.Visible=false;
}
if(text_password.Text.Trim()==string.Empty)
{
label8.Visible=true;
result=false;
}
else
{
label8.Visible=false;
}
if(text_repassword.Text.Trim()==string.Empty)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 个人 日程 管理 系统