软件安全课程设计模版_第1页
软件安全课程设计模版_第2页
软件安全课程设计模版_第3页
软件安全课程设计模版_第4页
软件安全课程设计模版_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、南阳理工学院计算机与信息工程学院课程设计说明书设计题目: 超市进销存管理系统 专 业 计算机科学与技术(信息安全) 班 级 信息安全 学 号 学生姓名 指导教师 目 录1 引言12 需求分析12.1 数据流图22.2 数据字典33 系统设计43.1 系统功能模块划分43.2系统用例图53.3部分系统时序图53.4系统数据库设计63.5 数据库的连接133.6数据库表结构144 系统实现174.1 用户登录174.2 供应商信息194.3 商品进货信息204.4 库存警报224.5 数据库备份235 总结256 参考文献251 引言在国家大力推进信息化建设的宏观背景下,城市网络基础设施及应用水平

2、均已得到了较大的完善和提升。愈来愈多的商贸服务企业意识到了用现代信息技术改造传统经营方式。超市进销存管理系统是超市商品销售及货物管理的主要控制部分,直接影响销售的方便性及管理的规范性。随着信息时代的发展,对效率的要求日益提高,企业经营涉及进、销、存多个环节,涉及商品种类繁多,业务量大,库存管理复杂,使用手工管理已无法胜任,因而软件控制销售和管理已经取代了传统全手工方式。如何采用先进的计算机系统管理进货、库存、销售等诸多环节也已成为趋势及必然。超市具有自身的特点:商品要求一般齐全,进出货关系较为简单,员工人数种类不多;在软件角度看,数据较少,对存储和速度要求不高。但正由于员工较少,使用软件控制成

3、为必须,这就有了对商贸服务业电子商务应用平台的迫切需求。现在一般的超市都采用计算机进行智能化管理,用计算机作为管理工具可以帮助管理员进行更有效、更快捷的超市库存管理工作。超市进销存管理系统是典型的管理信息系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用系统的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库。而对于后者则要求应用系统功能完备、易使用等特点。2 需求分析根据超市经营的实际需要。超市进销存管理系统应包含进货管理、销售管理、库存管理、超市商品信息的维护和管理系统等五部分。(1) 进货管理可以根据销售情况及库存情况,自动制定进货单或者订货单同时可

4、以可对该单实现手动修改、审核、删除、退货等处理,这样可以避免盲目进货造成商品积压。按计划单有选择性地进行自动入库登记。 (2)销售管理包括前台销售管理和后台管理。商品可以通过输入唯一编号、扫描条形码来实现精确输入也可以通过输入商品名称的方式实现商品录入。可以综合查询各种销售明细记录、各地收银员收银记录以及交结账情况等,并可以商品销售报表的打印。(3)库存管理可以查询库存明细记录。包括商品名称、编号、单价、进货日期、过期时间、库存量等信息。系统还可以实现库存预警和库存自动盘点计算避免库存商品积压损失和缺货。(4)超市商品信息的维护可以实现商品的查询、添加、删除、修改。查询包括进货查询、销售查询和

5、库存查询。可以按照商品编号、商品名称、商品类别和进货(销售)日期分别查询,并且可以将查询结果打印输出。有新商品入库时,系统允许管理员添加新商品的记录;当商品出售或产品过期需要清除时,管理员可以删除产品信息。当记录有误时,管理员可以手动修改数据表中的记录。(5)系统管理,包括系统登陆、密码修改和关于系统登录用来验证登录的系统用户的合法性,只有合法的系统用户才能登录系统并且使用系统功能。密码修改用来修改登录系统用户的密码,长时间地使用一个密码可能会使密码不安全。导致整个系统的不安全,因此有必要定期修改密码。关于是用来显示程序的名称、版本、版权,操作系统的登录用户名及系统的可用资源等信息。2.1 数

6、据流图数据流图(DFD-Data Flow Diagram)是描绘系统的逻辑模型,图中没有任何具体的物理元素,只是描绘信息在系统中流动和处理的情况,就是采用图形方式来表示系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程。1、用户数据流图(如图2-1所示)。图2-1 用户数据流图2、管理员数据流图(如图2-2所示)。 图2-2 管理员数据流图2.2 数据字典数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。数据字典的作用是在软件的分析和设计过程中提供关于数据的描述信息。一般说来,数据字典应该由下列四类元素构成:数据元素,数据流,数据存储和数据处理。数据存储是数据

7、结构停留或保存的地方,也是数据流的来源和去向之一。商品信息=商品编码+商品条形码+商品名称+商品类别+商品+数量+商品进 价+商品售价+重量+生产厂家+生产日期+保质期+过期日期+备注商品销售=商品编号+商品名称+出售价格+出售数量+出售日期+出售总额商品库存信息=商品编号+商品名称+商品数量+出售数量+库存数量+过期时间供应商信息=供应商编号+供应商姓名+联系人姓名+联系电话+传真+加入时间+地址+备注员工信息=员工编号+员工姓名+登录ID+_登录密码+员工性别+员工生日+所属部门+员工职位+家庭电话+手机号码+家庭住址进货信息=操作员编号+员工姓名+进货公司名称+库存名称+货物名称+商品数

8、量+进货单价+销售单价+应付金额+实付金额+进货时间+备注商品退货信息=实付金额+退货单价+退货日期+退货数量+退货名称+操作员编号+销售编号+商品编号+库存编号+退货商品编+退货原因+已退款金额 商品销售=实付金额+应付金额+应付金额+销售单价+销售时间+销售数量+商品名称+员工编号+商品编号+库存编号+销售编号+删除标记+备注3 系统设计3.1 系统功能模块划分系统功能模块图如图3-1所示。超市进销存管理系统销售管理进货管理库存管理系统维护信息管理员工信息供应商信息商品进货商品查询商品销售商品退货库存警报库存查询数据备份数据还原图3-1 系统功能模块图3.2系统用例图用例图如下图3-2所示

9、 图3-2 系统用例图3.3部分系统时序图删除时序图如下图3-3所示图3-3 删除时序图登录时序图图3-4 登录时序图3.4系统数据库设计系统业务流程图否是系统登 录是否登录系统主窗体销售管理进货管理库存管理系统维护基本档案图3-5 系统业务流程图3.4.1数据库概念结构设计根据如上的信息可得到实体之间的关系类图如下图所示图3-6 实体的关系类图全局ER图图3-7全局ER图 员工信息实体ER图图3-8员工信息实体ER图 供应商信息实体ER图图3-9供应商信息实体ER图 进货信息实体ER图图3-10进货信息实体ER图 库存信息实体ER图图3-11库存信息实体ER图 商品销售信息实体ER图图3-1

10、2商品销售信息实体ER图商品退货信息实体ER图图3-13商品退货信息实体ER图3.4.2数据库逻辑设计用户用户名密码用户权限入库信息入库编号货物编号单价.货物信息货物编号货物名称.出库信息出库编号货物编号数量.权限系统管理员普通管理员操作员图3-14 数据库逻辑结构图3.4.3定义数据库数据结构供应商信息表字段名数据类型长度主键描述CompanyIDvarchar50是供应商编号CompanyNamenvarchar100否供应商姓名CompanyPhonenvarchar20否联系电话CompanyAddressnvarchar200否地址员工信息表:字段名数据类型长度主键描述EmpIDnv

11、archar20是员工编号EmpNamenvarchar20否员工姓名EmpLoginNamenvarchar20否登录IDEmpLoginPwdnvarchar20否登录密码EmpSexnvarchar4否员工性别EmpDeptnvarchar20否所属部门EmpPostnvarchar20否员工职位EmpPhonenvarchar20否联系电话EmpAddressnvarchar200否家庭住址25进货信息表字段名数据类型长度主键描述GoodsIDnvarchar20是商品编号EmpIdnvarchar20否员工编号JhCompNamenvarchar100否进货公司名称GoodsName

12、nvarchar50否货物名称GoodsNumint4否商品数量GoodsJhPricenvarchar8否进货单价GoodsNoPricenvarchar8否实付金额GoodTimedatetime8否进货时间库存信息表:字段名数据类型长度主键描述KcIDnvarchar50否仓库编号GoodsIDnvarchar50是商品编号KcDeptNamenvarchar20否仓库名称KcGoodsNamenvarchar20否商品名称KcNumint4否库存数量KcAlarmNumint4否警报数量KcTimedatetime8否进货时间KcGoodsPricenvarchar8否进货价格KcEm

13、pnvarchar50否进货人商品销售信息表:字段名数据类型长度主键描述SellIDnvarchar20是销售IDKcIDnvarchar50否库存IDGoodsIDnvarchar20否商品IDEmpIdnvarchar20否员工IDGoodsNamenvarchar50是商品名称SellGoodsNumint4否销售数量SellGoodsTimenvarchar8否销售时间SellPricenvarchar8否销售单价SellHasPaynvarchar8否实付金额商品退货信息表:字段名数据类型长度主键描述ThGoodsIDnvarchar50是退货销售编号KcIDnvarchar50否库

14、存IDGoodsIDnvarchar50否商品IDSellIDnvarchar50是销售IDEmpIdnvarchar20是员工IDThGoodsNamenvarchar50否商品名称ThGoodsNumint4否退货数量ThGoodsTimedatetime8否退货时间ThGoodsPricenvarchar8否退货价格ThGoodsResultnvarchar400否退货原因3.5 数据库的连接using System;using System.Collections.Generic;using System.Text;using System.Data.SqlClient;namespa

15、ce CHEXC.GoodMenhod public class getSqlConnection #region 代码中用到的变量 /string G_Str_ConnectionString = "Data Source=.;Initial Catalog=db_CSManage;Integrated Security=True" string G_Str_ConnectionString ="Data Source=.;AttachDbFilename=E:超市进销存管理系统CHEXCapp_datadb_CSManage.mdf;Integrated Se

16、curity=True" / string G_Str_ConnectionString = "Data Source=.;AttachDbFilename=E:超市进销存管理系统CHEXCapp_datadb_CSManage.mdf;Integrated Security=True;User Instance=True" SqlConnection G_Con; /声明连接对象 #endregion #region 构造函数 / <summary> /构造函数 / </summary> public getSqlConnection()

17、 #endregion #region 连接数据 public SqlConnection GetCon() G_Con = new SqlConnection(G_Str_ConnectionString); G_Con.Open(); return G_Con; #endregion 3.6数据库表结构本系统采用SQL Server 2008建立和维护数据库,系统中共有两个数据库:商城数据库(B2C)和微软实例数据库(aspnetdb)。它们的任务分别为:库存供应商信息、员工信息、商品信息。电子商城数据库包含以下6个表:供应商表(Company)、员工信息表(Empinfo)、进货信息表(

18、JhGoodsInfo)、库存信息表(KcGoods)、销售商品信息表(SellGoods)、退货商品表(ThGoodsInfo)。(1)供应商表(Company)用于记录供应商的基本信息,包括供应商编号、供应商名字、供应商电话、供应商地址等。其中供应商编号为主键。供应商表结构如图3-15所示。图3-15供应商表(2)员工信息表(Empinfo)用于记录员工的信息,包括员工编号、员工名字、员工电话、员工地址等。其中员工编号为主键。员工信息表结构如图3-16所示。图3-16 员工信息表(3)进货信息表(JhGoodsInfo)用于记录进货的基本信息,包括商品编号、商品名字、商品进货价格、销售价格

19、等。其中商品编号为主键。进货信息表结构如图3-17所示。图3-17 进货信息表(4)库存信息表(KcGoods)用于记录商品库存的信息,包括仓库编号、商品编号、库存商品名字、库存数量、库存时间、库存价格等。其中仓库编号为主键。库存信息表结构如图3-18所示。图3-18 库存信息表(5)销售商品信息表(SellGoods)用于记录销售的商品信息,包括销售编号、库存编号、商品编号、商品名字、销售数量、销售时间、销售价格等。其中销售编号为主键。销售商品表结构如图3-19所示。图3-19销售商品表(6)、退货商品表(ThGoodsInfo)用于记录商品退货的类别信息,包括退货商品编号、仓库编号、销售编

20、号、商品编号、商品名字、销售时间、销售价格等。其中退货商品编号为主键。退货商品表结构如图3-20所示。图3-7退货商品表4 系统实现4.1 用户登录用户登陆页面如图4-1所示。如果输入信息有误则会提示错误信息,需要重新输入。图4-1 用户登陆界面主要代码如下: private void TimeInitForm() _tmr_start.Interval = 20; _tmr_end.Interval = 20; _tmr_start.Tick += new EventHandler(_tmr_start_Tick); _tmr_end.Tick += new EventHandler(_tm

21、r_end_Tick); void _tmr_end_Tick(object sender, EventArgs e) if (this.Opacity = 0) _tmr_end.Stop(); Application.Exit(); this.Close(); else this.Location = new Point(this.Location.X + 5, this.Location.Y); this.Opacity = this.Opacity - 0.05; void _tmr_start_Tick(object sender, EventArgs e) if (this.Opa

22、city = 1) _tmr_start.Stop(); else this.Location = new Point(this.Location.X + 1, this.Location.Y); this.Opacity += 0.05; private void frmLogin_FormClosed(object sender, FormClosedEventArgs e) if (e.CloseReason != CloseReason.ApplicationExitCall) _tmr_end.Start(); private void btnOK_Click(object send

23、er, EventArgs e) tb_EmpInfoMenthod tbEmp = new tb_EmpInfoMenthod(); if (txtID.Text = "") MessageBox.Show(用户名不能为空); return; else if (txtPwd.Text = "") MessageBox.Show(密码不能为空); return; else if (tbEmp.tb_EmpInfoFind(txtID.Text, txtPwd.Text, 2) = 1) frmMain frm = new frmMain(txtID.Te

24、xt); frm.Show(); this.Hide(); else MessageBox.Show(账号或密码有误); this.txtPwd.Text = "" 4.2 供应商信息供应商信息展示页面如图4-2所示。图4-2 供应商信息界面主要代码实现如下: public int GetCount() int intReslult = 0; if (intFalg = 1 | intFalg = 2) if (txtCompanyName.Text = "") MessageBox.Show(供应商名称不能为空); return intReslult;

25、 if (txtCompanyPhone.Text = "") MessageBox.Show(联系电话不能为空); return intReslult; if (txtCompanyDirector.Text = "") MessageBox.Show(地址不能为空); return intReslult; if (intFalg != 2) CCompanyID = CompanyMenthod.tb_CustomerID(); else CCompanyID=this.dataGridView10,this.

26、dataGridView1.CurrentCell.RowIndex.Value.ToString(); 4.3 商品进货信息在如图4-3所示的商品进货页面图4-3 商品进货界面主要代码如下: public int getIntCount() int intReslut = 0; if (intFalg = 1) if (txtGoodsID.Text = "") MessageBox.Show(商品编号不能为空); return intReslut; if (txtGoodsName.Text = "") MessageBox.Show(商品名称不能为

27、空); return intReslut; if (txtJhCompName.Text = "") MessageBox.Show(供应商名称不能为空); return intReslut; if (txtEmpId.Text = "") MessageBox.Show(进货人姓名不能为空); return intReslut; if (txtGoodsNum.Text = "") MessageBox.Show(数量不能为空); return intReslut; if (txtGoodsName.Text = "&qu

28、ot;) MessageBox.Show(进货单价不能为空); return intReslut; if (intFalg = 2) if (txtGoodsID.Text = "") MessageBox.Show(商品编号不能为空,选择要修改记录,提示); return intReslut; if (intFalg = 3) if (txtGoodsID.Text = "") MessageBox.Show(商品编号不能为空,选择要删除记录,提示); return intReslut; 4.4 库存警报当商品不足时自动会发警报提示。库存警报页面如图4

29、-4所示。图4-4库存警报界面主要代码如下: private void textBox2_KeyPress(object sender, KeyPressEventArgs e) if (!char.IsDigit(e.KeyChar) MessageBox.Show(请输入数字); e.Handled = true; private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) FillControls(); private void btnAdd_Click(object sender, E

30、ventArgs e) if (txtid.Text = "") MessageBox.Show(请选择商品信息); return; if (txtnum.Text = "") MessageBox.Show(请输入商品警告数量); return; int intResult = tb_GoodMenthd.tb_KcGoodsUpdate(txtid.Text, Convert.ToInt32(txtnum.Text); if (intResult = 1) MessageBox.Show(添加成功); tb_GoodMenthd.tb_ThGoods

31、Find(dataGridView1, 4, kcGood); ClearFill(); else MessageBox.Show(添加失败); ClearFill(); private void btnExit_Click(object sender, EventArgs e) this.Close(); private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) 4.5 数据库备份数据库备份信息页面如图4-5所示。图4-5数据库备份界面主要代码如下: private void

32、 button1_Click(object sender, EventArgs e) try if (txtPath.Text != "" && txtName122.Text != "") getSqlConnection geCon = new getSqlConnection(); SqlConnection con = geCon.GetCon(); string strBacl = "backup database db_CSManage to disk='" + txtPath.Text.Trim() + "" + txtName.Text.Trim() + ".bak'" SqlCommand Cmd = new SqlCommand(strBacl, con); if (Cmd.ExecuteNonQuery() != 0) MessageBox.Show(数据库备份成功提示框) Mes

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论