package cn.cwnu.tourism.controller;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import cn.cwnu.tourism.po.MyPlane;
import cn.cwnu.tourism.po.MyRoom;
import cn.cwnu.tourism.po.MyTicket;
import cn.cwnu.tourism.po.Scenic;
import cn.cwnu.tourism.po.Ticket;
import cn.cwnu.tourism.po.User;
import cn.cwnu.tourism.service.UserService;
@Controller
public class UserController {
@Autowired
private UserService userService;
/**
* 向用户登录页面跳转
*/
@RequestMapping(value="/toLogin")
public String toLogin() {
return "login";
}
/**
* 向用户注册页面跳转
*/
@RequestMapping(value="/toRegister")
public String toRegister() {
return "register";
}
/**
* 向用户主页面跳转
*/
@RequestMapping(value="/toMain")
public String toMain(Model model) {
/*数据库获取主页面的景点信息(只获取8个)*/
//List<Scenic> scenicList = userService.getPicture();
// 查询出所有景点票信息(只获取8个)
List<Ticket> listTicket = userService.getTicket();
List<Scenic> scenicList = new ArrayList();
//由获取到的门票信息查询景点信息(只获取8个)
for (int i = 0; i < listTicket.size(); i++) {
//由门票名查询景点名
Scenic scenic = userService.getScenicByTicket(listTicket.get(i).getTicketName());
scenic.setTicket(listTicket.get(i));
//System.out.println(scenic);
scenicList.add(scenic);
}
model.addAttribute("data", scenicList);
/*通过遍历的景点名获取到景点的门票价钱*/
return "index";
}
/*验证注册用户是否已经存在*/
@RequestMapping(value = "/isRegister")
@ResponseBody
public String isRegister(String username){
//获得要校验的用户名
String userName = username;
//传递username到service
boolean isExist=userService.checkUsername(userName);
return "{\"isExist\":"+isExist+"}";
}
/*实现新用户注册*/
@RequestMapping(value = "/register")
public String insetUser(String username,String password,HttpSession session,Model model){
//System.out.println(username);
boolean isExist=userService.checkUsername(username);
if(isExist){
//用户存在,则注册失败
model.addAttribute("msg", "用户名已经存在,请更改用户名!");
return "forward:/toRegister";
}else {
//新用户则注册成功,并在后台记录
User user = new User();
user.setUserName(username);
user.setPassword(password);
userService.insertUser(user);
session.setAttribute("USER_SESSION", username);
//return "redirect:index.jsp";
return "redirect:/toMain";
}
}
/*退出登录*/
@RequestMapping(value = "/outLogin")
public String outLogin(HttpSession session){
// 清除Session
session.invalidate();
// 重定向到登录页面的跳转方法
//return "redirect:index.jsp";
return "redirect:/toMain";
}
/*用户登录*/
/*验证用户登录是否正确*/
@RequestMapping(value = "/login")
public String login(String username,String password,Model model,HttpSession session) {
// 获取用户名和密码,并包装成用户User
User user = new User();
user.setUserName(username);
user.setPassword(password);
// 从数据库中获取用户名和密码后进行判断
int row = userService.selectUser(user);
//System.out.println(row);
if(row >= 1){
// 将用户对象添加到Session
session.setAttribute("USER_SESSION", username);
// 重定向到主页面的跳转方法
//return "redirect:index.jsp";
return "redirect:/toMain";
}
model.addAttribute("msg", "用户名或密码错误,请重新登录!");
return "forward:/toLogin";
}
/*从此处实现用户管理界面*/
@RequestMapping(value = "/showUser")
public String showUser(HttpSession session, Model model){
/*试试用request获取从充值controller方法中重定向传来的值
充值成功的提示信息
String msg = (String)(request.getAttribute("msg"));*/
String userName = (String)session.getAttribute("USER_SESSION");
/*根据当前登录用户名查询myRoom,myTicket,myPlane,user表的信息,并传送回user.jsp页面*/
List<MyRoom> listRoom = userService.selectMyRoomByUserName(userName);
int roomNumber = listRoom.size();
List<MyTicket> listTicket = userService.selectMyTicketByUserName(userName);
int ticketNumber = listTicket.size();
List<MyPlane> listPlane = userService.selectMyPlaneByUserName(userName);
int planeNumber = listPlane.size();
User user = userService.selectUserByUserName(userName);
Integer money = user.getUserMoney();
/*信息送回前台*/
model.addAttribute("roomNumber", roomNumber);
model.addAttribute("ticketNumber", ticketNumber);
model.addAttribute("planeNumber", planeNumber);
model.addAttribute("money", money);
/*充值成功的提示信息
model.addAttribute("msg", msg);*/
return "user/user";
}
/*user界面,通过展开按钮异步通过Ajax返回局部更新的信息*/
@RequestMapping(value = "/showMyPlane")
@ResponseBody
public List<MyPlane> showMyPlane(HttpSession session){
String userName = (String)session.getAttribute("USER_SESSION");
/*根据当前登录用户名查询myPlane表的信息,并传送回user.jsp页面*/
List<MyPlane> listPlane = userService.selectMyPlaneByUserName(userName);
return listPlane;
}
@RequestMapping(value = "/showMyTicket")
@ResponseBody
public List<MyTicket> showMyTicket(HttpSession session){
String userName = (String)session.getAttribute("USER_SESSION");
/*根据当前登录用户名查询myTicket表的信息,并传送回user.jsp页面*/
List<MyTicket> listTicket = userService.selectMyTicketByUserName(userName);
return listTicket;
}
@RequestMapping(value = "/showMyRoom")
@ResponseBody
public List<MyRoom> showMyRoom(HttpSession session){
String userName = (String)session.getAttribute("USER_SESSION");
/*根据当前登录用户名查询myRoom表的信息,并传送回user.jsp页面*/
List<MyRoom> listRoom = userService.selectMyRoomByUserName(userName);
return listRoom;
}
/*充值页面*/
@RequestMapping(value = "/moneyRecharge")
public String moneyRecharge(Integer money, Model model){
Integer nMoney = money;
//充值前的余额
model.addAttribute("money", nMoney);
return "user/user_recharge";
}
/*充值*/
@RequestMapping(value = "/moneyChage")
public String moneyChage(Integer userMoney, HttpSession session){
/*本来的钱,余额
System.out.println(money);//并没有从user_recharge.jsp页面传过来
准备充值的钱
System.out.println(userMoney);*/
String userName = (String)session.getAttribute("USER_SESSION");
/*根据用户名查询余额*/
User user = userService.selectUserByUserName(userName);
Integer money = user.getUserMoney();
/*改变用户余额*/
user.setUserMoney(money+userMoney);
/*更改用户(余额)*/
userService.updateUserMoney(user);
//request.setAttribute("msg", "充值成功!");
/*想办法跳转回另一个controller方法*/
//@RequestMapping(value = "/showUser")
return "redirect:/showUser";
}
/*退订一张机票*/
@RequestMapping(value = "/updateOnePlane")
@ResponseBody
public String updateOnePlane(String myPlaneId, HttpSession session){
/*通过航班订单号删除(修改)一条记�
没有合适的资源?快使用搜索试试~ 我知道了~
四川旅游网-SSM整合实现
共220个文件
jpg:39个
jar:37个
java:36个
需积分: 7 1 下载量 22 浏览量
2022-06-25
17:01:24
上传
评论
收藏 26.3MB RAR 举报
温馨提示
基础的SSM实现项目+mysql数据库文件
资源详情
资源评论
资源推荐
收起资源包目录
四川旅游网-SSM整合实现 (220个子文件)
UserController.class 8KB
NavigationTag.class 5KB
HotelController.class 5KB
PlaneController.class 4KB
TicketController.class 4KB
UserServiceImpl.class 3KB
HotelServiceImpl.class 2KB
TicketServiceImpl.class 2KB
PlaneServiceImpl.class 2KB
MyPlane.class 2KB
LoginInterceptor.class 2KB
Scenic.class 2KB
Plane.class 2KB
MyTicket.class 2KB
Ticket.class 2KB
MyRoom.class 2KB
Room.class 2KB
Hotel.class 2KB
Comment.class 2KB
Page.class 1KB
UserDao.class 1KB
ManagerController.class 1KB
User.class 1KB
TimeId.class 1KB
UserService.class 1KB
HotelDao.class 1KB
TicketDao.class 963B
Manager.class 913B
HotelService.class 901B
ManagerServiceImpl.class 886B
PlaneDao.class 872B
TicketService.class 836B
PlaneService.class 720B
Test.class 670B
ManagerService.class 210B
ManagerDao.class 198B
.classpath 4KB
org.eclipse.wst.common.component 494B
org.eclipse.wst.jsdt.ui.superType.container 49B
bootstrap.css 144KB
bootstrap.min.css 120KB
style_new.css 31KB
bootstrap-theme.css 26KB
bootstrap-theme.min.css 23KB
signin.css 1KB
glyphicons-halflings-regular.eot 20KB
model.html 6KB
ant-1.9.6.jar 1.94MB
aspectjweaver-1.8.10.jar 1.84MB
aspectjweaver-1.8.4.jar 1.78MB
mybatis-3.4.2.jar 1.52MB
jackson-databind-2.8.6.jar 1.18MB
spring-context-4.3.6.RELEASE.jar 1.08MB
spring-core-4.3.6.RELEASE.jar 1.07MB
mysql-connector-java-5.1.40-bin.jar 968KB
spring-webmvc-4.3.6.RELEASE.jar 893KB
log4j-core-2.3.jar 808KB
spring-web-4.3.6.RELEASE.jar 798KB
spring-beans-4.3.6.RELEASE.jar 745KB
javassist-3.21.0-GA.jar 718KB
mysql-connector-java-5.1.8.jar 707KB
log4j-1.2.17.jar 478KB
commons-lang3-3.4.jar 424KB
spring-jdbc-4.3.6.RELEASE.jar 417KB
spring-aop-4.3.6.RELEASE.jar 371KB
cglib-3.2.4.jar 293KB
jackson-core-2.8.6.jar 275KB
spring-tx-4.3.6.RELEASE.jar 261KB
spring-expression-4.3.6.RELEASE.jar 257KB
ognl-3.1.12.jar 230KB
taglibs-standard-impl-1.2.5.jar 202KB
commons-dbcp2-2.1.1.jar 170KB
log4j-api-2.3.jar 133KB
commons-pool2-2.4.2.jar 109KB
commons-logging-1.2.jar 60KB
spring-aspects-4.3.6.RELEASE.jar 57KB
jackson-annotations-2.8.6.jar 54KB
asm-5.1.jar 52KB
mybatis-spring-1.3.1.jar 52KB
slf4j-api-1.7.22.jar 40KB
taglibs-standard-spec-1.2.5.jar 39KB
ant-launcher-1.9.6.jar 18KB
slf4j-log4j12-1.7.22.jar 10KB
aopalliance-1.0.jar 4KB
UserController.java 9KB
HotelController.java 5KB
NavigationTag.java 5KB
PlaneController.java 4KB
TicketController.java 4KB
UserServiceImpl.java 3KB
HotelServiceImpl.java 2KB
TicketServiceImpl.java 2KB
LoginInterceptor.java 2KB
PlaneServiceImpl.java 2KB
MyPlane.java 2KB
UserDao.java 2KB
UserService.java 1KB
Scenic.java 1KB
Plane.java 1KB
HotelDao.java 1KB
共 220 条
- 1
- 2
- 3
喝酸奶只舔盖~
- 粉丝: 0
- 资源: 15
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0