案例063:基于微信小程序的传染病防控宣传系统

文末获取源码

开发语言:Java

框架:springboot

JDK版本:JDK1.8

数据库:mysql 5.7

开发软件:eclipse/myeclipse/idea

Maven包:Maven3.5.4

小程序框架:uniapp

小程序开发软件:HBuilder X

小程序运行软件:微信开发者

目录

前言

系统展示

管理员功能实现

防控知识管理

捐赠信息管理

健康上报管理

医院信息管理

通知公告

用户功能实现

防控知识

医疗捐赠

捐赠信息

健康上报

代码实现

登录功能实现代码

注册功能实现代码

密码重置功能实现代码

修改信息功能实现代码

删除信息功能实现代码

保存信息功能实现代码


前言

由于APP软件在开发以及运营上面所需成本较高,而用户手机需要安装各种APP软件,因此占用用户过多的手机存储空间,导致用户手机运行缓慢,体验度比较差,进而导致用户会卸载非必要的APP,倒逼管理者必须改变运营策略。随着微信小程序的出现,解决了用户非独立APP不可访问内容的痛点,所以很多APP软件都转向微信小程序。本次课题就运用了微信小程序技术开发一个传染病防控宣传系统。

本次使用数据库工具MySQL以及微信开发者工具开发的传染病防控宣传系统,可以实现目标用户群需要的功能,其中管理员审核用户上报的健康信息,管理防控知识,管理医院,管理捐赠信息。用户查看防控知识,查看医院信息,可以参与医疗捐赠,可以登记健康上报信息。

总之,传染病防控宣传系统可以更加方便管理人员管理传染病防控宣传信息,也方便用户查看防控知识,参与医疗捐赠,登记健康上报信息。


系统展示

管理员功能实现

防控知识管理

管理防控知识是管理员的功能。其运行效果图如下。管理员新增防控知识,预览防控知识的视频,查看防控知识的相关评论信息,可以删除指定的防控知识信息。

捐赠信息管理

管理捐赠信息是管理员的功能。其运行效果图如下。管理员查看用户捐赠的金额信息,可以查询用户捐赠信息,修改用户捐赠信息,删除用户捐赠信息。

健康上报管理

管理用户的健康上报信息是管理员的功能。其运行效果图如下。管理员查看用户上报的健康信息,审核健康上报信息,可以提交用户姓名查询用户上报的健康信息。

医院信息管理

管理医院信息是管理员的功能。其运行效果图如下。管理员修改或删除医院信息,新增医院信息,提交医院名称可以查询医院信息。

通知公告

管理通知公告是管理员的功能。其运行效果图如下。管理员负责发布通知公告,修改或删除通知公告。

用户功能实现

防控知识

用户查看防控知识。其运行效果图如下。用户查看防控知识的介绍以及视频,可以收藏防控知识,可以在页面底部评论防控知识。

医疗捐赠

用户可以查看医疗捐赠信息。其运行效果图如下。用户点击捐赠按钮可以捐赠一定数量的金额。

捐赠信息

用户可以查看捐赠信息。其运行效果图如下。用户在本页面查看自己打算捐赠的金额信息,并点击支付按钮进行金额支付。

健康上报

用户可以管理健康上报信息。其运行效果图如下。用户在本页面新增健康信息,可以对登记的健康信息进行修改,可以删除登记的健康信息。


代码实现

登录功能实现代码

java 复制代码
@IgnoreAuth
	@PostMapping(value = "/login")
	public R login(String username, String password, String captcha, HttpServletRequest request) {
		UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
		if(user==null || !user.getPassword().equals(password)) {
			return R.error("账号或密码不正确");
		}
		String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
		return R.ok().put("token", token);
	}

注册功能实现代码

java 复制代码
@IgnoreAuth
	@PostMapping(value = "/register")
	public R register(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }

密码重置功能实现代码

java 复制代码
@IgnoreAuth
	@RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
    	UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
    	if(user==null) {
    		return R.error("账号不存在");
    	}
    	user.setPassword("123456");
        userService.update(user,null);
        return R.ok("密码已重置为:123456");
    }

修改信息功能实现代码

java 复制代码
 @RequestMapping("/update")
    public R update(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
    	UserEntity u = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername()));
    	if(u!=null && u.getId()!=user.getId() && u.getUsername().equals(user.getUsername())) {
    		return R.error("用户名已存在。");
    	}
        userService.updateById(user);//全部更新
        return R.ok();
    }

删除信息功能实现代码

java 复制代码
@RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        userService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }

保存信息功能实现代码

java 复制代码
@PostMapping("/save")
    public R save(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }
相关推荐
Leighteen39 分钟前
Redis与MySQL双写一致性:从问题根源到工程落地
数据库·redis·mysql
醉城夜风~3 小时前
MySQL 常用内置函数全解:字符串、数值、日期、流程控制实战教程
数据库·mysql
大白要努力!3 小时前
uni-app 全面入门速查手册
前端·uni-app
Database_Cool_4 小时前
阿里云 RDS MySQL vs 腾讯云 CDB 国内云关系型数据库深度对比
数据库·mysql·阿里云
李剑一5 小时前
uni-app x 实现本地 JSON 文件的导入导出(APP端可用)
android·前端·uni-app
X-⃢_⃢-X5 小时前
七、数据库的设计规范
数据库·mysql·架构·设计规范
2501_915106326 小时前
iOS 软件测试工具性能监控、日志分析 KeyMob、Instruments等
android·ios·小程序·https·uni-app·iphone·webview
渣渣灰飞6 小时前
MySQL 系统学习 第五阶段:企业级 MySQL 实战开发 第一章:企业数据库设计规范
数据库·学习·mysql
云迈科技-软件定制开发7 小时前
2026 AI智能体小程序APP开发怎么做:从场景规划到上线交付的完整参考
大数据·人工智能·小程序
Zhu7587 小时前
在k8s环境部署ApacheGuacamole,分别对接MySQL和PG数据库
数据库·mysql·kubernetes