社区管理系统的设计与实现.docx

上传人:暗伤 文档编号:79811686 上传时间:2023-03-21 格式:DOCX 页数:34 大小:712.17KB
返回 下载 相关 举报
社区管理系统的设计与实现.docx_第1页
第1页 / 共34页
社区管理系统的设计与实现.docx_第2页
第2页 / 共34页
点击查看更多>>
资源描述

《社区管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《社区管理系统的设计与实现.docx(34页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、-目录第一章 开发背景4第二章 功能描述5第三章 业务流程分析6第四章 数据流程分析74.1 数据流程图74.2 数据字典7第五章 概念模型设计9第六章 逻辑模型设计和优化10第七章 物理设计和实施11第八章 系统测试14第九章 课程设计心得体会31参考文献32-第一章 开发背景随着信息技术的飞速发展,特别是网络和数据库技术的发展,计算机已经成为当今处理信息的主要工具。数据库技术是计算机应用技术中的一个重要组成部分,对于大量的数据,使用数据库来存储管理将比通过文件来存储管理更高效。数据库技术在经过几代变革以后,出现了以关系数据库产品为主流的数据库时代。人们对于现实中的各种事物的管理已经越来越依

2、靠计算机进行智能化管理,而不是靠手工输入进行统计管理。其次,当代社会,随着社会、科技、文化和经济的发展,特别是计算机网络技术和通信技术的 大发 展,人们在随时随地,都可以知道远在千里的信息。但是,现在许多居民小区的信息并没有在网上公布,如果,远在千里之外的人要了解这个居民小区的情况,则很困难。因此,在这种状况下, 提供一种网络社区服务与管理系统对一个社区进行管理,使任何人在任何时候任何地点,都可以了 解到小区的信息,并且使人们可以在这个平台上进行交流是势在必行。第二章 功能描述社区管理部门希望借助社区管理系统实现以下功能:(1) 基本情况管理包括社区概况、居民档案管理等;(2) 社区服务管理提

3、供居民健康档案,社区文体、志愿者信息管理和下岗职工管理(包括下岗人员档案、上岗培训记录和生活保证金发放等)功能;(3) 民政工作管理提供低保管理、残疾人管理、社区团体管理等功能;(4) 综合治理包括治安管理和纠纷调解记录管(5) 系统维护用户管理、系统设置、更改密码等功能。第三章 业务流程分析先根据系统要求实现的功能进行基本分析,社区管理系统分为四个管理子系统,分别基本信息服务管理、社区服务管理子系统、民政工作管理管理和综合治理,然后找出系统实现的顺序,逐步进行分析,最终分析得出业务流程图,业务流程图如图:下岗资服务居民社区培训低保资料居民资料发保障金下岗工人残疾人图 3-1 业务流程图第四章

4、 数据流程分析4.1 、数据流程图居民档案查询条件残疾人管理社居民信息下岗职工区社区管理系统近期工作计划治安管理居统计条件纠纷调解统计结果委查询结果低保管理会志愿者管理活动管理根据系统需求分析,得出社区管理系统第 0 层数据流程图,社区工作人员录入居民信息,社区工作计划,年总目标等信息,系统存储居民基本情况等信息,社区主任可以查询任一居民的信息和居民参加文体活动等等,并且可以统计入某一居民参加活动的次数,并以此来鉴定优秀市民。4.2 、数据字典图 4-1 数据流程图(1) 数据流的描述数据流编号:S001数据流名称: 用户信息简述:描述用户个人基本信息数据流来源:普通用户、管理员数据流去向:用

5、户信息判断数据流组成: 编号+姓名+身份等数据流量:600/天高峰流量:1000/天数据流编号: S002数据流名称: 管理员管理简述:管理员修改居民信息数据流来源:居民信息判断数据流去向:居民数据流组成:编号+姓名+身份等数据流量:100/天高峰流量:500/天(2) 处理逻辑的描述处理逻辑编号:P001处理逻辑名称:居民信息判断简述:判断居民信息的合法性输入的数据流:档案信息处理描述: 根据居民提供的档案信息,验证居民信息,验证通过则继续下移处理查看社区内信息,验证不通过则返回给居民信息指明为非法居民。输出的数据流: D001 社区信息、D002 无效提示信息处理频率: 10 次/天处理逻

6、辑编号:P002处理逻辑名称:社区查询简述:查询居民所要查找的社区信息输入的数据流:D001 社区信息处理描述:根据居民提供的档案信息,到社区系统中查找是否有相关社区信息,有则进行查阅处理,如没有则返回居民无所查信息。输出的数据流: D001 社区信息+D003 无所查信息处理频率: 1000 次/天(3) 数据存储的描述 数据存储编号:F001数据存储名称:居民信息简述:居民的基本信息数据存储组成:身份证+姓名+志愿者+健康状况关键字:身份证号相关联的处理:P001数据存储编号:F002数据存储名称:社区存储信息简述:保存社区信息数据存储组成:居民档案+社区文化+社区概况+志愿者信息+民政信

7、息关键字:相关联的处理:P002,P003,P005(4) 外部实体的描述外部实体编号:S001 外部实体名称:居民简述:查询社区信息的人输入的数据流:D002,D003输出的数据流:D001第五章 概念模型设计概念模型图:店烹且孜疾窃饿 -I罕 !竺吝恳令应 l凳,环状况砬Hert坛r_1 O,n0.11ld,.;j加1 午, 女作活功内喜A1OO lA 吐 ule 10 生 _:,_ !竺1中 n1i l臼 1 叶 lDId.n o 伈 1 pies组扫督瑁 甡过达疾A夕 佐正己竺!竺人吐 wlc_12I拻庆等ftI店nli 巳 1 pb茂丰纠钢H区冷况仕区名许A10廿区的号 军 !过生仕

8、笆文化A100D庙 nbher_1 节 P廿间D灶过节兵A1OO r”畔竺 UNDE 伈 竺如图 1 午:图 5-1 概念模型图第六章 逻辑模型设计和优化将概念模型转化逻辑模型,如图 6-1 所示。皿监竺厉符k_-iI|_lt il112J 寻民炽l|烙虾牡丹 t Und却四击 酗单匹望即7d眼12下肉轩 I和1沁氐3 啦Undeined; 逝工作纣号 int匀 臼 fk究 样 攸 i 啦 担老觅含oh!.J印) 畴 优 况 oh 引 2FK_ 肝| 烙训 刊内容啦 计 1000舫心 r 剢lFK觅 皮肚 睬队负免A_ 哇巨FK_ 睬 见 归 咂 f钮活动叩d翋归啦1000)泣Inbute 1

9、0 血垄I 蚁 qint勾 白 竺工作闷号 Irt己g己寸k:图 6-1 逻辑模型图廿贮符饥旺 钵咋 rl1l罕监牢牡坟伈 cf131r1a oa 第七章 物理设计和实施7.1 创建居民基本信息表居民基本信息表的结构如表 1 所示。表 1 居民基本信息表列名数据类型长度容许空身份证号char20not null工作编号int4not null残疾等级int4null志愿者char20null健康状况char2null姓名char10null创建居民基本信息表的SQL 语句如下: create table 居民(身份证号char(20)not null,工作编号intnot null,残疾等级i

10、ntnull,志愿者char(20)null,健康状况char(2)null,姓名char(10)null, constraint PK_居民 primary key nonclustered (工作编号)7.2 创建下岗培训基本信息表下岗培训基本信息表的结构如表 2 所示。表 2 下岗培训基本信息表列名数据类型长度容许空培训类型号int4not null内容char1000null意向char50null创建下岗培训基本信息表的SQL 语句如下: create table 下岗培训 (培训类型号intnot null,内容char(1000)null,意向char(50)null, cons

11、traint PK_下岗培训 primary key nonclustered (培训类型号)7.3 创建培训信息表培训信息表的结构如表 3 所示。表 3 培训信息表列名数据类型长度容许空身份证号int4not null培训时间int4not null时间datetime8null 创建培训信息表的SQL 语句如下:create table 培训 (身份证号intnot null,培训类型号intnot null,时间datetimenull, constraint PK_培训 primary key (身份证号, 培训类型号)7.4 创建文体活动信息表文体活动信息表的结构如表 4 所示。表

12、4 文体活动信息表列名数据类型长度容许空时间datetime8null内容char1000null活动代号int4not null工作编号int4null创建文体活动信息表的SQL 语句如下: create table 文体活动 (时间datetimenull,内容char(1000)null,活动代号intnot null,工作编号intnull, constraint PK_文体活动 primary key nonclustered (活动代号)7.5 创建残疾人信息表残疾人信息表的结构如表 5 所示。表 5 残疾人信息表列名数据类型长度容许空残疾证号int4not null工作编号int

13、4null保障金int4null残疾等级int4null创建残疾人信息表的SQL 语句如下: create table 残疾人 (残疾证号intnot null,工作编号intnull,保障金intnull,残疾等级intnull, constraint PK_残疾人 primary key nonclustered (残疾证号)7.6 创建民事纠纷基本信息表民事纠纷基本信息表的结构如表 6 所示。表 6 民事纠纷基本信息表列名数据类型长度容许空时间datetime8null处理结果char100null-事务编号int4not null工作编号int4null创建民事纠纷基本信息表的SQL

14、语句如下: create table 民事纠纷 (时间datetimenull,处理结果char(100)null,事务编号intnot null,工作编号intnull, constraint PK_民事纠纷 primary key nonclustered (事务编号)7.7 创建社区概况信息表社区概况信息表的结构如表 7 所示。表 7 社区概况信息表列名数据类型长度容许空社区名称char10null社区编号int4not null社区文化char1000null创建社区概况信息表的SQL 语句如下: create table 社区概况 (社区名称char(10)null,社区编号intn

15、ot null,社区文化char(1000)null, constraint PK_社区概况 primary key nonclustered (社区编号)7.8 创建普通用户表普通用户表的结构如表 8 所示。表 8 普通用户表列名数据类型长度容许空登录名 char(10)10not null, 身份证号 char(10)10not null, 密码char(10)10not null,创建普通用户表的SQL 语句如下: create table 普通用户 (登录名char(10)not null,身份证号char(10)not null,密码char(10)not null, constra

16、int PK_普通用户 primary key nonclustered (登录名)7.9 创建管理员用户表管理员用户表的结构如表 9 所示。表 9 管理员用户表列名数据类型长度容许空登录名 char(10)10not null, 身份证号 char(10)10not null,-密码char(10)10not null, 创建管理员用户表的SQL 语句如下:create table 管理员用户 (登录名char(10)not null,身份证号char(10)not null,密码char(10)not null, constraint PK_管理员用户 primary key nonclu

17、stered (登录名)第八章 系统测试8.1 登录界面-登录界面如图 8-1 所示。对应代码:图 8-1 登陆界面private void btnLogin_Click(object sender, EventArgs e)tryif (txtUserName.Text = )/判断用户是否输入了用户名elseMessageBox.Show(用户名不能为空);if (txtPwd.Text = )MessageBox.Show(密码不能为空);/判断用户是否输密码 else SqlConnection con = DBCon.createCon();/创建数据库连接con.Open();/S

18、qlCommand cmd = new SqlCommand(select count(*) from 普 通 用 户where 登录名= + txtUserName.Text + and 密码= + txtPwd.Text + , con);/int i = Convert.ToInt32(cmd.ExecuteScalar();/获取返回值/if (i 0)-/if (cmbLogin.Text = )MessageBox.Show(请选择登录界面); cmbLogin.Focus();return;else if (cmbLogin.Text = 普通用户使用界面) SqlCommand

19、 cmd = new SqlCommand(select count(*) from 普通用户where 登录名= + txtUserName.Text + and 密码= + txtPwd.Text + , con);int i = Convert.ToInt32(cmd.ExecuteScalar(); if (i 0)frmMain main = new frmMain(); main.adminname = txtUserName.Text; t = txtUserName.Text;main.admintime = DateTime.Now.ToShortDateString();

20、main.Show();this.Hide();elseMessageBox.Show(用户名密码错误!);elseSqlCommand cmd = new SqlCommand(select count(*) from 管理员用户 where 登录名= + txtUserName.Text + and 密码= + txtPwd.Text + , con);int i = Convert.ToInt32(cmd.ExecuteScalar();if (i 0)ptMain ptmain = new ptMain(); ptmain.adminname = txtUserName.Text; p

21、tmain.Show();this.Hide();else MessageBox.Show(用户名密码错误!);-/ /else/ MessageBox.Show(用户名或者密码错误!);/弹出提示/ catch (Exception ex) MessageBox.Show(ex.ToString(); private void btnCancel_Click(object sender, EventArgs e)this.Close();8.2 系统主界面的实现系统主界面如图 8-2 所示。对应代码:图 8-2 系统主界面private void ptMain_Load(object sen

22、der, EventArgs e)toolStripStatusLabel2.Text = adminname; toolStripStatusLabel5.Text = DateTime.Now.ToString();private bool checkChildFrmExist(string childFrmName)-foreach (Form childFrm in this.MdiChildren)if (childFrm.Name = childFrmName) /用子窗体的Name进行判断,如果存在则将他激活if (childFrm.WindowState = FormWindo

23、wState.Minimized) childFrm.WindowState = FormWindowState.Normal;childFrm.Activate(); return true;return false;private void toolStripMenuItem1_Click(object sender, EventArgs e)if (MessageBox.Show(确定退出本系统吗?, 提示, MessageBoxButtons.OKCancel, MessageBoxIcon.Asterisk) = DialogResult.OK)this.Close();privat

24、e void 居民档案ToolStripMenuItem_Click(object sender, EventArgs e)/通过窗体名称查询该窗体是否已经存在,如存在则显示,否则就新创建一个if (this.checkChildFrmExist(居民档案) = true)return;居民档案 readerinfo = new 居民档案(); readerinfo.MdiParent = this; readerinfo.Show();private void 居民信息添加删除ToolStripMenuItem_Click(object sender, EventArgs e)/通过窗体名称

25、查询该窗体是否已经存在,如存在则显示,否则就新创建一个if (this.checkChildFrmExist(居民信息添加或删除) = true)return;居民信息添加或删除 bookinfo = new 居民信息添加或删除(); bookinfo.MdiParent = this;bookinfo.Show();private void 社会文体信息修改ToolStripMenuItem_Click(object sender, EventArgs e)-/通过窗体名称查询该窗体是否已经存在,如存在则显示,否则就新创建一个if (this.checkChildFrmExist(社会文体信

26、息修改) = true)return;社会文体信息修改 bookoverdate = new 社会文体信息修改(); bookoverdate.MdiParent = this;bookoverdate.Show();private void 民事纠纷信息修改ToolStripMenuItem_Click(object sender, EventArgs e)if (this.checkChildFrmExist(民事纠纷信息修改) = true)return;民事纠纷信息修改 bookoverdate = new 民事纠纷信息修改(); bookoverdate.MdiParent = th

27、is;bookoverdate.Show();private void 居民信息添加ToolStripMenuItem_Click(object sender, EventArgs e)居民信息添加或删除 f = new 居民信息添加或删除(); f.MdiParent = this;f.Show();private void 社区文体ToolStripMenuItem_Click(object sender, EventArgs e)社会文体信息修改 f = new 社会文体信息修改(); f.MdiParent = this;f.Show();private void 民事纠纷ToolSt

28、ripMenuItem_Click(object sender, EventArgs e)民事纠纷信息修改 f = new 民事纠纷信息修改(); f.MdiParent = this;f.Show();private void 修改密码ToolStripMenuItem_Click(object sender, EventArgs e)管理员修改密码 f = new 管理员修改密码(); f.name = adminname;f.MdiParent = this; f.Show();-private void 退出系统ToolStripMenuItem_Click(object sender

29、, EventArgs e)if (MessageBox.Show(确定退出本系统吗?, 提示, MessageBoxButtons.OKCancel, MessageBoxIcon.Asterisk) = DialogResult.OK)this.Close();/退出系统8.3 居民信息居民信息界面如图 8-3 所示。对应代码:图 8-3 居民信息界面private void 查询_Click(object sender, EventArgs e)(txt1.Text = & txt2.Text = )return;if (txt1.Text != & txt2.Text = ) SqlC

30、onnection con = DBCon.createCon();SqlDataAdapter sda = new SqlDataAdapter(select 身份证号 as 身份证号,工作编号 as工作编号,残疾等级 as 残疾等级,志愿者 as 志愿者 ,健康状况 as 健康状况 ,姓名 as 姓名from 居民档案where 身份证号 like + txt1.Text + %, con);-DataSet ds = new DataSet(); sda.Fill(ds, table);this.dataGridView1.DataSource = ds.Tables0.DefaultV

31、iew;try/有时找不到匹配的记录,有异常show();catch (Exception ex)/对异常进行处理MessageBox.Show(没有找到匹配的记录); return;if (txt1.Text = & txt2.Text != ) SqlConnection con = DBCon.createCon();SqlDataAdapter sda = new SqlDataAdapter(select 身份证号 as 身份证号,工作编号 as工作编号,残疾等级 as 残疾等级,志愿者 as 志愿者 ,健康状况 as 健康状况 ,姓名 as 姓名from 居民档案where 姓名

32、like + txt2.Text + %, con);DataSet ds = new DataSet(); sda.Fill(ds, table);this.dataGridView1.DataSource = ds.Tables0.DefaultView;try/有时找不到匹配的记录,有异常show();catch (Exception ex)/对异常进行处理MessageBox.Show(没有找到匹配的记录); return;if (txt1.Text != & txt2.Text != )/当读者 ID 不为空,姓名不为空时, 进行查找相应匹配的记录SqlConnection con

33、= DBCon.createCon();SqlDataAdapter sda = new SqlDataAdapter(select 身份证号 as 身份证号,工作编号 as工作编号,残疾等级 as 残疾等级,志愿者 as 志愿者 ,健康状况 as 健康状况 ,姓名 as 姓名from 居民档案where 身份证号 like + txt1.Text + % and 姓名 like + txt2.Text + %, con); DataSet ds = new DataSet();sda.Fill(ds, table);this.dataGridView1.DataSource = ds.Tab

34、les0.DefaultView;-try/有时找不到匹配的记录,有异常show();catch (Exception ex)/对异常进行处理MessageBox.Show(没有找到匹配的记录); return;private void 退出_Click(object sender, EventArgs e)if (MessageBox.Show(确定退出读者信息维护吗?, 提示, MessageBoxButtons.OKCancel, MessageBoxIcon.Asterisk) = DialogResult.OK)this.Close(); 8.4 下岗职工查询下岗职工查询界面如图 8

35、-4 所示。图 8-4 下岗职工界面对应代码:private void show()-trythis.textBox1.Text = this.dataGridView1.CurrentRow.Cells0.Value.ToString(); this.textBox2.Text = this.dataGridView1.CurrentRow.Cells1.Value.ToString(); this.textBox3.Text = this.dataGridView1.CurrentRow.Cells2.Value.ToString();catch (Exception ex)Message

36、Box.Show(不能对列进行排序);private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)show();private void 居民档案_Load(object sender, EventArgs e)SqlConnection con = DBCon.createCon();SqlDataAdapter sda = new SqlDataAdapter(select 身份证号 as 身份证号,培训内容 as 培训内容,保障金as 保障金 FROM 下岗职工 , con)

37、;DataSet ds = new DataSet();sda.Fill(ds, 下岗职工);this.dataGridView1.DataSource = ds.Tables0.DefaultView; show();private void button1_Click(object sender, EventArgs e)if (txt1.Text = & txt2.Text = )return;if (txt1.Text != & txt2.Text = )/当读者 ID 不为空,姓名为空时, 进行查找相应匹配的记录SqlConnection con = DBCon.createCon(

38、);SqlDataAdapter sda = new SqlDataAdapter(select 身份证号 as 身份证号,培训内容 as培训内容,保障金as 保障金 FROM 下岗职工 where 身份证号 like + txt1.Text + %, con); DataSet ds = new DataSet();sda.Fill(ds, table);-this.dataGridView1.DataSource = ds.Tables0.DefaultView;try/有时找不到匹配的记录,有异常show();catch (Exception ex)/对异常进行处理MessageBox.

39、Show(没有找到匹配的记录); return;if (txt1.Text = & txt2.Text != )/当读者 ID 为空,姓名不为空时, 进行查找相应匹配的记录SqlConnection con = DBCon.createCon();SqlDataAdapter sda = new SqlDataAdapter(select 身份证号 as 身份证号,培训内容 as培训内容,保障金as 保障金 FROM 下岗职工 where 培训内容 like + txt2.Text + %, con); DataSet ds = new DataSet();sda.Fill(ds, table

40、);this.dataGridView1.DataSource = ds.Tables0.DefaultView;try/有时找不到匹配的记录,有异常show();catch (Exception ex)/对异常进行处理MessageBox.Show(没有找到匹配的记录); return;if (txt1.Text != & txt2.Text != )/当读者 ID 不为空,姓名不为空时, 进行查找相应匹配的记录SqlConnection con = DBCon.createCon();SqlDataAdapter sda = new SqlDataAdapter(select 身份证号 as 身份证号,培训内容 as 培训内容,保障金 as 保障金 FROM 下岗职工 where 身份证号 like + txt1.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁