@RequestMapping(value = "/create", method = RequestMethod.GET) public String showCreateForm(Model model) { TicketsInvoice ticketsInvoice = new TicketsInvoice(); List<Employee> employees = employeeService.findAll(Employee.EmployeePosition.MAIN_CASIER.getId()); model.addAttribute("ticketsInvoice", ticketsInvoice); model.addAttribute("employees", employees); return "ticketsInvoice/edit"; }
@RequestMapping(value = "/{id}", method = RequestMethod.GET) public String findOne(@PathVariable("id") int id, Model model) { TicketsInvoice ticketsInvoice = ticketsInvoiceService.find(id); if (ticketsInvoice == null) throw new ResourceNotFoundException(); List<Employee> employees = employeeService.findAll(Employee.EmployeePosition.MAIN_CASIER.getId()); model.addAttribute("employees", employees); model.addAttribute("ticketsInvoice", ticketsInvoice); return "ticketsInvoice/edit"; }
@RequestMapping(value = "/{id}/control-letters/create", method = RequestMethod.GET) public String showControlLetterCreateForm(@PathVariable("id") int id, Model model) { ControlLetter controlLetter = new ControlLetter(); // TODO: Validate income id that coming from form controlLetter.setIncomeId(id); List<Employee> employees = employeeService.findAll(Employee.EmployeePosition.CASIER.getId()); model.addAttribute("controlLetter", controlLetter); model.addAttribute("employees", employees); return "controlLetter/edit"; }
@RequestMapping(value = "/{invoiceId}/control-letters/{id}") public String showControlLetter( @PathVariable("invoiceId") int invoiceId, @PathVariable("id") int id, Model model) { ControlLetter controlLetter = controlLetterService.find(id); if (controlLetter == null) throw new ResourceNotFoundException(); controlLetter.setIncomeId(invoiceId); List<Employee> employees = employeeService.findAll(Employee.EmployeePosition.CASIER.getId()); model.addAttribute("employees", employees); model.addAttribute("controlLetter", controlLetter); return "controlLetter/edit"; }
@RequestMapping(value = "/", method = RequestMethod.POST) public String createOrUpdate( @ModelAttribute("ticketsInvoice") @Validated TicketsInvoice ticketsInvoice, BindingResult bindingResult, Model model, RedirectAttributes redirectAttributes) { ticketsInvoiceValidator.validate(ticketsInvoice, bindingResult); if (bindingResult.hasErrors()) { List<Employee> employees = employeeService.findAll(Employee.EmployeePosition.MAIN_CASIER.getId()); model.addAttribute("employees", employees); return "ticketsInvoice/edit"; } return handleSaving(ticketsInvoice, ticketsInvoiceService, redirectAttributes, null); }
@RequestMapping( value = "/{invoiceId}/control-letters/{id}/rows/create", method = RequestMethod.GET) public String showControlLetterRowCreateForm( @PathVariable("invoiceId") int invoiceId, @PathVariable("id") int id, Model model) { ControlLetterRow controlLetterRow = new ControlLetterRow(); // TODO: Validate id that coming from form controlLetterRow.setControlLetterId(id); List<Employee> employees = employeeService.findAll(Employee.EmployeePosition.CONDUCTOR.getId()); List<Route> routes = routeService.findAll(); model.addAttribute("controlLetterRow", controlLetterRow); model.addAttribute("routes", routes); model.addAttribute("employees", employees); model.addAttribute("invoiceId", invoiceId); return "controlLetterRow/edit"; }
@RequestMapping(value = "/{invoiceId}/control-letters/{controlLetterId}/rows/{id}") public String showControlLetterRow( @PathVariable("invoiceId") int invoiceId, @PathVariable("controlLetterId") int controlLetterId, @PathVariable("id") int id, Model model) { ControlLetterRow controlLetterRow = controlLetterRowService.find(id); if (controlLetterRow == null) throw new ResourceNotFoundException(); controlLetterRow.setControlLetterId(controlLetterId); List<Employee> employees = employeeService.findAll(Employee.EmployeePosition.CONDUCTOR.getId()); List<Route> routes = routeService.findAll(); model.addAttribute("routes", routes); model.addAttribute("employees", employees); model.addAttribute("controlLetterRow", controlLetterRow); model.addAttribute("invoiceId", invoiceId); return "controlLetterRow/edit"; }
@RequestMapping(value = "/{id}/control-letters", method = RequestMethod.POST) public String createOrUpdateControlLetter( @PathVariable("id") int invoiceId, @ModelAttribute("controlLetter") @Validated ControlLetter controlLetter, BindingResult bindingResult, Model model, RedirectAttributes redirectAttributes) { if (!bindingResult.hasErrors()) controlLetterValidator.validate(controlLetter, bindingResult); if (bindingResult.hasErrors()) { List<Employee> employees = employeeService.findAll(Employee.EmployeePosition.CASIER.getId()); model.addAttribute("employees", employees); return "controlLetter/edit"; } return handleSaving( controlLetter, controlLetterService, redirectAttributes, "tickets-invoices/" + invoiceId + "/control-letters"); }
@RequestMapping(value = "/{invoiceId}/control-letters/{id}/rows", method = RequestMethod.POST) public String createOrUpdateControlLetterRow( @PathVariable("id") int controlLetterid, @PathVariable("invoiceId") int invoiceId, @ModelAttribute("controlLetterRow") @Validated ControlLetterRow controlLetterRow, BindingResult bindingResult, Model model, RedirectAttributes redirectAttributes) { if (!bindingResult.hasErrors()) controlLetterRowValidator.validate(controlLetterRow, bindingResult); if (bindingResult.hasErrors()) { List<Employee> employees = employeeService.findAll(Employee.EmployeePosition.CONDUCTOR.getId()); List<Route> routes = routeService.findAll(); model.addAttribute("routes", routes); model.addAttribute("employees", employees); model.addAttribute("invoiceId", invoiceId); model.addAttribute("employees", employees); return "controlLetterRow/edit"; } // TODO: Trigger // Якщо рядок новий, то кондуктор ще не повертав квитки, отже вважаємо, що він повернув все, що // отримав if (controlLetterRow.isNew()) controlLetterRow.setTicketsReturned(controlLetterRow.getTicketsGiven()); return handleSaving( controlLetterRow, controlLetterRowService, redirectAttributes, "tickets-invoices/" + invoiceId + "/control-letters/" + controlLetterid + "/rows"); }