ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

django大学生消费记账小程序87158-计算机课程设计、毕业设计

django大学生消费记账小程序87158-计算机课程设计、毕业设计 前言✨博主介绍一线全栈工程师毕设实战引路人。技术栈覆盖Java、Python、C#、PHP、Node.js及UniApp跨端开发擅长多语言项目落地与架构设计。持续分享毕设源码、开题报告、技术选型心得与职场踩坑经验。用工程化思维写代码帮你把毕设做成作品集。精彩专栏 推荐订阅海量实战库源码任你选 坐拥Java项目2000套海量实战库源码任你选 坐拥Python项目1000套海量实战库源码任你选 坐拥小程序/app项目500套✅获取源码请私信✅感兴趣的可以先收藏起来还有大家在毕设选题项目以及论文编写等相关问题都可以找我咨询希望帮助更多的人❤️系统实现学生功能实现消费分类功能实现学生进入消费分类页面之后系统会显示已经有的类别列表。用户可以在这里新增支出类别并给每一个类别设置颜色标识和图标样式。分类名称由用户根据日常生活消费场景自己来定。分类数据保存之后后续记录消费时可以快速选择对应的条目。消费分类界面消费记录功能实现用户在消费记录页面点击新增按钮后就会进入到录入表单。系统根据当前用户的消费分类选择列表来选择消费分类。填写金额和消费时间之后提交到后端存储。历史记录按日期倒序排列便于用户查找以前的支出。消费记录界面消费预算功能实现学生进入到预算页面之后就可以看到当前生效的月度预算方案。选择预算的周期类型以及金额。在同一周期内重复使用该系统时会弹出提示用户确认覆盖。预算数据写入之后首页立刻更新剩余可用金额的显示。消费预算界面消费预警功能实现系统依照用户设置的预算阈值对消费情况进行自动跟踪。支出超过限额时预警列表就生成新的记录。用户点击预警条目后会显示超支分类以及超出金额等具体数据。预警列表按触发时间倒序排列保证最新消息优先展示。消费预警界面管理员功能实现后台首页功能实现管理员登录之后就可以看到后台首页的消费数据概况。显示学生总数、今日消费总和、预警未处理数量等统计信息。近期消费趋势用图表的形式来体现方便管理员对整体支出变化的把握。后台首页界面消费分类管理功能实现管理员进入分类管理页面查看所有的学生自定义的消费类别。可以对异常分类名称进行修改或者删除不再使用的分类。新增分类时输入类别名称和标识颜色后保存即可生效。消费分类管理界面消费记录管理功能实现管理员在记录管理模块中可以查看所有的学生消费明细。列表可以按照学生的姓名、消费日期、消费分类等几个方面进行筛选。单条记录点击之后可以查看详情还可以对异常支出进行标记处理。消费记录管理界面消费预算管理功能实现管理员进入预算管理页面查看所有的学生所设置的预算方案。系统显示预算周期、预算金额和目前使用的金额。发现不合理预算的时候可以和学生一起商量也可以直接调整预算上限。消费预算管理界面消费预警管理功能实现管理员可以查看预警管理模块中所有被系统触发的预警记录。预警列表用未处理和已处理两种状态进行分类显示。管理员确认异常消费属实之后可以将预警标记为已经处理的状态。消费预警管理界面数据库参考CREATE TABLE article_type ( type_id smallint(5) unsigned NOT NULL AUTO_INCREMENT COMMENT 分类ID, display smallint(4) unsigned NOT NULL DEFAULT 100 COMMENT 显示顺序, name varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT COMMENT 分类名称, father_id smallint(5) unsigned NOT NULL DEFAULT 0 COMMENT 上级分类ID, description varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 描述, icon text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT 分类图标, url varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 外链地址, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间, PRIMARY KEY (type_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci COMMENT文章分类; DROP TABLE IF EXISTS praise; CREATE TABLE praise ( praise_id int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 点赞ID, user_id int(11) unsigned NOT NULL DEFAULT 0 COMMENT 点赞人, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间, source_table varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 来源表, source_field varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 来源字段, source_id int(10) unsigned NOT NULL DEFAULT 0 COMMENT 来源ID, status tinyint(1) NOT NULL DEFAULT 1 COMMENT 点赞状态:1为点赞0已取消, img varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL, title varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL, PRIMARY KEY (praise_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci COMMENT点赞; DROP TABLE IF EXISTS hits; CREATE TABLE hits ( hits_id int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 点赞ID, user_id int(11) unsigned NOT NULL DEFAULT 0 COMMENT 点赞人, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间, source_table varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 来源表, source_field varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 来源字段, source_id int(10) unsigned NOT NULL DEFAULT 0 COMMENT 来源ID, PRIMARY KEY (hits_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci COMMENT用户点击; DROP TABLE IF EXISTS releasing_notices; CREATE TABLE releasing_notices ( notices_id int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 通知ID, title varchar(255) DEFAULT NULL COMMENT 通知标题, type varchar(64) DEFAULT NULL COMMENT 通知方式, content varchar(255) DEFAULT NULL COMMENT 通知内容, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间, PRIMARY KEY (notices_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8 ROW_FORMATDYNAMIC COMMENT通知发布; DROP TABLE IF EXISTS comment; CREATE TABLE comment ( comment_id int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT 评论ID, user_id int(11) unsigned NOT NULL DEFAULT 0 COMMENT 评论人ID, reply_to_id int(11) unsigned NOT NULL DEFAULT 0 COMMENT 回复评论ID, content longtext CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT 内容, nickname varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 昵称, avatar varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 头像地址, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间, source_table varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 来源表, source_field varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 来源字段, source_id int(10) unsigned NOT NULL DEFAULT 0 COMMENT 来源ID, hidden tinyint(4) DEFAULT 0 COMMENT 是否隐藏, sticky tinyint(4) DEFAULT 0 COMMENT 是否置顶, PRIMARY KEY (comment_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci COMMENT评论; DROP TABLE IF EXISTS user; CREATE TABLE user ( user_id int(8) unsigned NOT NULL AUTO_INCREMENT COMMENT 用户ID, state smallint(1) unsigned NOT NULL DEFAULT 1 COMMENT 账户状态(1可用|2异常|3已冻结|4已注销), user_group varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 所在用户组, login_time timestamp NULL DEFAULT NULL COMMENT 上次登录时间, phone varchar(11) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 手机号码, phone_state smallint(1) unsigned NOT NULL DEFAULT 0 COMMENT 手机认证(0未认证|1审核中|2已认证), username varchar(16) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT COMMENT 用户名, nickname varchar(16) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT COMMENT 昵称, password varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT COMMENT 密码, email varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT COMMENT 邮箱, email_state smallint(1) unsigned NOT NULL DEFAULT 0 COMMENT 邮箱认证(0未认证|1审核中|2已认证), avatar varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 头像地址, open_id varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 针对获取用户信息字段, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, vip_level varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 会员等级, vip_discount double(10,2) DEFAULT 0.00 COMMENT 会员折扣, integral int(11) DEFAULT 0 COMMENT 积分, balance double(10,2) DEFAULT 0.00 COMMENT 余额, ip varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT IPv4/IPv6地址, device_hash varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 设备指纹, emergency_name varchar(64) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 紧急联系人, emergency_mobile varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 紧急联系电话, PRIMARY KEY (user_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci COMMENT用户账户; insert into user values (1,1,管理员,2025-10-09 09:20:03.0,null,0,admin,admin,bfd59291e825b5f2bbf1eb76569f8fe7,,0,/api/upload/admin_avatar.jpg,null,2026-03-10 11:20:51,null,0.0,0,0.0,null,null,null,null); ALTER TABLE user DROP COLUMN balance; ALTER TABLE user DROP COLUMN integral; ALTER TABLE user DROP COLUMN vip_level; ALTER TABLE user DROP COLUMN vip_discount; ALTER TABLE user DROP COLUMN ip; ALTER TABLE user DROP COLUMN device_hash; ALTER TABLE user DROP COLUMN emergency_name; ALTER TABLE user DROP COLUMN emergency_mobile; UPDATE user SET password asd123; UPDATE user SET avatar /static/upload/admin_avatar.jpg; DROP TABLE IF EXISTS student_users; CREATE TABLE student_users(student_users_id int(11) NOT NULL AUTO_INCREMENT COMMENT 学生用户ID, student_name varchar(64) comment 学生姓名, student_mobile_phone varchar(16) comment 学生手机, examine_state varchar(16) DEFAULT 已通过 NOT NULL comment 审核状态, user_id int(11) DEFAULT 0 NOT NULL comment 用户ID, create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, create_by int(11) DEFAULT 1 NOT NULL comment 创建用户ID, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间, PRIMARY KEY (student_users_id))ENGINEInnoDB DEFAULT CHARSETutf8mb4 comment 学生用户; E TABLE consumption_class_nameification(consumption_class_nameification_id int(11) NOT NULL AUTO_INCREMENT COMMENT 消费分类ID, student_user int(11) DEFAULT 0 comment 学生用户, category_name varchar(64) comment 分类名称, class_nameification_color varchar(64) comment 分类颜色, category_icon varchar(255) comment 分类图标, create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, create_by int(11) DEFAULT 1 NOT NULL comment 创建用户ID, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间, PRIMARY KEY (consumption_class_nameification_id))ENGINEInnoDB DEFAULT CHARSETutf8mb4 comment 消费分类; ption_record(consumption_record_id int(11) NOT NULL AUTO_INCREMENT COMMENT 消费记录ID, consumption_number varchar(64) comment 消费编号, consumption_class_nameification varchar(64) comment 消费分类, student_user int(11) DEFAULT 0 comment 学生用户, record_date date comment 记录日期, consumption_time datetime comment 消费时间, amount_spent double(8,2) DEFAULT 0 comment 消费金额, consumption_mode varchar(64) comment 消费方式, consumption_remarks text comment 消费备注, create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, create_by int(11) DEFAULT 1 NOT NULL comment 创建用户ID, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间, PRIMARY KEY (consumption_record_id))ENGINEInnoDB DEFAULT CHARSETutf8mb4 comment 消费记录;代码参考# 论坛类型 class Article_type(controllerClass): def __init__(self, config{}): 构造函数 param {Object} config 配置参数 config_init { # 选择的模板那路径模板 tpl: ./article_type/, # 选择的服务 service: article_type } config_temp config config_temp.update(config_init) super(Article_type, self).__init__(config_temp) # 消费分类 class Consumption_class_nameification(controllerClass): def __init__(self, config{}): 构造函数 param {Object} config 配置参数 config_init { # 选择的模板那路径模板 tpl: ./consumption_class_nameification/, # 注册API get_api: [], # 注册post api路由 post_api: [], # 选择的服务 service: consumption_class_nameification, } config_temp config config_temp.update(config_init) super(Consumption_class_nameification , self).__init__(config_temp) # 通知发布 class Releasing_notices(controllerClass): def __init__(self, config{}): 构造函数 param {Object} config 配置参数 config_init { # 选择的模板那路径模板 tpl: ./releasing_notices/, # 选择的服务 service: releasing_notices, } config_temp config config_temp.update(config_init) super(Releasing_notices , self).__init__(config_temp) # 视频类 class Video(controllerClass): def __init__(self, config{}): 构造函数 param {Object} config 配置参数 config_init { # 选择的模板那路径模板 tpl: ./video/, # 选择的服务 service: video, } config_temp config config_temp.update(config_init) super(Video, self).__init__(config_temp) def Index(self, ctx): 首页 param {Object} ctx http请求上下文 return {Object} 返回html页面 query dict(ctx.query) query[type] video config_plus {} if field in query: field query.pop(field) config_plus[field] field if page in query: page query.pop(page) config_plus[page] page if size in query: size query.pop(size) config_plus[size] size config_temp self.config config_temp.update(config_plus) obj self.service.Get_obj(query, config_temp) name_arr obj[name].split(.) obj[extension] name_arr[len(name_arr) - 1] result_dict {obj: obj} model self.model(ctx, result_dict) return ctx.render(self.config[tpl] index .html, model)前端基于uni-app框架构建跨平台用户界面使用HTML5、CSS3和JavaScript/Vue.js实现页面结构与交互逻辑通过uni-app内置路由或Vue Router管理页面导航Vuex或Pinia维护全局状态。采用uni-ui或uView等组件库快速搭建界面使用uni.request或Axios经适配封装HTTP请求实现与后端的数据通信同时可调用uni-app提供的丰富原生API如相机、定位、支付等增强移动端能力。后端基于Django框架搭建遵循MTVModel-Template-View模式同时结合DRFDjango REST Framework实现RESTful API。Model层定义数据模型并与数据库交互View层通过DRF的视图集ViewSet或通用视图GenericView处理请求并结合序列化器Serializer完成数据的序列化与反序列化Service层可选封装复杂业务逻辑保持视图层简洁。使用Django内置的认证系统或djangorestframework-simplejwt结合JWT实现用户认证与权限控制。数据库采用MySQL存储持久化数据Redis缓存热点信息以提升系统性能。开发工具使用HBuilderX或VSCode开发前端uni-appIDEA开发后端Git进行版本管理Maven管理后端依赖npm或yarn管理前端依赖并通过HBuilderX的App发布功能或命令行工具完成多端iOS、Android、H5、各小程序打包发布。源码获取私信联系我即可~大家点赞、收藏、关注、评论啦精彩专栏 推荐订阅海量实战库源码任你选 坐拥Java项目2000套海量实战库源码任你选 坐拥Python项目1000套海量实战库源码任你选 坐拥小程序/app项目500套✅获取源码请私信✅感兴趣的可以先收藏起来还有大家在毕设选题项目以及论文编写等相关问题都可以找我咨询希望帮助更多的人❤️
返回列表