毕业论文——网络商店销售管理系统的设计与实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

网络商店销售管理系统的设计与实现
摘要
随着软件技术的不断进步和发展,信息化的管理方式越来越广泛的应用于各个领域,对于任何网站系统的管理来说开发一套现代化的成员管理软件是十分必要的。

通过这样的软件系统,可以做到成员的规范管理和快速查询,从而减少管理方面的工作量。

有效的管理所有成员的信息就是成员管理系统完成的功能。

销售管理系统是使用平台中的开发基于B/S体系结构的Web应用程序,在Microsoft Visual Studio .NET 环境下,使用C# 编程语言并结合Microsoft SQL Server 2000 数据库开发出一套网络版的销售管理系统。

该系统由前端输入和后端管理组成。

前端实现了用户注册,用户登录,购物车,定单查询,商品浏览(包括热门商品和新到商品),商品搜索等。

后台实现了用户信息管理,管理员信息管理,商品信息管理,销售管理。

通过这个系统,可以大大的提高网络管理者的工作效率和工作精度。

关键词:网络商店;销售管理系统;模块;控件;C#.NET
The Design and Realization of the Network Shops’ Selling
Management System
Abstract
Along with the unceasing progress and development of the software technology, the management information system is more and more widely applied to each domain, it is extremely essential to develop a members’ management software for a website. Through such a system, we can reduce the management workload by member's standard management and fast inquiry. The effective management of all members' information is a function which the member management system management system completes. The selling management system is developed based on B/S system structure, using of as the platform. It’s a web application procedure in Microsoft Visual under the Studio NET environment, using the C# programming language and unifying Microsoft SQL Server 2,000 databases. This system is composed of the onstage for input and the backstage for management. Functions such as registration, log on, the user land, shopping vehicle, ordering form inquiry, commodity browsing (including popular commodity and newly arrived commodity), and commodity searching and so on, are realized on the onstage. The functions such as the user’s information management, the manager’s information management, the commodity information management and the selling management are realized on backstage. Through this system, we may greatly enhance the network superintendent's work efficiency and the work precision.
Key words:Network shop; Sale management system; Module;Controls; C#.NET
1引言
开发背景
随着网络技术的飞速发展,网络经济与人们的生活越来越紧密的联系在一起,随着信息技术的发展,网上购物与网上销售也在逐渐发展和普及。

消费者与销售商都迫切需要一种简便与高速高效的购物与销售方式,在线商店管理系统的出现正好满足人们的这种需要,通过网络的简便与高效可以使消费者节省时间,价格公开合理。

而使销售者更合理的调节商品的数量以免造成商品的积压,也同时使生产者真正随着市场经济的需求而调节产品的种类和数量。

随着网络的不断的普及,网页技术的不断发展,人们对网页的要求也不再是文字,图片的简单堆砌或是单调枯燥的内容,而是实时性,交互性和丰富性,使用动态网页技术的网页越来越受欢迎。

应用技术的灵活性可以方便的访问数据库,把数据库搬上了WEB页面,使人们可以通过互联网使用大型的包含数据库功能的系统。

系统正是使用技术的动态网页与SQL Server2000数据库结合打造的一个网上商店管理系统,一般用户通过网络访问该系统,提供用户注册功能,商品查询功能;系统用户(已注册用户)可以修改注册信息,购买商品等;管理员可以修改、删除、添加、模糊查询用户信息、配送商、供应商信息,对顾客的定单安排配送商(即进行销售)以及向供应商定货和处理供应商发送来的货物(即进货和库存管理)。

本系统充分发挥了技术显示于客户端,运行于服务器端的特点,保护用户资料的安全性。

经过分析,本文作者使用的是Microsoft公司的visual 开发工具,利用其提供的面向对象的开发工具,尤其是数据窗口这一能方便而简洁操作数据库的智能化对象,首先在短时间内建立系统应用原型,然后对初始原型系统进行需求迭代,不断修正和改进,直到完成系统。

系统功能
整个网络销售管理系统的包括用户,超级管理员和一般管理员三种角色,系统为不同的角色提供不同的入口。

两个管理员是一种隶属关系,一般管理员要受超级管理员的限制。

用户和管理员具有不同的操作权限,用户可以注册新用户,修改自己的密码、个人资料。

查看/搜索自己的喜欢的商品的信息;超级管理员具有添加新管理员、删除管理员、修改密码,添加、删除商品类别;添加、修改、删除商品信息;查询用户信息、修改用户的账户金额,还有查询销售情况。

一般管理员具有除添加管理员、删除管理员之外的其他权限。

系统软硬件配置要求
在运行本系统前,请先检查一下软硬件配置是否符合以下要求:
硬件环境:
服务器端/客户端:
处理器:Intel Pentium4
内存: 128M
硬盘空间:20G
安装 NET运行环境
软件环境:
操作系统:Windows 2000
网络协议:TCP/IP
浏览器:Internet Explore
显示器:VGA或更高分辨率的
相关软件及技术介绍
1.4.1 技术
是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。

构架是可以用Microsoft(R)公司最新的产品 Visual Studio 开发环境进行开发是基于通用语言的编译运行的程序,可以使它运行在Web应用软件开发者的几乎全部的平台上。

通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到的Web应用中。

1.4.2 SQL Server
SQL Server 是一个具备完全 Web 支持的数据库产品,提供了对可扩展标记语言 (XML) 的核心支持以及在 Internet 上和防火墙外进行查询的能力,提供了以 Web 标准为基础的扩展数据库编程功能。

1.4.3 Visual 2003
它是Microsoft推出.NET应用程序开发工具。

它易学易用的特性得到很多的好评。

Microsoft又推出新版的.NET应用程序开发工具Visual 2005,加入更多的好用功能,是的好开发工具。

2.项目模块及框图
系统功能模快设计
系统主体采用B/ S(Browser/ Server ,浏览器/ 服务器) 结构,即采用目前分布式系统流行的3 层软件结构,即在传统的客户和服务器之间加入应用服务器(Application server) ,3 层即是表现层(浏览器) 、业务逻辑层(Web 服务器) 、数据层(数据服务器) ,系统简图如图2-1所示。

数据服务器与Web 服务器是完全分开的,分开之后的3 层软件结构功能明确:客户层只提供应用程序的用户界面,负责与用户交互;业务逻辑层是应用系统的关键,它负责处理所有用户请求,
进行具体的运算和决定程序的流程,并把处理结果返回给表现层;服务器层仍然提供的是数据库支持、维护和更新应用程序的数据。

网络销售管理流程图
图1 网络销售管理系统数据流程
网络销售管理系统模块组织图
图2A系统模块组织图
图2B系统模块组织图
3 项目方案需求
项目特色
项目采用Visual Studio 2003与SQL Server 2000进行开发。

Visual Studio 2003是微软最新推出的强大的可视化集成开发环境. 是ASP. NET中的一员,它继承了通俗易懂的语法和可视化的应用程序界面设计,同时加入完全面向对象的设计思想,使应用程序的设计更加方便、快捷。

另外,的引入使得访问数据库更加容易。

项目在启动时需要进行登录验证,由于用户的信息保存在服务器的数据库中,所以在本地应当连接数据库服务器的信息把所得到的信息进行验证(服务
器的名称,登录数据库的用户名、密码等),用户通过验证后在给予用户相应的权限,在进入系统进行操作。

方案选择
数据库需求分析
网络商店销售管理系统数据库系统,针对它要实现的业务功能,数据库中应该具有以下的模块:
用户信息:包括用户的编号、用户名、密码、帐户金额、姓名等内容。

商品信息:包括商品编号、商品名称、商品价格、描述以及所属类别等。

管理员信息:与用户信息相类似,包括管理员编号、登录名、密码、角色类别等。

管理员日志:包括日志编号、发生事件以及时间。

购物车:用来存储用户购物的信息,如商品的编号、数量等
定单:一笔完整的定单记录应该包括它所相关的商品集合以及各个商品的数量等信息
数据库逻辑结构设计
系统共涉及9张表,分别是:用户信息表Userinfo、商品信息表Productinfo、商品类别字典表Category、购物车表Shoppingcate、定单表Orders、定单信息表Orderitems、管理员信息表Admin、管理员角色字典表Adminrole和管理员日志表Adminaction。

主要设计思想:
尽管在需求分析中,商品类别仅仅是商品的一个属性,但是数据库设计中一般将其分离出去创建单独的表。

这就是面向对象的思想,这种做法有利于系统的扩展,同样的思想也体现在了Admin和Adminrole表的设计中。

还有就是由于定单可能包括多种商品。

而且数量不一。

所以也用两个表来共同体现定单的这个实体。

9张表如下:
表8:管理员角色表Adminrole
业务模式
系统分为两大功能模块:前台和后台管理员。

前台包括商品信息模块、用户信息管理模块。

后台有管理员信息、商品信息用户信息、销售管理等模块。

后台数据库管理系统采用SQL 2000。

·查询系统:
采用浏览器-Web应用服务器-数据库服务器三层结构,供用户、各管理员在网上查询信息,编程技术主要运用C#
·管理系统:
采用B/S结构,供管理员对用户和商品的各种信息进行输入、查询和更新和删改的操作,实现工具主要是。

应用程序通过ODBC与SQL2000相连。

B/S是Brower/Server的缩写,客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安装Oracle、Sybase、Informix或SQL Server等数据库。

浏览器通过Web Server 同数据库进行数据交互。

B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。

只要有一台能上网的电脑就能使用,客户端零维护。

系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。

甚至可以在线
申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。

服务器负责有效地管理系统的资源,其任务集中于:
a.数据库安全性的要求。

b.数据库访问并发性的控制。

c.数据库前端的客户应用程序的全局数据完整性规则。

d.数据库的备份与恢复。

4.模块设计、分析、开发
主页面设计
主页面是直接展示给用户的部分。

在这一模块中,主要包括以下自定义控件和页面的实现:
页面头部控件():主要包括登录链接和搜索框
商品分类导航控件():显示所有商品的列表,作为页面的左侧导航目录。

页面头部控件设计
页面头部控件是为了方便用户快速导航到某个页面的,在的设计中,具有技巧性的地方是如何展示给登录用户和匿名用户不同的导航条,为了区别登录用户和匿名用户,在中将匿名用户所拥有的链接放在一个Span容器中,并将Span设为“Runat=Server”,这样就方便在代码中对去是否可见进行控制。

同样,将登录用户需要的链接也放在另一个Span中。


外,“搜索”也是一个超级链接,但它并非链接到某个Url。

而是执行一条JavaScript 语句“javascript:()”,即把页面提交。

如下图所示:
图3登录用户导航条图4匿名用户导航条控件代码的实现
在HeaderMenu的代码中,主要是判断用户的情况并控制Span容器的可见性。

在中定义了下面的方法:
void showButton()
{
oString(), ());
}
= pageIndex;
}
用户信息管理模块设计
登录页面设计
图5 用户登录界面
在这个系统中采用Froms验证方式,当自定义的验证程序确认用户身份时,可以让Froms验证系统发出Cookie,Cookie中除了包含验证票据之外,还可以通过程序写入被验证用户的标识信息,比如用户编号,然后使用该Cookie访问个人的信息。

Forms验证方式还可以保证有权限要求的页面无法被匿名用户访问。

例如,密码修改页面()不能被匿名用户访问,要达到上诉目标,需要在配置文件Web。

Config里面创建一个项。

代码如下:
<!_验证方式为Forms_>
<authentication mode=”Forms”>
<formsname=”eshop” loginUrl=””protecon=”all”path=”/”/>
</authentication>
需要注意的是,<forms>标记中,name的值为验证系统所发出的Cookie的名称,loginUrl表示匿名用户被重定向到的页面的地址。

如何防止ChangPwd不被匿名用户直接访问呢,也需要创建下面的项:
<location path=””>
<>
<authorization>
<!--拒绝匿名用户-->
<deny user=”?”/>
</authorization>
</>
</location>
同样,用户可以注销验证信息,注销页面()代码如下:
private void Page_Load(object sender, e)
{
alue;
}
在数据库中定义了存储过程ShoppingCartAddItem,实现向购物车添加商品
的功能,代码如下:
CREATE Procedure ShoppingCartAddItem
(
@CartID nvarchar(50),
@ProductID int,
@Quantity int
)
As
DECLARE @CountItems int
SELECT
@CountItems = Count(ProductID)
FROM
ShoppingCart
WHERE
ProductID = @ProductID
AND
CartID = @CartID
IF @CountItems > 0 /* 该购物车中已有该商品的记录,更新数量*/ UPDATE
ShoppingCart
SET
Quantity = (@Quantity +
WHERE
ProductID = @ProductID
AND
CartID = @CartID
ELSE /* 该购物车中没有这个商品的记录,插入新记录*/
INSERT INTO ShoppingCart
(
CartID,
Quantity,
ProductID
)
V ALUES
(
@CartID,
@Quantity,
@ProductID
)
GO
购物车的结算设计与实现
图 7 商品结算界面
如果用户的预存款金额不足够支付本次购物,则会出现“存款不足”的提示如果能够支付,则生成新的订单,实现预存款支付订单的存储过程代码如下:CREATE PROCEDURE PayOrder
@userId int,
@totalcost decimal,
@result int output
AS
DECLARE @tmp decimal
/*@tmp为当前用户预存款金额*/
SELECT @tmp = acount
FROM UserInfo
WHERE userID = @userId
/*如果预存款不足*/
IF @tmp <@totalcost
BEGIN
/*置标志为-1*/
SET @result = -1
END
/*预存款足够支付,扣除相应的金额*/
ELSE
BEGIN
UPDATE UserInfo
SET acount = acount -@totalcost
WHERE userId= @userId
/*置标志为1*/
SET @result = 1
END
GO
查询销售情况页面的设计
模块的查询支持按月查询、日查询。

查询的结果是每种商品的相关的定单数、售出数量和销售收入。

页面主要包括3个DropDownList,分别用来选择年、月、日,两个按钮分别进行按月查询和按日查询,以及显示查询的结果的DataGrid。

页面第一次加载时,显示日期为当前日期,并绑定到当前的销售情况。

图8销售情况图
代码的实现
查询销售情况的存储过程定义为GetSails,有3个输入参数,分别为@year(年)、@month(月)、@day(日)。

当@day为0时,表示查询月记录,否则为查询当日记录。

在adminDB类中定义GetSails()方法调用上面的GetSails存储过程,并返回记录集。

代码如下:
public DataSet GetSails(string year, string month, string day)
{
SqlParameter[] para = {
new SqlParameter("@year", (year)),
new SqlParameter("@month", (month)),
new SqlParameter("@day", (day))
};
return, "GetSails", para);
}
在用户表示层,首先需要绑定选择日期的DropDownList。

定义BindDate()方法,代码如下:
void BindDate()
{
etSails(year, month, day);
();
}
在页面加载时间处理方法Page_Load()中对数据进行绑定,并显示当前日期以及当日销售记录:
private void Page_Load(object sender, e)
{
if (!
{
BindDate();
果测试,性能分析
测试主页面
图9 主页面
主页面是直接面向所有用户的页面,所有的用户都可以在这里查询和搜索所需要的商品信息。

已经注册了的用户可以进行登录操作。

测试登录页面
用户修改、查看自己的信息时,必须先进行登录,如下图所示。

图10用户登录入页面
如果是注册了的用户,进入个人信息管理界面,在这里,用户可以修改自己的密码和个人资料,查看自己的购物记录和账户里还有多少钱。

如下图所示:
图11 用户个人信息页面
如果是没有注册的用户点击图10中的注册新用户,进入用户注册页面,如下图:
图12 用户注册页面
单击注册,注册成功,转入个人信息页面。

如图
图13管理员登陆页面
登录成功后,进入管理员功能项目模块页面,如下图:
图14 管理员功能项目模块页面
这个页面中,管理员可以进行修改自己的密码,高权限管理员可以添加,删除底权限的管理员。

可以添加商品,删除商品。

查看、修改用户、商品信息。

测试购物车
在向购物车中添加商品前,购物车是空的。

如下图:
图15 添加商品前的购物车图
添加商品后,购物车中出现了添加商品的名称,数量,价格。

如下图:
图16添加商品后的购物车图
测试查询销售情况
查询商品的销售情况,可以查询销售商品的编号、商品名称、销售数量和销售金额。

可以按月查询,也可以按日查询。

图17 查询销售情况页面
测试查询、修改用户信息页面
管理员才具有的权限。

能够查看用户的基本信息、添加用户的预存款,管理员只能添加用户的预存款,无权渐少用户的预备存款,当管理员向预备存款中输入存款数目时候,点击更新,输入的预存款为以前的存款加上刚输入的存款,输入的存款不能为负数。

所以管理员不能减少用户的预备存款如下:
图18 查询、修改用户信息页面
上图中用户名为WPC的用户现在预存款为10000元,点击编辑按钮,把预存款增加20000元,再更新,预存款就变为30000元。

如下图:
图19查询、修改用户信息后的页面
结论
论文简要介绍了典型B/S电子商务网上购物系统的主要体系结构及功能模块,讨论了系统开发工具、开发语言技术以及系统的数据库建设,系统流程图,功能模块的代码分析和系统功能的测试。

这些过程的讨论和分析,让大家对系统的体系结构,功能模块等有了更深的了解。

通过测试,系统能完全完成网络销售系统的基本功能。

目前系统在安全问题上还不是很完善,虽然系统已经通过相关的控制语句对登录用户身份进行验证,但是在当今网络信息安全中,仅仅对用户身份验证是不够的,还需要对传送数据进行加密,防止数据传输过程中被篡改等攻击进行防御。

因此在今后的工作里,这些功能的实现还需要更高的技术支持,也只有这样才能完善网上购物系统。

网上购物系统无论是在开发过程中,还是建成后的日常维护过程中,都需要进行严格的检测,以保证购物系统的服务质量。

建议网上购物系统应注意以下2点。

(1)网上购物系统不仅要把好进货关,而且由于网上购物系统提供的是虚拟的电子商品,包含的信息量大,多分支、多链接、多媒体,所以网上购物系统的检测就显得格外重要。

对虚拟电子商品的审查,首先要进行内容正确性测试。

(2)用户身份的确认和商品的配送,随着网上购物系统技术的日趋成熟、网上购物的优势日趋明显,会有更多的人参与到网上购物的浪潮中来,人类最终将迎接电子商务时代的来临
参考文献
[1] 陈世明,江高举. 从入门到精通[M].北京:中国铁道出版社,2002。

[2] 黄明,梁旭. 信息系统设计与开发实例[M].北京:中国工业出版社,2005。

[3] 任新见. 动态网站快速开发实务[M].北京:电子工业出版社,2004。

[4] 石志国. 内幕技术[M].北京:机械工业出版社,2003。

[5] 苏贵洋,黄穗,何莉. 网络编程从基础到实践[M].北京:北京电子工业出版社,2005。

[6] 王华杰,孙一波.C#数据库开发[M].北京:清华大学出版社,2003。

百度文库- 让每个人平等地提升自我
19
致谢
本文是在常征,陈运老师的热情关心和指导下完成的,他们渊博的知识和严
谨的治学作风使我受益匪浅,对顺利完成本课题起到了极大的作用。

在此向他表示我最衷心的感谢!
在论文完成过程中,本人还得到了其他老师和许多同学的热心帮助,本人向他们表示深深的谢意!
最后向在百忙之中评审本文的各位专家、老师表示衷心的感谢!。

相关文档
最新文档