use of org.talend.services.reservation.types.RESStatusType in project tesb-rt-se by Talend.
the class CarRentalClientGui method actionPerformed.
public void actionPerformed(ActionEvent e) {
if (e.getSource().equals(cmdFind)) {
if (search != null) {
search.search((String) cUser.getSelectedItem(), tPickupDate.getText(), tReturnDate.getText());
ctm.setData(search.getCars());
}
cardlist.show(content, SELECT);
} else if (e.getSource().equals(cmdFindCancel) || e.getSource().equals(cmdClose)) {
this.appFrame.dispose();
} else if (e.getSource().equals(cmdSelect)) {
int pos = selectTable.getSelectedRow();
if (pos > -1) {
if (search != null) {
RESStatusType resStatus = reserve.reserveCar(search.getCustomer(), search.getCars().get(pos), tPickupDate.getText(), tReturnDate.getText());
ConfirmationType confirm = reserve.getConfirmation(resStatus, search.getCustomer(), search.getCars().get(pos), tPickupDate.getText(), tReturnDate.getText());
RESCarType car = confirm.getCar();
CustomerDetailsType customer = confirm.getCustomer();
lStatus.setText(confirm.getDescription());
tReservationId.setText(confirm.getReservationId());
tName.setText(customer.getName());
tEMail.setText(customer.getEmail());
tCity.setText(customer.getCity());
tStatus.setText(customer.getStatus().name());
tBrand.setText(car.getBrand());
tModel.setText(car.getDesignModel());
tPickup.setText(confirm.getFromDate());
tReturn.setText(confirm.getToDate());
tDaily.setText(car.getRateDay());
tWeekEnd.setText(car.getRateWeekend());
tCredits.setText(confirm.getCreditPoints().toString());
}
cardlist.show(content, CONFIRM);
}
} else if (e.getSource().equals(cmdSelectBack)) {
cardlist.show(content, FIND);
}
}
use of org.talend.services.reservation.types.RESStatusType in project tesb-rt-se by Talend.
the class CarRent method racRent.
/**
* Rent a car available in the last serach result
* @param intp - the command interpreter instance
*/
public void racRent() {
pos = pos - 1;
String userName = CarSearch.getLastSearchParams()[0];
String pickupDate = CarSearch.getLastSearchParams()[1];
String returnDate = CarSearch.getLastSearchParams()[2];
this.searcher.search(userName, pickupDate, returnDate);
if (searcher != null && searcher.getCars() != null && pos < searcher.getCars().size() && searcher.getCars().get(pos) != null) {
RESStatusType resStatus = reserver.reserveCar(searcher.getCustomer(), searcher.getCars().get(pos), pickupDate, returnDate);
ConfirmationType confirm = reserver.getConfirmation(resStatus, searcher.getCustomer(), searcher.getCars().get(pos), pickupDate, returnDate);
RESCarType car = confirm.getCar();
CustomerDetailsType customer = confirm.getCustomer();
System.out.println(MessageFormat.format(CONFIRMATION, confirm.getDescription(), confirm.getReservationId(), customer.getName(), customer.getEmail(), customer.getCity(), customer.getStatus(), car.getBrand(), car.getDesignModel(), confirm.getFromDate(), confirm.getToDate(), padl(car.getRateDay(), 10), padl(car.getRateWeekend(), 10), padl(confirm.getCreditPoints().toString(), 7)));
} else {
// $NON-NLS-1$
System.out.println("Invalid selection: " + (pos + 1));
}
}
use of org.talend.services.reservation.types.RESStatusType in project tesb-rt-se by Talend.
the class AppController method reserve.
@RequestMapping(value = "/reserve", method = RequestMethod.POST)
public String reserve(@RequestParam(value = "carIndex", required = false) Integer carIndex, Model model, HttpSession session) {
if (session.isNew()) {
return redirectToMainPage();
}
if (carIndex != null && carIndex >= 0) {
List<RESCarType> cars = searchModel.getCars();
if (carIndex < cars.size()) {
CustomerDetailsType customerDetails = searchModel.getCustomer();
RESCarType selectedCar = cars.get(carIndex);
SearchRequestParameters requestParams = getSessionAttribute(session, SearchRequestParameters.class);
RESStatusType resStatus = null;
ConfirmationType confirm = null;
try {
resStatus = reserveModel.reserveCar(customerDetails, selectedCar, requestParams.getPickupDate(), requestParams.getReturnDate());
confirm = reserveModel.getConfirmation(resStatus, customerDetails, selectedCar, requestParams.getPickupDate(), requestParams.getReturnDate());
} catch (Exception e) {
model.addAttribute("excptMessage", e);
return "error";
}
setSessionAttribute(session, ConfirmationType.class, confirm);
RESStatucCodeType code = confirm.getDescription().contains("failed") ? RESStatucCodeType.FAILED : RESStatucCodeType.OK;
setSessionAttribute(session, RESStatucCodeType.class, code);
setSessionAttribute(session, Stages.class, Stages.RESERVATION_INFO);
}
}
return redirectToMainPage();
}
use of org.talend.services.reservation.types.RESStatusType in project tesb-rt-se by Talend.
the class ReservationServiceImpl method startCarReservation.
private RESStatusType startCarReservation(ReservationType reservation) {
//
RESStatusType status = resFactory.createRESStatusType();
status.setCode(RESStatucCodeType.OK);
status.setId(generateID());
status.setDescription("Your reservation is booked!");
return status;
}
use of org.talend.services.reservation.types.RESStatusType in project tesb-rt-se by Talend.
the class ReservationServiceImpl method submitCarReservation.
/**
* {@inheritDoc}
*/
public org.talend.services.reservation.types.RESStatusType submitCarReservation(org.talend.services.reservation.types.ReservationType reservation) {
//
logData("submitCarReservation", "request", reservation);
// Load customer data
RESStatusType status = startCarReservation(reservation);
logData("submitCarReservation", "response", status);
return status;
}
Aggregations