文末获取源码
开发语言:Java
框架:SSM
JDK版本:JDK1.8
数据库:mysql 5.7
开发软件:eclipse/myeclipse/idea
Maven包:Maven3.5.4
小程序框架:uniapp
小程序开发软件:HBuilder X
小程序运行软件:微信开发者
目录
前言
社会的发展和科学技术的进步,互联网技术越来越受欢迎。手机也逐渐受到广大人民群众的喜爱,也逐渐进入了每个用户的使用。手机具有便利性,速度快,效率高,成本低等优点。 因此,构建符合自己要求的操作系统是非常有意义的。
本文从管理员、用户的功能要求出发,电影订票系统小程序中的功能模块主要是实现管理员服务端;首页、个人中心、用户管理、电影类型管理、放映厅管理、电影信息管理、电影评价管理、系统管理、订单管理,用户客户端:首页、电影信息、电影资讯、我的。经过认真细致的研究,精心准备和规划,最后测试成功,系统可以正常使用。分析功能调整与电影订票系统小程序实现的实际需求相结合,讨论了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);
}
注册功能实现代码
@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();
}
密码重置功能实现代码
@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");
}
修改信息功能实现代码
@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();
}
删除信息功能实现代码
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
userService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
保存信息功能实现代码
@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();
}