Guest User

Untitled

a guest
May 1st, 2017
32
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.87 KB | None | 0 0
  1. package com.accenture.adf.businesstier.controller;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5.  
  6. import javax.servlet.http.HttpServletRequest;
  7. import javax.servlet.http.HttpServletResponse;
  8. import javax.servlet.http.HttpSession;
  9. import javax.swing.JOptionPane;
  10.  
  11. import org.apache.log4j.Logger;
  12. import org.springframework.stereotype.Controller;
  13. import org.springframework.web.bind.annotation.RequestMapping;
  14. import org.springframework.web.servlet.ModelAndView;
  15.  
  16. import com.accenture.adf.businesstier.entity.Event;
  17. import com.accenture.adf.businesstier.entity.Visitor;
  18. import com.accenture.adf.businesstier.service.EventFacade;
  19. import com.accenture.adf.businesstier.service.EventServiceImpl;
  20. import com.accenture.adf.businesstier.service.VisitorFacade;
  21. import com.accenture.adf.businesstier.service.VisitorServiceImpl;
  22. import com.accenture.adf.exceptions.FERSGenericException;
  23.  
  24. /**
  25. * <br/>
  26. * CLASS DESCRIPTION: <br/>
  27. * A controller class for receiving and handling all visitor related transactions from the
  28. * User Interface including visitor account access, visitor account maintenance,
  29. * and visitor event registration requests. <br/>
  30. *
  31. */
  32.  
  33. @Controller
  34. public class VisitorController {
  35.  
  36. private static Logger log = Logger.getLogger(VisitorController.class);
  37.  
  38. /**
  39. * <br/>
  40. * METHOD DESCRIPTION: <br/>
  41. * This method will receive request from Registration.jsp and directs to
  42. * service class to register new Visitor into system
  43. * by accepting details and persist into database <br/>
  44. *
  45. * @param request (type HttpServletRequest)
  46. * @param response (type HttpServletResponse)
  47. *
  48. * @return ModelAndView
  49. *
  50. * @throws FERSGenericException
  51. *
  52. *
  53. */
  54. @RequestMapping("/newVistor.htm")
  55. public ModelAndView newVisitor(HttpServletRequest request,
  56. HttpServletResponse response) throws Exception {
  57. if(request==null || response==null)
  58. {
  59. log.info("Request or Response failed for NEWVISITOR METHOD..");
  60. throw new FERSGenericException("Error in Transaction, Please re-Try. for more information check Logfile in C:\\FERSLOG folder", new NullPointerException());
  61. }
  62. String username=request.getParameter("USERNAME");
  63. String password=request.getParameter("PASSWORD");
  64. String firstname=request.getParameter("FIRSTNAME");
  65. String lastname=request.getParameter("LASTNAME");
  66. String email=request.getParameter("EMAIL");
  67. String phoneno=request.getParameter("PHONENO");
  68. String place=request.getParameter("ADDRESS");
  69.  
  70. log.info("creating new visitor with UserName :"+username);
  71.  
  72. Visitor visitor=new Visitor();
  73. visitor.setUserName(username);
  74. visitor.setPassword(password);
  75. visitor.setFirstName(firstname);
  76. visitor.setLastName(lastname);
  77. visitor.setEmail(email);
  78. visitor.setPhoneNumber(phoneno);
  79. visitor.setAddress(place);
  80.  
  81. VisitorFacade vServiceImpl=new VisitorServiceImpl();
  82. boolean insertStatus=vServiceImpl.createVisitor(visitor);
  83.  
  84. ModelAndView mv=new ModelAndView();
  85. if(insertStatus==true)
  86. {
  87. mv.addObject("REGISTRATIONSTATUSMESSAGE", "User Registered Succesfully !!!");
  88. log.info("Succesfully created visitor "+ username);
  89. mv.setViewName("/registration.jsp");
  90. }
  91. else
  92. {
  93. mv.addObject("REGISTRATIONSTATUSMESSAGE", "USERNAME already exists.. please register again with different USERNAME..");
  94. log.info("Username "+ username+" already exists and visitor creation failed..");
  95. mv.setViewName("/registration.jsp");
  96. }
  97. return mv;
  98. }
  99.  
  100. /**
  101. * <br/>
  102. * METHOD DESCRIPTION:<br/>
  103. * The method is for authenticating visitor in the index.jsp page and redirects visitor to
  104. * the homepage based on their credentials. if validation fails, redirects to index.jsp and
  105. * error message is printed on page.<br/>
  106. *
  107. * @param request (type HttpServletRequest)
  108. * @param response (type HttpServletResponse)
  109. *
  110. * @return ModelAndView
  111. *
  112. * @throws FERSGenericException
  113. *
  114. *
  115. */
  116.  
  117. @RequestMapping("/searchVisitor.htm")
  118. public ModelAndView searchVisitor(HttpServletRequest request,
  119. HttpServletResponse response) throws Exception {
  120. if(request==null || response==null)
  121. {
  122. log.info("Request or Response failed for SEARCHVISITOR METHOD..");
  123. throw new FERSGenericException("Error in Transaction, Please re-Try. for more information check Logfile in C:\\FERSLOG folder", new NullPointerException());
  124. }
  125. String username=request.getParameter("USERNAME");
  126. String password=request.getParameter("PASSWORD");
  127. HttpSession hs=request.getSession();
  128. if(hs.isNew())
  129. {
  130. hs.setAttribute("USERNAME", username);
  131. hs.setAttribute("PASSWORD", password);
  132. }
  133. else
  134. {
  135. //username=hs.getAttribute("USERNAME").toString();
  136. //password=hs.getAttribute("PASSWORD").toString();
  137. }
  138.  
  139. log.info("Logging into FERS using username :"+username+" and password :"+password);
  140.  
  141. Visitor visitor=new Visitor();
  142. VisitorFacade vServiceImpl=new VisitorServiceImpl();
  143. visitor=vServiceImpl.searchVisitor(username, password);
  144.  
  145. ModelAndView mv=new ModelAndView();
  146.  
  147. if(visitor.getVisitorId()==0)
  148. {
  149. mv.addObject("ERROR","Invalid Username / Password.");
  150. mv.setViewName("/index.jsp");
  151. return mv;
  152. }
  153. else
  154. {
  155.  
  156. log.info("Visitor details available for the username :"+username);
  157.  
  158. List<Event> eventList=new ArrayList<Event>();
  159. EventFacade serviceImpl=new EventServiceImpl();
  160. eventList=serviceImpl.getAllEvents();
  161.  
  162. log.info("All events listed for th visitor :"+eventList);
  163.  
  164. List<Event> regList=new ArrayList<Event>();
  165. regList=vServiceImpl.showRegisteredEvents(visitor);
  166.  
  167. log.info("All Registered events listed for the visitor :"+regList);
  168.  
  169. HttpSession session=request.getSession();
  170. session.setAttribute("VISITOR", visitor);
  171.  
  172. mv.addObject("visitor",visitor);
  173. mv.addObject("allEvents",eventList);
  174. mv.addObject("regEvents",regList);
  175. mv.setViewName("/visitormain.jsp");
  176. return mv;
  177. }
  178. }
  179.  
  180. /**
  181. * <br/>
  182. * METHOD DESCRIPTION:<br/>
  183. * The method is used to register a visitor for an event from visitormain.jsp and maintains the list
  184. * of all the events visitor registered. if user status is already registered for an event, then displays
  185. * error message in visitormain.jsp page.<br/>
  186.  
  187. *
  188. * @param request (type HttpServletRequest)
  189. * @param response (type HttpServletResponse)
  190. *
  191. * @return ModelAndView
  192. *
  193. * @throws FERSGenericException
  194. *
  195. */
  196.  
  197.  
  198. @RequestMapping("/eventreg.htm")
  199. public ModelAndView registerVisitor(HttpServletRequest request,
  200. HttpServletResponse response) throws Exception {
  201.  
  202. if(request==null || response==null)
  203. {
  204. log.info("Request or Response failed for REGISTERVISITOR METHOD..");
  205. throw new FERSGenericException("Error in Transaction, Please re-Try. for more information check Logfile in C:\\FERSLOG folder", new NullPointerException());
  206. }
  207.  
  208. HttpSession session=request.getSession();
  209. Visitor visitor=(Visitor)session.getAttribute("VISITOR");
  210. int eventid=Integer.parseInt(request.getParameter("eventId"));
  211.  
  212. log.info("Visitor registered for the event :"+eventid);
  213.  
  214. ModelAndView mv=new ModelAndView();
  215.  
  216. VisitorFacade vServiceImpl=new VisitorServiceImpl();
  217. EventFacade serviceImpl=new EventServiceImpl();
  218.  
  219. boolean regStatus=serviceImpl.checkEventsofVisitor(visitor, eventid);
  220.  
  221. log.info("Status of the visitor for the event :"+regStatus);
  222.  
  223. if(regStatus==false)
  224. {
  225. vServiceImpl.RegisterVisitor(visitor, eventid);
  226. log.info("Visitor succesfully registed for event :"+eventid);
  227. }
  228. else
  229. {
  230. mv.addObject("RegError", "User already Registered for the EVENT !!");
  231. }
  232.  
  233. List<Event> regList=new ArrayList<Event>();
  234. regList=vServiceImpl.showRegisteredEvents(visitor);
  235.  
  236. List<Event> eventList=new ArrayList<Event>();
  237.  
  238. eventList=serviceImpl.getAllEvents();
  239.  
  240.  
  241. mv.addObject("visitor",visitor);
  242. mv.addObject("allEvents",eventList);
  243. mv.addObject("regEvents",regList);
  244. mv.setViewName("/visitormain.jsp");
  245. return mv;
  246.  
  247. }
  248.  
  249. /**
  250. * <br/>
  251. * METHOD DESCRIPTION:<br/>
  252. * The method will update account details of the visitor and logout the visitor
  253. * and to force the visitor to re-login and confirm the updated account details
  254. * and new password.<br/>
  255. *
  256. * @param request (type HttpServletRequest)
  257. * @param response (type HttpServletResponse)
  258. *
  259. * @return ModelAndView
  260. *
  261. * @throws FERSGenericException
  262. *
  263. */
  264.  
  265. @RequestMapping("/updatevisitor.htm")
  266. public ModelAndView updateVisitor(HttpServletRequest request,
  267. HttpServletResponse response) throws Exception {
  268.  
  269. if(request==null || response==null)
  270. {
  271. log.info("Request or Response failed for UPDATEVISITOR METHOD..");
  272. throw new FERSGenericException("Error in Transaction, Please re-Try. for more information check Logfile in C:\\FERSLOG folder", new NullPointerException());
  273. }
  274.  
  275. HttpSession session=request.getSession();
  276. Visitor visitor=(Visitor)session.getAttribute("VISITOR");
  277.  
  278. log.info("Updating visitor details with VisitorID :"+visitor.getVisitorId());
  279.  
  280. String username=request.getParameter("uname");
  281. String password=request.getParameter("PASSWORD");
  282. String firstname=request.getParameter("fname");
  283. String lastname=request.getParameter("lname");
  284. String email=request.getParameter("email");
  285. String phoneno=request.getParameter("phoneno");
  286. String place=request.getParameter("address");
  287.  
  288. visitor.setFirstName(firstname);
  289. visitor.setLastName(lastname);
  290. visitor.setUserName(username);
  291. visitor.setPassword(password);
  292. visitor.setEmail(email);
  293. visitor.setPhoneNumber(phoneno);
  294. visitor.setAddress(place);
  295.  
  296. VisitorFacade vServiceImpl=new VisitorServiceImpl();
  297. int status=vServiceImpl.updateVisitorDetails(visitor);
  298.  
  299. log.info("Number of Visitor records updated is :"+status);
  300.  
  301. ModelAndView mv=new ModelAndView();
  302.  
  303. if(status>0)
  304. {
  305. mv.addObject("status","success");
  306. mv.setViewName("/updatevisitor.jsp");
  307. }
  308. else
  309. {
  310. mv.addObject("updatestatus", "Error in updation.. Please Check fields and retry");
  311. mv.setViewName("/updatevisitor.jsp");
  312. }
  313. return mv;
  314. }
  315.  
  316. /**
  317. * <br/>
  318. * METHOD DESCRIPTION: <br/>
  319. * The method is to unregisters a visitor from an event within the visitormain.jsp
  320. * page and the seats will be released. The visitormain.jsp page is then refreshed
  321. * to confirm the updates. <br/>
  322. *
  323. * @param request (type HttpServletRequest)
  324. * @param response (type HttpServletResponse)
  325. *
  326. * @return ModelAndView
  327. *
  328. * @throws FERSGenericException
  329. *
  330. */
  331.  
  332. @RequestMapping("/eventunreg.htm")
  333. public ModelAndView unregisterEvent(HttpServletRequest request,
  334. HttpServletResponse response) throws Exception {
  335.  
  336. if(request==null || response==null)
  337. {
  338. log.info("Request or Response failed for UNREGISTEREVENT METHOD..");
  339. throw new FERSGenericException("Error in Transaction, Please re-Try. for more information check Logfile in C:\\FERSLOG folder", new NullPointerException());
  340. }
  341.  
  342. HttpSession session=request.getSession();
  343. Visitor visitor=(Visitor)session.getAttribute("VISITOR");
  344. int eventid=Integer.parseInt(request.getParameter("eventId"));
  345.  
  346. log.info("Unregistering for the event :"+eventid);
  347.  
  348. VisitorFacade vServiceImpl=new VisitorServiceImpl();
  349. vServiceImpl.unregisterEvent(visitor, eventid);
  350.  
  351.  
  352.  
  353. List<Event> regList=new ArrayList<Event>();
  354. regList=vServiceImpl.showRegisteredEvents(visitor);
  355.  
  356. List<Event> eventList=new ArrayList<Event>();
  357. EventFacade serviceImpl=new EventServiceImpl();
  358.  
  359. serviceImpl.updateEventDeletions(eventid);
  360.  
  361. log.info("Seats allocated for the event are released :"+eventid);
  362.  
  363. eventList=serviceImpl.getAllEvents();
  364.  
  365.  
  366.  
  367. ModelAndView mv=new ModelAndView();
  368. mv.addObject("visitor",visitor);
  369. mv.addObject("allEvents",eventList);
  370. mv.addObject("regEvents",regList);
  371. mv.setViewName("/visitormain.jsp");
  372. return mv;
  373. }
  374.  
  375.  
  376. }
Add Comment
Please, Sign In to add comment