📄 checkincontroller.java.svn-base
字号:
package com.hotelmaster.home.web.main;
import java.io.PrintWriter;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.apache.log4j.Logger;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
import com.hotelmaster.home.business.BusinessService;
import com.hotelmaster.home.domain.BaseInfo;
import com.hotelmaster.home.domain.CheckinItem;
import com.hotelmaster.home.domain.CheckinOrder;
import com.hotelmaster.home.domain.ReservOrder;
import com.hotelmaster.home.domain.Room;
import com.hotelmaster.home.web.json.CheckinOrderJson;
import com.hotelmaster.home.web.util.CheckinOrderUtil;
public class CheckinController extends MultiActionController {
private final static Logger log = Logger.getLogger(CheckinController.class);
private BusinessService businessService;
public ModelAndView init(HttpServletRequest request,
HttpServletResponse response) throws Exception {
return null;
}
/**
*
* 创建登记信息
*
* @param request
* @param response
* @return
* @throws Exception
*/
public ModelAndView checkin(HttpServletRequest request,
HttpServletResponse response) throws Exception {
log.info("Someone come from ip address <"
+ request.getRemoteAddr() + ">");
System.out.println("reach checkinController checkin()");
CheckinOrder checkinOrder=CheckinOrderUtil.createCheckinOrder(request);
String rooms=(String) request.getParameter("roomDataes").trim();
JSONArray jsonArray=JSONArray.fromObject(rooms);//[{},{}]
//JSONObject jsonObject=JSONObject.fromObject(jsonArray.get(0));
Iterator iterator=jsonArray.iterator();
JSONObject jsonObject=new JSONObject();
List<CheckinItem> checkinItemList=new ArrayList();
while(iterator.hasNext()){
jsonObject=JSONObject.fromObject(iterator.next());//{}
CheckinItem checkinItem=new CheckinItem();
String roomId=jsonObject.getString("rmId");
System.out.println(roomId);
Room room=businessService.findRoomById(roomId); //异常处理
//room.setRmState(2); //更改房态,Bug 放BusinessService里
//businessService.updateRoom(room);
checkinItem.setRoom(room);
checkinItem.setCimPrctPrice(new BigDecimal(jsonObject.getString("rmSetPrctPrice")));
checkinItem.setCimDiscount(new BigDecimal(jsonObject.getString("rmSetPrctDiscount")));
checkinItemList.add(checkinItem);
}
//System.out.println(jsonArray.getString(0));// -{}
checkinOrder.setCioState("已入住");
//cioGuestCatalog
checkinOrder.setCioGuestCatalog("散客");
checkinOrder.setCioOrderId(createCheckinOrderId());
//System.out.println(checkinOrder.getCioGuestName());
if(businessService.createCheckinOrder(checkinOrder,checkinItemList)){
log.info("登记信息创建成功");
request.setCharacterEncoding("UTF-8");
response.setContentType("text/json;charset=utf-8");
response.getWriter().write("{success: true}");
}else
{
log.error("create checkinOrder failed");
response.getWriter().write("{errors:'登记信息添加失败,请重新尝试!'}");
}
return null;
}
/**
*
* 获取登记单信息
*
* @param request
* @param response
* @return
* @throws Exception
*/
public ModelAndView getCheckinInfo(HttpServletRequest request,
HttpServletResponse response) throws Exception {
if(request.getParameter("rmId")!=null){
String rmId=(String)request.getParameter("rmId").trim();
CheckinOrder checkinOrder=businessService.findCheckinOrderByRmId(rmId);
CheckinOrderJson checkinOrderJson=new CheckinOrderJson(checkinOrder);
JSONObject jsonBack=checkinOrderJson.getJSONObject();
jsonBack.put("success", true);
System.out.println(jsonBack);
request.setCharacterEncoding("utf-8");
response.setContentType("application/json;charset=utf-8");
PrintWriter out = response.getWriter();
out.print(jsonBack);
}else{
log.error("getCheckinInfo failed,rmId==null");
}
return null;
}
/**
*
* 预定入住登记信息加载
*
* @param request
* @param response
* @return
* @throws Exception
*/
public ModelAndView reservInLoad(HttpServletRequest request,
HttpServletResponse response) throws Exception {
log.info("Someone come from ip address <"
+ request.getRemoteAddr() + ">");
System.out.println("reach checkinController reservInLoad()");
if(request.getParameter("roId")!=null){
String roId=(String)request.getParameter("roId").trim();
ReservOrder reservOrder=businessService.findReservById(roId);
CheckinOrderJson checkinOrderJson=new CheckinOrderJson(reservOrder);
JSONObject jsonBack=checkinOrderJson.getReservJSONObject();
jsonBack.put("success", true);
System.out.println(jsonBack);
request.setCharacterEncoding("utf-8");
response.setContentType("application/json;charset=utf-8");
PrintWriter out = response.getWriter();
out.print(jsonBack);
}else if(request.getParameter("rmId")!=null){
String rmId=(String)request.getParameter("rmId").trim();
ReservOrder reservOrder=businessService.findReservOrderByRmId(rmId);
CheckinOrderJson checkinOrderJson=new CheckinOrderJson(reservOrder);
JSONObject jsonBack=checkinOrderJson.getReservJSONObject();
jsonBack.put("success", true);
System.out.println(jsonBack);
request.setCharacterEncoding("utf-8");
response.setContentType("application/json;charset=utf-8");
PrintWriter out = response.getWriter();
out.print(jsonBack);
}
else{
log.error("reservInLoad failed,roId==null");
}
return null;
}
/**
*
* 获取登记项信息(房间)
*
* @param request
* @param response
* @return
* @throws Exception
*/
public ModelAndView findCheckinRooms(HttpServletRequest request, //单条记录删除
HttpServletResponse response) throws Exception {
if(request.getParameter("rmId")!=null && request.getParameter("type")==null){
String rmId=(String)request.getParameter("rmId").trim();
CheckinOrder checkinOrder=businessService.findCheckinOrderByRmId(rmId);
CheckinOrderJson checkinOrderJson=new CheckinOrderJson(checkinOrder);
JSONObject jsonBack=checkinOrderJson.getItemJsonObject();
//jsonBack.put("success", true);
System.out.println(jsonBack);
request.setCharacterEncoding("utf-8");
response.setContentType("application/json;charset=utf-8");
PrintWriter out = response.getWriter();
out.print(jsonBack);
}else if(request.getParameter("rmId")!=null
&& request.getParameter("type")!=null){
String rmId=(String)request.getParameter("rmId").trim();
ReservOrder reservOrder=businessService.findReservOrderByRmId(rmId);
CheckinOrderJson checkinOrderJson=new CheckinOrderJson(reservOrder);
JSONObject jsonBack=checkinOrderJson.getReservItemJsonObject();
System.out.println(jsonBack);
request.setCharacterEncoding("utf-8");
response.setContentType("application/json;charset=utf-8");
PrintWriter out = response.getWriter();
out.print(jsonBack);
}
else if(request.getParameter("cioId")!=null){
//由登记单PKID获得登记信息
String cioId=(String)request.getParameter("cioId").trim();
}else if(request.getParameter("roId")!=null){
String roId=(String)request.getParameter("roId").trim();
ReservOrder reservOrder=businessService.findReservById(roId);
CheckinOrderJson checkinOrderJson=new CheckinOrderJson(reservOrder);
JSONObject jsonBack=checkinOrderJson.getReservItemJsonObject();
System.out.println(jsonBack);
request.setCharacterEncoding("utf-8");
response.setContentType("application/json;charset=utf-8");
PrintWriter out = response.getWriter();
out.print(jsonBack);
}
else{
log.error("getCheckinInfo failed,rmId==null");
}
return null;
}
private String createCheckinOrderId(){
String orderId="CIO",baseString="";
BaseInfo orderIdBaseInfo=businessService.findBaseInfoByName("CheckinOrderID");
String baseId=orderIdBaseInfo.getBioValue();
System.out.println(baseId);
for(int i=baseId.length();i<8;i++){
baseString=baseString+"0";
}
orderId=orderId+baseString+baseId;
int baseIdNum=Integer.parseInt(baseId);
int updateIdNum=baseIdNum+1;
orderIdBaseInfo.setBioValue(String.valueOf(updateIdNum));
businessService.updateBaseInfoCioOrder(orderIdBaseInfo);
System.out.println(orderId);
return orderId;
}
public BusinessService getBusinessService() {
return businessService;
}
public void setBusinessService(BusinessService businessService) {
this.businessService = businessService;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -