AppointmentController.java
package in.ravikalla.cloudBank.controller;
import java.security.Principal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import in.ravikalla.cloudBank.domain.Appointment;
import in.ravikalla.cloudBank.domain.User;
import in.ravikalla.cloudBank.service.AppointmentService;
import in.ravikalla.cloudBank.service.UserService;
@Controller
@RequestMapping("/appointment")
public class AppointmentController {
private static final Logger L = LogManager.getLogger(AppointmentController.class);
@Autowired
private AppointmentService appointmentService;
@Autowired
private UserService userService;
@RequestMapping(value = "/create",method = RequestMethod.GET)
public String createAppointment(Model model) {
L.debug("35 : Start : AppointmentController.createAppointment(...)");
Appointment appointment = new Appointment();
model.addAttribute("appointment", appointment);
model.addAttribute("dateString", "");
L.debug("41 : End : AppointmentController.createAppointment(...)");
return "appointment";
}
@RequestMapping(value = "/create",method = RequestMethod.POST)
public String createAppointmentPost(@ModelAttribute("appointment") Appointment appointment, @ModelAttribute("dateString") String date, Model model, Principal principal) throws ParseException {
L.debug("47 : Start : AppointmentController.createAppointmentPost(...)");
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd hh:mm");
Date d1 = format1.parse( date );
appointment.setDate(d1);
User user = userService.findByUsername(principal.getName());
appointment.setUser(user);
appointmentService.createAppointment(appointment);
L.debug("58 : End : AppointmentController.createAppointmentPost(...)");
return "redirect:/userFront";
}
}