第5章系统实现
一、技术路线:
开发语言:Java
前端技术:JavaScript、VUE.js(2.X)、css3
数据库:MySQL 5.7
数据库管理工具:Navicat或sqlyog
开发工具:IDEA或Ecplise
二、项目介绍:
https://www.bilibili.com/video/BV13v411c7ft/
三、运行截图:
3.1用户管理功能模块实现
1.登录模块,用户、管理员可以通过登录进入该系统,如果输入正确,则可以进入该系统,显示的结果如下。
用户登录界面如下图所示。
图3-1登录模块界面
用户登录关键代码如下所示。
if(ac.equals("adminlogin"))
{
Stringusername=request.getParameter("username");
Stringpassword=request.getParameter("pwd");
Stringutype=request.getParameter("cx");
Stringpagerandom=request.getParameter("pagerandom")==null?"":request.getParameter("pagerandom");
Stringrandom=(String)request.getSession().getAttribute("random");
if(!pagerandom.equals(random)&&request.getParameter("a")!=null)
{
request.setAttribute("random","");
go("/login.jsp",request,response);
}
else{
Stringsql1="select*fromalluserswhereusername='"+username+"'andpwd='"+password+"'";
Listuserlist1=dao.select(sql1);
if(userlist1.size()==1)
{
request.getSession().setAttribute("username",userlist1.get(0).get("username"));
request.getSession().setAttribute("cx",userlist1.get(0).get("cx"));
gor("main.jsp",request,response);
}else{
request.setAttribute("error","");
go("/login.jsp",request,response);
}
}
}
2.创建用户,如果想添加某个人员进入该系统,则添加该用户的信息,如果添加成功,就可以进入该系统,显示的结果如下。
创建用户界面如下图所示。
图3-2创建用户界面
3.密码修改,系统所有用户都可以进行登录密码的修改,登录后,输入原始密码和2遍新密码,就可以完成修改,如果输入的2次新密码不一样,则会提示修改失败。
密码修改关键代码如下所示。
if(ac.equals("adminlogin"))
{
Stringusername=request.getParameter("username");
Stringpassword=request.getParameter("pwd");
Stringutype=request.getParameter("cx");
Stringpagerandom=request.getParameter("pagerandom")==null?"":request.getParameter("pagerandom");
Stringrandom=(String)request.getSession().getAttribute("random");
if(!pagerandom.equals(random)&&request.getParameter("a")!=null)
{
request.setAttribute("random","");
go("/login.jsp",request,response);
}
else{
Stringsql1="select*fromalluserswhereusername='"+username+"'andpwd='"+password+"'";
Listuserlist1=dao.select(sql1);
if(userlist1.size()==1)
{
request.getSession().setAttribute("username",userlist1.get(0).get("username"));
request.getSession().setAttribute("cx",userlist1.get(0).get("cx"));
gor("main.jsp",request,response);
}else{
request.setAttribute("error","");
go("/login.jsp",request,response);
}
}
}
4.创建用户流程,首先获取用户的基本信息,然后将姓名转换为拼音做为用户名,默认密码是admin向数据库添加一条记录。
创建用户流程图如下图所示。
图3-4创建用户流程图
3.2仓库管理功能模块实现
1.仓库添加,添加仓库信息,主要页面是cangkuxinxi_add.jsp文件,通过调用add()方法,将仓库参数传入,实现仓库信息的添加。
仓库添加页面如下图所示。
图3-5仓库添加页面
仓库添加关键代码如下所示。
HashMapext=newHashMap();
if(request.getParameter("f")!=null){
ext.put("issh","否");
newCommDAO().insert(request,response,"shujujilu",ext,true,false,"");
}
%>
2.仓库修改,管理员可以修改已存在的仓库信息,除主键的ID不能修改外,其他属性基本都能修,主要页面是cangkuxinxi_update.jsp,通过调用update()方法,将仓库参数传入,实现仓库信息的修改。
3.仓库查询,仓库添加之后可以进行仓库查询,输入仓库编号可以查询出该仓库的所有信息。包括仓库编号、仓库名称和电话。
仓库查询界面如下图所示。
图3-6仓库查询页面
4.仓库删除,用对不需要的仓库,或者输入错误的仓库信息,管理员可以对其进删除,通过调用delete()方法,将仓库参数传入,实现仓库信息的删除。
5.仓库添加流程,开始输入仓库信息,在程序中验证输入的信息是否规范,如果规范就输入成功,如果不规范将重新进行输入。
仓库添加流程图如下图所示。
图3-7仓库添加流程图
3.3商品管理功能模块实现
1.商品添加,管理员添加商品信息,主要页面是shangpinxinxi_add.jsp文件,通过调用commDao类的add()方法,将商品参数传入,实现商品信息的添加。
商品添加页面如下图所示。
图3-8商品添加页面
商品添加关键代码如下所示。
HashMapext=newHashMap();
if(request.getParameter("f")!=null){
ext.put("issh","否");
newCommDAO().insert(request,response,"shujujilu",ext,true,false,"");
}
%>
2.商品修改,管理员可以修改已存在的商品信息,除主键的ID不能修改外,其他属性基本都能修改,主要页面是shangpinxinxi_update.jsp,通过调用commDao类的update()方法,将商品参数传入,实现商品信息的修改。
3.商品查询,商品添加之后可以进行商品查询,输入商品编号可以查询出该商品的所有信息。包括商品编号、商品名称、商品价格。
商品查询界面如下图所示。
图3-9商品查询页面
4.商品删除,对不需要的商品,或者输入错误的商品信息,管理员可以对其进删除,通过调用commDao类的delete()方法,将商品参数传入,实现商品信息的删除。
3.4库存管理功能模块实现
1.商品进货,如果管理员想进行商品进货,商品进货之前须要对商品进行登记,登记完之后进行商品进货,商品进货之后,生成进货记录,商品的当前库存量=进货前的数量加上进货数量,在库存在会显示进货的商品,,进货退货则将已进货的商品数量去除,则从库存数量减去退货数量得到库存总数量。
商品进货页面如下图所示。
图3-10商品进货页面
商品进货关键代码如下所示。
HashMapext=newHashMap();
if(request.getParameter("f")!=null){
ext.put("issh","否");
newCommDAO().insert(request,response,"shujujilu",ext,true,false,"");
}
%>
商品进货流程图如下图所示。
图3-11商品进货流程图
2.商品销售,和商品进货相反的是商品销售,商品的销售和销售上架都是对商品进行销售,商品销售之后,生成销售记录,商品的当前库存量=销售前的数量-销售数量,如果当前库存量小于销售量,则销售失败,商品销售退货则去除销售出去的商品,商品的库存量加上退货量得到商品现在的库存总量。
商品销售页面如下图所示。
图3-12商品销售页面
商品销售关键代码如下所示。
HashMapext=newHashMap();
if(request.getParameter("f")!=null){
ext.put("issh","否");
newCommDAO().insert(request,response,"shujujilu",ext,true,false,"");
}
%>
3.库存查询,用户点击该功能后,系统自动列出所有商品的信息和当前库存量,所有商品的总量进行计算。
商品查询界面如下图所示。
图3-13库存查询页面
3.5其他管理功能模块实现
1.商品类别管理,根据管理员对商品类别的管理,包括添加、删除、修改、查询,包括商品编号名称商品类别、添加时间,实际上是对商品类别表的增删改查的操作。同时本模块具有模糊查询和多条件查询的功能,利用sql语句即可实现该功能,附加商品类别列表导出至excel中和商品类别详细页面打印。
商品类别管理页面如下图所示。
图3-16商品类别管理页面
3.6系统管理功能模块实现
1.信息导出与打印本系统可以导出各种信息列表,可能过信息导出功能导出EXCLE文件,也可以连接打印机,实用打印功能。
页面打印页面如下图所示。
图3-19页面打印页面