package cn.bdqn.controller;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
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.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import cn.bdqn.constant.Constants;
import cn.bdqn.entity.Fight;
import cn.bdqn.entity.Order;
import cn.bdqn.entity.User;
import cn.bdqn.service.fight.FightService;
import cn.bdqn.service.order.OrderService;
@Controller
@RequestMapping("/fight")
public class FightController extends BaseController {
@Autowired
private FightService fightService;
@Autowired
private OrderService orderService;
/**
* 航班查询
* @param fight
* @param model
* @param session
* @return
*/
@RequestMapping("/list")
public String fightList(Fight fight,Model model,HttpSession session) {
//new日期对象
Date date = new Date();
//转换提日期输出格式
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
String startTime = dateFormat.format(date);
model.addAttribute("startCity", fight.getStartCity());
model.addAttribute("endCity", fight.getEndCity());
model.addAttribute("startDate", fight.getStartDate());
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String d = df.format(new Date());
Date today =null;
try {
today = df.parse(d);
} catch (ParseException e) {
e.printStackTrace();
}
if(fight.getStartDate() !=null){
long todayTime = today.getTime();
long selectTime = fight.getStartDate().getTime();
if(todayTime < selectTime){
startTime= "";
}
if(todayTime > selectTime){
return "fightList";
}
}
fight.setStartTime(startTime);
//------------- 正常航班列表 start--------------
//分页
//设置默认页面为第一页。
if (fight.getCurrentPageNo() == null) {
fight.setCurrentPageNo(0);
}
//查询航班总数
int count = fightService.count(fight);
//设置航班总数
fight.setTotalCount(count);
//设置页面大小
fight.setPageSize(5);
//设置总页数
if (count % 5 == 0) {
fight.setPageCount(count / 5);
}else{
fight.setPageCount(count / 5 +1);
}
//分页查询
List<Fight> fightList = fightService.getFightList(fight);
//------------- 正常航班列表 end --------------
// ------用户常去城市分析,优惠票推荐 start ------
//获取用户id
Integer userId= ((User)session.getAttribute(Constants.USER_SESSION)).getId();
List<Order> endCityList = orderService.oldEndCity(userId);//获取用户的所有订单
List<Fight> disList = new ArrayList<Fight>();// 优惠航班推荐
if (endCityList != null && endCityList.size() > 0) {
for (Order o : endCityList) {
Fight f = new Fight();
f.setDiscount(true);
f.setStartCity(o.getStartCity());
f.setEndCity(o.getEndCity());
f.setCurrentPageNo(0);
f.setPageSize(5);
f.setStartTime(startTime);
disList.addAll(fightService.getFightList(f));
}
}else{
Fight f = new Fight();
f.setDiscount(true);
f.setCurrentPageNo(0);
f.setPageSize(5);
f.setStartTime(startTime);
disList.addAll(fightService.getFightList(f));
}
// ------用户常去城市分析,优惠票推荐 end ------
//将查询的所有航班 分类存放入model中,传回前台
model.addAttribute("fightList", fightList);
model.addAttribute("fight", fight);
model.addAttribute("disList", disList);
return "fightList";
}
/**
* 跳转添加航班页面
* @return
*/
@RequestMapping("/addFight")
public String add(){
return "addFight";
}
/**
* 添加航班
* @param fight
* @return
*/
@RequestMapping("/add")
public String addFight(Fight fight){
//自动生成航班编号
String fightCode = createFightCode();
//设置航班编号
fight.setFightCode(fightCode);
fight.setStartTime(fight.getStartTime() + ":00");
fight.setEndTime(fight.getEndTime() + ":00");
//插入航班。返回插入记录数
int result = fightService.addFight(fight);
//成功,跳转回 航班页面
if (result > 0) {
return "redirect:list";
}else{
//失败,返回新增页面
return "addFight";
}
}
/**
* 自动生成航班号
* @return
*/
private String createFightCode(){
char ch1 = (char) ('a'+ Math.random()*('z'-'a'+1));
char ch2 = (char) ('a'+ Math.random()*('z'-'a'+1));
int num = (int) (Math.random()*99);
String result = String.valueOf(ch1) + String.valueOf(ch2) + num;
return result;
}
/**
* 通过id取消航班
* @param id
* @return
*/
@RequestMapping("/del")
@ResponseBody
public Object del(Integer id) {
//删除航班,返回操作成功记录
int result =fightService.delFight(id);
//删除成功
if (result > 0) {
return "yes";
} else {
//删除失败
return "no";
}
}
/**
* 跳转到,添加乘客信息页面
* @param fightId
* @param model
* @return
*/
@RequestMapping("/addFightUser")
public String addFightUser(Integer fightId, Date startDate, Model model){
Fight fight = fightService.getFightById(fightId);
if(startDate == null ){
startDate = new Date();
}
model.addAttribute("startDate", startDate);
model.addAttribute("fight", fight);
return "addFightUser";
}
@RequestMapping("/addUser")
public String addUser(){
return "addFightUser";
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
基于java的飞机订票系统 (192个子文件)
OrderController.class 6KB
FightController.class 6KB
UserController.class 4KB
Order.class 4KB
Fight.class 3KB
IndexController.class 2KB
User.class 2KB
OrderServiceImpl.class 2KB
UserServiceImpl.class 2KB
Customer.class 2KB
FightServiceImpl.class 2KB
Pager.class 1KB
BaseController.class 961B
CustomerServiceImpl.class 830B
OrderMapper.class 730B
OrderService.class 624B
UserService.class 583B
UserMapper.class 577B
FightService.class 484B
FightMapper.class 478B
Constants.class 202B
CustomerService.class 192B
CustomerMapper.class 183B
.classpath 576B
org.eclipse.wst.common.component 526B
org.eclipse.wst.jsdt.ui.superType.container 49B
style.css 9KB
public.css 6KB
datepicker.css 4KB
datepicker.css 4KB
WdatePicker.css 158B
entries 846B
entries 692B
entries 659B
entries 567B
entries 539B
img.gif 2KB
img.gif 2KB
datePicker.gif 1KB
My97DatePicker.htm 1KB
aspectjweaver-1.6.9.jar 1.59MB
spring-core-3.2.13.RELEASE.jar 865KB
spring-context-3.2.13.RELEASE.jar 848KB
mybatis-3.2.2.jar 683KB
spring-webmvc-3.2.13.RELEASE.jar 626KB
spring-web-3.2.13.RELEASE.jar 617KB
spring-beans-3.2.13.RELEASE.jar 600KB
mysql-connector-java-5.1.0-bin.jar 553KB
log4j-1.2.17.jar 478KB
spring-jdbc-3.2.13.RELEASE.jar 396KB
fastjson-1.2.13.jar 384KB
spring-aop-3.2.13.RELEASE.jar 331KB
commons-lang-2.6.jar 278KB
spring-tx-3.2.13.RELEASE.jar 237KB
spring-expression-3.2.13.RELEASE.jar 192KB
commons-io-2.4.jar 181KB
commons-dbcp-1.4.jar 157KB
commons-pool-1.6.jar 109KB
commons-logging-1.2.jar 60KB
commons-fileupload-1.2.2.jar 58KB
mybatis-spring-1.2.0.jar 48KB
aopalliance-1.0.jar 4KB
FightController.java 6KB
OrderController.java 6KB
UserController.java 3KB
Order.java 3KB
IndexController.java 2KB
Fight.java 2KB
User.java 1KB
Customer.java 1KB
UserServiceImpl.java 1KB
OrderServiceImpl.java 1KB
FightServiceImpl.java 961B
UserService.java 863B
Pager.java 838B
FightMapper.java 584B
OrderMapper.java 543B
BaseController.java 502B
CustomerServiceImpl.java 452B
OrderService.java 405B
UserMapper.java 363B
FightService.java 351B
CustomerService.java 160B
CustomerMapper.java 150B
Constants.java 109B
login_bg.jpg 45KB
clock.jpg 22KB
loginBg.jpg 18KB
bg.jpg 307B
jquery-1.8.3.min.js 91KB
calendar.js 19KB
WdatePicker.js 8KB
useradd.js 6KB
billadd.js 5KB
billmodify.js 5KB
usermodify.js 4KB
providerlist.js 3KB
provideradd.js 3KB
userlist.js 3KB
pwdmodify.js 3KB
共 192 条
- 1
- 2
资源评论
- qq_353483302018-12-06差!1111111
baby_b
- 粉丝: 1
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功