案例073:基于微信小程序的智慧旅游平台开发

文末获取源码

开发语言:Java

框架:SSM

JDK版本:JDK1.8

数据库:mysql 5.7

开发软件:eclipse/myeclipse/idea

Maven包:Maven3.5.4

小程序框架:uniapp

小程序开发软件:HBuilder X

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

目录

前言

系统展示

后台模块的实现

用户信息管理

旅游景点管理

景区活动管理

小程序会员模块的实现

系统首页

我的菜单

景点购票

代码实现

登录功能实现代码

注册功能实现代码

密码重置功能实现代码

修改信息功能实现代码

删除信息功能实现代码

保存信息功能实现代码


前言

随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了智慧旅游平台开发微信小程序的开发全过程。通过分析智慧旅游平台开发微信小程序管理的不足,创建了一个计算机管理智慧旅游平台开发微信小程序的方案。文章介绍了智慧旅游平台开发微信小程序的系统分析部分,包括可行性分析等,系统设计部分主要介绍了系统功能设计和数据库设计。

本智慧旅游平台开发微信小程序功能有管理员和用户。管理员功能有个人中心,用户管理,景点分类管理,旅游景点管理,景点购票管理,景区活动管理,留言板管理,系统管理。用户可以查看景点信息,活动信息,还可以购票,以及留言。因而具有一定的实用性。

本站后台采用Java的SSM框架进行后台管理开发,可以在浏览器上登录进行后台数据方面的管理,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();
    }
相关推荐
jiayong23几秒前
Word 使用指南:标题间距调整与核心功能详解
开发语言·c#·word
游戏23人生1 分钟前
c++ 语言教程——17面向对象设计模式(六)
开发语言·c++·设计模式
superman超哥2 分钟前
仓颉内存管理内功:栈与堆的分配策略深度解析
c语言·开发语言·c++·python·仓颉
Evand J3 分钟前
【MATLAB例程】GNSS高精度定位滤波的例程分享,使用维纳滤波+多频段加权融合,抗多径、延迟等带来的误差
开发语言·matlab·gnss·北斗·滤波·维纳滤波·bds
极客先躯6 分钟前
java的线上诊断工具大全
java·大数据·开发语言·内存管理·生产·诊断工具
程序员水自流8 分钟前
MySQL常用SQL语法及参数详细介绍(新手经验书)
java·数据库·sql·mysql·oracle
天呐草莓9 分钟前
企业微信自动打标签教程
大数据·python·微信·微信小程序·小程序·企业微信
coder_xiaoyou11 分钟前
单例模式_双检锁与静态内部类
java·单例模式
MyBFuture12 分钟前
C# 二进制数据读写与BufferStream实战
开发语言·c#·visual studio
川石课堂软件测试12 分钟前
软件测试的白盒测试(二)之单元测试环境
开发语言·数据库·redis·功能测试·缓存·单元测试·log4j