列车票务信息管理系统是基于java编程语言,框架,mysql数据库制作,本系统主要分为用户和管理员两个角色,用户的主要功能有注册和登陆系统,查看车票信息,在线预约车票,在线交流,联系客服,购票指南查看等;管理员的主要功能是对用户,车次,订单,在线交流,联系客服等信息管理。本设计功能齐全,文档齐全
jdk版本:1.8 及以上
ide工具:IDEA
数据库: .7+
编程语言: Java
: 8.0 及以上
java框架:
maven: 3.6.1
前端:layui
详细技术:HTML+CSS+JS+JSP+JAVA++MYSQL++MAVEN
基于列车票务信息管理系统
系统分为用户和管理员两个角色
用户的主要功能有:
1.用户注册和登陆系统
2.用户查看系统的购票指南
3.用户查看车次信息,对车次的车票进行购买,留言评价
4.用户购买车票,生成车票订单,在线支付,收藏车次信息
5.用户在线论坛交流,查看帖子,回复帖子,发布帖子
6.用户个人中心修改个人资料,修改密码,查看收藏,查看我的发布,我的订单
7.用户在线联系客服,和客服在线交流
8.退出登陆
管理员的主要功能有:
1.管理员输入账户登陆后台
2.个人中心:管理员修改密码和账户信息
3.车票信息管理:管理员对车票信息进行添加,修改,删除,查询
4.购票指南管理:管理员对购票指南信息进行添加,修改,删除,查询
5.管理员管理:对系统的管理员信息进行添加,修改,删除,查询
6.论坛管理:对用户发布的帖子进行修改我的订单详情查询,删除,查询
7.试题管理:对考试的试卷试题进行添加,修改,删除,查询
8.客服管理:对用户的在线联系客服信息进行回复
9.订单管理:对用户买票的订单进行查询,发货
10.轮播图管理:对网站轮播图进行添加我的订单详情查询,修改,查询,删除
11.退出系统
/**
* 登录相关
*/
@RequestMapping("users")
@RestController
public class UserController{
@Autowired
private UserService userService;
@Autowired
private TokenService tokenService;
/**
* 登录
*/
@IgnoreAuth
@PostMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
UserEntity user = userService.selectOne(new EntityWrapper().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().eq("username", user.getUsername())) !=null) {
return R.error("用户已存在");
}
userService.insert(user);
return R.ok();
}
/**
* 退出
*/
@GetMapping(value = "logout")
public R logout(HttpServletRequest request) {
request.getSession().invalidate();
return R.ok("退出成功");
}
/**
* 密码重置
*/
@IgnoreAuth
@RequestMapping(value = "/resetPass")
public R resetPass(String username, HttpServletRequest request){
UserEntity user = userService.selectOne(new EntityWrapper().eq("username", username));
if(user==null) {
return R.error("账号不存在");
}
user.setPassword("123456");
userService.update(user,null);
return R.ok("密码已重置为:123456");
}
/**
* 列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map params,UserEntity user){
EntityWrapper ew = new EntityWrapper();
PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/list")
public R list( UserEntity user){
EntityWrapper ew = new EntityWrapper();
ew.allEq(MPUtil.allEQMapPre( user, "user"));
return R.ok().put("data", userService.selectListView(ew));
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") String id){
UserEntity user = userService.selectById(id);
return R.ok().put("data", user);
}
/**
* 获取用户的session用户信息
*/
@RequestMapping("/session")
public R getCurrUser(HttpServletRequest request){
Long id = (Long)request.getSession().getAttribute("userId");
UserEntity user = userService.selectById(id);
return R.ok().put("data", user);
}
/**
* 保存
*/
@PostMapping("/save")
public R save(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper().eq("username", user.getUsername())) !=null) {
return R.error("用户已存在");
}
userService.insert(user);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
UserEntity u = userService.selectOne(new EntityWrapper().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();
}
}
免责声明:部分文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性,如本站文章和转稿涉及版权等问题,请作者在及时联系本站,我们会尽快为您处理。