库存管理服装库存管理系统.docx
- 文档编号:12406839
- 上传时间:2023-04-18
- 格式:DOCX
- 页数:26
- 大小:25.84KB
库存管理服装库存管理系统.docx
《库存管理服装库存管理系统.docx》由会员分享,可在线阅读,更多相关《库存管理服装库存管理系统.docx(26页珍藏版)》请在冰豆网上搜索。
库存管理服装库存管理系统
(库存管理)服装库存管理系统
课程设计任务书
课程名称:
基础编程能力考核设计题目:
服装库存管理系统已知技术参数和设计要求:
1.问题描述(功能要求):
服装库存管理系统主要包括:
(1)系统管理
系统管理包括用户管理和货号管理,能进行增加、删除、修改和查找的操作。
(2)库存管理
库存管理包括入库单管理和出库单管理。
入库单管理包括入库单基本信息管理和入库单明细管理,并能分别对入库单和入库单明细进行增加、删除、修改和查找的操作。
出库单管理包括出库单基本信息管理和出库单明细管理,并能分别对出库单和出库单明细进行增加、删除、修改和查找的操作。
(3)辅助管理
辅助管理包括修改密码。
2.运行环境要求:
(1)客户端:
Windows操作系统IE浏览器
(2)服务器:
windowsserver版操作系统Tomcatweb服务器
MySQL数据库服务器
3.技术要求:
强调软件工程过程文档的规范化。
需求分析规格说明书与用例规约
系统数据库设计,时序图,类图,MVC架构
系统完整编码,采用JSP、Servlet技术
设计工作量:
40课时
工作计划:
(1)2010级软件工程所有班级
16课时:
1609理论讲座
20课时:
上机、调试。
计算机系机房
4课时:
答辩。
计算机系机房。
(具体时间地点老师先申请,机动安排)
指导教师签名:
日期:
教研室主任签名:
日期:
系主任签名:
日期:
长沙学院课程设计鉴定表
姓名
曾祥炫
学号
111
专业
软件工程
班级
10软件1班
设计题目
服装库存管理系统
指导教师
潘怡
指导教师意见:
评定等级:
教师签名:
日期:
答辩小组意见:
评定等级:
答辩小组长签名:
日期:
教研室意见:
教研室主任签名:
日期:
系(部)意见:
系主任签名:
日期:
说明
课程设计成绩分“优秀”、“良好”、“中等”、“及格”、“不及格”五类;
项目实训(四)工作计划表
周次
实训内容
备注
第0周
(2012.3.12~2012.4.6)
1.实训启动
召集项目组学生开会明确实训的内容和要求袁伟森老师讲课
致远楼1609
第一周
(2012.5.14~2012.5.18)
1.系统需求分析设计
致远楼1409
第二周
(2012.5.21~2012.5.25)
1.组长讨论会,讨论需求分析进度情况完善需求文档
2.用例和用例规约设计
致远楼1409
第三周
(2012.5.28~2012.6.1)
1.系统详细设计,类模型设计
2.时序图的设计
致远楼1408
第五周
(2012.6.4~2012.6.8)
1.第一阶段任务检查—需求分析
2.开发工具的使用
致远楼1408
第六周
(2012.6.11~2012.6.15)
1.Struts2技术讲解
2.第二阶段任务检查—数据库的设计
致远楼1408
第七周
(2012.6.18~2012.6.22)
1.代码实现
2.答疑调试
致远楼1408
第八周
(2012.6.25~2012.6.29)
1.代码实现
2.答疑调试
致远楼1408
第九周
(2012.7.2~2012.7.6)
1.答辩
致远楼1401
第1章设计内容与要求1
1.1设计内容1
1.2设计要求1
第2章需求分析3
2.1整体用例图3
2.2用例规约3
2.3需求描述5
第3章系统设计6
3.1数据库设计6
3.1.1数据库对象命名规则6
3.1.2数据项编码规则6
3.1.3用户信息表结构6
3.2类图设计7
3.3时序图设计7
第4章系统实现9
4.1登陆设计实现9
4.2修改密码设计实现12
第5章总结17
参考文献18
附录19
第1章设计内容与要求
1.1设计内容
服装库存管理系统主要的设计内容包括:
(1)系统管理
系统管理包括用户管理和货号管理。
在用户管理中要包括新建系统用户、删除系统用户、查看系统用户详细信息、更新系统用户、查询系统用户、系统用户登陆和修改密码。
在货号管理中包括新建货号、删除货号、查看货号详细信息、更新货号、查询货号
(2)库存管理
库存管理包括入库单管理和出库单管理。
入库单管理包括新建入库单、删除入库单、查看入库单详细信息、更新入库单、提交入库单、查询入库单、新增入库单明细、查看入库单明细的详细信息、更新入库单明细、删除入库单明细、查询入库单明细。
出库单管理包括新建出库单、删除出库单、查看出库单的详细信息、更新出库单、提交出库单、查询出库单、新增出库单明细、查看出库单明细的详细信息、更新出库单明细、删除出库单明细、查询出库单明细。
(3)辅助管理
辅助管理包括修改密码。
1.2设计要求
(1)系统管理
用户管理中在新建系统用户时用户登录号、用户姓名和用户密码为必选项,如果没有填写应该要能给出提示信息。
用户能够根据用户登录号和用户姓名来查询系统用户的详细信息。
系统用户能够根据用户登录号和密码来成功登陆系统。
用户在成功登陆后可以使用旧密码来设置新密码。
货号管理中在新建货号时货号、品名、色号、尺码、面料、里料、出厂价、零售价为必选项,若有一项没有填写应该要能给出提示信息。
用户可以根据货号、色号、尺码来查看货号详细信息。
(2)库存管理
入库单管理中在新建入库单时入库日期、所入仓库、来源是必选项,如果有一项没有填写,系统要能够给出提示信息,备注为非必选项。
用户成功登陆系统后可以根据单据号来查看入库单的详细信息。
用户在更新入库单时要先查询到要更新的入库单,然后再进行入库单的更新。
用户在保存入库单信息后可以进行新增入库单详细信息的操作,新建时可以设定入库单明细的货号、色号、尺码和数量。
出库单管理中在新建出库单时出库日期、所出仓库、接收人、接收人电话为必选项,若有一项没有填写则给出提示信息,其中备注为非必选项。
用户成功登陆系统后可以根据单据号来查看出库单的详细信息。
用户在更新出库单时要先查询到要更新的出库单,然后再进行出库单的更新。
用户在保存出库单信息后可以进行新增出库单详细信息的操作,新建时可以设定出库单明细的货号、色号、尺码和数量。
(3)辅助管理
用户在成功登陆系统后可以进行修改密码,修改密码时旧密码、新密码和确认密码为必选项,如果有一项没有填写,系统应该给出提示信息。
旧密码必须要与登录时使用的密码一
致,否则无法修改密码,新密码和确认密码也必须保持一致方能成功修改。
2.1整体用例图
2.2用例规约
第2章需求分析
图1全局用例图
表1用户登陆用例规约
用例名称:
用户登陆
用例ID:
CSMS-01
角色:
用户
简要说明:
用户利用登录号密码登陆系统
前置条件:
无
基本事件流:
1、用户输入登录号
2、用户输入密码
3、用户点击“登陆”按钮
其它事件流:
1、用户输入的登录号和密码为必选项,如有一项为空,系统要能给出提示信息
2、系统接收用户输入的登录号和密码并且将其与数据库中的用户信息表中的对应数据进行验证,验证成功则允许用户登陆,否则提醒用
户输入正确的登录号和密码。
异常事件流:
1、登陆号或者密码为空就点击登陆。
2、登录号或者密码错误
后置条件:
系统用户信息保存到数据库中,并且页面能够将用户输入的数据传送
至后台服务器中
表2修改密码用例规约
用例名称
修改密码
用例ID
CSMS-02
角色
用户。
简要说明
用户修改密码
前置条件
用户已经登录系统
基本事件流
1、用户请求修改密码。
2、系统弹出修改密码页面。
3、用户输入旧密码。
4、用户输入新密码,确认新密码。
5、点击“完成”。
其他事件流
1、旧密码、新密码、确认密码为必选项、任何一项为空系统都要
发出提示信息
2、系统接收用户输入的旧密码,并且将旧密码与数据库中的密码
进行验证,若新密码与确认密码一致,且验证通过,则允许用户修改密码
异常事件流
1、用户输入的旧密码与用户登陆使用的密码不一致。
2、用户输入的新密码与确认密码不一致。
后置条件
系统能够获取用户在页面上输入的旧密码、新密码和确认密码,并且对旧密码与登陆密码进行验证。
2.3需求描述
1.用户登陆
需求编号:
CODEMN-1
需求描述:
用户使用登录号和密码来成功登陆系统。
CODEMN-1-1用户输入登录号和密码
CODEMN-1-2页面获取用户输入的登录号和密码,并且与数据库中的数据进行比较CODEMN-1-3证成功则允许用户登陆,否则提醒用户输入正确的登录号和密码。
2.用户修改密码
需求编号:
CODEMN-2需求描述:
用户修改密码
CODEMN-2-1:
用户输入旧密码、新密码、确认密码。
CODEMN-2-2:
系统接收用户输入的旧密码,并且将旧密码与数据库中的密码进行验证,同时将获取到的新密码和确认密码进行比较。
CODEMN-2-3:
若旧密码验证通过,且新密码与确认密码一致,则允许用户修改密码,否则给出错误提示信息,密码修改不成功。
3.1数据库设计
3.1.1数据库对象命名规则
第3章系统设计
表3数据库对象命名规则
数据库对象
命名规则
备注
表
Tbl_功能描述字符串
例如:
tbl_user用户表
视图
View_功能描述字符串
例如:
view_userInfo用户视图
存储过程
Proc_功能描述字符串
例如:
proc_draw取款存储过程
3.1.2数据项编码规则
表4数据项编码规则
数据项
命名规则
数据类型
长度范围
备注
登录名
用户姓名开头字母
字符
10位
无
密码
6位长的任意数字
字符
10位
无
货号
2个大写字母+数字
字符
10位
无
色号
颜色开头字母+数字
字符
10位
无
删除状态
逻辑数字1或0
整数
2
无
尺码
正常人身高如170
整数
无
入库日期
年+月+日
日期
无
3.1.3用户信息表结构
表5用户信息表
表名
用户信息表
数据库用户
主键
userLogin
其他排序字段
无
索引字段
无
序
号
字段名称
数据类型(精
度范围)
允许为
空Y/N
唯一
Y/N
区别度
默认值
约束条件/说明
01
userLogin
Varchar(20
)
N
Y
高
无
主键
02
username
Varchar(20
)
N
Y
高
无
03
Password
Varchar(20
)
N
N
高
无
04
Remark
Varchar(20
)
F
N
低
无
05
flag
Int
N
N
高
无
sql脚本
createtableuser(userLoginvarchar(20)notnullprimarykey,userNamevarchar(20)notnull,Passwordintnotnull,remarkvarchar(20),
flagintnotnull
);
备注
存储用户信息
3.2类图设计
图2系统登陆和修改密码的类图
在登陆和修改密码中,主要运用到userImpl、UserServlet和Userinfo三个类。
userImpl中实现了Userinterface中定义的方法,在userImpl中可以拼写sql语句来实现对数据库的操作,即可以修改Userinfo中的属性,BConnection起到了连接数据库的作用。
UserServlet根据用户在页面上操作来决定调用什么方法,doPost()可以判断用户在页面上JS页面上选择的操作的类型,根据操作类型来决定dologin()和doUpdatePwd()方法的调用。
3.3时序图设计
图3用户登陆时序图
如图3所示,用户首先在登陆界面的文本框中输入登录号和密码,UserServlet获取用户输入的登录号和密码,调用userImpl中的loginUser()方法将获取的登录号和密码作为参数传送至数据库中执行,并且返回执行结果,UserServlet根据返回结果来判断是否发生页面跳转和给出用户提示信息。
图4修改密码时序图
如图4所示,用户首先在修改密码页面内输入旧密码、新密码、确认密码,UserServlet获取用户输入的旧密码、新面貌、确认密码,并且调用userImpl中的updatePwd()函数,以获取的三个值作为参数,updatePwd()将旧密码发往数据库中进行验证,UserServlet根据验证结果来判断密码是否修改成功和传送提示信息。
修改密码界面还要验证新密码与确认密码是一致。
第4章系统实现
4.1登陆设计实现
代码段1声明接口:
package.;import.SQLException;import..UserInfo;import.;
publicinterfaceUserinterface{publicResultSetloginUser(StringuserLogin,Stringpassword)throwsSQLException;
//登陆验证
}
说明:
此段代码的作用是定义接口声明相关的方法,publicResultSetloginUser(StringuserLogin,Stringpassword)throwsSQLException;定义的是登陆验证方法,此方法声名了在实现登陆的方法中需要传进的两个参数StringuserLogin,Stringpassword,即登录号和登陆密码。
代码段2接口实现:
package.;import.SQLException;import..Userinterface;import..UserInfo;import.;
import.;import.;import.;import.;
publicclassUserimplimplementsUserinterface{DBconnectiondb=null;
Connectionconn=null;Statementpst=null;privateStringpassword;
publicUserimpl()throwsClassNotFoundException,SQLException
{
db=newDBconnection();conn=();pst=(Statement)();
}
///////////////登陆验证////////////////////publicResultSetloginUser(StringuserLogin,Stringpassword)throwsSQLException{
//TODOAuto-generatedmethodstubStringBufferstrsql=newStringBuffer();("select*fromusertablewhere");("userLogin='"+userLogin+"'and");
("password='"+password+"'");ResultSetrs=(ResultSet)(());returnrs;
}
}
说明:
此段代码是先前定义的接口的实现部分,
StringBufferstrsql=newStringBuffer();
定义了一个字符串strsql。
代码("select*fromusertablewhere");("userLogin='"+userLogin+"'and");("password='"+password+"'");是拼写sql语句,意思是在数据库中查询用户的登录名和密码。
ResultSetrs=(ResultSet)(());returnrs;意思是将sql语句执行,并且将执行后的结果集合赋值给rs,最后返回rs。
db=newDBconnection();conn=();pst=(Statement)();此段代码是进行数据库的连接。
代码段3数据库连接:
publicclassDBconnection{privatestaticStringurl="jdbc:
mysql:
//127.0.0.1:
3306/csms";//数据库的URLprivatestaticStringuser="root";//访问数据库的用户名privatestaticStringpwd="123456";//访问数据库的密码publicConnectionconn;publicConnectiongetConn()throwsClassNotFoundException,SQLException
{
(".");//装载JDBC驱动程序conn=(Connection)(url,user,pwd);returnconn;
}
publicvoidcloseConn()throwsSQLException
{
();//关闭数据库连接
}
}
说明:
privatestaticStringurl="jdbc:
mysql:
//127.0.0.1:
3306/csms";说明了数据库
CSMS的地址,此段代码的主要使用是控制数据库的连接。
代码段4检测输入域:
functiondoLogin()
{
if(.value=="")
{
alert('请用户输入账号!
');
return;
}
if(.value=="")
{
alert('请用户输入密码!
');
return;
}
="UserServlet?
opt=login";();
}
说明:
if(.value=="")和if(.value=="")是用于判断登陆界面用于输入登录号和登陆密码的两个文本框中的值是否为空,当用户点击“登陆”按钮时若userid和psword还为空,则提醒用户输入登录号和登陆密码。
="UserServlet?
opt=login";();
意思是当用户点击登陆后将调用UserServlet中的方法。
代码段5登陆验证及页面跳转:
publicvoiddologin(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException,SQLException{
HttpSessionsession=();Stringuser_name=("userid");//获得页面输入的登录号Stringuser_pwd=("psword");//获得页面输入的登录密码ResultSetrs=(user_name,user_pwd);
if(()){
("userLogin",user_name);("");
}
//////////////页面的跳转,验证成功进入主页面,否则任然停留在登陆页面///////
else{
Stringmsg="用户密码错误";("msg",msg);RequestDispatcherrd=("");(request,response);
}
}
说明:
Stringuser_name=("userid");是用于获取登陆页面输入的登录号。
Stringuser_pwd=("psword");是用于获取登陆页面输入的登录密码。
ResultSetrs=(user_name,user_pwd);调用loginUser方法,将user_name,user_pwd作为参
数传入到loginUser方法中,并且将结果集赋值给rs。
if(())是对()进行逻辑判断,若逻辑
值为1则执行中间部分的方法。
("userLogin",user_name);是将变量user_name以userLogin为名字保存在session中。
("");
表示从当前servlet跳转到页面。
else{Stringmsg="用户密码错误";("msg",msg);
RequestDispatcherrd=("");(request,response);
}
表示当()逻辑判断为0时提醒用户错误信息,并且任然停留在登陆页面,即。
4.2修改密码设计实现
代码段1定义接口:
package.;import.SQLException;import..UserInfo;import.;
publicinterfaceUserinterface{publicintupdatePwd(StringuserLogin,StringoldPwd,StringnewPwd)throwsSQLExcep
tion,ClassNotFoundException;//修改密码
}
说明:
此段代码的作用是定义接口声明相关的方法,publicintupdatePwd(StringuserLogin,StringoldPwd,StringnewPwd)throwsSQLException,ClassNotFoundException;定义了修改密码方法,此方法声明了在实现修改密码的方法中需要传进的三个参数StringuserLogin,StringoldPwd,StringnewPwd,即登录号、旧密码和新密码。
代码段2处理数据:
publicintupdatePwd(StringuserLogin,StringoldPwd,StringnewPwd)throwsSQLException,ClassNotFoundException{
//TODOAuto-generatedmethodstubStringBufferstrSql=newStringBuffer();("select*fromusertablewhere");//拼写sql字符串("userLogin='"+userLogin+"'andpassword='"+oldPwd+"'");DBconnectiondb=newDBconnection();//连接数据库Connectionconn=();
PreparedStatementpst=(PreparedStatement)(());//将SQL语句传送至服务器或数据库ResultSetrs=(ResultSet)();//执行语句,返回结果集
if(())
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 库存 管理 服装 系统