收藏 分销(赏)

超市管理系统(个人报告).docx

上传人:xrp****65 文档编号:8931247 上传时间:2025-03-08 格式:DOCX 页数:33 大小:1,003.78KB 下载积分:10 金币
下载 相关 举报
超市管理系统(个人报告).docx_第1页
第1页 / 共33页
超市管理系统(个人报告).docx_第2页
第2页 / 共33页


点击查看更多>>
资源描述
软件工程项目实践 大作业 超市管理系统(员工信息管理模块)设计与实现(个人报告) 班级: 20112014 学号: 姓名: 教师: 王 宇 华 成绩: 教师评语: 合计 F1 F3 F5 F6 2 6 5 2 5 4 4                 F7 F9 F10 18 2 2       教师签名: 2013年8月 程序模块名称 模块描述负责人 模块设计负责人 系统登录模块 人事管理模块 销售管理模块 仓库管理模块 进货管理模块 F3、需求分析(组内不重复, 描述多个功能点的需求,至少包含一个详细描述) 数据描述 静态数据 下面列出了六个表的具体静态数据: 1) 用户信息表 此表存放用户信息 字段名 数据类型 长度 id Int 4 主键 username Varchar 50 用户名 userpwd Varchar 50 用户密码 AddTime datetime 8 最后修改时间 email varchar 30 用户邮箱地址 2) 员工档案表 此表存放超市员工的信息 字段名 数据类型 长度 s_id int 4 主键 s_name varchar 50 姓名 s_sex char 10 性别 s_adress varchar 100 住址 s_tel varchar 30 联系电话 s_email varchar 50 邮箱地址 3)超市供应商信息表 字段名 数据类型 长度 Cp_id Int 4 主键 CompanyName Varchar 50 供应商名 CompanyShort Varchar 50 简称 CompanyAddress Varchar 50 公司地址 Postalcode Varchar 50 邮政编码 Tel Varchar 50 联系电话 Fax Varchar 50 传真 Linkman Varchar 50 联系人 Email Varchar 50 邮箱地址 Bank Varchar 50 开户银行 BandAccounts Varchar 50 银行账号 AddTime varchar 50 最后修改时间 3.3数据流图 《超市管理系统》软件的数据流图是比较清晰的,对各功能模块来说都比较有规律。 超市管理员 超市管理系统 数据查询 登录信息 查询结果 顶层数据流图 查询条件 供应商 进货单 入库单 顾客 购买的商品 凭条 基础信息录入 1 商品入库 2 商品销售 3 基础数据 基础信息 库存信息 库存总量 商品进货单 商品入库单 购买的商品 销售凭条 业务查询 4 库存信息 库存总量 查询条件 结果输出 0层数据流图 员工信息录入 1.1 商品信息录入 1.2 供应商信息录入 1.3 库房信息录入 1.4 计量单位录入 1.5 员工名单 计量单位 库房清单 供应商清单 商品清单 管理员信息 商品信息 供应商信息 库房信息 单位信息 超市管理系统0层编号1的1层数据流图 员工信息查询 4.1 进货信息查询 4.2 商品销售信息查询 4.3 管理员信息 商品信息 商品信息 库存信息 显示员工信息 显示进货信息 显示销售信息 超市管理系统0层编号3的1层数据流图 数据字典: 3.4数据字典 1、数据流条目 (1)进货信息=进货单号+供应商号+商品号+进货价+进货数量+进货日期+进货员工 (2)销售信息=销售单号+供应商号+商品编号+销售数量+销售日期 2、文件条目 (1)文件名:职工清单 组成:{职工编号+姓名+性别+联系电话+联系地址+邮箱地址} 组织:按职工编号递增排列 (2)文件名:供货商清单 组成:{供货商号+名称+联系人+联系电话+联系地址+邮政地址+开户银行+邮箱地址+银行帐号+备注} 组织:按供货商编号递增排列 3、加工说明 (1)加工名:1:查询 加工逻辑:根据要查询的库存信息,检索出库存信息明细表 输入流:库存信息查询,发出库存信息请求 输出流:库存信息清单,进货信息请求 (2)加工名:1:更新 根据进货信息或销售信息更新库存信息 输入流:已进货信息,销售信息 输出流:发出库存检索请求 (3)加工名:2:查询 根据要查询的销售信息,检索出销售信息明细表 输入流:销售信息查询 输出流:销售清单,销售单 4功能描述 下面详细描述一下各个功能模块: 1)系统设置 (1) 添加删除用户:只限于管理员操作。管理员可以向里面添加和删除用户信息,也可修改用户密码。 (2) 退出登录:返回到登录界面,重新登录. 3)员工档案管理 实现员工档案的添加、删除、修改、查询的功能 。 性能需求 5.1数据精确度 A.要按照严格的数据格式输入,否则系统不给予响应进行处理。 B.查询时要保证查全率,所有相应域包含查询关键字的记录都应能查到。因为通常有文件的记录会很多,所以本系统采用直接查询。 5.2适应性 满足小型超市使用的需求(记录量控制在1000项内)。 对前面提到的运行环境要求不应存在困难。 6. 运行需求 6.1硬件接口 本软件不需要特定的硬件或硬件接口进行支撑。 6.2软件接口 运行于Windows Xp的操作系统之上。 7.其它要求 1)系统的功能实现情况: 用户可在本系统下实现各种用户要求的功能。 2)系统的安全性: 对于系统的重要数据都有密码保护,具有一定的安全性。 3)系统的容错性: 用户输错数据都有提示信息,具有较好的容错性能。 4)系统的封闭性: 用户的封闭性较好,用户基本上在提示信息下输数据。 F5、概要设计(组内不重复,一个功能或程序模块的概要描述) 2.3.1主要功能结构图: 用户登录 超市管理系统 数据库 账目管理 商品管理 人员管理 员工管理 会员管理 2.4 结构 No 模块名称 功能需求 程序ID 1 员工管理 创建修改删除查询员工信息 EmployeeManage 2 客户管理 创建修改删除查询一般用户和会员信息 CustomerManage 3 用户登录管理 在登录模块中,选择管理员登录或销售员登录 Login 逻辑结构设计 (2)管理员表(主键为管理员编号) Column Name Data Type Width Null 管理员编号 Varchar 20 姓名 Varchar 20 Yes 性别 Char 1 Yes 密码 Varchar 20 出生年月 Date Yes 联系电话 Varchar 20 Yes (3)员工表(主键为员工编号) Column Name Data Type Width Null 员工编号 Varchar 20 姓名 Varchar 20 Yes 性别 Char 1 Yes 密码 Varchar 20 出生年月 Date Yes 联系电话 Varchar 50 Yes (4)供应商表(主键为供应商编号) Column Name Data Type Width Null 供应商编号 Varchar 50 名称 Varchar 50 地址 Varchar 60 Yes 联系电话 Varchar 20 负责人 Varchar 20 Yes (5)会员表(主键为会员编号即memberid) Column Name Data Type Width Null Membered Varchar 30 Name Varchar 20 Yes Sex Char 1 Yes Birthday Date Yes tel Varchar 20 Yes Address Varchar 50 Yes Score Varchar 50 Yes F6、详细设计(组内不重复,包含一个功能或程序模块的详细设计文档) 3.5人事管理模块 在系统开发中,为解决超市人员流动问题,在系统中增添了员工管理子模块,用来对超市的人员进行信息化管理,以此来提高员工的办事效率,节约人力资源。 新员工录入:在超市招进新员工时,对其进行基本信息的存储,对员工信息进行基本的了解。 员工信息维护:当员工信息发生变化,或者是员工离职,换岗对相关信息发生变化时,利用此子模块对其进行信息变更。 (1)职工管理模块用例图,如图3-5-1所示: 图3-5-1 职工信息管理模块用例图 (2)职工管理模块活动图,如图3-5-2所示: 图3-5-2 职工管理模块活动图 (3)职工管理查询时序图,如图3-5-3所示: 图3-5-3职工管理查询时序图 (4)添加新职工时序图,如图3-5-4所示: 图3-5-4 新职工添加时序图 (5)职工信息修改时序图,如图3-5-5所示: 图3-5-5职工信息修改时序图 (6)职工信息删除时序图,如图3-5-6所示: 图3-5-6职工信息删除时序图 F7、代码开发(界面截图,功能操作说明,核心代码截图) 登录界面 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.sql.*" %> <%@page import="java.util.*" %> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>客户关系系统</title> </head> <body background="qw.jpg"> <h1 align="center"><strong> <em>超市客户管理系统 </em></strong></h1> <p align="center">      2013-12-7   20112014</p> <br><br> <center> <form method="get" action="/Third/jsp/login.jsp"> 用户名: <input type="text" name="na"/> <br><br> 密码: <input type="password" name="pa"/> <br><br><br> <input type="submit" value="登录"> </form> </center> <br> <center> <form method="get" action="/Third/jsp/register.jsp"> <input type="submit" value="注册"> </form> <p>             </p> <p>   </p> <p>                                             王云超 郭元绪 张劲达 钟宏屹</p> </center> </body> </html> 新建客户信息 界面设计代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body background="dw2f_129.gif"> <h1 align="center">新建客历 </h1> <form id="form1" name="form1" method="post" action="rg1.jsp"> <label for="Csytle"></label>      客户类型    <label for="Ctype"></label> <select name="Ctype" id="Ctype"> <option value="散客">散客</option> <option value="会员">会员</option> <option value="VIP">VIP</option> <option value="大客户">大客户</option> </select>         客户ID    <label for="Cid"></label> <input name="Cid" type="text" id="Cid" size="15" />      客户姓名 <label for="Cname"></label> <input name="Cname" type="text" id="Cname" size="15" />      客户e-mail    <label for="Cmail"></label> <input name="Cmail" type="text" id="Cmail" size="15" /> <p>     客户性别       <select name="Csex" size="1" id="select"> <option value="男">男</option> <option value="女">女</option> </select>            手机 <label for="Ctel"></label> <input name="Ctel" type="text" id="Ctel" size="15" />     证件类型 <label for="Cardtype"></label> <select name="Cardtype" id="Cardtype"> <option value="身份证">身份证</option> <option value="军官证">军官证</option> </select>          证件号码    <label for="Cardnum"></label> <input name="Cardnum" type="text" id="Cardnum" size="15" /> </p> <p>     职业  <label for="Cjob"></label> <input name="Cjob" type="text" id="Cjob" size="15" />          </p> <p>     生日  <label for="Cbirh"></label> <input name="Cbirth" type="text" id="Cbirth" size="15" /> </p> <p>     备注:                                喜欢.忌讳</p> <label for="Cremark"></label>         <textarea name="Cremark" id="Cremark" cols="45" rows="12"></textarea> <label for="Clike"></label>               <textarea name="Clike" id="Clike" cols="45" rows="12"></textarea>     <p>                         </p> <p>                         </p> <p>                                        <input type="submit" name="bt3" id="bt3" value="确认" />     <input type="submit" name="bt4" id="bt4" value="提交" />           </p> <p>                                                               欢迎使用本系统          </p> </form> <p>&nbsp;</p> <p>&nbsp;</p> <p> <label for="x1"></label> </p> <a href="./test1.jsp">主页</a> </body> </html> 数据库连接代码 <%@ page language="java" contentType="text/html; " pageEncoding="UTF-8"%> <%@page import="java.sql.*" %> <%@page import="java.util.*" %> <%@page import="java.io.*" %> <%request.setCharacterEncoding("UTF-8");%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Insert title here</title> </head> <body background="dw2f_70.gif"> <% Connection conn=null; Statement stmt=null; Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); conn= DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=CMS","sa","101"); String Ctype=request.getParameter("Ctype"); String Cid=request.getParameter("Cid"); String Cname=request.getParameter("Cname"); String Cmail=request.getParameter("Cmail"); String Ctel=request.getParameter("Ctel"); String Csex=request.getParameter("Csex"); String Cjob=request.getParameter("Cjob"); String Clike=request.getParameter("Clike"); String Cremark=request.getParameter("Cremark"); String Cbirth=request.getParameter("Cbirth"); String Cardtype=request.getParameter("Cardtype"); String Cardnum=request.getParameter("Cardnum"); String sql="INSERT INTO Client_info(Ctype,Cid,Cname,Cmail,Ctel,Csex,Cjob,Cremark,Clike,Cbirth,Cardtype,Cardnum) VALUES ('"+Ctype+"','"+Cid+"','"+Cname+"','"+Cmail+"','"+Ctel+"','"+Csex+"','"+Cjob+"','"+Cremark+"','"+Clike+"','"+Cbirth+"','"+Cardtype+"','"+Cardnum+"')"; stmt = (Statement) conn.createStatement(); int count = stmt.executeUpdate(sql); if(count>0) out.println("恭喜您,新客历建立成功"); else out.println("失败"); if(stmt!=null) stmt.close(); if(conn!=null) conn.close(); %> <br> <a href="./test1.jsp">返回主页</a> <br><br><br><br><br><br><br><br><br> <center> <form method="get" action="/Third/jsp/rg.jsp"> <input type="submit" value="继续添加"> </form> <br> </center> </body> </html> 界面设计代码 <%@ page language="java" contentType="text/html; " pageEncoding="UTF-8"%> <%@page import="java.sql.*" %> <%@page import="java.util.*" %> <%@page import="java.io.*" %> <%request.setCharacterEncoding("UTF-8");%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body background="dw2f_132.jpg"> <h1 align="center">条件查询 </h1> <form action="query1.jsp" name="requirement" method="post"> <p> <font size="4px"><br><br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                         <input type="checkbox" name="re" value="Cname" />按客户姓名查询 <input type="text" name="Cname"/> <br><br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                         <input type="checkbox" name="re" value="Ctype" /> 按客户类型查询 <input type="text" name="Ctype"/> <br><br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                         <input type="checkbox" name="re" value="Csex" /> 按客户性别查询 <select name="Csex" size="1" id="select"> <option value="男">男</option> <option value="女">女</option> </select> </font> <DIV class=login-btn> <p><font size="4px">                                             </font></p> <p><font size="4px">                                 <input type="submit" value="查询" /> <input type="reset" value="清除" /> <input type="button" value="返回" onClick="javascript:location.href=&apos;cx.jsp&apos;"> </font></p> </DIV> </form> </body> </body> </html> 数据库连接代码 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.sql.*" %> <%@page import="java.util.*" %> <%@page import="java.io.*" %> <%request.setCharacterEncoding("UTF-8");%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body background="dw2f_166.gif"> <br><br><font size="4px">您选择的查询条件为:</font> <% String[] re = request.getParameterValues("re"); String sqlplus=""; if(re != null) { for(int i = 0;i<re.length;i++) { request.setCharacterEncoding("UTF-8"); if(re[i].equals("Cname")) { out.println(" 会员ID为 "+(String)request.getParameter("Cname")); sqlplus+=" AND Cname="+"'"+(String)request.getParameter("Cname")+"'"; } if(re[i].equals("Ctype")) { out.println(" 会员姓名为 "+(String)request.getParameter("Ctype")); sqlplus+=" AND Ctype="+"'"+(String)request.getParameter("Ctype")+"'"; } if(re[i].equals("Csex")) { out.println(" 会员性别为 "+(String)request.getParameter("Csex")); sqlplus+="AND Csex="+"'"+(String)request.getParameter("Csex")+"'"; } } } %> 的客户。 <br><br><font size="4px">查询结果如下:</font><br><br> <% String url = "jdbc:sqlserver://localhost:1433;DatabaseName=CMS"; String userName = "sa"; String password = "101"; Connection conn = null; Statement stm = null; try { Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); }catch(Exception e) { out.println("加载驱动器类出现异常"); } try { conn = DriverManager.getConnection(url, userName, password); //创建statement语句 stm = conn.createStatement(); out.println(sqlplus); String sql = "select * from Client_info where Cid=Cid "+sqlplus; out.println(sql); //使用executeQuery执行SQL查询语句 ResultSet rs = stm.executeQuery(sql); %> <table border="1" cellspacing="0" cellpadding="6"> <tr> <td width="200" align="center"><font color="#8B4513">客户id</font></td> <td width="120" align="center"><font color="#8B4513">客户类别</font></td> <td width="253" align="center"><font color="#8B4513">客户姓名</font></td> <td width="253" align="center"><font color="#8B4513">客户性别</font></td> <td width="253" align="center"><font color="#8B4513">客户邮箱</font></td> <td width="120" align="cen
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 应用文书 > 报告/总结

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服