基于JAVA+SpringBoot+Vue+uniapp的微信小程序点餐平台
该系统是一个基于Java+SpringBoot后端、Vue+Uniapp前端的微信小程序点餐平台。平台实现了在线菜单浏览、购物车管理、订单提交与支付、后台数据统计等核心功能,为餐饮商家提供高效便捷的数字化点餐解决方案。项目采用前后端分离架构,适合作为毕业设计或实际项目开发,展示了现代Web与移动应用系统的完整实现流程。
浏览 14 次
Supermarket Information Management System Based on SpringBoot
该系统是基于SpringBoot框架开发的超市信息管理系统,旨在实现商品、库存、销售及员工信息的集中管理与高效操作。核心功能包括商品分类管理、库存实时监控、销售数据分析以及用户权限控制。该系统适用于毕业设计或实际项目实现,展示了现代Web系统开发中后端架构与信息管理的最佳实践。
该系统是基于SpringBoot框架开发的超市信息管理系统,旨在实现商品、库存、销售及员工信息的集中管理与高效操作。核心功能包括商品分类管理、库存实时监控、销售数据分析以及用户权限控制。该系统适用于毕业设计或实际项目实现,展示了现代Web系统开发中后端架构与信息管理的最佳实践。
一、项目背景介绍:
随着我国经济的不断发展,许多零售企业在发展过程中面临着业务不断增长,而管理水平相对滞后的困境。尤其是许多企业在逐年经营过程中,积累了大量历史数据,但是信息比较分散、相互独立。在信息技术迅猛发展的今天,处于竞争性行业的中小型零售企业如何在未来的市场竞争中借助信息化实时掌握营销动态,不断提升服务水平,提高资源配置水平和核心竞争力,成为他们不得不面对的问题。
在零售企业中引入超市信息管理系统,利用收银机将超市中各种商品的进货、退货、销售等信息输入电脑,使得经营管理者能够及时掌控经营信息,作出合适的各种采购及货物库存决策。
超市信息管理系统,可完成商品采购订货、销售、盘点库存、财务分析等管理功能,并对商品的购销存状态实时跟踪记录。本论文主要介绍超市信息管理系统中的系统登录、商品录入、库存管理、商品销售等部分内容,以展现设计一个完整信息管理系统的思路和步骤。
二、项目技术简介:
JAVA:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
Spring:Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。 Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序以及小应用程序之中。Spring框架主要由七部分组成,分别是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC。
SpringBoot:Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
Mybatis:MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。
iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)。
Thymeleaf提供了一个用于整合Spring MVC的可选模块,在应用开发中,你可以使用Thymeleaf来完全代替JSP或其他模板引擎,如Velocity、FreeMarker等。Thymeleaf的主要目标在于提供一种可被浏览器正确显示的、格式良好的模板创建方式,因此也可以用作静态建模。你可以使用它创建经过验证的XML与HTML模板。相对于编写逻辑或代码,开发者只需将标签属性添加到模板中即可。接下来,这些标签属性就会在DOM(文档对象模型)上执行预先制定好的逻辑。
Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。
三、系统功能模块介绍:

四、数据库设计:
1:'销售账单表'(bill)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| id | bigint | NULL | 账单项目编号 |
| product_id | varchar | NULL | 商品编号 |
| product_name | varchar | NULL | 商品名称 |
| category_id | bigint | NULL | 分类编号 |
| category_name | varchar | NULL | 所属分类 |
| purchase_price | decimal | NULL | 进货价 |
| sale_price | decimal | NULL | 销售价 |
| profits | decimal | NULL | 净利润 |
| number | bigint | NULL | 购买数量 |
| create_time | datetime | NULL | 创建日期 |
2:'代码生成业务表'(gen_table)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| table_id | bigint | NULL | 编号 |
| table_name | varchar | NULL | 表名称 |
| table_comment | varchar | NULL | 表描述 |
| sub_table_name | varchar | NULL | 关联子表的表名 |
| sub_table_fk_name | varchar | NULL | 子表关联的外键名 |
| class_name | varchar | NULL | 实体类名称 |
| tpl_category | varchar | NULL | 使用的模板(crud单表操作 tree树表操作 sub主子表操作) |
| package_name | varchar | NULL | 生成包路径 |
| module_name | varchar | NULL | 生成模块名 |
| business_name | varchar | NULL | 生成业务名 |
| function_name | varchar | NULL | 生成功能名 |
| function_author | varchar | NULL | 生成功能作者 |
| gen_type | char | NULL | 生成代码方式(0zip压缩包 1自定义路径) |
| gen_path | varchar | NULL | 生成路径(不填默认项目路径) |
| options | varchar | NULL | 其它生成选项 |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
| remark | varchar | NULL | 备注 |
3:'代码生成业务表字段'(gen_table_column)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| column_id | bigint | NULL | 编号 |
| table_id | varchar | NULL | 归属表编号 |
| column_name | varchar | NULL | 列名称 |
| column_comment | varchar | NULL | 列描述 |
| column_type | varchar | NULL | 列类型 |
| java_type | varchar | NULL | JAVA类型 |
| java_field | varchar | NULL | JAVA字段名 |
| is_pk | char | NULL | 是否主键(1是) |
| is_increment | char | NULL | 是否自增(1是) |
| is_required | char | NULL | 是否必填(1是) |
| is_insert | char | NULL | 是否为插入字段(1是) |
| is_edit | char | NULL | 是否编辑字段(1是) |
| is_list | char | NULL | 是否列表字段(1是) |
| is_query | char | NULL | 是否查询字段(1是) |
| query_type | varchar | NULL | 查询方式(等于、不等于、大于、小于、范围) |
| html_type | varchar | NULL | 显示类型(文本框、文本域、下拉框、复选框、单选框、日期控件) |
| dict_type | varchar | NULL | 字典类型 |
| sort | int | NULL | 排序 |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
4:'商品表'(product)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| auto_id | int | NULL | 商品分类编号 |
| id | varchar | NULL | 条形码 |
| category_id | bigint | NULL | 商品分类编号 |
| provider_id | bigint | NULL | 供应商编号 |
| name | varchar | NULL | 商品名称 |
| factory_address | varchar | NULL | 生产地址 |
| purchase_price | decimal | NULL | 进货价 |
| sale_price | decimal | NULL | 销售价 |
| stock | int | NULL | 库存 |
5:'商品分类表'(product_category)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| id | int | NULL | 商品分类编号 |
| name | varchar | NULL | 商品分类名称 |
6:'供应商表'(product_provider)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| id | bigint | NULL | 供应商编号 |
| name | varchar | NULL | 供应商名称 |
| contact_name | varchar | NULL | 联系人姓名 |
| contact_phone | varchar | NULL | 联系人电话 |
| address | varchar | NULL | 供应商地址 |
7:'Blob类型的触发器表'(qrtz_blob_triggers)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sched_name | varchar | NULL | 调度名称 |
| trigger_name | varchar | NULL | qrtz_triggers表trigger_name的外键 |
| trigger_group | varchar | NULL | qrtz_triggers表trigger_group的外键 |
| blob_data | blob | NULL | 存放持久化Trigger对象 |
8:'日历信息表'(qrtz_calendars)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sched_name | varchar | NULL | 调度名称 |
| calendar_name | varchar | NULL | 日历名称 |
| calendar | blob | NULL | 存放持久化calendar对象 |
9:'Cron类型的触发器表'(qrtz_cron_triggers)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sched_name | varchar | NULL | 调度名称 |
| trigger_name | varchar | NULL | qrtz_triggers表trigger_name的外键 |
| trigger_group | varchar | NULL | qrtz_triggers表trigger_group的外键 |
| cron_expression | varchar | NULL | cron表达式 |
| time_zone_id | varchar | NULL | 时区 |
10:'已触发的触发器表'(qrtz_fired_triggers)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sched_name | varchar | NULL | 调度名称 |
| entry_id | varchar | NULL | 调度器实例id |
| trigger_name | varchar | NULL | qrtz_triggers表trigger_name的外键 |
| trigger_group | varchar | NULL | qrtz_triggers表trigger_group的外键 |
| instance_name | varchar | NULL | 调度器实例名 |
| fired_time | bigint | NULL | 触发的时间 |
| sched_time | bigint | NULL | 定时器制定的时间 |
| priority | int | NULL | 优先级 |
| state | varchar | NULL | 状态 |
| job_name | varchar | NULL | 任务名称 |
| job_group | varchar | NULL | 任务组名 |
| is_nonconcurrent | varchar | NULL | 是否并发 |
| requests_recovery | varchar | NULL | 是否接受恢复执行 |
11:'任务详细信息表'(qrtz_job_details)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sched_name | varchar | NULL | 调度名称 |
| job_name | varchar | NULL | 任务名称 |
| job_group | varchar | NULL | 任务组名 |
| description | varchar | NULL | 相关介绍 |
| job_class_name | varchar | NULL | 执行任务类名称 |
| is_durable | varchar | NULL | 是否持久化 |
| is_nonconcurrent | varchar | NULL | 是否并发 |
| is_update_data | varchar | NULL | 是否更新数据 |
| requests_recovery | varchar | NULL | 是否接受恢复执行 |
| job_data | blob | NULL | 存放持久化job对象 |
12:'存储的悲观锁信息表'(qrtz_locks)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sched_name | varchar | NULL | 调度名称 |
| lock_name | varchar | NULL | 悲观锁名称 |
13:'暂停的触发器表'(qrtz_paused_trigger_grps)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sched_name | varchar | NULL | 调度名称 |
| trigger_group | varchar | NULL | qrtz_triggers表trigger_group的外键 |
14:'调度器状态表'(qrtz_scheduler_state)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sched_name | varchar | NULL | 调度名称 |
| instance_name | varchar | NULL | 实例名称 |
| last_checkin_time | bigint | NULL | 上次检查时间 |
| checkin_interval | bigint | NULL | 检查间隔时间 |
15:'简单触发器的信息表'(qrtz_simple_triggers)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sched_name | varchar | NULL | 调度名称 |
| trigger_name | varchar | NULL | qrtz_triggers表trigger_name的外键 |
| trigger_group | varchar | NULL | qrtz_triggers表trigger_group的外键 |
| repeat_count | bigint | NULL | 重复的次数统计 |
| repeat_interval | bigint | NULL | 重复的间隔时间 |
| times_triggered | bigint | NULL | 已经触发的次数 |
16:'同步机制的行锁表'(qrtz_simprop_triggers)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sched_name | varchar | NULL | 调度名称 |
| trigger_name | varchar | NULL | qrtz_triggers表trigger_name的外键 |
| trigger_group | varchar | NULL | qrtz_triggers表trigger_group的外键 |
| str_prop_1 | varchar | NULL | String类型的trigger的第一个参数 |
| str_prop_2 | varchar | NULL | String类型的trigger的第二个参数 |
| str_prop_3 | varchar | NULL | String类型的trigger的第三个参数 |
| int_prop_1 | int | NULL | int类型的trigger的第一个参数 |
| int_prop_2 | int | NULL | int类型的trigger的第二个参数 |
| long_prop_1 | bigint | NULL | long类型的trigger的第一个参数 |
| long_prop_2 | bigint | NULL | long类型的trigger的第二个参数 |
| dec_prop_1 | decimal | NULL | decimal类型的trigger的第一个参数 |
| dec_prop_2 | decimal | NULL | decimal类型的trigger的第二个参数 |
| bool_prop_1 | varchar | NULL | Boolean类型的trigger的第一个参数 |
| bool_prop_2 | varchar | NULL | Boolean类型的trigger的第二个参数 |
17:'触发器详细信息表'(qrtz_triggers)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sched_name | varchar | NULL | 调度名称 |
| trigger_name | varchar | NULL | 触发器的名字 |
| trigger_group | varchar | NULL | 触发器所属组的名字 |
| job_name | varchar | NULL | qrtz_job_details表job_name的外键 |
| job_group | varchar | NULL | qrtz_job_details表job_group的外键 |
| description | varchar | NULL | 相关介绍 |
| next_fire_time | bigint | NULL | 上一次触发时间(毫秒) |
| prev_fire_time | bigint | NULL | 下一次触发时间(默认为-1表示不触发) |
| priority | int | NULL | 优先级 |
| trigger_state | varchar | NULL | 触发器状态 |
| trigger_type | varchar | NULL | 触发器的类型 |
| start_time | bigint | NULL | 开始时间 |
| end_time | bigint | NULL | 结束时间 |
| calendar_name | varchar | NULL | 日程表名称 |
| misfire_instr | smallint | NULL | 补偿执行的策略 |
| job_data | blob | NULL | 存放持久化job对象 |
18:'参数配置表'(sys_config)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| config_id | int | NULL | 参数主键 |
| config_name | varchar | NULL | 参数名称 |
| config_key | varchar | NULL | 参数键名 |
| config_value | varchar | NULL | 参数键值 |
| config_type | char | NULL | 系统内置(Y是 N否) |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
| remark | varchar | NULL | 备注 |
19:'部门表'(sys_dept)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| dept_id | bigint | NULL | 部门id |
| parent_id | bigint | NULL | 父部门id |
| ancestors | varchar | NULL | 祖级列表 |
| dept_name | varchar | NULL | 部门名称 |
| order_num | int | NULL | 显示顺序 |
| leader | varchar | NULL | 负责人 |
| phone | varchar | NULL | 联系电话 |
| email | varchar | NULL | 邮箱 |
| status | char | NULL | 部门状态(0正常 1停用) |
| del_flag | char | NULL | 删除标志(0代表存在 2代表删除) |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
20:'字典数据表'(sys_dict_data)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| dict_code | bigint | NULL | 字典编码 |
| dict_sort | int | NULL | 字典排序 |
| dict_label | varchar | NULL | 字典标签 |
| dict_value | varchar | NULL | 字典键值 |
| dict_type | varchar | NULL | 字典类型 |
| css_class | varchar | NULL | 样式属性(其他样式扩展) |
| list_class | varchar | NULL | 表格回显样式 |
| is_default | char | NULL | 是否默认(Y是 N否) |
| status | char | NULL | 状态(0正常 1停用) |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
| remark | varchar | NULL | 备注 |
21:'字典类型表'(sys_dict_type)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| dict_id | bigint | NULL | 字典主键 |
| dict_name | varchar | NULL | 字典名称 |
| dict_type | varchar | NULL | 字典类型 |
| status | char | NULL | 状态(0正常 1停用) |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
| remark | varchar | NULL | 备注 |
22:'定时任务调度表'(sys_job)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| job_id | bigint | NULL | 任务ID |
| job_name | varchar | NULL | 任务名称 |
| job_group | varchar | NULL | 任务组名 |
| invoke_target | varchar | NULL | 调用目标字符串 |
| cron_expression | varchar | NULL | cron执行表达式 |
| misfire_policy | varchar | NULL | 计划执行错误策略(1立即执行 2执行一次 3放弃执行) |
| concurrent | char | NULL | 是否并发执行(0允许 1禁止) |
| status | char | NULL | 状态(0正常 1暂停) |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
| remark | varchar | NULL | 备注信息 |
23:'定时任务调度日志表'(sys_job_log)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| job_log_id | bigint | NULL | 任务日志ID |
| job_name | varchar | NULL | 任务名称 |
| job_group | varchar | NULL | 任务组名 |
| invoke_target | varchar | NULL | 调用目标字符串 |
| job_message | varchar | NULL | 日志信息 |
| status | char | NULL | 执行状态(0正常 1失败) |
| exception_info | varchar | NULL | 异常信息 |
| create_time | datetime | NULL | 创建时间 |
24:'系统访问记录'(sys_logininfor)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| info_id | bigint | NULL | 访问ID |
| login_name | varchar | NULL | 登录账号 |
| ipaddr | varchar | NULL | 登录IP地址 |
| login_location | varchar | NULL | 登录地点 |
| browser | varchar | NULL | 浏览器类型 |
| os | varchar | NULL | 操作系统 |
| status | char | NULL | 登录状态(0成功 1失败) |
| msg | varchar | NULL | 提示消息 |
| login_time | datetime | NULL | 访问时间 |
25:'菜单权限表'(sys_menu)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| menu_id | bigint | NULL | 菜单ID |
| menu_name | varchar | NULL | 菜单名称 |
| parent_id | bigint | NULL | 父菜单ID |
| order_num | int | NULL | 显示顺序 |
| url | varchar | NULL | 请求地址 |
| target | varchar | NULL | 打开方式(menuItem页签 menuBlank新窗口) |
| menu_type | char | NULL | 菜单类型(M目录 C菜单 F按钮) |
| visible | char | NULL | 菜单状态(0显示 1隐藏) |
| is_refresh | char | NULL | 是否刷新(0刷新 1不刷新) |
| perms | varchar | NULL | 权限标识 |
| icon | varchar | NULL | 菜单图标 |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
| remark | varchar | NULL | 备注 |
26:'通知公告表'(sys_notice)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| notice_id | int | NULL | 公告ID |
| notice_title | varchar | NULL | 公告标题 |
| notice_type | char | NULL | 公告类型(1通知 2公告) |
| notice_content | varchar | NULL | 公告内容 |
| status | char | NULL | 公告状态(0正常 1关闭) |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
| remark | varchar | NULL | 备注 |
27:'操作日志记录'(sys_oper_log)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| oper_id | bigint | NULL | 日志主键 |
| title | varchar | NULL | 模块标题 |
| business_type | int | NULL | 业务类型(0其它 1新增 2修改 3删除) |
| method | varchar | NULL | 方法名称 |
| request_method | varchar | NULL | 请求方式 |
| operator_type | int | NULL | 操作类别(0其它 1后台用户 2手机端用户) |
| oper_name | varchar | NULL | 操作人员 |
| dept_name | varchar | NULL | 部门名称 |
| oper_url | varchar | NULL | 请求URL |
| oper_ip | varchar | NULL | 主机地址 |
| oper_location | varchar | NULL | 操作地点 |
| oper_param | varchar | NULL | 请求参数 |
| json_result | varchar | NULL | 返回参数 |
| status | int | NULL | 操作状态(0正常 1异常) |
| error_msg | varchar | NULL | 错误消息 |
| oper_time | datetime | NULL | 操作时间 |
28:'岗位信息表'(sys_post)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| post_id | bigint | NULL | 岗位ID |
| post_code | varchar | NULL | 岗位编码 |
| post_name | varchar | NULL | 岗位名称 |
| post_sort | int | NULL | 显示顺序 |
| status | char | NULL | 状态(0正常 1停用) |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
| remark | varchar | NULL | 备注 |
29:'角色信息表'(sys_role)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| role_id | bigint | NULL | 角色ID |
| role_name | varchar | NULL | 角色名称 |
| role_key | varchar | NULL | 角色权限字符串 |
| role_sort | int | NULL | 显示顺序 |
| data_scope | char | NULL | 数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限) |
| status | char | NULL | 角色状态(0正常 1停用) |
| del_flag | char | NULL | 删除标志(0代表存在 2代表删除) |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
| remark | varchar | NULL | 备注 |
30:'角色和部门关联表'(sys_role_dept)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| role_id | bigint | NULL | 角色ID |
| dept_id | bigint | NULL | 部门ID |
31:'角色和菜单关联表'(sys_role_menu)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| role_id | bigint | NULL | 角色ID |
| menu_id | bigint | NULL | 菜单ID |
32:'用户信息表'(sys_user)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| user_id | bigint | NULL | 用户ID |
| dept_id | bigint | NULL | 部门ID |
| login_name | varchar | NULL | 登录账号 |
| user_name | varchar | NULL | 用户昵称 |
| user_type | varchar | NULL | 用户类型(00系统用户 01注册用户) |
| email | varchar | NULL | 用户邮箱 |
| phonenumber | varchar | NULL | 手机号码 |
| sex | char | NULL | 用户性别(0男 1女 2未知) |
| avatar | varchar | NULL | 头像路径 |
| password | varchar | NULL | 密码 |
| salt | varchar | NULL | 盐加密 |
| status | char | NULL | 帐号状态(0正常 1停用) |
| del_flag | char | NULL | 删除标志(0代表存在 2代表删除) |
| login_ip | varchar | NULL | 最后登录IP |
| login_date | datetime | NULL | 最后登录时间 |
| pwd_update_date | datetime | NULL | 密码最后更新时间 |
| create_by | varchar | NULL | 创建者 |
| create_time | datetime | NULL | 创建时间 |
| update_by | varchar | NULL | 更新者 |
| update_time | datetime | NULL | 更新时间 |
| remark | varchar | NULL | 备注 |
33:'在线用户记录'(sys_user_online)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| sessionId | varchar | NULL | 用户会话id |
| login_name | varchar | NULL | 登录账号 |
| dept_name | varchar | NULL | 部门名称 |
| ipaddr | varchar | NULL | 登录IP地址 |
| login_location | varchar | NULL | 登录地点 |
| browser | varchar | NULL | 浏览器类型 |
| os | varchar | NULL | 操作系统 |
| status | varchar | NULL | 在线状态on_line在线off_line离线 |
| start_timestamp | datetime | NULL | session创建时间 |
| last_access_time | datetime | NULL | session最后访问时间 |
| expire_time | int | NULL | 超时时间,单位为分钟 |
34:'用户与岗位关联表'(sys_user_post)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| user_id | bigint | NULL | 用户ID |
| post_id | bigint | NULL | 岗位ID |
35:'用户和角色关联表'(sys_user_role)
| 字段名 | 类型 | 默认值 | 列注释 |
| --------- | ------------- | ------ | ------ |
| user_id | bigint | NULL | 用户ID |
| role_id | bigint | NULL | 角色ID |
五、功能模块:
登录注册:

系统首页:

超市收银台:

销售账单:

库存管理:

商品分类:

供应商:

数据权限管理:

六、代码示例:
;
@Controller
@RequestMapping(/system/checkout)
public class CheckOutController extends BaseController {
private String prefix = system/checkout;
@Autowired
private CheckoutService checkoutService;
// @RequiresPermissions(system:checkout:view)
@GetMapping()
public String product() {
return prefix + /checkout;
}
/**
* 新增保存商品分类
*/
@PostMapping(/tmp-bill-item/add)
@ResponseBody
public AjaxResult saveTempBillItem(AddTempBillItemDto addTempBillItemDto)
{
User currentUser = ShiroUtils.getSysUser();
Long userId = currentUser.getUserId();
boolean success = checkoutService.saveTempBillItem(userId, addTempBillItemDto);
if (success) {
return AjaxResult.success(添加成功);
} else {
return AjaxResult.error(找不到商品,请检查商品编号是否正确);
}
}
/**
* 获取数据集合
*/
@PostMapping(/tmp-bill-item)
@ResponseBody
public TableDataInfo getTempBillItem() {
User currentUser = ShiroUtils.getSysUser();
Long userId = currentUser.getUserId();
return getDataTable(checkoutService.getTempBillItems(userId));
}
/**
* 获取数据集合
*/
@GetMapping(/search-product)
@ResponseBody
public AjaxResult collection(@RequestParam(id) String id)
{
AjaxResult ajax = new AjaxResult();
ajax.put(result, checkoutService.matchProductSuggestByProductId(id));
return ajax;
}
/**
* 获取数据集合
*/
@GetMapping(/total-should-pay)
@ResponseBody
public AjaxResult countTempBillItemsTotalShouldPay() {
User currentUser = ShiroUtils.getSysUser();
Long userId = currentUser.getUserId();
AjaxResult ajax = new AjaxResult();
ajax.put(result, checkoutService.countTempBillItemsTotalShouldPay(userId).toString());
return ajax;
}
@GetMapping(/tmp-bill-item/remove)
@ResponseBody
public AjaxResult removeTempBillItem(@RequestParam(index) int index)
{
User currentUser = ShiroUtils.getSysUser();
Long userId = currentUser.getUserId();
checkoutService.removeTempBillItem(userId, index);
return AjaxResult.success(删除成功);
}
@GetMapping(/tmp-bill-item/close)
@ResponseBody
public AjaxResult closeTempBillItem()
{
User currentUser = ShiroUtils.getSysUser();
Long userId = currentUser.getUserId();
checkoutService.closeTempBillItem(userId);
return AjaxResult.success(删除成功);
}
/*
确认结算
*/
@GetMapping(/tmp-bill-item/submit)
@ResponseBody
public AjaxResult submitTempBillItem()
{
User currentUser = ShiroUtils.getSysUser();
Long userId = currentUser.getUserId();
checkoutService.submitTempBillItem(userId);
return AjaxResult.success(结算成功);
}
}
@Controller
@RequestMapping(/system/product)
public class ProductController extends BaseController
{
private String prefix = system/product;
@Autowired
private IProductService productService;
@RequiresPermissions(system:product:view)
@GetMapping()
public String product()
{
return prefix + /product;
}
/**
* 查询商品列表
*/
@RequiresPermissions(system:product:list)
@PostMapping(/list)
@ResponseBody
public TableDataInfo list(Product product)
{
startPage();
List<Product> list = productService.selectProductList(product);
return getDataTable(list);
}
/**
* 导出商品列表
*/
@RequiresPermissions(system:product:export)
@Log(title = 商品, businessType = BusinessType.EXPORT)
@PostMapping(/export)
@ResponseBody
public AjaxResult export(Product product)
{
List<Product> list = productService.selectProductList(product);
ExcelUtil<Product> util = new ExcelUtil<Product>(Product.class);
return util.exportExcel(list, 商品数据);
}
/**
* 新增商品
*/
@GetMapping(/add)
public String add()
{
return prefix + /add;
}
/**
* 新增保存商品
*/
@RequiresPermissions(system:product:add)
@Log(title = 商品, businessType = BusinessType.INSERT)
@PostMapping(/add)
@ResponseBody
public AjaxResult addSave(Product product)
{
return toAjax(productService.insertProduct(product));
}
/**
* 修改商品
*/
@RequiresPermissions(system:product:edit)
@GetMapping(/edit/{id})
public String edit(@PathVariable(id) String id, ModelMap mmap)
{
Product product = productService.selectProductById(id);
mmap.put(product, product);
return prefix + /edit;
}
/**
* 修改保存商品
*/
@RequiresPermissions(system:product:edit)
@Log(title = 商品, businessType = BusinessType.UPDATE)
@PostMapping(/edit)
@ResponseBody
public AjaxResult editSave(Product product)
{
return toAjax(productService.updateProduct(product));
}
/**
* 删除商品
*/
@RequiresPermissions(system:product:remove)
@Log(title = 商品, businessType = BusinessType.DELETE)
@PostMapping( /remove)
@ResponseBody
public AjaxResult remove(String ids)
{
return toAjax(productService.deleteProductByIds(ids));
}
}
七、论文参考:
论文参考···
八、项目总结:
基于SpringBoot+Vue的前后端分离的超市信息管理系的开发制作,从题目确定到成品完成,自己投入的精力与心血是非常多的。从基于SpringBoot+Vue的前后端分离的超市信息管理系的前台页面实现,到基于SpringBoot+Vue的前后端分离的超市信息管理系的后台代码的编辑,我用到的软件包括了数据库软件MySQL,Java开发工具IDEA,办公软件Office,浏览器软件Fireworks,图像处理软件Photoshop等,这也是我第一次使用Java语言,开发的这个比较简单的基于SpringBoot+Vue的前后端分离的超市信息管理系。
基于SpringBoot+Vue的前后端分离的超市信息管理系开发过程中,自己之前觉得比较抽象的许多门课程,例如数据库原理,软件工程,动态网站开发等课程开始变得很清晰,只有自己独立开发程序,才会觉得这些开发类的课程在实践中具有的重要作用。为了让自己设计的作品能够顺利的完成,我把所学知识全部运用在程序的开发流程中,包括了程序的需求分析环节,程序的编码环节,程序的测试环节等,让程序软件在开发周期内完成制作,并能够保证程序质量达标,力求程序开发流程规范化,程序对应的配套文档标准化。
本次开发的系统整体界面还是比较清晰简明,功能上面考虑得比较全,几乎可以满足用户使用要求。尽管我对这次的毕设付出了许多的努力,但是程序还是有很多不足的地方,系统界面整体感觉还行,但是字体字号的选取上面还是有些不符合现实审美,在程序的CSS样式编码上面,我还有许多不熟悉的地方,虽然经过反复的测试与调试选中了现在这样的程序界面,但是我还是明显感觉到自己对一些常用CSS样式的不熟悉,编码过程中,我还要多次进行资料查看才知道。另外我编写的代码写作不是很规范,可读性比较差,幸运的是,我最终还是实现了系统中所要求的功能。
基于SpringBoot+Vue的前后端分离的超市信息管理系现已完成了开发,除了基本功能可以符合用户需求外,在页面设计层面上没有融入更多的设计元素,需要从美学角度进行优化,另外在程序的代码层面,也有许多重合部分,需要进行整理归类,让代码变得更加的简洁。
实践出真知,但是知识也是通过实践变得更加深刻,这次作品制作,让自己的专业知识水平与解决问题的能力得到了提高。也让自己更加明白活到老学到老的真正含义。
总的说来,这次编写毕业设计作品,我真正锻炼了自己的实际操作能力,以前只知道理论知识,现在通过实践,我对理论知识的认识变得更加深刻,由于编写程序时间比较短暂,程序开发期间遇到过很多坎坷,但最后都通过老师还有同学帮忙解决了,可以说这次的毕设作品进展得还算顺利。
可沟通项目方向、预算、交付周期与答辩时间安排,支持按学校要求定制交付内容。
根据你的浏览兴趣与热门趋势,精选可能适合你的毕业设计项目。
该系统是一个基于Java+SpringBoot后端、Vue+Uniapp前端的微信小程序点餐平台。平台实现了在线菜单浏览、购物车管理、订单提交与支付、后台数据统计等核心功能,为餐饮商家提供高效便捷的数字化点餐解决方案。项目采用前后端分离架构,适合作为毕业设计或实际项目开发,展示了现代Web与移动应用系统的完整实现流程。
该项目是一个集成了协同过滤推荐算法、网络爬虫与AI技术的智能减肥小程序。系统采用JAVA+SpringBoot构建后端服务,Vue+uniapp实现跨平台前端,旨在为用户提供个性化的饮食与运动方案。核心功能包括基于用户行为的智能推荐、健康数据管理及社区互动,适合作为毕业设计或实际项目开发,展示了现代Web与移动应用在信息管理与系统开发中的综合实践。
该系统是一个基于JAVA+SpringBoot后端与Vue前端的自动阅卷分析系统,旨在实现高效、准确的试卷批改与学习数据分析。核心功能包括智能识别与评分、错题统计分析、成绩报告生成以及教学效果评估。该系统开发专注于提升阅卷效率与信息管理深度,适用于在线教育、考试机构及毕业设计项目实现,为教学管理与学习分析提供一体化解决方案。
该心理健康测试平台是一个集前端小程序与后端管理系统于一体的综合系统开发项目。平台采用JAVA与SpringBoot构建稳健后端,结合Vue与uniApp实现跨端小程序开发,为用户提供便捷的心理测评与报告服务。系统核心功能包括题库管理、在线测试、数据分析及报告生成,旨在通过信息化手段提升心理健康服务的可及性与专业性,适用于毕业设计或实际项目实现。
该项目是一个基于JAVA+SpringBoot+Vue+uniapp技术栈的前后端分离微信小程序艺术品陶瓷商城系统。系统开发实现了艺术品陶瓷的在线展示、商品管理、用户订单处理及支付集成等核心功能,为陶瓷艺术品的数字化交易提供了完整的信息管理解决方案,适合作为毕业设计或商业项目实现。
该系统是一个基于Java+SpringBoot+Vue的二手车交易管理系统,旨在为用户提供便捷的在线车辆买卖平台。核心功能包括车辆信息发布、智能搜索、在线咨询、交易管理及用户评价等模块。通过前后端分离的系统开发模式,实现了高效的信息管理和流畅的用户体验,适合作为毕业设计或实际项目实现,帮助提升二手车交易效率与透明度。
该项目是一个基于Java、SpringBoot和Vue的故障报修平台,旨在实现高效的设备故障管理与维修流程。系统提供用户在线报修、工单分配、进度跟踪及数据统计等核心功能,适用于企业或校园的日常运维。通过前后端分离架构,确保了系统的可扩展性和维护性,适合作为毕业设计或实际项目实现,展示了现代Web信息管理系统的开发实践。
这是一个基于JAVA+SpringBoot+Vue的前后端分离学校请假管理系统,旨在实现学生请假流程的数字化与高效管理。系统开发涵盖了学生在线提交申请、辅导员与院系审批、请假记录统计等核心功能,优化了传统纸质流程。该项目可作为信息管理系统的毕业设计或实际应用案例,展示了前后端分离架构在项目实现中的优势。