当前位置: 首页 > article >正文

【04】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架二次开发准备工作-以及建立初步后端目录菜单列-优雅草卓伊凡商业项目实战

【04】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架二次开发准备工作-以及建立初步后端目录菜单列-优雅草卓伊凡商业项目实战

项目背景

本项目经费43000元,需求文档如下,工期25天,目前已经过了8天,时间不多了,我们需要在2月27日之前完成,此前这里日期写错了,写的是17号。

技术栈要求

前端vue.js
前端客户端框架 uniapp-x
服务端 java
后台管理 java+vue
java框架选择:若依框架
数据库:mysql 版本要求5.7+ 推荐版本:8.0
JDK版本 1.8+
node版本 12+

卓伊凡的环境为jdk17,node18,mysql8.0

项目实战:

若依二次开发筹备

菜单列的开发部分 在系统管理这部分

对已经设计的数据库结构,进行转换

以下是我们在第二篇幅设计的数据库

数据库表设计

  1. 用户表 (users)
    • user_id (INT, PRIMARY KEY, AUTO_INCREMENT)
    • username (VARCHAR, UNIQUE)
    • password (VARCHAR)
    • email (VARCHAR, UNIQUE)
    • created_at (TIMESTAMP)
  1. 积分表 (points)
    • point_id (INT, PRIMARY KEY, AUTO_INCREMENT)
    • user_id (INT, FOREIGN KEY -> users.user_id)
    • current_points (INT)
    • last_updated (TIMESTAMP)
  1. 积分来源与消耗记录表 (points_history)
    • history_id (INT, PRIMARY KEY, AUTO_INCREMENT)
    • user_id (INT, FOREIGN KEY -> users.user_id)
    • change_type (ENUM(‘source’, ‘consume’))
    • source_type (VARCHAR, NULL)
    • consume_type (VARCHAR, NULL)
    • points_changed (INT)
    • timestamp (TIMESTAMP)
    • notes (VARCHAR, NULL)
  1. 转账记录表 (transfers)
    • transfer_id (INT, PRIMARY KEY, AUTO_INCREMENT)
    • sender_id (INT, FOREIGN KEY -> users.user_id)
    • receiver_id (INT, FOREIGN KEY -> users.user_id)
    • transfer_points (INT)
    • transfer_notes (VARCHAR)
    • transfer_timestamp (TIMESTAMP)
    • status (ENUM(‘pending’, ‘confirmed’, ‘failed’))
  1. 分佣渠道包表 (channels)
    • channel_id (INT, PRIMARY KEY, AUTO_INCREMENT)
    • channel_name (VARCHAR)
    • commission_rate (DECIMAL(5, 2))
    • created_at (TIMESTAMP)
  1. 抽佣记录表 (commission)
    • commission_id (INT, PRIMARY KEY, AUTO_INCREMENT)
    • channel_id (INT, FOREIGN KEY -> channels.channel_id)
    • user_id (INT, FOREIGN KEY -> users.user_id)
    • amount (DECIMAL(10, 2))
    • commission_type (ENUM(‘platform’, ‘user’))
    • status (ENUM(‘pending’, ‘completed’))
    • timestamp (TIMESTAMP)
  1. 线下积分同步记录表 (offline_sync)
    • sync_id (INT, PRIMARY KEY, AUTO_INCREMENT)
    • user_id (INT, FOREIGN KEY -> users.user_id)
    • sync_points (INT)
    • sync_timestamp (TIMESTAMP)
    • status (ENUM(‘pending’, ‘completed’))
  1. 积分充值记录表 (recharge)
    • recharge_id (INT, PRIMARY KEY, AUTO_INCREMENT)
    • user_id (INT, FOREIGN KEY -> users.user_id)
    • amount (DECIMAL(10, 2))
    • recharge_timestamp (TIMESTAMP)
    • status (ENUM(‘pending’, ‘completed’))
  1. 积分提取记录表 (withdrawals)
    • withdrawal_id (INT, PRIMARY KEY, AUTO_INCREMENT)
    • user_id (INT, FOREIGN KEY -> users.user_id)
    • amount (DECIMAL(10, 2))
    • withdrawal_timestamp (TIMESTAMP)
    • status (ENUM(‘pending’, ‘completed’))

ok 我们做成为可用的数据库表sql创建表sql语句:

-- 用户表
CREATE TABLE users (
    user_id INT AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(255) UNIQUE,
    password VARCHAR(255),
    email VARCHAR(255) UNIQUE,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

-- 积分表
CREATE TABLE points (
    point_id INT AUTO_INCREMENT PRIMARY KEY,
    user_id INT,
    current_points INT,
    last_updated TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    FOREIGN KEY (user_id) REFERENCES users(user_id)
);

-- 积分来源与消耗记录表
CREATE TABLE points_history (
    history_id INT AUTO_INCREMENT PRIMARY KEY,
    user_id INT,
    change_type ENUM('source', 'consume'),
    source_type VARCHAR(255),
    consume_type VARCHAR(255),
    points_changed INT,
    timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    notes VARCHAR(255),
    FOREIGN KEY (user_id) REFERENCES users(user_id)
);

-- 转账记录表
CREATE TABLE transfers (
    transfer_id INT AUTO_INCREMENT PRIMARY KEY,
    sender_id INT,
    receiver_id INT,
    transfer_points INT,
    transfer_notes VARCHAR(255),
    transfer_timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    status ENUM('pending', 'confirmed', 'failed'),
    FOREIGN KEY (sender_id) REFERENCES users(user_id),
    FOREIGN KEY (receiver_id) REFERENCES users(user_id)
);

-- 分佣渠道包表
CREATE TABLE channels (
    channel_id INT AUTO_INCREMENT PRIMARY KEY,
    channel_name VARCHAR(255),
    commission_rate DECIMAL(5, 2),
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

-- 抽佣记录表
CREATE TABLE commission (
    commission_id INT AUTO_INCREMENT PRIMARY KEY,
    channel_id INT,
    user_id INT,
    amount DECIMAL(10, 2),
    commission_type ENUM('platform', 'user'),
    status ENUM('pending', 'completed'),
    timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    FOREIGN KEY (channel_id) REFERENCES channels(channel_id),
    FOREIGN KEY (user_id) REFERENCES users(user_id)
);

-- 线下积分同步记录表
CREATE TABLE offline_sync (
    sync_id INT AUTO_INCREMENT PRIMARY KEY,
    user_id INT,
    sync_points INT,
    sync_timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    status ENUM('pending', 'completed'),
    FOREIGN KEY (user_id) REFERENCES users(user_id)
);

-- 积分充值记录表
CREATE TABLE recharge (
    recharge_id INT AUTO_INCREMENT PRIMARY KEY,
    user_id INT,
    amount DECIMAL(10, 2),
    recharge_timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    status ENUM('pending', 'completed'),
    FOREIGN KEY (user_id) REFERENCES users(user_id)
);

-- 积分提取记录表
CREATE TABLE withdrawals (
    withdrawal_id INT AUTO_INCREMENT PRIMARY KEY,
    user_id INT,
    amount DECIMAL(10, 2),
    withdrawal_timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    status ENUM('pending', 'completed'),
    FOREIGN KEY (user_id) REFERENCES users(user_id)
);

在系统工具-代码生成-创建这里

对于数据库的详细设计内容还需要在下篇来分析逻辑。

设计菜单列

首先我们再来看看整理好的后台需求大纲文档

后端管理端功能需求

4.1 用户积分管理
  • 查看所有用户的积分信息
  • 搜索特定用户
  • 积分管理功能
4.2 积分来源管理
  • 来源类型
  • 积分分配规则
  • 调整策略
4.3 积分消耗管理
  • 跟踪并记录消耗
  • 消耗类型
  • 积分扣除规则
  • 积分消费记录
4.4 线下积分同步功能
  • 线下积分更新接口
  • 定期同步
  • 同步记录查看
4.5 积分审计与安全
  • 日志记录
  • 安全性
  • 异常检测

6. 积分充值与提取功能(网站系统与线下机器交互)

6.1 功能概述
  • 介绍积分充值和提取功能
6.2 积分充值功能
  • 系统连接
  • 充值流程
6.3 积分提取功能
  • 系统连接
  • 提取流程
6.4 积分充值相关 API 接口详细文档
  • 接口设计原则
  • 接口文档内容

我们了解了菜单列如何创建,根据目前的后台需求信息,创建的菜单列分析应该为:

菜单结构

  1. 用户管理
    • 查看所有用户列表
    • 搜索特定用户
  1. 积分管理
    • 积分来源管理
      • 来源类型配置
    • 积分消耗管理
      • 跟踪并记录消耗
      • 消耗类型
      • 积分消费记录
  1. 线下积分管理
    • 线下积分同步
      • 线下积分更新接口
      • 同步记录查看
  1. 积分审计与安全
    • 积分日志记录
  1. 积分充值与提取
*   积分充值记录


*   积分提取记录

因此,我们创建用户管理,积分管理,线下积分管理,积分审计与安全,积分充值与提取五项菜单。

主菜单列创建完成,下一篇详细构建后台管理功能以及对应数据库关联关系。


http://www.kler.cn/a/540984.html

相关文章:

  • 自动驾驶数据集三剑客:nuScenes、nuImages 与 nuPlan 的技术矩阵与生态协同
  • windows生成SSL的PFX格式证书
  • WPS如何接入DeepSeek(通过JS宏调用)
  • DeepSeek在FPGA/IC开发中的创新应用与未来潜力
  • 【Matlab优化算法-第14期】基于智能优化算法的VMD信号去噪项目实践
  • Oracle Database Free版本的各项许可限制
  • 如何通过腾讯 ima.copilot 训练自己的知识库
  • 一个简单的Windows TCP服务器实现
  • 【网络法医】Docker取证
  • STM32-知识
  • C语言中隐式类型转换 截断和整型提升
  • Spring Security 学习大纲
  • CSDN 博客之星 2024:肖哥弹架构的社区耕耘总结
  • 在微服务中,如何使用feign在各个微服务中进行远程调用
  • 通过 SQLAlchemy 实现多表映射
  • 【VR开发】【Unity】【游戏开发】如何控制对象的速度
  • 原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力
  • 使用sunshine和moonlight串流时的音频输出问题
  • rebase和merge
  • 【含开题报告+文档+PPT+源码】学术研究合作与科研项目管理应用的J2EE实施
  • 用Kibana实现Elasticsearch索引的增删改查:实战指南
  • Linux系统引导与服务管理
  • Android双屏异显Presentation接口使用说明
  • celery + redis - 入门
  • 【C++语言】C++入门
  • 【生产变更】- Oracle RAC添加配置ipv6地址