案例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();
    }
相关推荐
成为大佬先秃头3 小时前
数据库连接池:Druid
数据库·mysql·druid
wregjru7 小时前
【mysql】2.数据表操作
数据库·mysql
LcVong8 小时前
MySQL 5.2/5.7 开启Binlog日志详细步骤(附验证+查看+恢复)
数据库·mysql·adb
FL4m3Y4n8 小时前
MySQL缓存策略
数据库·mysql·缓存
不吃香菜的小趴菜8 小时前
mysql数据库打包与导入
数据库·mysql
NineData9 小时前
从业务库到实时分析库,NineData构建MySQL到SelectDB同步链路
数据库·mysql·程序员
不爱说话郭德纲9 小时前
uni-app x iOS 离线打包踩坑总结
uni-app·xcode
IT WorryFree11 小时前
如何设置微信群机器人
微信·github
非优秀程序员11 小时前
10分钟,用qclaw打造你的AI选股系统--官方每天送4百万token
人工智能·微信·产品经理