☰
基于SpringBoot与微信小程序的社区垃圾分类积分系统的设计与实现计算机毕业设计(源码+lw+部署文档+讲解等)
2026/10/8 2:16:11 网站建设 项目流程

博主介绍:✌ 专注于VUE,小程序,安卓,Java,python,物联网专业, 从事毕业指导,项目实战✌选取一个适合的毕业设计题目很重要。✌关注✌私信我✌具体的问题,我会尽力帮助你。

一、研究目的

本研究旨在通过SpringBoot与微信小程序技术,构建面向社区居民的垃圾分类积分系统,以期提升居民垃圾分类意识、鼓励分类行为,并通过积分激励机制实现可持续的环保效益。该系统将整合物联网传感器、移动终端与云端数据平台,实现垃圾桶状态实时监测、分类识别与数据同步,进而为社区管理者提供精准的分类统计与决策支持。技术实现层面,本研究将采用SpringBoot框架搭建后端服务,利用RESTful API与微信小程序前端进行交互,并通过JWT等安全机制保障用户数据隐私与系统安全。积分规则设计将结合行为经济学原理,设置多维度奖励策略,如按分类准确率、投递频次、时间段等因素动态调整积分,形成正向激励闭环。为验证系统效果,本研究将选取某社区为实验场景,开展为期三个月的实地试点,通过对比试验前后垃圾分类率、居民满意度及系统使用频次等指标,评估技术方案与激励机制的有效性。综上所述,本研究不仅为社区垃圾分类提供了可复制、可推广的技术与管理模式,也为城市智慧治理与绿色低碳发展贡献了创新性的实践路径。

二、研究意义

本研究的意义主要体现在推动社区垃圾分类治理现代化、促进绿色低碳社会建设、验证技术创新在公共服务中的应用价值以及为相关政策制定提供数据支撑等方面。首先,利用SpringBoot与微信小程序构建的积分系统能够实现垃圾桶状态实时监测与分类识别,形成闭环反馈机制,使居民能够即时了解分类效果,从而提升分类准确率和投递频次;其次,积分激励模式基于行为经济学原理,将正向激励与社会认同相结合,能够有效改变居民的垃圾投放习惯,为社区治理提供可持续动力。再者,本研究通过大数据分析与可视化展示,为社区管理者提供精准的分类统计与决策依据,降低人工监测成本,提高资源配置效率;此外,该系统兼容多种硬件平台与云服务,具备良好的可扩展性与复用性,可在不同城市、不同规模社区推广应用。最后,本研究所产生的经验与数据将为政府制定垃圾分类政策、完善积分激励机制以及推动智慧城市建设提供实证依据,具有重要的社会经济和环境效益。在学术层面,本研究填补了基于云端微服务架构与移动端交互的垃圾分类积分系统设计与实现的空白,提供了从需求分析、系统架构、算法实现到性能评估的完整方法论;同时,通过对比实验验证积分机制对居民行为改变的显著性,为行为科学与信息技术交叉研究提供了新的案例与数据支持。

三、国内外研究现状

国内外在社区垃圾分类与积分激励系统的研究已形成多条主线,涵盖技术实现、行为激励、数据治理与政策支持等方面。技术层面,学者们普遍采用物联网传感器与图像识别算法实现垃圾桶状态监测与分类识别,其中基于深度卷积网络的图像分类模型已在多项实验中达到准确率超过九成的水平;在硬件方面,RFID标签与重量传感器相结合的智能垃圾桶能够实时反馈投放信息,进一步提升分类精度。移动端技术方面,研究者通过开发微信小程序、APP等平台实现居民与系统的交互,利用推送通知、二维码扫描等方式降低用户操作门槛。积分激励机制是当前热点之一,学者将行为经济学原理与游戏化设计相结合,通过积分兑换、排行榜展示等方式有效提升居民分类积极性;部分研究还引入社会认同与社区自治元素,进一步强化长期行为改变。数据治理方面,云平台与大数据分析技术被用于整合多源垃圾分类数据,构建可视化决策支持系统,为城市管理者提供精准的资源调度方案。政策层面,多国政府已将垃圾分类纳入城市治理体系,如欧盟通过《循环经济行动计划》要求成员国实现高比例分类回收;美国部分城市开展“智能垃圾桶”试点,强调公共参与与数据共享;新加坡则以“智慧城市”框架推进全市统一的垃圾管理平台。国内方面,上海、北京等一线城市已在社区层面部署智能分类设施,并通过积分激励提升居民参与度;深圳在“智慧园区”项目中引入多维度积分体系,形成闭环激励模式。综上所述,现有研究已从技术实现、行为激励、数据治理与政策支持四个维度展开系统性探讨,但仍缺乏将SpringBoot微服务架构与微信小程序深度结合的完整解决方案,且在多城市、多社区的跨域验证与长期效果评估方面存在不足。

四、预期达到目标及解决的关键问题

本研究的预期目标聚焦于构建一套基于SpringBoot微服务架构与微信小程序前端交互的社区垃圾分类积分系统,旨在实现技术可靠性、用户体验优化与社会治理效能三位一体。首先,在技术层面,本系统将实现垃圾桶状态实时监测、图像识别分类以及数据同步的完整闭环,期望通过深度卷积网络模型在不同光照与投放环境下保持九成以上的分类准确率;其次,在用户交互层面,微信小程序将提供投递指导、积分查询与兑换功能,并通过推送通知与二维码扫描降低操作门槛,期望实现居民日常使用频次不低于每日一次的目标;再次,在治理效能层面,系统将通过大数据分析生成分类统计报表与资源调度建议,支持社区管理者在垃圾处理成本、资源回收率等关键指标上实现至少十个百分点的提升。综合上述三维目标,本研究期望在试点社区内完成系统上线后三个月的运营评估,验证积分激励对居民分类行为的正向影响,并为后续多社区推广提供可复制的技术与管理方案。

在实现上述目标过程中,研究将面临若干关键问题。技术集成方面,如何在SpringBoot微服务框架中高效管理多源数据(传感器、图像、用户行为)并保证系统的横向扩展性与高可用性,是首要挑战;算法准确性方面,垃圾分类图像识别需适应不同地区、不同季节光照变化以及投放物品形态多样化,如何通过数据增强与模型微调提升鲁棒性,是技术难点之一。数据安全与隐私保护亦是不可忽视的关键问题,系统需在保证功能完整性的前提下,采用JWT身份验证、数据加密传输与权限细粒度控制,防止用户信息泄露。用户接受度方面,居民对新技术的认知差异、操作习惯以及对积分兑换价值的感知将直接影响系统使用频次,如何通过简洁界面设计与多元化激励方式降低学习成本,是实现高黏性的重要因素。最后,在多社区推广层面,如何在不同社区规模、硬件资源与管理模式下保持系统的一致性与可维护性,需要构建模块化、插件化的部署方案,并制定统一的接口规范与运维手册。通过对上述关键问题的系统性分析与针对性技术攻关,本研究期望在实现技术创新的同时,为社区垃圾分类治理提供一套可持续、可扩展且安全可靠的解决方案。

五、研究内容

本研究的整体内容围绕构建一套完整的基于SpringBoot微服务架构与微信小程序前端交互的社区垃圾分类积分系统展开,涵盖需求分析、系统设计、技术实现、性能评估与推广应用等环节。首先,在需求分析阶段,将通过访谈调研与问卷调查收集社区居民对垃圾分类的认知水平、使用习惯以及对积分激励的期望,并结合城市管理部门对分类投放量、资源回收率等指标的要求,形成系统功能需求说明书。随后在系统设计阶段,采用分层架构将前端、业务逻辑层与数据访问层分离,业务逻辑层进一步拆分为用户管理服务、垃圾桶监测服务、图像识别服务、积分计算服务与报表分析服务,并通过RESTful API实现模块间通信。数据存储方面,使用关系型数据库MySQL存储用户信息、积分记录与分类统计,同时利用Redis缓存热点数据以提升响应速度;对大规模传感器数据则采用时间序列数据库InfluxDB进行高效写入与查询。技术实现阶段,前端采用微信小程序框架,提供投递指导页面、二维码扫描入口、积分查询与兑换功能,并通过微信支付API实现积分兑换现金券或社区服务券的交互。后端则利用SpringBoot构建微服务,配合Spring Cloud Netflix Eureka进行服务注册与发现,Hystrix实现熔断保护,Feign简化服务调用。图像识别模块将采用预训练的ResNet-50模型,在TensorFlow Lite环境下部署于边缘设备,以实现垃圾桶内部摄像头实时分类,并将分类结果通过MQTT协议推送至后端。积分计算服务根据投递时间、分类准确率、投递频次等多维度指标,采用加权公式动态生成积分,并通过规则引擎实现可配置的激励策略。报表分析服务利用Spark SQL对历史数据进行聚合,生成可视化图表供社区管理者决策。为保障系统安全,将在API层引入JWT身份验证与权限校验,所有敏感数据采用AES-256加密存储与传输,并通过日志审计追踪异常操作。性能评估阶段,将在选定的社区进行三个月的试点运行,收集系统日志、用户行为数据与分类统计指标,通过对比试点前后垃圾分类率、居民满意度与积分兑换率等关键指标,评估系统效果并进行迭代优化。最后,在推广应用阶段,将制定模块化部署方案与运维手册,支持不同规模社区的快速落地,并结合政府政策与社区自治机制,探索积分激励在更大范围内的可复制性与可持续性。通过上述整体研究内容,本项目旨在实现技术创新、社会治理效能提升与绿色低碳发展目标的有机统一。

六、需求分析

用户需求方面,社区居民期望通过简洁直观的移动端界面快速完成垃圾投放操作,能够在投递前获得分类指导提示,并在投递后即时收到分类结果与积分反馈,从而形成正向激励闭环;居民还关注个人信息与积分数据的安全性,期望系统采用加密传输与权限分级管理,防止数据泄露;此外,居民希望能够通过积分兑换社区服务、优惠券或公益项目,实现物质与精神双重激励;社区管理者则需要一套可视化的数据分析平台,以监测各垃圾桶的投放量、分类准确率与居民参与度,并根据实时数据动态调整资源调度与激励策略;管理者亦关注系统的可维护性与扩展性,期望通过模块化部署与统一接口实现多社区、多城市的快速落地。功能需求方面,系统必须支持微信小程序前端提供用户注册登录、投递指导、二维码扫描投递、实时垃圾桶状态查询、积分查询与兑换等核心功能;后端需实现微服务架构,包括用户管理服务、垃圾桶监测服务、图像识别服务、积分计算服务与报表分析服务,并通过RESTful API实现模块间通信;数据层需使用关系型数据库存储用户与积分信息,时间序列数据库处理传感器数据,缓存层提升热点查询性能;安全层需采用JWT身份验证、权限校验与AES-256加密传输,日志审计确保合规;系统还需支持推送通知、短信提醒与社交分享功能,以增强用户粘性;管理员端需提供可视化仪表盘、报表导出、规则配置与异常报警等管理工具,满足日常运营与决策需求。

七、可行性分析

经济可行性方面,系统采用开源技术栈SpringBoot、微信小程序、TensorFlow Lite以及常见数据库,显著降低软件授权与开发成本;硬件投入主要为智能垃圾桶的摄像头与传感器,可通过批量采购实现规模化折扣;积分兑换机制可与社区商户或公益项目对接,形成共享经济模式,减少直接现金支出;系统上线后,通过提升分类准确率与投放量,可为社区节约垃圾处理成本、延长设备寿命,并为地方政府创造回收收益,从而实现投入产出比在三至五年内收支平衡。社会可行性方面,居民对环保议题的关注度持续上升,积分激励与游戏化设计能够有效调动社区主体参与热情;系统提供的实时反馈与排行榜功能有助于形成正向竞争氛围,提升居民自我管理意识;同时,积分兑换与社区服务挂钩,可增强居民对系统的归属感与信任度;在政策层面,多地政府已将垃圾分类纳入城市治理体系,相关法规支持智能化管理与数据共享,为系统推广提供了法律保障。技术可行性方面,前端采用微信小程序可覆盖绝大多数移动设备,用户上手成本低;后端微服务架构支持水平扩展与高可用部署,可通过Docker与Kubernetes实现容器化管理;图像识别模型在边缘设备上已实现实时推理,且通过模型压缩与量化可满足低算力环境;数据传输采用MQTT或HTTP/2协议,具备低延迟与高吞吐特性;安全层面通过JWT、TLS加密与细粒度权限控制满足行业标准;综上所述,经济成本可控、社会接受度高且技术实现成熟,系统在三年内实现商业化运营并对社区垃圾分类治理产生显著正向影响。

八、功能分析

系统功能模块的设计依据需求分析结果,围绕用户交互、数据采集与处理、积分激励与管理以及后台运营四大维度展开。首先,用户管理模块负责居民身份认证与信息维护,包括微信小程序登录、个人资料编辑、积分余额查询以及历史投递记录查看等功能;该模块通过JWT令牌实现安全访问,并将用户数据存储于关系型数据库中,以支持后续积分计算与报表生成。其次,垃圾桶监测模块负责与硬件传感器的交互,采集垃圾桶重量、温湿度以及摄像头图像等多维度信息,并通过MQTT协议将实时数据推送至后端服务;该模块还提供垃圾桶状态显示与异常报警功能,以便居民及时了解投递环境。第三,图像识别模块在边缘设备上部署深度卷积网络模型,对摄像头捕获的图像进行分类推断,输出垃圾类别与置信度;识别结果通过RESTful API返回给积分计算模块,用于后续积分核算。第四,积分计算模块根据投递时间、分类准确率、投递频次等多维度指标,依据预设规则生成积分值,并将积分变动记录写入数据库;该模块支持动态规则配置,以便管理员根据社区需求进行调整。第五,奖励兑换模块为居民提供积分兑换入口,包括社区服务券、公益项目支持以及与本地商户合作的优惠券等选项;该模块通过微信支付API完成兑换交易,并在成功后更新用户积分余额。第六,数据分析与报表模块为社区管理者提供可视化仪表盘,展示垃圾投递量、分类准确率、居民参与度以及积分发放情况等关键指标;该模块利用Spark SQL对历史数据进行聚合分析,并支持报表导出与定时邮件推送。第七,通知与提醒模块通过微信推送与短信服务向居民发送投递指导、积分到账提醒以及活动促销信息,以增强用户粘性。最后,后台管理模块集中管理用户权限、垃圾桶配置、规则设定以及系统日志;该模块提供角色基于权限的访问控制,并支持系统健康监测与故障排查。各模块通过统一的API网关进行交互,采用服务注册与发现机制实现高可用与弹性伸缩;整体架构遵循微服务设计原则,确保系统在功能扩展、性能优化与运维管理方面具备良好的可维护性与可扩展性。

九、数据库设计

用户表
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
user_id | 用户唯一标识 | 36 | CHAR(36) | 主键 (PK) | UUID
openid | 微信开放平台唯一标识 | 64 | VARCHAR(64) | 唯一索引 (UNIQUE) | 用于登录
nickname | 昵称 | 50 | VARCHAR(50) | - |
avatar_url | 头像链接地址 | 200 | VARCHAR(200) | - |
gender | 性别(0未知、1男、2女) | 1 | TINYINT(1) | - |
phone_number | 联系电话(可为空) | 20 | VARCHAR(20) | - |

垃圾桶表
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
bin_id | 垃圾桶唯一标识 | 36 | CHAR(36) | 主键 (PK) |
location | 位置坐标或地址描述 | 100 | VARCHAR(100) |
capacity_liters | 容量(升) | 5 | INT(5) |
status | 当前状态(0正常、1维护、2故障) | 1 | TINYINT(1) |
last_update_ts | 最后更新时间戳 | 19 | DATETIME |

传感器数据表
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
data_id | 数据唯一标识 | 36 | CHAR(36) | 主键 (PK) |
bin_id | 所属垃圾桶标识 | 36 | CHAR(36) |
weight_kg | 重量(千克) | 5,2 | DECIMAL(5,2) |
temperature_celsius | 温度(摄氏度) | 5,2 | DECIMAL(5,2) |
humidity_percent | 湿度(百分比) | 5,2 | DECIMAL(5,2) |
timestamp | 数据采集时间戳 | 19 | DATETIME |

图像识别结果表
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
image_id | 图像唯一标识 | 36 | CHAR(36) |
bin_id | 所属垃圾桶标识 | 36 | CHAR(36) |
image_url | 图像存储路径或链接地址 | 200 | VARCHAR(200) |
predicted_category | 预测分类标签(如可回收、有害、湿垃圾、干垃圾) | 20 | VARCHAR(20) |
confidence_score | 置信度(0-1) | 5,4 | DECIMAL(5,4) |
timestamp | 识别时间戳 | 19 | DATETIME |

积分记录表
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
point_id | 积分记录唯一标识 | 36 | CHAR(36) |
user_id | 用户标识(外键) | 36 | CHAR(36) |
bin_id | 垃圾桶标识(外键) | 36 | CHAR(36) |
points_awarded | 获得积分数值(可正负) | 10,2 | DECIMAL(10,2) |
reason_code | 积分原因码(如分类准确、投递频次) | 20 | VARCHAR(20) |
timestamp | 积分生成时间戳 | 19 | DATETIME |

积分交易表
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
transaction_id | 交易唯一标识 | 36 | CHAR(36) |
user_id | 用户标识(外键) | 36 | CHAR(36) |
point_amount | 积分变动量(正数为发放,负数为兑换) | 10,2 | DECIMAL(10,2) |
transaction_type | 交易类型(1发放、2兑换) | 1 | TINYINT(1) |
target_desc | 兑换目标描述(如社区券、公益项目) | 100 | VARCHAR(100) |
timestamp | 交易时间戳 | 19 | DATETIME |

积分规则表
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
rule_id | 规则唯一标识 | 36 | CHAR(36) |
name | 规则名称(如分类准确率奖励) | 50 | VARCHAR(50) |
description | 规则描述(详细说明) | 200 | VARCHAR(200) |
weight_factor | 重量系数(乘数) | 5,4 | DECIMAL(5,4) |
category_factor | 分类系数(乘数) | 5,4 | DECIMAL(5,4) |
frequency_factor | 投递频次系数(乘数) | 5,4 | DECIMAL(5,4) |

以上表结构遵循第一范式至第三范式,避免数据冗余与更新异常。主键均为UUID字符型,外键通过 CHAR(36) 与对应主表关联,保证参照完整性。字段类型与大小设计兼顾存储效率与业务需求。

十、建表语句

CREATE DATABASE IF NOT EXISTS community_garbage_system CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
USE community_garbage_system;

-- 用户表
CREATE TABLE IF NOT EXISTS users (
user_id CHAR(36) NOT NULL COMMENT '用户唯一标识',
openid VARCHAR(64) NOT NULL COMMENT '微信开放平台唯一标识',
nickname VARCHAR(50) DEFAULT NULL COMMENT '昵称',
avatar_url VARCHAR(200) DEFAULT NULL COMMENT '头像链接地址',
gender TINYINT(1) DEFAULT 0 COMMENT '性别(0未知、1男、2女)',
phone_number VARCHAR(20) DEFAULT NULL COMMENT '联系电话(可为空)',
PRIMARY KEY (user_id),
UNIQUE KEY idx_openid (openid)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户信息表';

-- 垃圾桶表
CREATE TABLE IF NOT EXISTS bins (
bin_id CHAR(36) NOT NULL COMMENT '垃圾桶唯一标识',
location VARCHAR(100) DEFAULT NULL COMMENT '位置坐标或地址描述',
capacity_liters INT(5) UNSIGNED DEFAULT 0 COMMENT '容量(升)',
status TINYINT(1) NOT NULL DEFAULT 0 COMMENT '当前状态(0正常、1维护、2故障)',
last_update_ts DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间戳',
PRIMARY KEY (bin_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='垃圾桶信息表';

-- 传感器数据表
CREATE TABLE IF NOT EXISTS sensor_data (
data_id CHAR(36) NOT NULL COMMENT '数据唯一标识',
bin_id CHAR(36) NOT NULL COMMENT '所属垃圾桶标识',
weight_kg DECIMAL(5,2) UNSIGNED DEFAULT 0.00 COMMENT '重量(千克)',
temperature_celsius DECIMAL(5,2) DEFAULT NULL COMMENT '温度(摄氏度)',
humidity_percent DECIMAL(5,2) DEFAULT NULL COMMENT '湿度(百分比)',
timestamp DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '数据采集时间戳',
PRIMARY KEY (data_id),
KEY idx_bin_id_sensor (bin_id),
CONSTRAINT fk_sensor_bin FOREIGN KEY (bin_id) REFERENCES bins(bin_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='传感器采集数据表';

-- 图像识别结果表
CREATE TABLE IF NOT EXISTS image_results (
image_id CHAR(36) NOT NULL COMMENT '图像唯一标识',
bin_id CHAR(36) NOT NULL COMMENT '所属垃圾桶标识',
image_url VARCHAR(200) DEFAULT NULL COMMENT '图像存储路径或链接地址',
predicted_category VARCHAR(20) DEFAULT NULL COMMENT '预测分类标签(如可回收、有害、湿垃圾、干垃圾)',
confidence_score DECIMAL(5,4) UNSIGNED DEFAULT 0.0000 COMMENT '置信度(0-1)',
timestamp DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '识别时间戳',
PRIMARY KEY (image_id),
KEY idx_bin_id_image (bin_id),
CONSTRAINT fk_image_bin FOREIGN KEY (bin_id) REFERENCES bins(bin_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='图像识别结果表';

-- 积分记录表
CREATE TABLE IF NOT EXISTS points_log (
point_id CHAR(36) NOT NULL COMMENT '积分记录唯一标识',
user_id CHAR(36) NOT NULL COMMENT '用户标识(外键)',
bin_id CHAR(36) DEFAULT NULL COMMENT '垃圾桶标识(外键)',
points_awarded DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT '获得积分数值(可正负)',
reason_code VARCHAR(20) DEFAULT NULL COMMENT '积分原因码(如分类准确、投递频次)',
timestamp DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '积分生成时间戳',
PRIMARY KEY (point_id),
KEY idx_user_id_point (user_id),
KEY idx_bin_id_point (bin_id),
CONSTRAINT fk_point_user FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT fk_point_bin FOREIGN KEY (bin_id) REFERENCES bins(bin_id) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='积分记录表';

-- 积分交易表
CREATE TABLE IF NOT EXISTS points_transaction (
transaction_id CHAR(36) NOT NULL COMMENT '交易唯一标识',
user_id CHAR(36) NOT NULL COMMENT '用户标识(外键)',
point_amount DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT '积分变动量(正数为发放,负数为兑换)',
transaction_type TINYINT(1) NOT NULL DEFAULT 1 COMMENT '交易类型(1发放、2兑换)',
target_desc VARCHAR(100) DEFAULT NULL COMMENT '兑换目标描述(如社区券、公益项目)',
timestamp DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '交易时间戳',
PRIMARY KEY (transaction_id),
KEY idx_user_id_trans (user_id),
CONSTRAINT fk_trans_user FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='积分交易表';

-- 积分规则表
CREATE TABLE IF NOT EXISTS points_rule (
rule_id CHAR(36) NOT NULL COMMENT '规则唯一标识',
name VARCHAR(50) NOT NULL COMMENT '规则名称(如分类准确率奖励)',
description VARCHAR(200) DEFAULT NULL COMMENT '规则描述(详细说明)',
weight_factor DECIMAL(5,4) UNSIGNED DEFAULT 1.0000 COMMENT '重量系数(乘数)',
category_factor DECIMAL(5,4) UNSIGNED DEFAULT 1.0000 COMMENT '分类系数(乘数)',
frequency_factor DECIMAL(5,4) UNSIGNED DEFAULT 1.0000 COMMENT '投递频次系数(乘数)',
PRIMARY KEY (rule_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='积分规则表';

-- 索引与约束已在各表中定义,确保数据完整性与查询效率。

文章下方名片联系我即可~大家点赞、收藏、关注、评论啦 、查看下方👇🏻获取联系方式👇🏻

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询