• .net生鲜超市销售系统


     

    目录

    摘要........................................................................................................... I

    Abstract.................................................................................................... II

    第一章 绪论............................................................................................. 1

    1.1 课题背景与研究意义......................................................................... 1

    1.2 课题研究现状..................................................................................... 1

    1.3 论文结构............................................................................................ 2

    第二章 相关技术简介.............................................................................. 3

    2.1 Visual Studio开发环境....................................................................... 3

    2.2 MySQL数据库................................................................................... 3

    2.3 MVC框架........................................................................................... 3

    2.4 Vue框架.............................................................................................. 3

    第三章 需求分析...................................................................................... 4

    3.1 可行性分析........................................................................................ 4

    3.2 非功能需求........................................................................................ 4

    3.3 功能性需求........................................................................................ 5

    第四章 总体设计.................................................................................... 12

    4.1 系统架构设计................................................................................... 12

    4.2 功能设计.......................................................................................... 12

    4.3 数据库设计...................................................................................... 17

    第五章 系统实现.................................................................................... 22

    5.1 登录.................................................................................................. 22

    5.2 用户管理.......................................................................................... 23

    5.3 商品管理.......................................................................................... 23

    5.4 超市资讯管理................................................................................... 24

    5.5 分类管理.......................................................................................... 25

    5.6 商品展示.......................................................................................... 25

    5.7 商品详细信息................................................................................... 26

    5.8 超市资讯展示................................................................................... 27

    5.9 超市资讯详细信息........................................................................... 27

    第六章 系统测试.................................................................................... 29

    6.1 测试目的.......................................................................................... 29

    6.2 测试方法.......................................................................................... 29

    6.3 测试用例.......................................................................................... 30

    结论......................................................................................................... 31

    参考文献................................................................................................. 32

    致谢......................................................................................................... 33

    附录......................................................................................................... 34

    摘要

    计算机网络如果结合使用信息管理系统,能够提高管理员管理的效率,改善服务质量。优秀的生鲜超市销售系统能够更有效管理商品售卖业务规范,帮助管理者更加有效管理商品售卖,可以帮助提高克服人工管理带来的错误等不利因素。

    本生鲜超市销售系统使用了计算机语言C#和存放数据的仓库MySQL,采用了MVC设计模式来实现。本系统使用了框架ASP.NET和Vue实现了生鲜超市销售系统应有的功能,系统主要角色包括管理员和用户,用户登录系统后可以购买商品,管理员管理系统的信息。Vue框架属于渐进式框架中的一种,能够用于构建用户界面,不用编写后端逻辑业务的代码,只需要关注前端界面代码的编写,通过和第三方View库进行整合,通过脚手架进行开发出对应的前端界面,这有助于提供强大的伸缩能力,通过采用向上增量的开发设计能够有助于减少系统代码的冗余度。

    关键词:销售管理系统;处理业务;设计模式;商品售卖

     

    Abstract

    If the computer network is combined with the information management system, it can improve the efficiency of administrator management and improve the quality of service. Excellent fresh supermarket sales system can more effectively manage the business norms of commodity sales, help managers more effectively manage commodity sales, and help improve and overcome the adverse factors such as errors caused by manual management.

    The fresh supermarket sales system uses computer language c# and data warehouse mysql, and adopts MVC design mode to realize it. The system uses the framework ASP Net and Vue realize the functions of the fresh supermarket sales system. The main roles of the system include administrator and user. After logging in to the system, users can buy goods, and the administrator manages the information of the system. Vue framework is a kind of progressive framework. It can be used to build user interface without writing back-end logic business code. It only needs to pay attention to the writing of front-end interface code. By integrating with the third-party view library and developing the corresponding front-end interface through scaffolding, it helps to provide strong scalability. By adopting upward incremental development design, it can help to reduce the redundancy of system code.

    Key words:Sales Management Sstem;Handing Business;Design Mode;Sale of Goods

    第一章 绪论

    1.1 课题背景与研究意义

    随着计算机的普及,国际上生鲜超市销售系统前景良好,网上商品售卖的出现,证明了生鲜超市销售系统具有良好的前景。在当今世界之中,随着科学技术的不断发展和计算机越来越普及,运用计算机对系统进行管理是一种趋势。如今随着社会和生活的信息量在不断地增长中,如何提高管理员的管理效率成为了人们关注的话题[1]32。

    传统人工管理生鲜超市销售系统会消耗过多的人力和物力,很有困难造成管理员管理混乱,从而对生鲜超市销售系统的正常运营造成影响,很多传统的管理模式已经不能够适应人们的要求。我们可以充分利用计算机的资源,完成网上商品售卖的信息服务。最后为了方便管理员能够大量处理业务,可以借用于计算机强大的信息资源。在考虑到用户的便处之时还需要考虑到用户使用的安全问题[2]。

    随着对各种不同模型的讨论和信息技术的最终发展,并且还讨论了在海量数据中如何安全和高效地存储的问题,人们逐渐发明了一些办法。将计算机软硬件和数据库进行结合起来,研究了一套能够为商店正常运行而提供的功能,这种功能最后带动了信息管理系统的发展。一个生鲜超市销售系统不仅能够解决用户的需求,还能够降低人工的操作出现错误的几率。这能够使得管理员的管理更加标准化。

    1.2 课题研究现状

    在很多发达国家中,生鲜超市销售系统的进展明显要快于我国很多,在管理方面也建设了很多不同的管理平台,这些管理平台能够为管理员管理提供数据信息。这些生鲜超市销售系统原则上的设计能够结合网络软硬件构建出信息系统。

    相比较于国外而言,我国网上商品售卖信息化发展是较为缓慢的,最初只是将网上商品售卖信息作为一个概念进行研究。随着信息技术的不断发展,目前我国在网上商品售卖管理方面已经有了进步。

    以生鲜超市销售系统的应用为基础,可以将软件开发机构分为几个层次:

    第一个层次中的国外软件开发机构能够提供较为成熟的生鲜超市销售系统,这些生鲜超市销售系统的主要目标为市场上的高端用户,软件能够满足高端用户对其平台的要求。

    第二个层次是我国的一些软件机构在研究生鲜超市销售系统的时候往往引入了国外软件的设计模式,之后结合国内市场的具体需要进行设计软件。设计出的软件一般能够符合大多数用户的认可[3]。

    第三个层次为定制的生鲜超市销售系统。一般是结合于用户的实际需求,定制有特殊功能的生鲜超市销售系统,从而满足用户的不同要求。

    1.3 论文结构

    针对本文的生鲜超市销售系统安排论文的章节如下:

    第一章是引言。本章主要介绍了课题研究背景与意义、课题研究现状和论文结构。

    第二章是系统开发环境及技术。本章介绍了生鲜超市销售系统开发环境和所涉及到的技术。

    第三章是需求分析。本章介绍了生鲜超市销售系统的功能需求和非功能需求,绘制出系统功能模块图。

    第四章是系统总体设计。对系统功能模块进行划分和数据库设计。

    第五章是系统实现。本章阐述了生鲜超市销售系统功能模块的实现功能。

    第六章是系统测试。本章阐述了使用黑盒测试对系统进行测试。

    第二章 相关技术简介

    2.1 Visual Studio开发环境

    本生鲜超市销售系统使用的开发环境为Visual Studio,Visual Studio能够为ASP.NET系统提供丰富的继承环境,它包括了测试功能、代码编写功能和打包发布功能。目前Visual Studio能够支持ASP.NET框架和数据库连接工具等多项功能,Visual Studio差不多囊括了Eclipse的所有功能,而且作为开发环境其拥有领先于业界的数据库工具,强健而灵活的软件建模,高效的体系结构以及指导关键测试功能集成的源代码控制。

    2.2 MySQL数据库

    MySQL数据库能够存储大量的数据,在操作上不仅方便快捷,如果想加快查询的速度,可以在数据库表上加上索引,MySQL通过SQL语句可以管理系统的信息。如果系统需要添加数据的时候,可以调用insert语句更新数据库记录,通过少量的SQL语句可以管理系统的信息。

    2.3 MVC框架

    MVC框架能够处理生鲜超市销售系统的超链接,由后端框架处理前端页面传递过来的请求。通过后端框架可以避免用户直接访问前端页面,能够较大提高系统的安全性。

    2.4 Vue框架

    Vue框架属于渐进式框架中的一种,能够用于构建用户界面,不用编写后端逻辑业务的代码,只需要关注前端界面代码的编写,通过和第三方View库进行整合,通过脚手架进行开发出对应的前端界面,这有助于提供强大的伸缩能力,通过采用向上增量的开发设计能够有助于减少系统代码的冗余度。

    第三章 需求分析

    3.1 可行性分析

    3.1.1 经济可行性研究

    如果管理员有了生鲜超市销售系统,便可以对网上用户购买商品进行管理,在资金花费上可以节省不少。生鲜超市销售系统的设计开发与实现目的是解决传统模式带来的多余经济支出,尤其是人力资源带来的成本支出[5]。传统的生鲜超市销售系统不仅需要消耗大量人力资源,而且往往需要管理员手工记载数据。本生鲜超市销售系统设计实现的目的为降低开发成本,并且可以节省管理员的时间和提高用户的体验感。考虑到目前的互联网开源框架和硬件设备,所以经济上是可行的[6]。

    3.1.2 技术可行性研究

    根据前期对生鲜超市销售系统功能的分析和确定,最后选择合适的软件架构和技术实现系统的开发,系统在设计实现的时候无论是开发工具还是系统架构使用的都是较为方便的开发模型,还包括了较为成熟的解决方法。综合市场上现有的生鲜超市销售系统,本次所使用的技术基本可行,并且能够满足用较少的开发和学习的成本。此次使用的开发模式能够快速构建系统,有不少现成的系统可供参考,所以后期的系统维护和升级较为容易,因此在技术上是可行的。

    3.1.3 操作可行性研究

    生鲜超市销售系统开发出来的目的是为了用户访问的操作的,因此生鲜超市销售系统在设计的时候需要注意到用户操作和访问的问题,用户群体普遍能够接受信息化的使用操作,所以用户的学习成本不是很高。

    3.2 非功能需求

    生鲜超市销售系统在设计的时候需要注意非功能性需求,还要满足系统业务流程的需要。

    (1)兼容性

    一般软件系统可以分为服务器和客户端,服务器需要运行程序,客户端显示程序的界面,系统的机器需要放置在机房中,软件开发者在平常的时候需要对其维护,用户所能接触到的界面其实是由客户端运行的,属于人机交互的接口。为了提高生鲜超市销售系统的兼容率,需要考虑代码实现的时候和前端界面的样式是否能够相互适配。

    (2)可扩展性

    软件系统随着事件的推移需要更新系统,本生鲜超市销售系统也不例外,如果需求发生了改变,那么就需要调整系统的功能。如果采用的是面向对象程序设计方法,那么可以使用接口编程技术,严格遵循软件开发规范,最后对系统进行修改的时候会具有较高的适应性。

    3.3 功能性需求

    3.3.1 用例概述

    管理员登录后可以管理系统的各类信息,管理员用例图,如图1所示。

    图1 管理员用例图

    用户登录系统后可以购买商品,用户用例图,如图2所示。

    图2 用户用例图

    用例的简要描述,如表1所示。

    表1  用例描述

    用例标识(UC)

    用例名称

    摘要描述

    1

    注册登录

    用户和管理员通过登录功能才得以使用系统的功能

    2

    查看商品信息

    用户登录系统之后可以查看商品信息

    3

    收藏商品

    用户登录系统之后可以收藏商品

    4

    购物车管理

    用户登录系统之后可以管理购物车信息

    5

    订单管理

    用户登录系统之后可以管理订单信息

    6

    地址管理

    用户登录系统之后可以管理地址信息

    7

    评论管理

    用户登录系统之后可以管理评论信息

    8

    个人中心

    用户和管理员登录系统之后可以修改个人信息

    9

    查看超市资讯信息

    用户登录系统之后可以查看超市资讯信息

    10

    商品信息管理

    管理员在商品信息管理功能中管理商品的信息

    11

    订单信息管理

    管理员在订单信息管理功能中管理订单的信息

    12

    用户信息管理

    管理员在用户信息管理功能中管理用户的信息

    13

    商品分类管理

    管理员在商品分类信息管理功能中管理商品分类的信息

    14

    系统管理

    管理员在系统信息管理功能中管理系统的信息

    15

    供货商管理

    管理员在供货商信息管理功能中管理供货商的信息

    3.3.2 用例描述

    1.商品信息管理

    商品信息管理用例描述,如表2所示。

    表2  商品信息管理用例描述

    用例标识

    3.1(商品信息管理用例)

    用例名称

    编辑商品的相关信息

    参与者

    管理员

    前置条件

    管理员需要输入正确的用户名和密码登录系统

    后置条件

    修改商品信息

    用例概述

    管理员修改商品信息

    基本事件流

    1.管理员输入正确的用户名和密码登录到系统当中

    2.管理员在商品信息管理界面点击添加按钮提交新添加的商品信息

    3.商品信息添加成功

    备选事件流

    4a 输入的信息需要合法才能够成功添加

    备注

    2.用户信息管理

    用户信息管理用例描述,如表3所示。

    表3  用户信息管理用例描述

    用例标识

    3.2(用户信息管理用例)

    用例名称

    编辑用户的相关信息

    参与者

    管理员

    前置条件

    管理员需要输入正确的用户名和密码登录系统

    后置条件

    修改用户信息

    用例概述

    管理员修改用户信息

    基本事件流

    1.管理员输入正确的用户名和密码登录到系统当中

    2.管理员在用户信息管理界面点击修改按钮提交修改的用户信息

    3.用户信息修改成功

    备选事件流

    4a 输入的信息需要合法才能够成功修改

    备注

    3.订单信息管理

    订单信息管理用例描述,如表4所示。

    表4  订单信息管理用例描述

    用例标识

    3.3(订单信息管理用例)

    用例名称

    删除订单的相关信息

    参与者

    管理员

    前置条件

    管理员需要输入正确的用户名和密码登录系统

    后置条件

    删除订单信息

    用例概述

    管理员删除订单信息

    基本事件流

    1.管理员输入正确的用户名和密码登录到系统当中

    2.管理员在订单信息管理界面点击删除按钮提交删除的订单信息

    3.订单信息删除成功

    备选事件流

    4a 删除的订单信息需要跟其它表没有关联才能够删除

    备注

    4.商品分类信息管理

    商品分类信息管理用例描述,如表5所示。

    表5  商品分类信息管理用例描述

    用例标识

    3.4(商品分类信息管理)

    用例名称

    搜索商品分类的相关信息

    参与者

    管理员

    前置条件

    管理员需要输入正确的用户名和密码登录系统

    后置条件

    搜索商品分类信息

    用例概述

    管理员搜索商品分类信息

    基本事件流

    1.管理员输入正确的用户名和密码登录到系统当中

    2.管理员在商品分类信息管理界面点击搜索按钮提交搜索的商品分类信息

    3.商品分类信息搜索成功

    备选事件流

    4a 输入的商品分类名称需要跟数据库的信息相匹配才能够搜索成功

    备注

    5.登录

    登录用例描述,如表6所示。

    表6 登录用例描述

    用例标识

    3.5(用户登录用例)

    用例名称

    登录

    参与者

    用户、管理员

    前置条件

    用户和管理员需要输入正确的用户名和密码

    后置条件

    登录

    用例概述

    用户和管理员登录

    基本事件流

    1.用户和管理员进入到登录页面当中

    2.管理员和用户输入用户名和密码登录到系统当中

    续表6  登录用例描述

    用例标识

    3.5(用户登录用例)

    备选事件流

    4a 输入的信息需要和数据库信息相匹配才能够登录

    备注

    6.系统信息管理

    系统信息管理用例描述,如表7所示。

    表7  系统用例描述

    用例标识

    3.6(系统用例)

    用例名称

    编辑系统的相关信息

    参与者

    管理员

    前置条件

    管理员需要输入正确的用户名和密码登录系统

    后置条件

    修改系统信息

    用例概述

    管理员修改系统信息

    基本事件流

    1.管理员输入正确的用户名和密码登录到系统当中

    2.管理员在系统信息管理界面点击添加按钮提交新添加的系统信息

    3.系统信息添加成功

    备选事件流

    4a 输入的信息需要合法才能够成功添加

    7.个人中心

    个人中心用例描述,如表8所示。

    表8  个人中心用例描述

    用例标识

    3.7(个人中心用例)

    用例名称

    个人中心

    参与者

    用户、管理员

    前置条件

    用户和管理员需要进入到个人中心页面中

    后置条件

    修改个人信息

    用例概述

    用户和管理员管理个人信息

    基本事件流

    1.用户和管理员进入到登录页面当中

    2.用户和管理员输入用户名和密码登录到系统当中

    3.在个人中心页面中修改自己个人信息

    备选事件流

    4a 只有输入的信息合法才能够成功修改

    备注

    8.购物车管理

    购物车管理用例描述,如表9所示。

    表9  购物车管理用例描述

    用例标识

    3.8(购物车管理用例)

    用例名称

    购物车

    参与者

    用户

    前置条件

    用户需要进入到购物车页面中

    后置条件

    管理购物车信息

    用例概述

    用户管理购物车信息

    基本事件流

    1.用户进入到登录页面当中

    2.用户输入用户名和密码登录到系统当中

    3.进入购物车页面中管理信息

    备选事件流

    4a 只有点击相应的按钮才能够管理

    备注

    9.地址管理

    地址管理用例描述,如表10所示。

    表10  地址管理用例描述

    用例标识

    3.9(地址管理用例)

    用例名称

    地址

    参与者

    用户

    前置条件

    用户需要进入到地址页面中

    后置条件

    管理地址信息

    用例概述

    用户管理地址信息

    基本事件流

    1.用户进入到登录页面当中

    2.用户输入用户名和密码登录到系统当中

    3.进入地址页面中管理信息

    备选事件流

    4a 只有点击相应的按钮才能够管理

    备注

    10.订单管理

    订单管理用例描述,如表11所示。

    表11  订单管理用例描述

    用例标识

    3.10(订单管理用例)

    用例名称

    订单

    参与者

    用户

    前置条件

    用户需要进入到订单页面中

    后置条件

    管理订单信息

    用例概述

    用户管理订单信息

    续表11 订单管理用例描述

    用例标识

    3.10(订单管理用例)

    基本事件流

    1.用户进入到登录页面当中

    2.用户输入用户名和密码登录到系统当中

    3.进入订单页面中管理信息

    备选事件流

    4a 只有点击相应的按钮才能够管理

    备注

    11.查看商品信息

    查看商品信息用例描述,如表12所示。

    表12 查看商品信息用例描述

    用例标识

    3.11(查看商品信息用例)

    用例名称

    查看商品信息

    参与者

    用户

    前置条件

    用户需要登录

    后置条件

    查看商品信息

    用例概述

    用户查看商品信息

    基本事件流

    1.用户进入到登录页面当中

    2.用户输入用户名和密码登录到系统当中

    3.进入商品列表界面

    12.收藏商品

    收藏商品用例描述,如表13所示。

    表13  收藏商品用例描述

    用例标识

    3.12(收藏商品用例)

    用例名称

    收藏商品

    参与者

    用户

    前置条件

    用户需要进入到商品详情页面中

    后置条件

    收藏商品

    用例概述

    用户收藏商品

    基本事件流

    1.用户进入到登录页面当中

    2.用户输入用户名和密码登录到系统当中

    3.进入商品详细页面中

    第四章 总体设计

    4.1 系统架构设计

    本生鲜超市销售系统采用的是B/S模式,B/S模式又称浏览器/服务器模式,B/S模式有个很大的好处为如果系统有网络那么就可以运行,它依赖于Web浏览器的技术,因此在使用的时候不需要管理人员安装任何较为专业的软件,管理员在维护软件的时候也无需花费过多的精力。

    浏览器端在向用户提供操作界面的时候还需要保存前端用户输入的各项信息和处理用户提交的请求,业务逻辑执行相关操作处理前端界面传递过来的数据,最后把处理结果显示给用户。服务器端主要处理用户点击页面传递过来的请求,最后去数据库端请求数据库服务器执行相关的操作,从而能够得到相应的数据记录,之后根据情况对取得的数据记录进行处理返回到浏览器端显示相应的结果,架构设计图,如图3所示。

    数据库

    返回操作结果

    开源框架操作

    浏览器

    服务器

    返回操作结果

    操作请求

    图3 架构设计图

    4.2 功能设计

    4.2.1 功能设计分析

    生鲜超市销售系统的目的就是管理商品售卖的日常事务,通过分析,生鲜超市销售系统的业务主体包括不同的角色。因此在生鲜超市销售系统当中首先需要实现角色之间具有不同的权限,要为不同用户分配相应的权限,区分不同角色区别需要使用用户表,用户表中需要设置特殊列区分不同的用户,用户表中存储着用户的个人信息。

    (1)注册

    在生鲜超市销售系统中点击注册按钮实现注册功能,注册流程图,如图4所示。

    输入用户信息

    提示错误

    结束

    添加成功

    用户表中是否存在用户

    用户注册页面

    开始

    图4 注册流程图

    (2)登录

    如果用户输入的信息和数据库的记录存在相同的时候,表示验证成功,此时会跳转到生鲜超市销售系统的主界面当中,则这时表示登录成功。用户如果想要退出登录的话则需要点击退出按钮,登录流程图,如图5所示。

    提示用户名和密码错误

    结束

    将用户名写入session

    跳转至首页面

    用户记录

    刷新登录界面

    获取用户名和密码

    开始

    图5 登录流程图

       (3)结账

    在结账之前用户需要选好商品放入到购物车当中,如果还有想要购买的商品,需要把商品加入到购物车当中,点击结账按钮的时候需要付款,结账流程图,如图6所示。

    开始

    输入用户信息

    显示登录界面

    进入系统

    输入是否正确

    结束

    结账

    图6 结账流程图

    (4)用户管理

    管理员在后台登录系统之后可以对用户信息管理,用户管理流程图,如图7所示。

    结束

    查询用户信息

    删除用户信息

    修改用户信息

    增加用户信息

    选择要进行的操作

    进入用户管理页面

    开始

    图7 用户管理流程图

    4.2.2 功能结构

    用户登录系统后可以购买商品,管理员对系统信息进行管理,功能结构图,如图8所示。

    系统管理

    生鲜信息管理

    生鲜类型管理

    用户管理

    查看商品

    个人中心

    管理员

    用户

    购物车管理

    生鲜超市销售系统

    地址管理

    订单管理

    个人中心

    查看超市资讯

    订单管理

    图8 功能结构图

    4.3 数据库设计

    4.3.1 概念模型设计

    软件开发阶段有一个重要环节是数据库设计,如果软件开发者设计得好数据库的话会对开发工作有好处,在设计数据库的时候要考虑到以后表是否会有扩展性。随着企业的发展,商店的业务需求会逐渐地发生转变,从而导致系统功能需要修改。如果系统功能发生改变的话,系统对应的数据库表也需要发生转变,因此数据库在设计的时候需要考虑到后续修改的需要,系统在设计的时候需要注意灵活性。本生鲜超市销售系统数据量不少很大,因此在使用数据库的使用选择的是MySQL,不用Oracle这种大型的数据库。数据库引擎选择使用InnoDB,InnoDB属于事物型引擎。如果系统有多张表需要同时存取的话,那么数据库引擎可以选择使用InnoDB。全局E-R图,如图9所示。

    用户

    生鲜

    M

    M

    M

    M

    N

    N

    N

    N

    收藏

    评论

    购物车

    订单

    包含

    生鲜类型

    1

    N

    包含

    地址

    N

    1

    图9 全局E-R图

    4.3.2 数据库表

    (1)地址信息表

    地址信息表存储地址信息,地址信息表,如表14所示。

    表14  地址信息表

    列名

    数据类型

    长度

    主外键

    id

    bigint

    20

    addtime

    timestamp

    0

    userid

    bigint

    20

    address

    varchar

    200

    name

    varchar

    200

    续表14  地址信息表

    列名

    数据类型

    长度

    主外键

    phone

    varchar

    200

    isdefault

    varchar

    200

    (2)购物车信息表

    购物车信息表存储购物车信息,购物车信息表,如表15所示。

    表15  购物车信息表

    列名

    数据类型

    长度

    主外键

    id

    bigint

    20

    addtime

    timestamp

    0

    tablename

    varchar

    200

    userid

    bigint

    20

    goodid

    bigint

    20

    goodname

    varchar

    200

    picture

    varchar

    200

    price

    float

    0

    discountprice

    float

    0

    (3)评论信息表

    评论信息表存储系统中的评论信息,评论信息表,如表16所示。

    表16  评论信息表

    列名

    数据类型

    长度

    主外键

    id

    bigint

    20

    addtime

    timestamp

    0

    refid

    bigint

    20

    userid

    bigint

    20

    nickname

    varchar

    200

    reply

    longtext

    0

    (4)超市资讯信息表

    超市资讯信息表存储超市资讯信息,超市资讯信息表,如表17所示。

    表17  超市资讯信息表

    列名

    数据类型

    长度

    主外键

    id

    bigint

    20

    续表17 超市资讯信息表

    列名

    数据类型

    长度

    主外键

    addtime

    timestamp

    0

    title

    varchar

    200

    introduction

    longtext

    0

    picture

    varchar

    200

    content

    longtext

    0

    (5)订单信息表

    订单信息表存储订单信息,订单信息表,如表18所示。

    表18  订单信息表

    列名

    数据类型

    长度

    主外键

    id

    bigint

    20

    addtime

    timestamp

    0

    orderid

    varchar

    200

    tablename

    varchar

    200

    userid

    bigint

    20

    goodid

    bigint

    20

    goodname

    varchar

    200

    picture

    varchar

    200

    buynumber

    int

    11

    price

    float

    0

    discountprice

    float

    0

    total

    float

    0

    type

    int

    11

    status

    varchar

    200

    address

    varchar

    200

    tel

    varchar

    200

    consignee

    varchar

    200

    logistics

    longtext

    0

    (6)商品信息表

    商品信息表存储商品信息,商品信息表,如表19所示。

    表19  商品信息表

    列名

    数据类型

    长度

    主外键

    id

    bigint

    20

    续表19 商品信息表

    列名

    数据类型

    长度

    主外键

    addtime

    timestamp

    0

    shengxianmingcheng

    varchar

    200

    shengxianleixing

    varchar

    200

    tupian

    varchar

    200

    guige

    varchar

    200

    baozhiqizhi

    date

    0

    faburiqi

    date

    0

    shengxianxiangqing

    longtext

    0

    gonghuoshang

    varchar

    200

    price

    float

    0

    onelimittimes

    int

    11

    alllimittimes

    int

    11

    第五章 系统实现

    在设计生鲜超市销售系统的时候,经历了需求分析和总体设计以后,便需要实现系统。系统实现的时候需要根据系统总体设计和需求分析进行实现系统。

    5.1 登录

    用户在登录页面中输入用户名和密码实现登录,输入错误的用户名和密码则不能够登录,登录界面,如图10所示。

    图10 登录界面

    在本生鲜超市销售系统中,为了保证系统运行的安全性,想要使用本系统的功能需要先通过登录的验证,在登录功能中需要使用login页面进行表示前端页面,在login标签中需要进行定义CSS标签从而将登录界面能够显示在浏览器当中,还需要对表单进行定义。登录界面中的输入框需要使用placeholder进行提示用户输入相应的信息。当用户点击登录按钮的时候需要传递信息到loginForm中。

    5.2 用户管理

    管理员在管理用户信息的时候可以添加用户信息,添加信息的时候需要输入必填项,用户管理界面,如图11所示。

    图11 用户管理界面

    在用户管理界面中首先需要使用script标签引入样式供标签进行调用。查看用户信息依赖于form标签显示用户的信息,在form标签中需要定义好CSS样式才能够让表格正常显示在界面当中[7]。添加按钮需要使用button进行表示,在添加按钮中需要设置点击事件,需要设置相应的方法处理前端页面中添加的用户信息。用户详情页面中需要设置detail页面进行表示,使用CSS样式对用户信息进行美化设置,后端从数据库记录取出的信息显示在前端页面当中。管理员如果想要寻找用户的信息,则需要在输入框中输入用户编号传递到业务逻辑模块中根据SQL语句搜索用户信息,搜索出来的信息需要传递到前端页面中进行显示用户的信息。

    5.3 商品管理

    管理员在商品管理界面中可以查看商品详情信息,点击详情按钮可以查看详情信息,商品管理界面,如图12所示。

    图12 商品管理界面

    在商品管理界面中需要使用boostrap框架表示界面的样式,添加商品输入框需要使用input标签实现,用户输入的信息需要能够存储在商品实体中,由input标签传递到商品实体从而进行保存在实体中,当点击提交按钮则需要跳转到form表单定义好的路径把数据转移到后端逻辑处理代码中,在前端页面中还需要设置检测用户输入的数据是否正确,如果用户输入的数据为空,则需要使用layer进行提示。

    5.4 超市资讯管理

    在超市资讯管理界面中管理员可以修改超市资讯信息,点击修改按钮可以修改资讯信息,超市资讯管理界面,如图13所示。

    图13 超市资讯管理界面

    在超市资讯管理界面中首先需要使用script标签引入样式供标签进行调用。查看超市资讯信息依赖于form标签显示超市资讯的信息,在form标签中需要定义好CSS样式才能够让表格正常显示在界面当中。添加按钮需要使用button进行表示,在添加按钮中需要设置点击事件,需要设置相应的方法处理前端页面中添加的超市资讯信息。超市资讯详情页面中需要设置detail页面进行表示,使用CSS样式对超市资讯信息进行美化设置,后端从数据库记录取出的信息显示在前端页面当中。管理员如果想要寻找超市资讯的信息,则需要在输入框中输入超市资讯编号传递到业务逻辑模块中根据SQL语句搜索超市资讯信息,搜索出来的信息需要传递到前端页面中进行显示超市资讯的信息。

    5.5 分类管理

    在分类管理界面中管理员可以管理商品分类信息,点击详情按钮查看商品分类的详情信息,分类管理界面,如图14所示。

    图14 分类管理界面

    在分类管理界面中需要使用boostrap框架表示界面的样式,添加分类输入框需要使用input标签实现,用户输入的信息需要能够存储在分类实体中,由input标签传递到分类实体从而进行保存在实体中,当点击提交按钮则需要跳转到form表单定义好的路径把数据转移到后端逻辑处理代码中,在前端页面中还需要设置检测用户输入的数据是否正确,如果用户输入的数据为空,则需要使用layer进行提示。

    5.6 商品展示

    用户在商品展示界面中可以查看商品的信息,点击商品图片可以购买商品,商品展示界面,如图15所示。

    图15 商品展示界面

    用户登录系统之后可以进入到商品展示界面中,商品展示界面可以以表格的形式展示出商品的信息,当用户点击商品图片的时候可以跳转到相应的商品详细界面当中,当用户点击的时候实际是发送请求到客户端中,客户端使用适配器经过解析之后传递请求到服务端中,服务端利用数据库SQL语句取出数据库记录。

    5.7 商品详细信息

    用户在商品详细界面中可以查看商品详情信息,点击购买按钮可以购买商品,商品详细信息界面,如图16所示。

    图16 商品详细信息界面

    在商品详细信息界面中用户能够浏览商品的详细信息,商品详细信息能够展示主要依赖于客户端发送请求和商品编号到服务端中,服务端传送商品编号到数据库服务器中,数据库服务器利用数据库SQL语句取出商品的详细信息并传递到客户端中。

    5.8 超市资讯展示

    用户登录系统后可以查看超市资讯信息,了解超市的公告信息,超市资讯展示界面,如图17所示。

    图17 超市资讯展示界面

    用户登录系统之后可以进入到超市资讯展示界面中,超市资讯展示界面可以以表格的形式展示出超市资讯的信息,当用户点击超市资讯图片的时候可以跳转到相应的超市资讯详细界面当中,当用户点击的时候实际是发送请求到客户端中,客户端使用适配器经过解析之后传递请求到服务端中,服务端利用数据库SQL语句取出数据库记录。

    5.9 超市资讯详细信息

    用户登录系统后可以查看超市资讯的详情信息,了解超市的详情信息,超市资讯详细信息界面,如图18所示。

    图18 超市资讯详细信息界面

    在超市资讯详细信息界面中用户能够浏览超市资讯的详细信息,超市资讯详细信息能够展示主要依赖于客户端发送请求和超市资讯编号到服务端中,服务端传送超市资讯编号到数据库服务器中,数据库服务器利用数据库SQL语句取出超市资讯的详细信息并传递到客户端中。

    第六章 系统测试

    软件开发完成之后需要进行测试,如果发现有问题的代码块可以通过打断点的方式对代码块进行处理。在生鲜超市销售系统设计实现的过程当中难免有潜在的错误,因此离不开测试的环节。通过软件测试之后,软件才能够上线运行,不然会增加后续维护的费用。本次测试通过实际测试用例完成功能的测试判断是否能够达到功能的要求,通过软件测试能够提前发现生鲜超市销售系统的错误,这样可以在上线之前就完成

    6.1 测试目的

    系统完成之后还需要对程序进行测试。因为在开发的过程当中可能会留下潜在的错误以及缺陷,如果在使用软件之前没有解决掉这些错误,后续会影响软件的使用。虽然软件被开发出来了,但是没有办法使用软件也会造成困扰,这会造成非常大的损失。软件测试能够在一定程度上保证系统的质量。测试的最终目的为系统上线之前尽可能发现系统中存在的潜在错误,潜在错误还包括用户体验不佳等[8]。

    6.2 测试方法

    为了提高生鲜超市销售系统测试效率和成本,本测试方案采用的黑盒测试的方法。

    边界值分析法,边界值分析法能够将软件测试工作按同样形式进行划分,对用户输入的数据测试,还可以选择等价类边界的测试用例,返回的计算结果表示是否正确[9]。

    因果图方法,使用多种条件的组合从而产生出多种不同的测试用例,因国图能够产生出不同的判定表,它能够检测程序输入条件的各个组合情况,使用正交表格进行检测数据并进行分析,目的为提高测试覆盖率。

    错误推测法,基于测试者的直觉进行推算出生鲜超市销售系统所可能存在的错误,从而设计出能够解决错误的专门方法,错误推测法基本核心思想是列举程序中很大可能存在的错误,根据这些错误选择相应的测试用例[10]。

    6.3 测试用例

    (1)用户管理测试用例,如表20所示。

    表20 用户管理用例表

    测试用例

    步骤

    预期结果

    实际结果

    管理员想要搜索用户的信息,则需要在搜索框输入用户的部分信息搜索用户的信息

    在用户管理界面中输入的用户信息跟数据库用户表记录不符合

    搜索失败

    搜索失败

    管理员想要删除用户的信息,则需要点击删除按钮

    在用户管理界面中点击删除按钮,如果被删除的用户信息跟其它表有关联

    删除失败

    删除失败

    管理员修改用户信息

    输入的用户信息跟数据库用户表记录冲突

    修改失败

    修改失败

    (2)商品管理测试用例,如表21所示。

    表21 商品管理用例表

    测试用例

    步骤

    预期结果

    实际结果

    管理员想要搜索商品的信息,则需要在搜索框输入商品的部分信息搜索商品的信息

    在商品管理界面中输入的商品信息跟数据库商品表记录不符合

    搜索失败

    搜索失败

    管理员添加商品信息

    在商品管理界面中输入的商品信息跟数据库商品表记录冲突

    添加失败

    添加失败

    管理员想要删除商品的信息,则需要点击删除按钮

    在商品管理界面中点击删除按钮,如果被删除的商品信息跟其它表有关联

    删除失败

    删除失败

    管理员修改商品信息

    输入的商品信息跟数据库商品表记录冲突

    修改失败

    修改失败

    结论

    当完成了系统设计部分的时候,之后就可以进入到系统开发部分。首先需要根据生鲜超市销售系统的业务需求设计数据库,数据库在设计的时候要遵循三大范式。利用xx开源框架基本实现了生鲜超市销售系统的基本架构。最后对实现各个功能模块。

    系统开发完成之后工作还远远没有结束在使用之前需要对系统进行测试。软件测试非常重要,测试环节在软件开发中占有非常重要的地位。首先,对系统功能模块进行测试,测试是否有兼容性和错别字的问题。之后可以通过表单进行操作系统的数据,还可以通过使用特殊的字符等错误方式检测系统的数据是否严谨。

    最后,通过几个月的论文撰写和代码的设计,我最终完成了生鲜超市销售系统的开发,在开发生鲜超市销售系统的时候,我学会了C#语言和MySQL数据库结合开发生鲜超市销售系统。对于不足之处在于界面设计没有采用过多的CSS样式进行美化。在技术方面,通过开发生鲜超市销售系统,本人对软件体系结构有了更加深刻地认识。

    参考文献

    1. 李曼.MySQL数据库系统中文乱码问题及解决方案[J].电子技术与软件工程,2021(12):176-177.
    2. 徐洋,宋阳.分布式数据库系统安全的分析[J].电子技术与软件工程,2021(10):257-258.
    3. 曾怡苗.基于数据库的网上超市购物系统的设计与实现[J].自动化应用,2022(01):67-70.DOI:10.19769/j.zdhy.2022.01.018.
    4. AlZahrani Ali,Wani Mohamad Ahtisham,Bhat Wasim Ahmad. Forensic analysis of Twitch video streaming activities on Android.[J]. Journal of forensic sciences,2021:
    5. 查燕.软件测试的策略和方法[J].信息与电脑(理论版),2021,33(10):67-69.
    6. Høidalen Hans Kr.,Rocha Angelica C.O.. Analysis of gray Box Modelling of Transformers,[J]. Electric Power Systems Research,2021:197.
    7. 丁凝.软件测试过程的质量控制分析[J].网络安全技术与应用,2021(05):65-66.
    8. 朱海燕.计算机软件测试技术及其应用研究[J].信息记录材料,2021,22(04):187-188.
    9. Sudianto Lande,Simon Petrus. Development application of a quality assurance management information system for Paulus Indonesia Christian University[J]. IOP Conference Series: Materials Science and Engineering,2021:1088(1).
    10. Zhaozhou Chen, Hean Liu. Network Mall System Inb/S Mode[J]. International Journal of Intelligent Information and Management Science,2019,8(3).

    致谢

    光阴似箭,大学生活很快就过去了,四年的青春老少,包括了很多的情感,让人感觉念念不舍,我衷心地感谢这几年来学院的领导和老师对我的培养,你们教会了我知识和文化,让我能够在社会中更好地适应。

    在设计生鲜超市销售系统的过程中,由于之前没有开发生鲜超市销售系统的相关经验,因此会有不少的错误,如果没有同学们的支持和老师的监督,生鲜超市销售系统可能最终会完成不了。通过这次软件设计和论文撰写提高了我很大的能力,虽然指导老师平时有不少的事情需要处理,但是老师还是抽出不少时间对我进行指导,对我的文档进行指点。如果没有指导老师的帮助,系统最后可能实现不了,指导老师不仅教会了我很多的知识,还教会了我除了学习之外的很多能力,这让我的工作和学习都有很大的帮助。毕业设计不仅能够总结多年以来学习的知识,还是对即将踏入社会工作的一份检测,在这个过程当中,我将在大学学习的知识进行结合,学会了独立思考和学习的能力,从零开发实现一个系统让我收益颇丰。在开发软件和论文撰写过程当中,我身边的朋友和舍友给了我很大的帮助。通过这次的经历,我充分了解到了未来工作将要面临的难度,在今后的生活和工作中会不断地努力学习新的知识。

    附录

    public JsonResult Login(string username, string password)

            {

                try

                {

                    var userInfo = _bll.Login(username, password);

                    if (userInfo == null)

                    {

                        return Json(new { Code = -1, Msg = "账号或密码不正确!" });

                    }

                    TokenModel tokenModel = new TokenModel()

                    {

                        Uid = userInfo.Id,

                        Uname = userInfo.Yonghuzhanghao,

                          Role = "Client",

                        Project = "Xiezn.Core",

                        TokenType = "Web",

                        UNickname = "yonghuzhanghao"

                    };

                    return Json(new { Code = 0, Token = JwtHelper.IssueJWT(tokenModel) });

                }

                catch (Exception ex)

                {

                    return Json(new { Code = 500, Msg = ex.Message })

  • 相关阅读:
    Vue3 快速入门及巩固基础
    想学设计模式、想搞架构设计,先学学 UML 系统建模吧
    layui-from
    Vue 3 组合式编程:革新前端开发的新时代
    面试-算法篇
    2核4G服务器5M带宽?选腾讯云轻量应用服务器吧
    分享几个常用的国外英文论文文献数据库,先收藏再说
    通过代码MyBatis-plus实现对表中createTime和updateTime进行自动更新
    Leetcode 高频算法题
    如何在Spring JDBC 中获取自动生成的 ID
  • 原文地址:https://blog.csdn.net/weixin_45769113/article/details/125629897