|
|
|
@ -15,82 +15,100 @@ import com.cn.service.impl.TrainServiceImpl;
|
|
|
|
|
/**
|
|
|
|
|
*
|
|
|
|
|
* @ClassName: UpdateTrainServlet
|
|
|
|
|
* @Description: 管理员 修改车次信息
|
|
|
|
|
* @Description: 管理员修改车次信息的Servlet
|
|
|
|
|
* @author: ljy
|
|
|
|
|
* @date: 2019年11月10日 下午11:49:16
|
|
|
|
|
*/
|
|
|
|
|
public class UpdateTrainServlet extends HttpServlet {
|
|
|
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
|
|
|
|
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
|
|
|
|
|
|
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
|
|
|
|
|
/**
|
|
|
|
|
* 将需要修改的车次信息输出到界面
|
|
|
|
|
*/
|
|
|
|
|
Integer trainId = Integer.valueOf(request.getParameter("trainId"));
|
|
|
|
|
TrainService trainService = new TrainServiceImpl();
|
|
|
|
|
Train train = trainService.getById(trainId);
|
|
|
|
|
//开车时间与到站时间格式转换为"yyyy-MM-ddThh:mm",不然jsp界面无法显示出默认时间
|
|
|
|
|
String startTime = train.getStartTime();
|
|
|
|
|
startTime = startTime.substring(0, 10)+"T"+startTime.substring(11, 16);
|
|
|
|
|
train.setStartTime(startTime);
|
|
|
|
|
String endTime = train.getEndTime();
|
|
|
|
|
endTime = endTime.substring(0, 10)+"T"+endTime.substring(11, 16);
|
|
|
|
|
train.setEndTime(endTime);
|
|
|
|
|
|
|
|
|
|
request.setAttribute("train", train);
|
|
|
|
|
request.getRequestDispatcher("pages/admin/right/updateTrain.jsp").forward(request, response);
|
|
|
|
|
}
|
|
|
|
|
/**
|
|
|
|
|
* 处理GET请求的方法。
|
|
|
|
|
* 当客户端发送GET请求到此Servlet时,这个方法会被调用。
|
|
|
|
|
* @param request HttpServletRequest对象,包含客户端请求信息。
|
|
|
|
|
* @param response HttpServletResponse对象,用于发送响应到客户端。
|
|
|
|
|
* @throws ServletException 可能抛出的Servlet异常。
|
|
|
|
|
* @throws IOException 可能抛出的IO异常。
|
|
|
|
|
*/
|
|
|
|
|
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
|
|
|
|
|
/**
|
|
|
|
|
* 将需要修改的车次信息输出到界面
|
|
|
|
|
*/
|
|
|
|
|
// 从请求中获取车次ID参数,并转换为Integer类型
|
|
|
|
|
Integer trainId = Integer.valueOf(request.getParameter("trainId"));
|
|
|
|
|
// 创建TrainService的实现类对象,用于访问车次相关的业务逻辑
|
|
|
|
|
TrainService trainService = new TrainServiceImpl();
|
|
|
|
|
// 根据车次ID获取车次对象
|
|
|
|
|
Train train = trainService.getById(trainId);
|
|
|
|
|
// 开车时间与到站时间格式转换为"yyyy-MM-ddThh:mm",以符合JSP界面的显示要求
|
|
|
|
|
String startTime = train.getStartTime();
|
|
|
|
|
startTime = startTime.substring(0, 10)+"T"+startTime.substring(11, 16);
|
|
|
|
|
train.setStartTime(startTime);
|
|
|
|
|
String endTime = train.getEndTime();
|
|
|
|
|
endTime = endTime.substring(0, 10)+"T"+endTime.substring(11, 16);
|
|
|
|
|
train.setEndTime(endTime);
|
|
|
|
|
|
|
|
|
|
// 将车次对象设置为request属性,以便在JSP页面中可以访问
|
|
|
|
|
request.setAttribute("train", train);
|
|
|
|
|
// 转发请求到修改车次信息的JSP页面
|
|
|
|
|
request.getRequestDispatcher("pages/admin/right/updateTrain.jsp").forward(request, response);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
|
|
|
|
|
*/
|
|
|
|
|
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
|
|
|
|
|
/**
|
|
|
|
|
* 将修改后的车次信息保存到数据库,然后跳转到GetAllTrainServlet界面
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//获取界面中输入的数据
|
|
|
|
|
Integer trainId = Integer.valueOf(request.getParameter("trainId"));
|
|
|
|
|
String trainNumber = request.getParameter("trainNumber");
|
|
|
|
|
String startStation = request.getParameter("startStation");
|
|
|
|
|
String endStation = request.getParameter("endStation");
|
|
|
|
|
String startTime = request.getParameter("startTime");
|
|
|
|
|
startTime = startTime.substring(0, 10)+" "+startTime.substring(11)+":00";
|
|
|
|
|
String endTime = request.getParameter("endTime");
|
|
|
|
|
endTime = endTime.substring(0, 10)+" "+endTime.substring(11)+":00";
|
|
|
|
|
Integer price = Integer.valueOf(request.getParameter("price"));
|
|
|
|
|
Integer seatNumber = Integer.valueOf(request.getParameter("seatNumber"));
|
|
|
|
|
|
|
|
|
|
//从数据库中取出该车次信息,进行修改
|
|
|
|
|
TrainService trainService = new TrainServiceImpl();
|
|
|
|
|
Train train = trainService.getById(trainId);
|
|
|
|
|
|
|
|
|
|
train.setTrainNumber(trainNumber);
|
|
|
|
|
train.setStartStation(startStation);
|
|
|
|
|
train.setEndStation(endStation);
|
|
|
|
|
train.setStartTime(startTime);
|
|
|
|
|
train.setEndTime(endTime);
|
|
|
|
|
train.setPrice(price);
|
|
|
|
|
train.setSeatNumber(seatNumber);
|
|
|
|
|
|
|
|
|
|
//将数据存入数据库,并返回是否成功的结果
|
|
|
|
|
int recordNumber = trainService.update(train);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//根据返回值判断是否添加车次成功,返回1为成功
|
|
|
|
|
PrintWriter out = response.getWriter();
|
|
|
|
|
if(recordNumber == 1) {
|
|
|
|
|
out.write("<script>alert('修改成功!');"
|
|
|
|
|
+ "window.location.href='GetAllTrainServlet'</script>");
|
|
|
|
|
}else {
|
|
|
|
|
out.write("<script>alert('很抱歉,修改失败!');"
|
|
|
|
|
+ "window.location.href='GetAllTrainServlet'</script>");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
out.close();
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
/**
|
|
|
|
|
* 处理POST请求的方法。
|
|
|
|
|
* 当客户端发送POST请求到此Servlet时,这个方法会被调用。
|
|
|
|
|
* @param request HttpServletRequest对象,包含客户端请求信息。
|
|
|
|
|
* @param response HttpServletResponse对象,用于发送响应到客户端。
|
|
|
|
|
* @throws ServletException 可能抛出的Servlet异常。
|
|
|
|
|
* @throws IOException 可能抛出的IO异常。
|
|
|
|
|
*/
|
|
|
|
|
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
|
|
|
|
|
/**
|
|
|
|
|
* 将修改后的车次信息保存到数据库,然后跳转到GetAllTrainServlet界面
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
// 获取界面中输入的数据
|
|
|
|
|
Integer trainId = Integer.valueOf(request.getParameter("trainId"));
|
|
|
|
|
String trainNumber = request.getParameter("trainNumber");
|
|
|
|
|
String startStation = request.getParameter("startStation");
|
|
|
|
|
String endStation = request.getParameter("endStation");
|
|
|
|
|
String startTime = request.getParameter("startTime");
|
|
|
|
|
startTime = startTime.substring(0, 10)+" "+startTime.substring(11)+":00";
|
|
|
|
|
String endTime = request.getParameter("endTime");
|
|
|
|
|
endTime = endTime.substring(0, 10)+" "+endTime.substring(11)+":00";
|
|
|
|
|
Integer price = Integer.valueOf(request.getParameter("price"));
|
|
|
|
|
Integer seatNumber = Integer.valueOf(request.getParameter("seatNumber"));
|
|
|
|
|
|
|
|
|
|
// 从数据库中取出该车次信息,进行修改
|
|
|
|
|
TrainService trainService = new TrainServiceImpl();
|
|
|
|
|
Train train = trainService.getById(trainId);
|
|
|
|
|
|
|
|
|
|
train.setTrainNumber(trainNumber);
|
|
|
|
|
train.setStartStation(startStation);
|
|
|
|
|
train.setEndStation(endStation);
|
|
|
|
|
train.setStartTime(startTime);
|
|
|
|
|
train.setEndTime(endTime);
|
|
|
|
|
train.setPrice(price);
|
|
|
|
|
train.setSeatNumber(seatNumber);
|
|
|
|
|
|
|
|
|
|
// 将数据存入数据库,并返回是否成功的结果
|
|
|
|
|
int recordNumber = trainService.update(train);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 根据返回值判断是否添加车次成功,返回1为成功
|
|
|
|
|
PrintWriter out = response.getWriter();
|
|
|
|
|
if(recordNumber == 1) {
|
|
|
|
|
// 如果成功,弹出提示并跳转到所有车次的Servlet
|
|
|
|
|
out.write("<script>alert('修改成功!');"
|
|
|
|
|
+ "window.location.href='GetAllTrainServlet'</script>");
|
|
|
|
|
} else {
|
|
|
|
|
// 如果失败,弹出提示并跳转到所有车次的Servlet
|
|
|
|
|
out.write("<script>alert('很抱歉,修改失败!');"
|
|
|
|
|
+ "window.location.href='GetAllTrainServlet'</script>");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 关闭PrintWriter对象
|
|
|
|
|
out.close();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|