2 * Copyright (C) 2019 CMCC, Inc. and others. All rights reserved.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package org.onap.portalapp.portal.service;
19 import com.alibaba.fastjson.JSONObject;
20 import java.util.HashMap;
21 import java.util.List;
23 import org.onap.music.eelf.logging.EELFLoggerDelegate;
24 import org.onap.portalapp.portal.domain.EPUser;
25 import org.onap.portalapp.portal.domain.Language;
26 import org.onap.portalsdk.core.service.DataAccessService;
27 import org.springframework.beans.factory.annotation.Autowired;
28 import org.springframework.stereotype.Service;
31 public class LanguageServiceImpl implements LanguageService {
32 private final EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(LanguageServiceImpl.class);
34 private final DataAccessService dataAccessService;
37 public LanguageServiceImpl(DataAccessService dataAccessService) {
38 this.dataAccessService = dataAccessService;
42 @SuppressWarnings("unchecked")
44 public JSONObject getLanguages() {
45 List<Language> languages = (List<Language>) dataAccessService.executeNamedQuery("queryLanguage",null,new HashMap());
46 JSONObject result = new JSONObject();
47 result.put("languageList",languages);
52 public String setUpUserLanguage(Integer languageId, String loginId) {
53 Map<String,Object> params = new HashMap<>();
54 params.put("login_id",loginId);
55 params.put("language_id",languageId);
56 dataAccessService.executeNamedQuery("updateFnUser",params,new HashMap());
60 @SuppressWarnings("unchecked")
62 public JSONObject getUserLanguage(String loginId) {
63 // get language_id from fn_user by loginId
64 JSONObject result = new JSONObject();
65 HashMap getUserParams = new HashMap();
66 getUserParams.put("login_id", loginId);
67 List<EPUser> userList;
70 userList = dataAccessService.executeNamedQuery("getEPUserByLoginId", getUserParams, new HashMap());
71 if (userList != null && userList.size() > 0) {
72 EPUser user = userList.get(0);
73 int languageId = user.getLanguageId();
74 result.put("languageId", languageId);
76 // get language name and alias from fn_language by languageId
77 HashMap<String,String> getLangParams = new HashMap();
78 getLangParams.put("language_id", String.valueOf(languageId));
79 List<Language> languageList;
81 languageList = dataAccessService.executeNamedQuery("queryLanguageByLanguageId", getLangParams, new HashMap());
82 if (languageList != null && languageList.size() > 0) {
83 result.put("languageName", languageList.get(0).getLanguageName());
84 result.put("languageAlias", languageList.get(0).getLanguageAlias());
87 } catch (Exception e) {
88 logger.debug(EELFLoggerDelegate.debugLogger, e.getMessage());