首页 > 编程语言 >微信小程序 nodejs+uniapp+vue个人身体健康系统184bw

微信小程序 nodejs+uniapp+vue个人身体健康系统184bw

时间:2024-11-13 13:45:33浏览次数:3  
标签:uniapp vue 184bw res 用户 js userinfo 模块 id

目录

课题介绍

实现了一个完整的身体健康系统,其中主要有运动推荐模块、用户事务模块、用户分享模块、用户模块、饮食推荐模块、消息提醒模块、用户表模块、token表模块、收藏表模块、身体数据模块、公告信息模块、交流论坛模块、运动推荐评论表模块、用户分享评论表模块、饮食推荐评论表模块、配置文件模块、账户的注册与登录等功能模块。本文详细介绍了该身体健康系统的设计过程,并通过全面测试,完善了预期的功能。研究表明采用B/S架构,通过uniapp框架、以及Mysql数据库可以构建一个完整身体健康系统。最后,整个论文从系统分析、设计、实现以及最后的测试做了一个合理的安排。通过最终的研讨做出一个可行性的方案,在完成以后我们做了详细的介绍并找出系统的不足之处,从而来弥补系统的完善,最终打到符合毕业答辩要求的标准。
配置文件 (自动编号、配置参数值、配置参数名称);
饮食推荐评论表 (自动编号、用户id、关联表id、评论内容、头像、用户名、创建时间、回复内容);
用户分享评论表 (自动编号、头像、回复内容、评论内容、用户id、关联表id、用户名、创建时间);
运动推荐评论表 (自动编号、关联表id、用户id、用户名、评论内容、回复内容、创建时间、头像);
交流论坛 (自动编号、头像、用户名、创建时间、用户id、帖子标题、状态、父节点id、帖子内容);
公告信息 (自动编号、图片、创建时间、标题、内容、简介);
身体数据 (自动编号、日期、信息记录、图片、身高、心率、创建时间、体重、用户名、体脂、姓名);
收藏表 (自动编号、推荐类型、创建时间、备注、类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注)、用户id、图片、表名、商品id、名称);
token表 (自动编号、表名、用户id、过期时间、新增时间、密码、用户名、角色);
用户表 (自动编号、密码、用户名、新增时间、角色);
消息提醒 (自动编号、通知内容、通知日期、手机、用户名、创建时间、姓名、通知标题);
饮食推荐 (自动编号、食物搭配、发布日期、推荐饮食、创建时间、赞、踩、饮食图片、详情内容);
用户 (自动编号、姓名、密码、手机、创建时间、性别、用户名、头像);
用户分享 (自动编号、赞、分享日期、分享标题、踩、分享图片、分享内容、创建时间、分享类型、用户名);
用户事务 (自动编号、事务名称、创建时间、事务内容、登记时间、事务图片、事务类型、用户id);
运动推荐 (自动编号、视频介绍、运动介绍、踩、运动类型、运动强度、项目图片、运动名称、创建时间、运动周期、赞);
本系统的设计与实现共包含16个表:分别是配置文件信息表,饮食推荐评论表信息表,用户分享评论表信息表,运动推荐评论表信息表,交流论坛信息表,公告信息信息表,身体数据信息表,收藏表信息表,token表信息表,用户表信息表,消息提醒信息表,饮食推荐信息表,用户信息表,用户分享信息表,用户事务信息表,运动推荐信息表,

具体实现截图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

使用技术介绍

开发工具采用VSCode,前端采用Vue+ElementUI,后端采用Node.js,数据库采用MySQL。
小程序端运行软件 微信开发者工具/hbuiderx
数据库:mysql
数据库工具:Navicat/SQLyog都可以
Nodejs+Vue.js+Express -vscode
uni-app框架:使用Vue.js开发跨平台应用的前端框架,编写一套代码,可编译到Android、小程序等平台。

解决的思路

分为前后台分离模式开发,后台管理员管理整个系统的功能,前台用户查询信息,通过功能菜单可以一目了然的清楚系统具有的功能和操作方式,没有复杂的界面设置和流程要求,只要具有计算机基础的操作即可使用本系统,所以。在操作上就有可行性。
采用B/S模式架构系统,开发简单,只需要连接网络即可登录本系统,不需要安装任何客户端。

开发工具和技术简介

微信开发者工具是由腾讯官方专门为微信小程序量身打造的开发者工具,它不仅轻巧、方便,主要是的对于电脑要求不是很高,所以在一般的电脑上都可以完成相应的开发,在系统调试测试过程中,也不要下载第三方插件,就可以完成系统测试环节,通过制定好的debug调试器就可以完成。
HBuilder 是基于HTML、js、css的等H5语法的开发技术,使得开发者很容易上手学习,里面涉及的数据绑定基于Vue语法涉及,在开发效率上也比传统的jquery快,当然HBuilder 也保留了对jquery的支持,两种语法可以结合项目的需要,可以混合开发。
VScode是我们最常用的网页编辑器,通过日常学习,我们基本熟练运用,在完成项目的过程中,我们可以更加节省时间。而且VScode包含很多插件并且免费,下载更加快捷方便,可以给我们提供很多便捷条件。运行的便捷给我提供很大帮助。
Nodejs语言
只有拥有了一款解析器才能使得脚本语言顺利运行,JavaScript语言是一种脚本语言,各种各样的解析器位于系统中的不同部位,Node.js是一个完整的解析器,而且OS允许js来定义多种多样种类繁多的数据结构,从而处理各种运算,还准许js使用系统环境所提供的多种内置对象和方式做各类计算。当处在浏览器运行环境下时,js技术的用途是进行DOM相关的运算,在这个情况下,该环境便提供一个document类别的内置操作对象。而在node.js运行环境下的js的用途是对磁盘文件进行操作或者是对http服务器进行搭建,此时,node.js就相应提供了fs,http等系统内置对象。
vue前端框架
前端方面,采用近几年比较火的Vue前端框架。Vue是一套用于构建用户界面的渐进式前端框架,使用其可以简化前端页面的开发。同时本系统采用前后端分离开发模式,前端只需要专注于页面的开发,以及接收后端传过来的数据,而后端只需要专注于业务的处理,提供获取JSON格式数据的接口。
Express不对node.js已有的特性进行二次抽象,只是在它之上扩展了Web应用所需的功能。丰富的HTTP工具以及来自Connect框架的中间件随取随用,创建强健、友好的API变得快速又简单。Express是Web开发人员最欢迎的Node.js框架之一,提供一系列强大特性帮助创建各种Web应用。

MySQL通过协议分析SQL语句的语法,支持标准的SQL语言实现增删改查,同时,MYSQL提供了丰富的接口,可以和不同的语言进行连接。在使用MySQL时,首先通过create语句创建数据库名称,并指定数据库文件对应的路径地址,然后通过create table来创建数据库表。创建数据库表时要设置数据库表内的字段以及字段类型、字段是否为空、是否主键、是否外键、是否索引字段、类型的长度等等。

错误处理和异常处理

在系统中,设计了一个健壮的错误处理和异常处理策略。系统会捕获可能发生的错误和异常情况,并提供相应的处理和反馈机制。
系统将采用适宜的异常类别来描述各种类型的错误和异常状况,并通过异常处理策略去捕获和应对这些异常。在处理异常时,系统会提供相关的错误数据和日志记录,以协助开发者和管理者进行问题诊断和解决。此外,系统还会向用户提供友好的错误提示,以确保用户能够理解问题并采取适当的行动。

nodejs类核心代码部分展示


import { version } from '../../package.json'
import { Router } from 'express'
import { Op } from 'sequelize'
import toRes from '../lib/toRes'
import UsersModel from '../models/UsersModel'
import jwt from 'jsonwebtoken'

export default ({ config, db }) => {
	let api = Router()

	// 用户登录接口
	api.post('/login', async (req, res) => {

		try {

			let userinfo = await UsersModel.findOne({ where: { username: req.query.username, password: req.query.password } })
			if (userinfo === null) {
				toRes.session(res, -1, '用户名或密码错误!')
				return;
			}

			const token = jwt.sign(
				{
					id: userinfo.dataValues.id,
					username: userinfo.dataValues.username,
					role: userinfo.dataValues.role
				},
				config.jwtSecret,
				{
					expiresIn: 60 * 60 * 24 * 1
				}
			)

			userinfo.dataValues.token = token
			delete userinfo.dataValues.password
			req.session.userinfo = userinfo

			toRes.session(res, 0, '登录成功!', token)
		} catch(err) {

			toRes.session(res, 500, '服务器错误!', '', 500)
		}
	})

	// 用户退出接口
	api.all('/logout', (req, res) => {

		if (!toRes.auth(req, res, '管理员')) return
		
		req.session.destroy(err => {
			toRes.session(res, 0, '退出成功!')
		})
	})

	// 注册接口
	api.post('/register', async (req, res) => {

		try {

			const userinfo = await UsersModel.create(req.body)

			if (userinfo === null) {

				toRes.session(res, -1, '注册失败!')
			} else {

				toRes.session(res, 0, '注册成功!')
			}
		} catch(err) {
			
			toRes.session(res, 500, '服务器错误!', '', 500)
		}
	})

源码获取/联系我

文章最下方名片联系我即可~

标签:uniapp,vue,184bw,res,用户,js,userinfo,模块,id
From: https://blog.csdn.net/zhgl322/article/details/143741301

相关文章

  • 2024-11-13 uniapp自定义全局弹窗并可以通过uni来调用【转载】
    新建三个文件: dialog.js:exportdefault{/*链接处理*/getLink(params){leturl="/components/dialog/index";if(params){letparamStr="";for(letnameinparams){param......
  • [免费]SpringBoot+Vue3校园宿舍管理系统(优质版)【论文+源码+SQL脚本】
    大家好,我是java1234_小锋老师,看到一个不错的SpringBoot+Vue3校园宿舍管理系统(优质版),分享下哈。项目视频演示【免费】SpringBoot+Vue3校园宿舍管理系统(优质版)Java毕业设计_哔哩哔哩_bilibili项目介绍随着信息技术的不断发展,现代化的校园管理需求日益增多,尤其在校园宿......
  • 无插件H5播放器EasyPlayer.js网页web无插件播放器vue和react详细介绍
    EasyPlayer.jsH5播放器,是一款能够同时支持HTTP、HTTP-FLV、HLS(m3u8)、WS、WEBRTC、FMP4视频直播与视频点播等多种协议,支持H.264、H.265、AAC、G711A、Mp3等多种音视频编码格式,支持MSE、WASM、WebCodec等多种解码方式支持Windows、Linux、Android、iOS全平台终端的H5播放器,使用简单......
  • vue-mixin(混合)
    原文链接:vue-mixin(混合)–每天进步一点点 0.背景假设定义有两个组件,每个组件内都有一个方法sayHello(),这两个方法是一模一样的,这个时候就考虑把这样公共的东西抽离出来做成一个混入对象。实际上这就跟工具类有点类似,不过vue有它自己的想法。1.过程在前面的一些文章中,我......
  • Vue自定义指令详解——以若依框架中封装指令为例分析
    自定义指令在Vue.js中,自定义指令提供了一种非常灵活的方式来扩展Vue的功能。以下是对Vue中自定义指令的详细解释:一、自定义指令的基本概念自定义指令允许开发者直接对DOM元素进行低层次操作,而无需编写大量的模板或者JavaScript代码。它们可以响应Vue的响应式系统,从而在数据......
  • 揭秘!Vue3.5响应式重构如何让内存占用减少56%
    前言Vue3.5版本又将响应式给重构了,重构后的响应式系统主要有两部分组成:双向链表和版本计数。我们在前两篇文章中我们已经讲过了双向链表和版本计数,这篇文章我们来讲讲为什么这次重构能够让内存占用减少56%。欧阳年底也要毕业了,加入欧阳的面试交流群(分享内推信息)、高质量vue......
  • vue
    Vue.js是一个流行的前端JavaScript框架,用于构建用户界面和单页面应用。1.a.响应式系统Vue的核心是其响应式系统。通过data对象,Vue能够追踪依赖关系,并在数据变化时自动更新视图。b.组件组件是Vue的基本构建块。每个Vue应用都是由一棵组件树构成的。组件可以嵌套......
  • 基于SpringBoot+Vue+uniapp的大学生志愿者信息管理系统的详细设计和实现(源码+lw+部署
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言......
  • flask基于SpringBoot和vue的酒吧运营系统(毕设源码+论文)
    校园二手货物交易平台m1a2o本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于酒吧运营系统的研究,现有研究主要以酒吧的营销策略、服务体验等为主,专门针对酒吧运营系统全面功能架构......
  • 基于SpringBoot+Vue的新闻资讯系统+万字论文+Mp4演示
    系统简介:基于SpringBoot+Vue的新闻资讯系统+万字论文+Mp4演示资源描述:是否有万字论文:有是否有论文视频:有是否有PPT:没有是否有Mp4演示:有是否有演示站:有是否前后端分离:是技术栈:Java:JDK8主要编程语言,用于后端开发MySQL:数据库管理系统,用于存储和......