package com.salesmanager.admin.controller.pages; import com.salesmanager.admin.constants.Constants; import com.salesmanager.admin.data.Menu; import com.salesmanager.core.business.exception.ServiceException; import com.salesmanager.core.business.services.reference.country.CountryService; import com.salesmanager.core.business.services.user.UserService; import com.salesmanager.core.model.merchant.MerchantStore; import com.salesmanager.core.model.reference.country.Country; import com.salesmanager.core.model.reference.language.Language; import com.salesmanager.core.model.user.User; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ModelAttribute; import java.util.HashMap; import java.util.Map; import javax.inject.Inject; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Created by umesh on 3/11/17. */ public abstract class AbstractAdminController { @Inject CountryService countryService; @Inject UserService userService; @ModelAttribute("store") public MerchantStore getStore(HttpServletRequest request, HttpServletResponse response){ MerchantStore store = (MerchantStore)request.getAttribute(Constants.ADMIN_STORE); return store; } @ModelAttribute("country") public Country getCountry(HttpServletRequest request, HttpServletResponse response) throws ServiceException { Language language = (Language)request.getAttribute("LANGUAGE"); MerchantStore store = (MerchantStore)request.getAttribute(Constants.ADMIN_STORE); Map<String,Country> countries = countryService.getCountriesMap(language); Country storeCountry = store.getCountry(); return countries.get(storeCountry.getIsoCode()); } @ModelAttribute("user") public User getUser(HttpServletRequest request) throws ServiceException { String currentUser = request.getRemoteUser(); return userService.getByUserName(currentUser); } protected void setMenu(Model model, Map<String, Menu> menus, final String activeMenu) throws Exception { //display menu Map<String,String> activeMenus = new HashMap<String,String>(); activeMenus.put(activeMenu, activeMenu); Menu currentMenu = (Menu)menus.get(activeMenu); model.addAttribute("currentMenu",currentMenu); model.addAttribute("activeMenus",activeMenus); // } protected void setMenu(Model model, Map<String, Menu> menus, final String activeMenu, Map<String,String> activeMenus) throws Exception { activeMenus.put(activeMenu, activeMenu); Menu currentMenu = (Menu)menus.get(activeMenu); model.addAttribute("currentMenu",currentMenu); model.addAttribute("activeMenus",activeMenus); // } }