springboot超市管理系统-计算机毕业设计源码98028

基于java的超市管理系统设计与实现

摘要

本文基于Java语言,设计并实现了一个功能完善的超市管理系统,旨在帮助超市提升管理效率和服务质量。该系统涵盖了商品管理、库存管理、销售管理、员工管理等核心功能模块,通过简洁直观的界面和智能化的数据处理,实现了超市管理的全面化和便捷化。

首先,系统采用Java语言进行开发,采用面向对象的编程思想,实现了系统的模块化设计和可扩展性。通过对商品信息的录入、库存的实时监控、销售数据的统计分析等功能的实现,帮助超市管理人员更好地掌握和管理超市的运营情况。

其次,系统注重用户体验和数据安全,采用合理的权限控制和数据加密技术,保障系统的稳定性和安全性。同时,系统还引入了智能推荐和营销策略模块,根据销售数据和用户行为习惯,为超市提供个性化的商品推荐和促销方案,提高客户满意度和忠诚度。

最后,通过本系统的设计与实现,超市管理人员可以实现对超市运营情况的实时监控和数据分析,为决策提供科学依据。超市管理系统的应用将有助于提升超市的管理效率、降低成本、提高盈利能力,推动超市行业朝着数字化、智能化的方向发展。

关键词:超市管理系统;Java语言;Mysql数据库;SpringBoot框架

Abstract

Based on Java language, this paper designs and implements a fully functional supermarket management system, aiming to help supermarkets improve management efficiency and service quality. The system covers commodity management, inventory management, sales management, staff management and other core functional modules, through the simple and intuitive interface and intelligent data processing, the supermarket management to achieve the comprehensive and convenient.

First of all, the system adopts Java language to develop, adopts object-oriented programming idea, and realizes the modular design and extensibility of the system. Through the input of commodity information, real-time monitoring of inventory, statistical analysis of sales data and other functions, it helps supermarket managers to better grasp and manage the operation of supermarkets.

Secondly, the system pays attention to user experience and data security, and adopts reasonable permission control and data encryption technology to ensure the stability and security of the system. At the same time, the system also introduced the intelligent recommendation and marketing strategy module, according to the sales data and user behavior habits, to provide the supermarket with personalized product recommendation and promotion programs, improve customer satisfaction and loyalty.

Finally, through the design and implementation of this system, supermarket managers can realize real-time monitoring and data analysis of supermarket operations, and provide scientific basis for decision-making. The application of supermarket management system will help to improve the management efficiency of supermarkets, reduce costs, improve profitability, and promote the development of the supermarket industry in the direction of digitalization and intelligence.

Keywords: Supermarket management system; Java language; Mysql database; SpringBoot Framework

目录

基于java的超市管理系统设计与实现

摘要

Abstract

第1章 绪论

1.1 选题背景

1.2 设计目标与意义

1.3 论文结构

第2章 相关技术介绍

2.1相关技术介绍

2.2 springboot框架介绍

2.3 JAVA语言介绍

3章 系统需求分析

3.1系统可行性分析

3.1.1技术可行性分析

3.1.2经济可行性分析

3.1.3操作可行性分析

3.2系统需求分析

3.2.1功能需求分析

3.3系统用例分析

第4章 系统设计

4.1系统功能模块设计

4.2数据库设计

4.2.1数据库概念结构设计

4.2.2数据库逻辑结构设计

5章 关键模块的设计与实现

5.1登录模块

5.2普通用户模块

5.2员工用户模快

5.3管理员模快

第6章  系统测试

6.1测试的目的

6.2系统部分测试

6.3系统测试结果

第6章 结论

参考文献

结束语

第1章 绪论

    1. 选题背景

随着消费需求的不断增长和市场竞争的加剧,超市作为零售行业的重要组成部分,面临着管理难度加大和效率提升的挑战。传统的超市管理方式往往依赖于人工操作和纸质记录,存在信息不实时、数据不准确等问题,难以满足现代消费市场的需求。因此,设计并实现一个基于Java的超市管理系统具有重要意义,可以帮助超市提升管理水平,提高服务质量,满足消费者多样化的需求。

当前,随着信息技术的不断发展和智能化管理的兴起,超市管理系统的数字化转型已成为行业发展的趋势。借助现代技术,如Java编程语言和面向对象的设计思想,可以构建一个功能丰富、智能化的超市管理系统,实现商品库存的实时监控、销售数据的精准分析、员工管理的高效协调等功能,提升超市的竞争力和经营效率。

未来,随着消费者对服务质量和购物体验要求的不断提高,超市管理系统的设计与实现将更加注重用户体验和数据安全。借助Java技术,超市管理系统可以实现系统的稳定性和可靠性,为超市管理人员提供更便捷、智能的管理工具,帮助超市提升运营效率、优化资源配置,适应消费市场的快速变化,推动超市管理水平的不断提升。

    1. 设计目标与意义

本文旨在设计并实现一个基于Java的超市管理系统,主要设计目标包括提升超市管理效率、优化库存管理、改善销售数据分析和提升客户服务质量。通过系统的设计与实现,旨在实现超市管理的信息化、智能化,提高管理人员的工作效率和决策水平,进一步提升超市的竞争力和盈利能力。

超市管理系统的设计与实现具有重要意义,可带来多方面的益处。首先,系统的数字化管理将有助于超市实现库存的精准管理和销售数据的实时监控,降低库存积压和缺货现象,提高超市的经营效率和利润率。其次,系统的智能分析功能可以为超市提供数据支持和决策参考,帮助超市管理人员制定更科学、有效的经营策略,应对市场变化和竞争挑战。

最重要的是,基于Java的超市管理系统将推动超市行业向数字化、智能化发展,提升超市的服务水平和客户体验。通过系统的设计与实现,超市可以实现客户信息管理、促销活动管理、精准营销等功能,为客户提供个性化的购物体验,增强客户忠诚度和满意度,促进超市业务的持续健康发展。

    1. 论文结构

六个章节共同组成了本文研究及设计内容,包括:

第一章:绪论。本文章的开头部分,对本题目的研究背景和研究意义等一些做文字性的描述。

第二章:相关技术介绍。主要介绍springboot编程技术、java嵌入式脚本语言等。

第三章:系统分析。包括系统总体需求描述、功能性角度分析系统需求、非功能性等各个方面分析系统是否可以实现。

第四章:系统设计。本文章的重要部分,提供了系统架构的详细设计和一些主要功能模块的设计说明。

第五章:系统实现。将本系统分为前提的开发工具介绍和后期的功能代码实现。

第六章:系统测试。系统完成后,根据各个模块的测试用例才对各个模块进行功能测试。

第2章 相关技术介绍

2.1相关技术介绍

(1)超市管理系统中的web后台管理中的后端不再使用古老的jsp+javabean+servlet技术,而是使用当前主流的springboot框架,它减少java配置代码,简化编程代码,目前springboot框架也是很多企业选择的框架之一。

(2)超市管理系统中的web后台管理中的前端使用的是bootstrap框架,它配合ajax和jquery可以美化页面设计。

(3)流行vue框架结合jQuery技术,在jQuery基础上扩展一些插件,通过自己定义插件更好的实现前端的设计。

(4)超市管理系统中数据库用的mysql5.7,它执行效率高。

2.2 springboot框架介绍

Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。Spring框架下的事务管理、远程访问等功能均可以通过使用SpringAOP技术实现。Spring的事务管理框架为Java平台带来了一种抽象机制,使本地和全局事务以及嵌套事务能够与保存点一起工作,并且几乎可以在Java平台的任何环境中工作。Spring集成多种事务模板,系统可以通过事务模板、XML或Java注解进行事务配置,并且事务框架集成了消息传递和缓存等功能。Spring的数据访问框架解决了开发人员在应用程序中使用数据库时遇到的常见困难。它不仅对Java:JDBC、iBATS/MyBATIs、Hibernate、Java数据对象(JDO)、ApacheOJB和ApacheCayne等所有流行的数据访问框架中提供支持,同时还可以与Spring的事务管理一起使用,为数据访问提供了灵活的抽象。Spring框架最初是没有打算构建一个自己的WebMVC框架,其开发人员在开发过程中认为现有的StrutsWeb框架的呈现层和请求处理层之间以及请求处理层和模型之间的分离不够,于是创建了SpringMVC。

2.3 JAVA语言介绍

Java语言在计算机的程序应用过程当中,属于非常重要的一个应用软件,因为它的性能比较高,而且能够应用在多重领域 当中,因此该程序在计算机的软件程序应用当中的范围相对来说是比较广泛的。而从专业的技术角度来说,Java程序的应用的 实用性也是非常强的,这是因为它与传统的C语言或C++相比没有太大的基本结构的变化,也就是说它的语法结构是相对单一 ,而且具有稳定的特性,还有更重要的一点是Java程序语言的基本参考对象就是C语言,所以他的程序编写并不是很复杂,而且 还能够起到优化工作效率提升系统设计本身的基础功能的作用,因此他也就受到了非常广泛的程序员们的青睐。 在此次进行系统设计开发研究的过程当中,还发现Java程序语言之所以能够得到市场上更多用户的好评和青睐,其根本原 因在于他能够具备各种语言的自身独特优点的展现,也就是说它的兼容性是常强的。因此,我们因此我们可以说在任何一个程序的开发过程当中,Java语言程序的应用是必不可少的,它他在程序员进行改动的时候,哪怕是一个程序字母的改动,都可以 形成一种特定的程序,这是 Java程序,非常独特的另一个优点。不仅如此,Java源程序的可移植性也是非常大,而且它的安全 系数很高,能够通过不同方式进行移植到其他程序当中,而且可以兼容不同程序的系统,在运行的过程当中,其安全系数也是 非常强的,能够确保用户在使用网络的过程当中去确保网络的安全,而正是基于这样的可移植性,为程序员节约了很多的系统 语言程序的开发设计的时间,这是非常难得的一种自有优势。

3章 系统需求分析

  • 1 章
  • 2 章

3.1系统可行性分析

3.1.1技术可行性分析

超市管理系统存储所使用的是Mysql数据库以及开发中所使用的是IDEA、Tomcat这些开发工具的使用,能够给我们的编写工作带来许多的便利。系统使用SpringBoot+vu进行开发,使系统的可扩展性和维护性更佳,减少Java配置代码,简化编程代码,目前SpringBoot框架也是很多用户选择的框架之一。

3.1.2经济可行性分析

在开发超市管理系统中所使用的开发软件像IDEA开发工具、Tomcat服务器、MySQL数据库、Photoshop图片处理软件等,这些都是开源免费的,这些环境在学校都进行了系统的学习,自己能够独立操作完成,不需要额外花费,而且系统的开发工具从网上都可以直接下载,因此在经济方面是可行的。

3.1.3操作可行性分析

此次项目设计的时候我参考了很多类似系统的成功案例,对它们的操作界面以及功能都进行了系统的分析,将众多案例结合在一起,突出以人为本简化操作,所以具有基本计算机知识的人都会操作本项目。因此操作可行性也没有问题。

3.2系统需求分析

3.2.1功能需求分析

超市管理系统按功能划分了管理员、普通用户和员工用户三个角色,具体功能如下:

普通用户:
(1)注册登录:用户通过注册登录系统,可通过点击头像中我的账户,对个人信息进行增删改查。比如个人资料、头像和密码修改。
(2)超市公告:用户点击看查看网站公告、关于我们、联系电话和网站介绍。
(3)超市咨讯:用户点击可查看超市咨讯,同时可对咨讯文章进行点赞、收藏和评论。
(4)商品信息:用户点击可查看商品列表,可查看商品详情,包括标题、图片、价格、已卖数量、库存,同时可进行收藏、评论和加购操作。
(5)商城管理:用户点击可查看我的购物车、我的订单和添加我的地址。
(6)猜你喜欢:用户点击可通过搜索商品名称和商品分类进行查看猜你喜欢列表,同时可进行点赞、收藏和评论。
(7)个人中心:用户点击头像可查看“个人中心”,包括个人首页、退货信息、订单配送和收藏。点击“退货信息”可填写退货信息,包括订单号、商品名称、申请时间、申请理由。

员工用户:
(1)登录:员工用户可直接输入账号和密码进行登录系统。
(2)后台首页:员工用户点击可查看商品销售金额、销售数量、供应商信息、商品仓库和商品入库、出库统计数据图。
(3)供应商信息管理:员工用户点击可查看供应商信息列表和供应商信息添加;点击“供应商信息添加”,选择员工用户,输入供应商名称、供应商电话、产品类型、产品名称,上传产品图片,输入产品质量、供应价格、供应数量,点击“提交”按钮进行添加。
(4)退货信息管理:员工用户点击可查看退货信息列表。
(5)商品仓库管理:用户点击可查看商品仓库列表;点击“入库”按钮可填写入库信息,包括入库时间、入库数量、供应商姓名和供应商电话。点击“出库”按钮可填写出库信息,包括出库时间和出库数量。
(6)商品入库管理:员工用户点击可查看商品入库列表。
(7)商品出库管理:员工用户点击可查看商品出库列表。
(8)商城管理:员工用户点击可查看商品信息、订单列表和订单配送。如需添加新的商品信息,点击“商品信息”右侧“添加”按钮,上传封面图和主图,输入标题、描述、原价、卖价、库存,选择分类,选择员工用户,输入购买须知和正文,点击“提交”按钮进行添加。同时可查看和管理用户的订单信息,处理订单状态和发货、退货情况。

管理员:
(1)登录:管理员的账号是在数据列表中直接设置生成的,不需要进行注册,可直接输入账号密码登录,同时可对管理员资料进行增删改查。
(2)后台首页:管理员点击可查看商品销售金额、销售数量、供应商信息、商品仓库和商品入库、出库统计数据图。
(3)系统用户:管理员点击可查看管理员、普通用户和员工用户,并可对系统用户进行增删改查。
(4)供应商信息管理:管理员点击可查看供应商信息列表。
(5)退货信息管理:管理员点击可查看退货信息列表。
(6)猜你喜欢管理:管理员点击可查看猜你喜欢列表和猜你喜欢添加;点击“猜你喜欢添加”,输入商品名称、商品分类、商品价格,上传商品图片和输入商品简介,点击“提交”按钮进行添加。
(7)商品仓库管理:管理员点击可查看商品仓库列表和商品仓库添加;点击“商品仓库添加”,输入商品编号、商品类型、商品名称、商品库存、商品价格,上传商品图片,输入商品简介,点击“提交”按钮进行添加。
(8)商品入库管理:管理员点击可查看商品入库列表。
(9)商品出库管理:管理员点击可查看商品出库列表。
(10)系统管理:管理员点击可查看轮播图管理和敏感词管理,如需添加新的轮播图,点击右侧“添加”按钮,上传轮播图,输入标题,点击“确认”按钮进行添加;同时可对轮播图和敏感词进行增删改查。
(11)超市公告管理:当管理员点击“超市公告管理”时,可查看超市公告;如需添加新的公告信息,点击右侧“添加”按钮,输入标题和正文,点击“确认”按钮进行添加。
(12)资源管理:管理员点击可查看超市咨讯和咨讯分类;如需添加新的咨讯,上传封面图,输入标题,选择分类,输入标签、描述和正文,点击“提交”按钮进行添加。同时可对咨讯进行增删改查。
(13)商城管理:管理员点击可查看商品信息、分类列表、订单列表、订单配送和会员等级。点击“会员等级”可添加会员等级信息,包括登记名称和折扣数。


3.2.2非功能性需求分析

超市管理系统的非功能性需求比如超市管理系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下3-1表格中:

3.1超市管理系统非功能需求表

安全性

主要指超市管理系统数据库的安装,数据库的使用和密码的设定必须合乎规范。

可靠性

可靠性是指超市管理系统能够安装用户的指示进行操作,经过测试,可靠性90%以上。

性能

性能是影响超市管理系统占据市场的必要条件,所以性能最好要佳才好。

可扩展性

比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。

易用性

用户只要跟着超市管理系统的页面展示内容进行操作,就可以了。

可维护性

超市管理系统开发的可维护性是非常重要的,经过测试,可维护性没有问题

3.3系统用例分析

超市管理系统用户(普通用户和员工用户)用例图如图3.2所示:

图3.2 用户用例图

超市管理系统管理员用例图如图3.3所示:

图3.3  管理员用例图

第4章 系统设计

  • 2 章

4.1系统功能模块设计

系功能模块设计了管理员模块、普通用户和员工用户模块,管理员模块登录进去对应相应的功能,具体的功能模块图如图4.1所示。

图4.1 超市管理系统功能模块图

4.2数据库设计

数据库的设计承载者系统的各种数据,在建立数据库的时候,主要是数据库模型的设计以及各个数据库表的设计两部分。

4.2.1数据库概念结构设计

下面是整个超市管理系统中主要的数据库表中重要数据E-R实体关系图。

图4.2 超市管理系统功能E-R图

4.2.2数据库逻辑结构设计

通过前面E-R关系图可以看到项目需要创建很多个数据表。以下是项目中的主要数据库表的关系模型:

表access_token (登陆访问时长)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

token_id

int

10

0

N

Y

临时访问牌ID

2

token

varchar

64

0

Y

N

临时访问牌

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

最大寿命:默认2小时

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

user_id

int

10

0

N

N

0

用户编号:

表address (收货地址:)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

address_id

int

10

0

N

Y

收货地址:

2

name

varchar

32

0

Y

N

姓名:

3

phone

varchar

13

0

Y

N

手机:

4

postcode

varchar

8

0

Y

N

邮编:

5

address

varchar

255

0

N

N

地址:

6

user_id

mediumint

8

0

N

N

用户ID:[0,8388607]用户获取其他与用户相关的数据

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

9

default

bit

1

0

N

N

0

默认判断

表article (文章:用于内容管理系统的文章)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

article_id

mediumint

8

0

N

Y

文章id:[0,8388607]

2

title

varchar

125

0

N

Y

标题:[0,125]用于文章和html的title标签中

3

type

varchar

64

0

N

N

0

文章分类:[0,1000]用来搜索指定类型的文章

4

hits

int

10

0

N

N

0

点击数:[0,1000000000]访问这篇文章的人次

5

praise_len

int

10

0

N

N

0

点赞数

6

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

8

source

varchar

255

0

Y

N

来源:[0,255]文章的出处

9

url

varchar

255

0

Y

N

来源地址:[0,255]用于跳转到发布该文章的网站

10

tag

varchar

255

0

Y

N

标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开

11

content

longtext

2147483647

0

Y

N

正文:文章的主体内容

12

img

varchar

255

0

Y

N

封面图

13

description

text

65535

0

Y

N

文章描述

表article_type (文章分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

type_id

smallint

5

0

N

Y

分类ID:[0,10000]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]决定分类显示的先后顺序

3

name

varchar

16

0

N

N

分类名称:[2,16]

4

father_id

smallint

5

0

N

N

0

上级分类ID:[0,32767]

5

description

varchar

255

0

Y

N

描述:[0,255]描述该分类的作用

6

icon

text

65535

0

Y

N

分类图标:

7

url

varchar

255

0

Y

N

外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表auth (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

auth_id

int

10

0

N

Y

授权ID:

2

user_group

varchar

64

0

Y

N

用户组:

3

mod_name

varchar

64

0

Y

N

模块名:

4

table_name

varchar

64

0

Y

N

表名:

5

page_title

varchar

255

0

Y

N

页面标题:

6

path

varchar

255

0

Y

N

路由路径:

7

position

varchar

32

0

Y

N

位置:

8

mode

varchar

32

0

N

N

_blank

跳转方式:

9

add

tinyint

3

0

N

N

1

是否可增加:

10

del

tinyint

3

0

N

N

1

是否可删除:

11

set

tinyint

3

0

N

N

1

是否可修改:

12

get

tinyint

3

0

N

N

1

是否可查看:

13

field_add

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

0

Y

N

查询字段:

16

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

17

table_nav

varchar

500

0

Y

N

跨表导航:

18

option

text

65535

0

Y

N

配置:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表cart (购物车)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

cart_id

int

10

0

N

Y

购物车ID:

2

title

varchar

64

0

Y

N

标题:

3

img

varchar

255

0

N

N

0

图片:

4

user_id

int

10

0

N

N

0

用户ID:

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

state

int

10

0

N

N

0

状态:使用中,已失效

8

price

double

9

2

N

N

0.00

单价:

9

price_ago

double

9

2

N

N

0.00

原价:

10

price_count

double

11

2

N

N

0.00

总价:

11

num

int

10

0

N

N

1

数量:

12

goods_id

mediumint

8

0

N

N

商品id:[0,8388607]

13

type

varchar

64

0

N

N

未分类

商品分类:

14

description

varchar

255

0

Y

N

描述:[0,255]用于产品规格描述

表collect (收藏)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

collect_id

int

10

0

N

Y

收藏ID:

2

user_id

int

10

0

N

N

0

收藏人ID:

3

source_table

varchar

255

0

Y

N

来源表:

4

source_field

varchar

255

0

Y

N

来源字段:

5

source_id

int

10

0

N

N

0

来源ID:

6

title

varchar

255

0

Y

N

标题:

7

img

varchar

255

0

Y

N

封面:

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表comment (评论)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

comment_id

int

10

0

N

Y

评论ID:

2

user_id

int

10

0

N

N

0

评论人ID:

3

reply_to_id

int

10

0

N

N

0

回复评论ID:空为0

4

content

longtext

2147483647

0

Y

N

内容:

5

nickname

varchar

255

0

Y

N

昵称:

6

avatar

varchar

255

0

Y

N

头像地址:[0,255]

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

9

source_table

varchar

255

0

Y

N

来源表:

10

source_field

varchar

255

0

Y

N

来源字段:

11

source_id

int

10

0

N

N

0

来源ID:

表commodity_warehouse (商品仓库)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

commodity_warehouse_id

int

10

0

N

Y

商品仓库ID

2

product_number

varchar

64

0

Y

N

商品编号

3

product_type

varchar

64

0

Y

N

商品类型

4

product_name

varchar

64

0

Y

N

商品名称

5

product_inventory

int

10

0

Y

N

0

商品库存

6

commodity_price

int

10

0

Y

N

0

商品价格

7

product_images

varchar

255

0

Y

N

商品图片

8

product_introduction

text

65535

0

Y

N

商品简介

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表employee_users (员工用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

employee_users_id

int

10

0

N

Y

员工用户ID

2

employee_name

varchar

64

0

Y

N

员工姓名

3

employee_gender

varchar

64

0

Y

N

员工性别

4

employee_phone_number

varchar

64

0

Y

N

员工电话

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表goods (商品信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

goods_id

mediumint

8

0

N

Y

产品id:[0,8388607]

2

title

varchar

125

0

Y

N

标题:[0,125]用于产品和html的<title>标签中

3

img

text

65535

0

Y

N

封面图:用于显示于产品列表页

4

description

varchar

255

0

Y

N

描述:[0,255]用于产品规格描述

5

price_ago

double

8

2

N

N

0.00

原价:[1]

6

price

double

8

2

N

N

0.00

卖价:[1]

7

sales

int

10

0

N

N

0

销量:[0,1000000000]

8

inventory

int

10

0

N

N

0

商品库存

9

type

varchar

64

0

N

N

商品分类:

10

hits

int

10

0

N

N

0

点击量:[0,1000000000]访问这篇产品的人次

11

content

longtext

2147483647

0

Y

N

正文:产品的主体内容

12

img_1

text

65535

0

Y

N

主图1:

13

img_2

text

65535

0

Y

N

主图2:

14

img_3

text

65535

0

Y

N

主图3:

15

img_4

text

65535

0

Y

N

主图4:

16

img_5

text

65535

0

Y

N

主图5:

17

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

18

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

19

customize_field

text

65535

0

Y

N

自定义字段

20

source_table

varchar

255

0

Y

N

来源表:

21

source_field

varchar

255

0

Y

N

来源字段:

22

source_id

int

10

0

N

N

0

来源ID:

23

user_id

int

10

0

Y

N

0

添加人

表goods_type (商品类型)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

type_id

int

10

0

N

Y

商品分类ID:

2

father_id

smallint

5

0

N

N

0

上级分类ID:[0,32767]

3

name

varchar

255

0

Y

N

商品名称:

4

desc

varchar

255

0

Y

N

描述:

5

icon

varchar

255

0

Y

N

图标:

6

source_table

varchar

255

0

Y

N

来源表:

7

source_field

varchar

255

0

Y

N

来源字段:

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表goods_warehousing (商品入库)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

goods_warehousing_id

int

10

0

N

Y

商品入库ID

2

inventory_staff

int

10

0

Y

N

0

库存员工

3

product_number

varchar

64

0

Y

N

商品编号

4

product_type

varchar

64

0

Y

N

商品类型

5

product_name

varchar

64

0

Y

N

商品名称

6

product_inventory

int

10

0

Y

N

0

商品库存

7

storage_time

date

10

0

Y

N

入库时间

8

inventory_quantity

int

10

0

Y

N

0

入库数量

9

supplier_name

varchar

64

0

Y

N

供应商姓名

10

supplier_phone_number

varchar

64

0

Y

N

供应商电话

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表guess_you_like_it (猜你喜欢)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

guess_you_like_it_id

int

10

0

N

Y

猜你喜欢ID

2

product_name

varchar

64

0

Y

N

商品名称

3

product_classification

varchar

64

0

Y

N

商品分类

4

commodity_price

varchar

64

0

Y

N

商品价格

5

product_images

varchar

255

0

Y

N

商品图片

6

product_introduction

text

65535

0

Y

N

商品简介

7

hits

int

10

0

N

N

0

点击数

8

praise_len

int

10

0

N

N

0

点赞数

9

recommend

int

10

0

N

N

0

智能推荐

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hits_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

表logistics_delivery (物流配送)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

logistics_delivery_id

int

10

0

N

Y

物流配送ID

2

order_number

varchar

64

0

Y

N

订单号

3

product_name

varchar

64

0

Y

N

商品名称

4

purchase_quantity

varchar

64

0

Y

N

购买数量

5

total_transaction_amount

double

11

2

Y

N

0.00

交易总额

6

the_date_of_issuance

date

10

0

Y

N

发货日期

7

delivery_number

varchar

30

0

Y

N

配送订单

8

ordinary_users

int

10

0

Y

N

0

普通用户

9

shipping_address

varchar

64

0

Y

N

收货地址

10

delivery_status

varchar

64

0

Y

N

配送状态

11

signing_status

varchar

64

0

Y

N

签收状态

12

recommend

int

10

0

N

N

0

智能推荐

13

contact_name

varchar

255

0

Y

N

联系人名字

14

merchant_id

int

10

0

Y

N

商家id

15

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

16

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notice (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_id

mediumint

8

0

N

Y

公告id:

2

title

varchar

125

0

N

N

标题:

3

content

longtext

2147483647

0

Y

N

正文:

4

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表order (订单)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

order_id

int

10

0

N

Y

订单ID:

2

order_number

varchar

64

0

Y

N

订单号:

3

goods_id

mediumint

8

0

N

N

商品id:[0,8388607]

4

title

varchar

32

0

Y

N

商品标题:

5

img

varchar

255

0

Y

N

商品图片:

6

price

double

10

2

N

N

0.00

价格:

7

price_ago

double

10

2

N

N

0.00

原价:

8

num

int

10

0

N

N

1

数量:

9

price_count

double

8

2

N

N

0.00

总价:

10

norms

varchar

255

0

Y

N

规格:

11

type

varchar

64

0

N

N

未分类

商品分类:

12

contact_name

varchar

32

0

Y

N

联系人姓名:

13

contact_email

varchar

125

0

Y

N

联系人邮箱:

14

contact_phone

varchar

11

0

Y

N

联系人手机:

15

contact_address

varchar

255

0

Y

N

收件地址:

16

postal_code

varchar

9

0

Y

N

邮政编码:

17

user_id

int

10

0

N

N

0

买家ID:

18

merchant_id

mediumint

8

0

N

N

0

商家ID:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

21

description

varchar

255

0

Y

N

描述:[0,255]用于产品规格描述

22

state

varchar

16

0

N

N

待付款

订单状态:待付款,待发货,待签收,已签收,待退款,已退款,已拒绝,已完成

23

remark

text

65535

0

Y

N

订单备注

24

delivery_state

varchar

16

0

Y

N

未配送

发货状态:未配送,已配送

25

vip_discount

double

11

2

Y

N

0.00

折扣

表praise (点赞)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

praise_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

status

bit

1

0

N

N

1

点赞状态:1为点赞,0已取消

表product_information (商品信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

product_information_id

int

10

0

N

Y

商品信息ID

2

employee_users

int

10

0

Y

N

0

员工用户

3

purchase_notice

varchar

64

0

Y

N

购买须知

4

hits

int

10

0

N

N

0

点击数

5

praise_len

int

10

0

N

N

0

点赞数

6

cart_title

varchar

125

0

Y

N

标题:[0,125]用于产品html的标签中

7

cart_img

text

65535

0

Y

N

封面图:用于显示于产品列表页

8

cart_description

varchar

255

0

Y

N

描述:[0,255]用于产品规格描述

9

cart_price_ago

double

8

2

N

N

0.00

原价:[1]

10

cart_price

double

8

2

N

N

0.00

卖价:[1]

11

cart_inventory

int

10

0

N

N

0

商品库存

12

cart_type

varchar

64

0

N

N

未分类

商品分类:

13

cart_content

longtext

2147483647

0

Y

N

正文:产品的主体内容

14

cart_img_1

text

65535

0

Y

N

主图1:

15

cart_img_2

text

65535

0

Y

N

主图2:

16

cart_img_3

text

65535

0

Y

N

主图3:

17

cart_img_4

text

65535

0

Y

N

主图4:

18

cart_img_5

text

65535

0

Y

N

主图5:

19

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表product_outbound (商品出库)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

product_outbound_id

int

10

0

N

Y

商品出库ID

2

inventory_staff

int

10

0

Y

N

0

库存员工

3

product_number

varchar

64

0

Y

N

商品编号

4

product_type

varchar

64

0

Y

N

商品类型

5

product_name

varchar

64

0

Y

N

商品名称

6

product_inventory

int

10

0

Y

N

0

商品库存

7

outbound_time

date

10

0

Y

N

出库时间

8

outbound_quantity

int

10

0

Y

N

0

出库数量

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表regular_users (普通用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

regular_users_id

int

10

0

N

Y

普通用户ID

2

user_name

varchar

64

0

Y

N

用户姓名

3

user_gender

varchar

64

0

Y

N

用户性别

4

contact_phone_number

varchar

16

0

Y

N

联系电话

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表return_information (退货信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

return_information_id

int

10

0

N

Y

退货信息ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

user_name

varchar

64

0

Y

N

用户姓名

4

order_number

varchar

64

0

Y

N

订单号

5

product_name

varchar

64

0

Y

N

商品名称

6

application_time

date

10

0

Y

N

申请时间

7

reason_for_application

text

65535

0

Y

N

申请理由

8

employee_users

int

10

0

Y

N

0

员工用户

9

examine_state

varchar

16

0

N

N

未审核

审核状态

10

examine_reply

varchar

16

0

Y

N

审核回复

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表sensitive_vocabulary (敏感词汇)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

sensitive_vocabulary_id

int

10

0

N

Y

敏感词汇ID

2

sensitive_vocabulary

varchar

64

0

Y

N

敏感词汇

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表slides (轮播图)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

slides_id

int

10

0

N

Y

轮播图ID:

2

title

varchar

64

0

Y

N

标题:

3

content

varchar

255

0

Y

N

内容:

4

url

varchar

255

0

Y

N

链接:

5

img

varchar

255

0

Y

N

轮播图:

6

hits

int

10

0

N

N

0

点击量:

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表supplier_information (供应商信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

supplier_information_id

int

10

0

N

Y

供应商信息ID

2

employee_users

int

10

0

Y

N

0

员工用户

3

supplier_name

varchar

64

0

Y

N

供应商姓名

4

supplier_phone_number

varchar

64

0

Y

N

供应商电话

5

product_type

varchar

64

0

Y

N

产品类型

6

product_name

varchar

64

0

Y

N

产品名称

7

product_images

varchar

255

0

Y

N

产品图片

8

product_quality

varchar

64

0

Y

N

产品质量

9

supply_price

int

10

0

Y

N

0

供应价格

10

supply_quantity

int

10

0

Y

N

0

供应数量

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

upload_id

int

10

0

N

Y

上传ID

2

name

varchar

64

0

Y

N

文件名

3

path

varchar

255

0

Y

N

访问路径

4

file

varchar

255

0

Y

N

文件路径

5

display

varchar

255

0

Y

N

显示顺序

6

father_id

int

10

0

Y

N

0

父级ID

7

dir

varchar

255

0

Y

N

文件夹

8

type

varchar

32

0

Y

N

文件类型

表user (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_id

mediumint

8

0

N

Y

用户ID:[0,8388607]用户获取其他与用户相关的数据

2

state

smallint

5

0

N

N

1

账户状态:[0,10](1可用|2异常|3已冻结|4已注销)

3

user_group

varchar

32

0

Y

N

所在用户组:[0,32767]决定用户身份和权限

4

login_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

上次登录时间:

5

phone

varchar

11

0

Y

N

手机号码:[0,11]用户的手机号码,用于找回密码时或登录时

6

phone_state

smallint

5

0

N

N

0

手机认证:[0,1](0未认证|1审核中|2已认证)

7

username

varchar

16

0

N

N

用户名:[0,16]用户登录时所用的账户名称

8

nickname

varchar

16

0

Y

N

昵称:[0,16]

9

password

varchar

64

0

N

N

密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成

10

email

varchar

64

0

Y

N

邮箱:[0,64]用户的邮箱,用于找回密码时或登录时

11

email_state

smallint

5

0

N

N

0

邮箱认证:[0,1](0未认证|1审核中|2已认证)

12

avatar

varchar

255

0

Y

N

头像地址:[0,255]

13

open_id

varchar

255

0

Y

N

针对获取用户信息字段

14

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

15

vip_level

varchar

255

0

Y

N

会员等级

16

vip_discount

double

11

2

Y

N

0.00

会员折扣

表user_group (用户组:用于用户前端身份和鉴权)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

group_id

mediumint

8

0

N

Y

用户组ID:[0,8388607]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]

3

name

varchar

16

0

N

N

名称:[0,16]

4

description

varchar

255

0

Y

N

描述:[0,255]描述该用户组的特点或权限范围

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

register

smallint

5

0

Y

N

0

注册位置:

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表vip_level (论坛分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

vip_level_id

smallint

5

0

N

Y

等级ID:[0,10000]

2

name

varchar

255

0

N

N

等级名称:[2,16]

3

discount

double

11

2

N

N

折扣

4

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5章 关键模块的设计与实现

  • 3 章

5.1登录模块

管理员、用户在登录界面输入账号+密码,完成验证,点击“登录”按钮,系统在用户数据库表中会对管理员、用户的账号进行匹配,账号+密码正确的话,就会登录到系统中各个用户的主管理界面,否则提示对应的信息,返回到登录的界面,其主界面展示如下图4.1所示。

图5.1 登录界面图

登录代码如下:

/**

     * 登录

     * @param data

     * @param httpServletRequest

     * @return

     */

    @PostMapping("login")

    public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {

        log.info("[执行登录接口]");

        String username = data.get("username");

        String email = data.get("email");

        String phone = data.get("phone");

        String password = data.get("password");

        List resultList = null;

        Map<String, String> map = new HashMap<>();

        if(username != null && "".equals(username) == false){

            map.put("username", username);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }

        else if(email != null && "".equals(email) == false){

            map.put("email", email);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }

        else if(phone != null && "".equals(phone) == false){

            map.put("phone", phone);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }else{

            return error(30000, "账号或密码不能为空");

        }

        if (resultList == null || password == null) {

            return error(30000, "账号或密码不能为空");

        }

        //判断是否有这个用户

        if (resultList.size()<=0){

            return error(30000,"用户不存在");

        }

        User byUsername = (User) resultList.get(0);

        Map<String, String> groupMap = new HashMap<>();

        groupMap.put("name",byUsername.getUserGroup());

        List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));

        if (groupList.size()<1){

            return error(30000,"用户组不存在");

        }

        UserGroup userGroup = (UserGroup) groupList.get(0);

        //查询用户审核状态

        if (!StringUtils.isEmpty(userGroup.getSourceTable())){

            String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());

            if (res==null){

                return error(30000,"用户不存在");

            }

            if (!res.equals("已通过")){

                return error(30000,"该用户审核未通过");

            }

        }

        //查询用户状态

        if (byUsername.getState()!=1){

            return error(30000,"用户非可用状态,不能登录");

        }

        String md5password = service.encryption(password);

        if (byUsername.getPassword().equals(md5password)) {

            // 存储Token到数据库

            AccessToken accessToken = new AccessToken();

            accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));

            accessToken.setUser_id(byUsername.getUserId());

            Duration duration = Duration.ofSeconds(7200L);

            redisTemplate.opsForValue().set(accessToken.getToken(), accessToken,duration);

            // 返回用户信息

            JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));

            user.put("token", accessToken.getToken());

            JSONObject ret = new JSONObject();

            ret.put("obj",user);

            return success(ret);

        } else {

            return error(30000, "账号或密码不正确");

        }

}

5.2普通用户模块

超市咨讯:用户点击可查看超市咨讯,同时可对咨讯文章进行点赞、收藏和评论。界面图如下。

图5.2 超市咨讯界面图

商品信息:用户点击可查看商品列表,可查看商品详情,包括标题、图片、价格、已卖数量、库存,同时可进行收藏、评论和加购操作。界面图如下。

图5.3 商品信息界面图

猜你喜欢:用户点击可通过搜索商品名称和商品分类进行查看猜你喜欢列表,同时可进行点赞、收藏和评论。界面图如下。

图5.4 猜你喜欢界面图

个人中心:用户点击头像可查看“个人中心”,包括个人首页、退货信息、订单配送和收藏。点击“退货信息”可填写退货信息,包括订单号、商品名称、申请时间、申请理由。界面图如下。

图5.5 个人中心界面图

图5.6 退货信息界面图

5.2员工用户模快

商城管理:员工用户点击可查看商品信息、订单列表和订单配送。如需添加新的商品信息,点击“商品信息”右侧“添加”按钮,上传封面图和主图,输入标题、描述、原价、卖价、库存,选择分类,选择员工用户,输入购买须知和正文,点击“提交”按钮进行添加。同时可查看和管理用户的订单信息,处理订单状态和发货、退货情况。界面图如下。

图5.7 商城管理添加界面图

图5.8 商品信息添加界面图

供应商信息管理:员工用户点击可查看供应商信息列表和供应商信息添加;点击“供应商信息添加”,选择员工用户,输入供应商名称、供应商电话、产品类型、产品名称,上传产品图片,输入产品质量、供应价格、供应数量,点击“提交”按钮进行添加。界面图如下。

图5.9  供应商信息添加界面图

商品仓库管理:用户点击可查看商品仓库列表;点击“入库”按钮可填写入库信息,包括入库时间、入库数量、供应商姓名和供应商电话。点击“出库”按钮可填写出库信息,包括出库时间和出库数量。界面图如下。

图5.10  入库信息添加界面图

5.3管理员模快

系统管理:管理员点击可查看轮播图管理和敏感词管理,如需添加新的轮播图,点击右侧“添加”按钮,上传轮播图,输入标题,点击“确认”按钮进行添加;同时可对轮播图和敏感词进行增删改查。界面如下图所示。

图5.11 系统管理界面图

添加代码如下:

  @RequestMapping("/get_obj")

    public Map<String, Object> obj(HttpServletRequest request) {

        List resultList = service.selectBaseList(service.select(service.readQuery(request), service.readConfig(request)));

        if (resultList.size() > 0) {

            JSONObject jsonObject = new JSONObject();

            jsonObject.put("obj",resultList.get(0));

            return success(jsonObject);

        } else {

            return success(null);

        }

    }

资源管理:管理员点击可查看超市咨讯和咨讯分类;如需添加新的咨讯,上传封面图,输入标题,选择分类,输入标签、描述和正文,点击“提交”按钮进行添加。同时可对咨讯进行增删改查。界面如下图所示。

图5.12  资源管理界面图

猜你喜欢管理:管理员点击可查看猜你喜欢列表和猜你喜欢添加;点击“猜你喜欢添加”,输入商品名称、商品分类、商品价格,上传商品图片和输入商品简介,点击“提交”按钮进行添加。界面如下图所示。

图5.13  猜你喜欢添加界面图

商品仓库管理:管理员点击可查看商品仓库列表和商品仓库添加;点击“商品仓库添加”,输入商品编号、商品类型、商品名称、商品库存、商品价格,上传商品图片,输入商品简介,点击“提交”按钮进行添加。界面如下图所示。

图5.14  商品仓库添加界面图

第6章  系统测试

  • 4 章

6.1测试的目的

通过前面章节的介绍,我们可以看到超市管理系统已经完成了,但是能不能投入使用还是未知,因为在每个项目正式使用之前必须对开发的项目进行测试,如果不进行测试一旦投入使用可能会出现很多未可知的问题,比如使用人数太多导致系统瘫痪,比如某一功能存在bug信息填写错误等,这些错误将给使用者带来很多的困扰,甚至造成更大的损失,因此测试是项目投入使用的最后一步,为用户提供一个运行顺畅、完美的项目也就是我们进行最后测试的目的。

6.2系统部分测试

用户登录功能测试:

表6.1 用户登录功能测试表

测试名称

测试功能

操作过程

预期结果

测试结果

用户登录模块测试

用户登录成功的情况

点击前登录界面输入账号和密码分别输入admin和admin后点击“登录”按钮。

登录成功并调整到用户界面

正确

商品信息添加功能测试:

表6.2商品信息添加功能测试表

测试名称

测试功能

操作过程

预期结果

测试结果

商品信息添加模块测试

商品信息添加成功的情况

在商城管理的页面中将点击商品信息添加,输入商品信息,输入正确的信息后然后点击“提交”按钮。

提示添加成功

正确

商品信息添加模块测试

商品信息添加失败的情况

在商城管理页面中不填写的商品名称,其他信息正常输入“提交”按钮。

提示“添加失败,信息不能为空”

正确

查询猜你喜欢功能模块测试:

表6.3 查询猜你喜欢功能测试表

测试名称

测试功能

操作过程

预期结果

测试结果

查询猜你喜欢功能测试

查询成功的情况

在猜你喜欢界面输入商品名称进行查询

查询成功

正确

密码修改功能测试:

表6.4密码修改功能测试表

用例名称

密码修改测试用例

目的

测试管理员密码修改功能

前提

管理员用户正常登录情况下

测试流程

1)管理员密码修改并完成填写。

2)点击进行提交。

预期结果

使用新的密码可以登录

实际结果

实际结果与预期结果一致

6.3系统测试结果

通过编写超市管理系统的测试用例,已经检测完毕用户的登录模块、商品信息添加模块、猜你喜欢息查看、密码修改的功能测试,在对以上功能得测试过程中,发现了系统中的很多漏送并进行了完善,经过多人在线进行测试,系统完全可以正常运行,当然在后期的维护中系统将不断完善。

第6章 结论

在本次系统设计的过程中,我们将深入探讨基于Java的超市管理系统,从研究背景、目标到实施方案,并详细阐述每一章的内容,以及该系统的硬件和软件环境。其中包含了:需求分析+功能需求+用例图,以此表示系统的功能的流程、模块的处理过程。绘制总体各个结构+流程图,并根据功能细致设计的需要,再来设计数据库的表结构,并绘制E-R图,实现程序接口,然后完成调试。最后,本文进行了总结,并提出了下一步的发展方向。

在这次设计中,我通过不断地探索和学习,掌握了Java技术和框架,并创建了一个基于Java超市管理系统,这让我对编写系统的必要性和运行环境有了更深入的了解。为了更好地完成这个项目,我花费了大量的时间,不仅丰富了自己的知识面,并且学习并积累了许多宝贵经验。系统刚开始时,我对springboot框架这个技术只是稍微有些了解,但是通过这次基于Java的springboot框架超市管理系统设计,让我更加深入地去探讨了,springboot框架运转的原理,从中学到了如何去配置服务器环境和连接数据库。在基于Java的超市管理系统设计的过程中,我还学会了使用dreamweaver来建设一个简单的页面,这样可以极大程度提高我的实际操作能力,也因此激发了我对这个领域的浓烈兴趣。

系统的这一次发展提升了我自己的能力,也学到了框架如何实现基本功能。同时在编程代码各方面也做了的很多尝试,从关注代码错误到做一些小的修改,都有了很大的提高。同时,在撰写论文时,还查阅了大量的参考资料,对论文的结构和文献资料进行了总结和分析。已作出努力,尽量减少错误和走弯路,从一开始的系统功能概念化到逐一实施,并进行了广泛的研究报告。也许后续操作过程中还有很多实现不完美的功能,但我依然会继续学习,努力在以后的软件开发、编号代码中吸取教训,总结不完美之处,努力的在软件开发越来越强。以上是我在本次设计中的总结,希望在未来取得更好的成绩。

参考文献

[1]赵旭东.计算机软件开发与设计中Java语言的应用研究[J].信息与电脑(理论版),2023,35(24):31-33.

[2]马庆.计算机软件开发中JAVA编程语言的应用[J].山西电子技术,2023(06):84-86+98.

[3]尹应荆.JAVA编程语言在计算机软件开发中的应用[J].石河子科技,2023(05):45-47.

[4]Liang C . [J]. Academic Journal of Computing & Information Science,2023,6(9).

[5]袁琳琳.浅析Java语言在计算机软件开发中的应用[J].信息记录材料,2023,24(09):81-83.DOI:10.16009/j.cnki.cn13-1295/tq.2023.09.006.

[6]崔祥.基于Java超市可视化管理系统设计[J].网络安全技术与应用,2023(02):45-46.

[7]张静,胡宁玉,冯丽萍.基于Java的超市进销存管理系统的设计与实现[J].信息与电脑(理论版),2022,34(18):124-127+131.

[8]吕冠艳,李奋华.MVC架构下的校园超市管理系统的设计[J].计算机时代,2022(04):123-125.DOI:10.16644/j.cnki.cn33-1094/tp.2022.04.034.

[9]袁明坤,曾丽.基于JavaWeb的超市商品采购管理系统设计与实现[J].电脑知识与技术,2022,18(05):61-63.DOI:10.14004/j.cnki.ckt.2022.0346.

[10]庄帅.基于B/S架构设计实现超市管理系统[J].信息系统工程,2022(01):105-108.

[11]梅瑞泽,王静.超市信息管理系统的设计与实现[J].电子测试,2021(18):78-80.DOI:10.16520/j.cnki.1000-8519.2021.18.028.

[12]吴永豪.基于大数据平台的无人智慧超市管理系统设计[J].电子技术与软件工程,2021(12):189-191.

[13]岳纹.企业小型超市管理系统的研究与开发[J].电脑编程技巧与维护,2021(05):89-91.DOI:10.16184/j.cnki.comprg.2021.05.036.

[14]王立新.基于信息技术的超市后台管理系统研究[J].无线互联科技,2021,18(08):60-61.

[15]龙棉棉,姚敦红.基于UML的超市信息系统设计[J].信息与电脑(理论版),2020,32(14):101-103.

[16]李迪禹.超市管理信息系统设计与实现[J].北方经贸,2020(01):63-66.

[17]毛勇博. 基于J2EE架构的超市管理系统的研究与开发[D].西安电子科技大学,2020.DOI:10.27389/d.cnki.gxadu.2019.000794.


 

结束语

至此论文结束,感谢您的阅读。在此我要特别的感谢我的导师,虽然我在实习期间很忙,论文撰写的时候经常是停停改改,但是我的导师依旧十分的负责,时不时的询问我的任务进展情况,跟进我的论文进度,在指导老师的帮助下,我逐步完成了自己的论文和程序,从导师身上也学习到很多知识和经验,这些知识和经验令我受益匪浅。同时我也从导师身上看到了自己的不足,不论是在技术层面上还是在对待工作的态度上,导师如同明镜一般照出了我的缺点我的不足。此外,我还要感谢在我实习期间在论文和程序上帮助过我的同学和社会人士,此前我对于SpringBoot框架方面的一些知识还不了解,是他们在我编写程序过程中给了我很多的启发和感想,也帮助了我对于程序的调试和检测。没有他们我是不能顺利完成本次毕业设计的。至此,我的毕业设计就画上了一个圆满的句号了。

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值