案例075:基于微信小程序的家政服务管理系统

文末获取源码

开发语言:Java

框架:SSM

JDK版本:JDK1.8

数据库:mysql 5.7

开发软件:eclipse/myeclipse/idea

Maven包:Maven3.5.4

小程序框架:uniapp

小程序开发软件:HBuilder X

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

目录

前言

系统展示

管理员功能实现

服务项目管理

留言板管理

家政阿姨管理

家政公司管理

家政阿姨功能实现

家政公司

家政预约

留言板

用户功能实现

家政公司

家政预约

评价信息

代码实现

登录功能实现代码

注册功能实现代码

密码重置功能实现代码

修改信息功能实现代码

删除信息功能实现代码

保存信息功能实现代码


前言

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

基于微信小程序的家政服务管理系统借助微信开发者工具开发用户前端,使用SSM框架和Java语言开发管理员后台,使用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();
    }
相关推荐
^Lim4 分钟前
esp32 JTAG 串口 bootload升级
java·linux·网络
江-小北9 分钟前
Java基础面试题04:Iterator 和 ListIterator 的区别是什么?
java·开发语言
wmd1316430671212 分钟前
IDEA插件CamelCase,快速转变命名格式
java·ide·intellij-idea
捂月1 小时前
Spring Boot 核心逻辑与工作原理详解
java·spring boot·后端
埋头编程~1 小时前
【C++】踏上C++学习之旅(十):深入“类和对象“世界,掌握编程黄金法则(五)(最终篇,内含初始化列表、静态成员、友元以及内部类等等)
java·c++·学习
菜鸟起航ing1 小时前
Java中日志采集框架-JUL、Slf4j、Log4j、Logstash
java·开发语言·log4j·logback
Nightselfhurt1 小时前
RPC学习
java·spring boot·后端·spring·rpc
苹果醋31 小时前
vue3 在哪些方便做了性能提升?
java·运维·spring boot·mysql·nginx
孔汤姆1 小时前
部署实战(二)--修改jar中的文件并重新打包成jar文件
java·pycharm·jar
Abladol-aj2 小时前
并发和并行的基础知识
java·linux·windows