*
* ============LICENSE_END============================================
*
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ *
*/
package org.onap.portalapp.portal.service;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.Comparator;
+import java.util.HashMap;
+import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import org.json.JSONArray;
import org.json.JSONObject;
import org.onap.portalapp.portal.domain.CentralizedApp;
+import org.onap.portalapp.portal.domain.DisplayText;
import org.onap.portalapp.portal.domain.EPUser;
import org.onap.portalapp.portal.logging.aop.EPMetricsLog;
import org.onap.portalsdk.core.domain.MenuData;
import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
+import org.onap.portalsdk.core.service.DataAccessService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.EnableAspectJAutoProxy;
import org.springframework.stereotype.Service;
@Autowired
private ExternalAccessRolesService externalAccessRolesService;
+ @Autowired
+ private DataAccessService dataAccessService;
+
/*
* (non-Javadoc)
*
final Map<String, JSONObject> defaultNavMap = new LinkedHashMap<String, JSONObject>();
resetNavMap(defaultNavMap);
loadDefaultNavMap(defaultNavMap);
+ loadNavMapByUserAdminRole(defaultNavMap,user);
loadNavMapByRole(defaultNavMap, fullMenuSet , user);
return convertToSideBarModel(defaultNavMap);
}
}
}
+ //mulitilanguage impl
+ String loginId = user.getLoginId();
+ HashMap loginParams = new HashMap();
+ loginParams.put("login_id",loginId);
+ List<EPUser> epUsers = dataAccessService.executeNamedQuery("getEPUserByLoginId", loginParams, new HashMap());
+ Integer languageId = 1;
+ for (EPUser epUser : epUsers) {
+ languageId = epUser.getLanguageId();
+ }
+ Iterator<MenuData> iterator = fullMenuSet.iterator();
+ HashMap params = new HashMap();
+ params.put("language_id",languageId);
+ List<DisplayText> displayTexts = dataAccessService.executeNamedQuery("displayText",params,new HashMap());
+ while (iterator.hasNext()) {
+ MenuData menuData = iterator.next();
+ for (int index = 0;index<displayTexts.size();index++) {
+ DisplayText displayText = displayTexts.get(index);
+ if (menuData.getId()==displayText.getTextId()) {
+ menuData.setLabel(displayText.getLabel());
+ break;
+ }
+ }
+ }
+
SortedSet<MenuData> sortMenuSet = new TreeSet<MenuData>(new SortOrderComparator());
for (MenuData mn : fullMenuSet) {
sortMenuSet.add(mn);
defaultNavMap.put("root.widgetCatalog", navItemsDetails3);
}
+
+ @SuppressWarnings("unchecked")
+ private void loadNavMapByUserAdminRole(Map<String, JSONObject> defaultNavMap, EPUser user) {
+ List<String> applicationsList = new ArrayList<>();
+ final Map<String, Long> appParams = new HashMap<>();
+ appParams.put("userId", user.getId());
+ applicationsList = dataAccessService.executeNamedQuery("getAprroverRoleFunctionsOfUser", appParams, null);
+ if (applicationsList.size() > 0) {
+ JSONObject navItemsDetails = new JSONObject();
+ navItemsDetails.put("name", "Users");
+ navItemsDetails.put("state", "root.users");
+ navItemsDetails.put("imageSrc", "icon-user");
+ defaultNavMap.put("root.users", navItemsDetails);
+ }
+ }
}