@RequestMapping(value = BoUrls.PRODUCT_MARKETING_EDIT_URL, method = RequestMethod.GET) public ModelAndView productMarketingEdit( final HttpServletRequest request, final HttpServletResponse response, ModelMap modelMap) throws Exception { ModelAndViewThemeDevice modelAndView = new ModelAndViewThemeDevice( getCurrentVelocityPath(request), BoUrls.PRODUCT_MARKETING_EDIT.getVelocityPage()); final MarketArea currentMarketArea = requestUtil.getCurrentMarketArea(request); final Retailer currentRetailer = requestUtil.getCurrentRetailer(request); final String productMarketingCode = request.getParameter(RequestConstants.REQUEST_PARAMETER_PRODUCT_MARKETING_CODE); final ProductMarketing productMarketing = productMarketingService.getProductMarketingByCode( currentMarketArea.getId(), currentRetailer.getId(), productMarketingCode); // "business.product.marketing.edit"; initProductMarketingModelAndView(request, modelAndView, productMarketing); modelAndView.addObject( "productMarketingForm", formFactory.buildProductMarketingForm(request, productMarketing)); initSpecificSeo(request, modelAndView, "", productMarketing.getBusinessName()); // modelAndView.addObject("productMarketingDetails", // viewBeanFactory.buildUserEditViewBean(request, currentLocalization, user)); return modelAndView; }
@RequestMapping(value = BoUrls.PRODUCT_MARKETING_EDIT_URL, method = RequestMethod.POST) public ModelAndView productMarketingEdit( final HttpServletRequest request, final HttpServletResponse response, @Valid ProductMarketingForm productMarketingForm, BindingResult result, ModelMap modelMap) throws Exception { final MarketArea currentMarketArea = requestUtil.getCurrentMarketArea(request); final Retailer currentRetailer = requestUtil.getCurrentRetailer(request); final String productMarketingCode = productMarketingForm.getCode(); String urlRedirect = backofficeUrlService.generateUrl(BoUrls.HOME, requestUtil.getRequestData(request)); if (StringUtils.isNotEmpty(productMarketingCode)) { if (result.hasErrors()) { return productMarketingEdit(request, response, modelMap); } // SANITY CHECK final ProductMarketing productMarketing = productMarketingService.getProductMarketingByCode( currentMarketArea.getId(), currentRetailer.getId(), productMarketingCode); if (productMarketing != null) { // UPDATE PRODUCT MARKETING webBackofficeService.updateProductMarketing(productMarketing, productMarketingForm); } else { // CREATE PRODUCT MARKETING webBackofficeService.createProductMarketing(productMarketing, productMarketingForm); } urlRedirect = backofficeUrlService.generateUrl( BoUrls.PRODUCT_MARKETING_DETAILS, requestUtil.getRequestData(request), productMarketing); } return new ModelAndView(new RedirectView(urlRedirect)); }
@RequestMapping(value = BoUrls.PRODUCT_MARKETING_DETAILS_URL, method = RequestMethod.GET) public ModelAndView productMarketingDetails( final HttpServletRequest request, final HttpServletResponse response) throws Exception { ModelAndViewThemeDevice modelAndView = new ModelAndViewThemeDevice( getCurrentVelocityPath(request), BoUrls.PRODUCT_MARKETING_DETAILS.getVelocityPage()); final MarketArea currentMarketArea = requestUtil.getCurrentMarketArea(request); final Retailer currentRetailer = requestUtil.getCurrentRetailer(request); final String productMarketingCode = request.getParameter(RequestConstants.REQUEST_PARAMETER_PRODUCT_MARKETING_CODE); final ProductMarketing productMarketing = productMarketingService.getProductMarketingByCode( currentMarketArea.getId(), currentRetailer.getId(), productMarketingCode); // "business.product.marketing.details"; initProductMarketingModelAndView(request, modelAndView, productMarketing); initSpecificSeo(request, modelAndView, "", productMarketing.getBusinessName()); return modelAndView; }