首页 > 编程语言 >springboot基于Android的个人健康管理系统设计与实现(源码+vue+uinapp+部署文档等)

springboot基于Android的个人健康管理系统设计与实现(源码+vue+uinapp+部署文档等)

时间:2024-12-01 17:28:51浏览次数:8  
标签:03 vue 20 springboot 01 源码 2023 59 NULL

文章目录


详细视频演示

文章底部名片,获取项目的完整演示视频,免费解答技术疑问

项目介绍

  如今的信息时代,对信息的共享性,信息的流通性有着较高要求,因此传统管理方式就不适合。为了让管理模式进行升级,也为了更好的维护信息,个人健康管理系统的开发运用就显得很有必要。并且通过开发个人健康管理系统,不仅可以让所学的微信小程序技术得到实际运用,也可以掌握MySQL的使用方法,对自身编程能力也有一个检验和提升的过程。尤其是通过实践,可以对系统的开发流程加深印象,无论是前期的分析与设计,还是后期的编码测试等环节,都可以有一个深刻的了解。
借助于个人健康管理系统这样的工具,让信息系统化,流程化,规范化是最终的发展结果,让其遵循实际操作流程的情况下,对信息实施规范化处理,让信息通过电子的方式进行保存,无论是管理人员检索信息,可以便利化操作,真正缩短信息处理时间,节省人力和信息管理的成本。

技术介绍

开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven

安卓框架:uniapp
安卓开发软件:HBuilder X
开发模式:混合开发

功能介绍

这部分内容使用结构图这样的工具,显示设计结果,设计的管理员功能见下图。管理员为用户忘记密码时可以重置用户密码.
在这里插入图片描述

图4-1 管理员功能结构图

核心代码

package com.example.controller;

import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {

    @Resource
    private CaiwuService caiwuService;

    @PostMapping
    public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
        caiwuService.add(caiwu);
           return Result.success(caiwu);
    }
	
	

    @PostMapping("/deleteList")
    public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
        caiwuService.deleteList(caiwu.getList());
        return Result.success();
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        caiwuService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody CaiwuVo caiwu) {
        caiwuService.update(caiwu);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<Caiwu> detail(@PathVariable Integer id) {
        Caiwu caiwu = caiwuService.findById(id);
        return Result.success(caiwu);
    }

    @GetMapping
    public Result<List<Caiwu>> all() {
        return Result.success(caiwuService.list());
    }

    @PostMapping("/page")
    public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
        return Result.success(caiwuService.findPage(caiwuVo));
    }
	    @PostMapping("/login")
    public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
        if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
            throw new CustomException(ResultCode.PARAM_LOST_ERROR);
        }
        Caiwu login = caiwuService.login(caiwu);
//        if(!login.getStatus()){
//            return Result.error("1001","状态限制,无法登录系统");
//        }
        if(login != null) {
            HashMap hashMap = new HashMap();
            hashMap.put("user", login);
            Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
            String token = JwtUtil.creatToken(map);
            hashMap.put("token", token);
            return Result.success(hashMap);
        }else {
            return Result.error();
        }
    }
    @PutMapping("/updatePassword")
    public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
        Caiwu caiwu = caiwuService.findById(info.getId());
        String oldPassword = SecureUtil.md5(info.getMima());
        if (!oldPassword.equals(caiwu.getMima())) {
            return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
        }
        info.setMima(SecureUtil.md5(info.getNewPassword()));
        Caiwu caiwu1 = new Caiwu();
        BeanUtils.copyProperties(info, caiwu1);
        caiwuService.update(caiwu1);
        return Result.success();
    }
}


数据库参考



/*!40101 SET NAMES utf8 */;

/*!40101 SET SQL_MODE=''*/;

/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/`rentijiankangguanli` /*!40100 DEFAULT CHARACTER SET utf8 */;

USE `rentijiankangguanli`;

/*Table structure for table `config` */

DROP TABLE IF EXISTS `config`;

CREATE TABLE `config` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `name` varchar(100) DEFAULT NULL COMMENT '配置参数名称',
  `value` varchar(100) DEFAULT NULL COMMENT '配置参数值',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COMMENT='配置文件';

/*Data for the table `config` */

insert  into `config`(`id`,`name`,`value`) values (1,'轮播图1','upload/config1.jpg'),(2,'轮播图2','upload/config2.jpg'),(3,'轮播图3','upload/config3.jpg');

/*Table structure for table `dictionary` */

DROP TABLE IF EXISTS `dictionary`;

CREATE TABLE `dictionary` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `dic_code` varchar(200) DEFAULT NULL COMMENT '字段',
  `dic_name` varchar(200) DEFAULT NULL COMMENT '字段名',
  `code_index` int(11) DEFAULT NULL COMMENT '编码',
  `index_name` varchar(200) DEFAULT NULL COMMENT '编码名字  Search111 ',
  `super_id` int(11) DEFAULT NULL COMMENT '父字段id',
  `beizhu` varchar(200) DEFAULT NULL COMMENT '备注',
  `create_time` timestamp NULL DEFAULT NULL COMMENT '创建时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8 COMMENT='字典';

/*Data for the table `dictionary` */

insert  into `dictionary`(`id`,`dic_code`,`dic_name`,`code_index`,`index_name`,`super_id`,`beizhu`,`create_time`) values (1,'meishi_types','饮食类型',1,'早餐',NULL,NULL,'2023-03-01 20:59:13'),(2,'meishi_types','饮食类型',2,'午餐',NULL,NULL,'2023-03-01 20:59:13'),(3,'meishi_types','饮食类型',3,'晚餐',NULL,NULL,'2023-03-01 20:59:13'),(4,'yundong_types','运动类型',1,'运动类型1',NULL,NULL,'2023-03-01 20:59:13'),(5,'yundong_types','运动类型',2,'运动类型2',NULL,NULL,'2023-03-01 20:59:13'),(6,'yundong_types','运动类型',3,'运动类型3',NULL,NULL,'2023-03-01 20:59:13'),(7,'shenti_types','身体状况',1,'偏瘦',NULL,NULL,'2023-03-01 20:59:13'),(8,'shenti_types','身体状况',2,'正常',NULL,NULL,'2023-03-01 20:59:13'),(9,'shenti_types','身体状况',3,'超重',NULL,NULL,'2023-03-01 20:59:13'),(10,'shenti_types','身体状况',4,'肥胖',NULL,NULL,'2023-03-01 20:59:13'),(11,'news_types','公告类型',1,'公告类型1',NULL,NULL,'2023-03-01 20:59:13'),(12,'news_types','公告类型',2,'公告类型2',NULL,NULL,'2023-03-01 20:59:13'),(13,'news_types','公告类型',3,'公告类型3',NULL,NULL,'2023-03-01 20:59:13'),(14,'sex_types','性别',1,'男',NULL,NULL,'2023-03-01 20:59:13'),(15,'sex_types','性别',2,'女',NULL,NULL,'2023-03-01 20:59:13'),(16,'forum_state_types','帖子状态',1,'发帖',NULL,NULL,'2023-03-01 20:59:13'),(17,'forum_state_types','帖子状态',2,'回帖',NULL,NULL,'2023-03-01 20:59:13');

/*Table structure for table `forum` */

DROP TABLE IF EXISTS `forum`;

CREATE TABLE `forum` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `forum_name` varchar(200) DEFAULT NULL COMMENT '帖子标题  Search111 ',
  `yonghu_id` int(11) DEFAULT NULL COMMENT '用户',
  `users_id` int(11) DEFAULT NULL COMMENT '管理员',
  `forum_content` text COMMENT '发布内容',
  `super_ids` int(11) DEFAULT NULL COMMENT '父id',
  `forum_state_types` int(11) DEFAULT NULL COMMENT '帖子状态',
  `insert_time` timestamp NULL DEFAULT NULL COMMENT '发帖时间',
  `update_time` timestamp NULL DEFAULT NULL COMMENT '修改时间',
  `create_time` timestamp NULL DEFAULT NULL COMMENT '创建时间 show2',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 COMMENT='论坛';

/*Data for the table `forum` */

insert  into `forum`(`id`,`forum_name`,`yonghu_id`,`users_id`,`forum_content`,`super_ids`,`forum_state_types`,`insert_time`,`update_time`,`create_time`) values (1,'帖子标题1',1,NULL,'发布内容1',226,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(2,'帖子标题2',2,NULL,'发布内容2',32,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(3,'帖子标题3',2,NULL,'发布内容3',364,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(4,'帖子标题4',2,NULL,'发布内容4',196,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(5,'帖子标题5',1,NULL,'发布内容5',135,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(6,'帖子标题6',2,NULL,'发布内容6',289,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(7,'帖子标题7',3,NULL,'发布内容7',430,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(8,'帖子标题8',1,NULL,'发布内容8',301,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(9,'帖子标题9',1,NULL,'发布内容9',1,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(10,'帖子标题10',1,NULL,'发布内容10',243,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(11,'帖子标题11',1,NULL,'发布内容11',479,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(12,'帖子标题12',3,NULL,'发布内容12',251,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(13,'帖子标题13',1,NULL,'发布内容13',142,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(14,'帖子标题14',1,NULL,'发布内容14',78,1,'2023-03-01 20:59:50','2023-03-01 20:59:50','2023-03-01 20:59:50'),(15,NULL,NULL,1,'3123123',14,2,'2023-03-02 09:09:49',NULL,'2023-03-02 09:09:49'),(16,NULL,1,NULL,'321321',14,2,'2023-03-02 09:13:44',NULL,'2023-03-02 09:13:44');

/*Table structure for table `gerentizheng` */

DROP TABLE IF EXISTS `gerentizheng`;

CREATE TABLE `gerentizheng` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键 ',
  `yonghu_id` int(11) DEFAULT NULL COMMENT '用户',
  `gerentizheng_num` decimal(10,2) DEFAULT NULL COMMENT '当前身高',
  `tizhong_num` decimal(10,2) DEFAULT NULL COMMENT '当前体重',
  `shenti_types` int(11) DEFAULT NULL COMMENT '身体状况',
  `gerentizheng_content` text COMMENT '备注',
  `gerentizheng_delete` int(11) DEFAULT NULL COMMENT '逻辑删除',
  `insert_time` timestamp NULL DEFAULT NULL COMMENT '添加时间',
  `create_time` timestamp NULL DEFAULT NULL COMMENT '创建时间  show3 listShow',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 COMMENT='个人体征';



系统效果图

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

源码获取

下方名片联系我即可!!


大家点赞、收藏、关注、评论啦 、查看

标签:03,vue,20,springboot,01,源码,2023,59,NULL
From: https://blog.csdn.net/QQ1039692211/article/details/144157767

相关文章

  • 【开题报告】基于Springboot+vue学业预警帮扶系统(程序+源码+论文) 计算机毕业设计
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景在当今高等教育日益普及的背景下,学生群体的多样性和复杂性不断增加,学业困难问题日益凸显。许多学生在面对繁重的学业压力、复杂的课程内容以及个人生......
  • 【开题报告】基于Springboot+vue宿舍管理系统的设计与实现(程序+源码+论文) 计算机毕业
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着高校规模的不断扩大和学生人数的持续增长,宿舍管理成为高校日常管理中不可或缺的一环。传统的宿舍管理方式,如人工登记、纸质记录等,已难以满足现代......
  • 【开题报告】基于Springboot+vue休闲农场管理系统(程序+源码+论文) 计算机毕业设计
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着城市化进程的加速,人们日益向往回归自然、体验田园生活的休闲方式。休闲农场作为一种新兴的农业旅游模式,不仅为人们提供了亲近自然、放松身心的场......
  • 【开题报告】基于Springboot+vue医院挂号管理系统(程序+源码+论文) 计算机毕业设计
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展和医疗改革的不断深入,医院挂号管理系统在现代医疗体系中扮演着至关重要的角色。传统的挂号方式存在排队时间长、信息记录不准......
  • Spring源码的分析之启动流程
    一.前言这篇文章的话就是我个人通过一些技术博客以及自己写一些Demo测试获得的一些感悟但是由于本人的技术水平有限所以肯定就是会出现一些问题所以希望看这篇文章的时候如果发现错误的时候可以提出来然后我个人的话进行修改二.SpringApplication的构造函数创建的一个简......
  • Spring源码分析之容器的Register()以及Scan()
    前言:   通过Spring源码的分析之启动流程-CSDN博客的学习我们知道Spring容器的启动的流程但是我们创建容器的时候有多种方式第一种就是我们在上一篇文章中写的那么还有其他的方式创建应用上下文(在这篇文章中我就以AnnotationConfigApplicationContext为例子)//这个就......
  • 【开题报告】基于Springboot+vue阳阳助农电商平台(程序+源码+论文) 计算机毕业设计
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展和互联网的普及,电子商务已成为推动经济社会发展的重要力量。特别是在农业领域,电商平台为农产品的销售开辟了新的渠道,有效缓解......
  • 【开题报告】基于Springboot+vue疫情期间社区人员流动系统(程序+源码+论文) 计算机毕业
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景自新冠疫情爆发以来,全球公共卫生体系面临着前所未有的挑战。社区作为疫情防控的第一线,其人员流动管理成为控制疫情扩散的关键环节。传统的社区管理方......
  • springboot毕设 企业人事信息管理程序+论文
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着信息技术的迅猛发展和企业规模的不断扩大,企业人事信息管理成为了企业管理中的重要一环。传统的人事管理方式依赖于纸质文档和人工操作,不仅效率低......
  • springboot毕设 企业进销存管理系统 程序+论文
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着企业规模的不断扩大和市场竞争的日益激烈,企业的进销存管理成为提升运营效率、降低成本、增强市场竞争力的关键因素。传统的进销存管理方式往往依......