/** * 终端命令菜单 * * @return */ private String terminalCommandMenuJson() { JSONArray jsonArray = new JSONArray(); for (FuncModel root : authorizedFuncs) { // FuncModel root = (FuncModel) iterator.next(); if (root.getParentId() != 900700 || root.getDeleted()) continue; JSONObject rootJsonObject = new JSONObject(); rootJsonObject.put("id", "" + root.getEntityId()); rootJsonObject.put("text", root.getDescr()); rootJsonObject.put("icon", root.getIcon()); /** * if (this.selectUserFuncsMap.containsKey(root.getId())) rootJsonObject.put("checked", * Boolean.valueOf(true)); else { rootJsonObject.put("checked", Boolean.valueOf(false)); } */ JSONObject attributes = new JSONObject(); attributes.put("funcName", root.getFuncName()); // attributes.put("style", root.getStyle()); rootJsonObject.put("attributes", attributes); List subGroupInfos = findSubSyssFuncByParnetId(root.getEntityId()); genSubGroupsTreeJson(rootJsonObject, subGroupInfos); jsonArray.add(rootJsonObject); } return jsonArray.toString(); }
private void genSubGroupsTreeJson(JSONObject jsonObject, List<FuncModel> subSysFunc) { if (subSysFunc.size() > 0) { JSONArray jsonArray = new JSONArray(); for (int i = 0; i < subSysFunc.size(); i++) { FuncModel v = (FuncModel) subSysFunc.get(i); if (v.getDeleted()) continue; JSONObject jsonObjectChild = new JSONObject(); jsonObjectChild.put("id", "" + v.getEntityId()); jsonObjectChild.put("icon", v.getIcon()); jsonObjectChild.put("text", v.getDescr()); // getText("menu." + // v.getId())); /** * if ((this.selectUserFuncsMap.containsKey(v.getId())) && (v.getLevel() != * SysFunc.LEVEL_GROUT)) { jsonObjectChild.put("checked", Boolean.valueOf(true)); } else * jsonObjectChild.put("checked", Boolean.valueOf(false)); */ JSONObject attributes = new JSONObject(); attributes.put("funcName", v.getFuncName()); jsonObjectChild.put("attributes", attributes); List subGroupInfosChild = findSubSyssFuncByParnetId(v.getEntityId()); genSubGroupsTreeJson(jsonObjectChild, subGroupInfosChild); jsonArray.add(jsonObjectChild); } jsonObject.put("menu", jsonArray); } }
public String getMapToolMenu() { JSONArray jsonArray = new JSONArray(); for (FuncModel root : authorizedFuncs) { // FuncModel root = (FuncModel) iterator.next(); if (root.getParentId() != 900200 || root.getDeleted()) continue; JSONObject rootJsonObject = new JSONObject(); rootJsonObject.put("id", "" + root.getEntityId()); rootJsonObject.put("text", root.getDescr()); rootJsonObject.put("icon", root.getIcon()); rootJsonObject.put("code", root.getFuncName()); /** * if (this.selectUserFuncsMap.containsKey(root.getId())) rootJsonObject.put("checked", * Boolean.valueOf(true)); else { rootJsonObject.put("checked", Boolean.valueOf(false)); } */ JSONObject attributes = new JSONObject(); attributes.put("funcName", root.getFuncName()); // attributes.put("style", root.getStyle()); rootJsonObject.put("attributes", attributes); jsonArray.add(rootJsonObject); } return jsonArray.toString(); }
public String login() { if (StringUtil.isEmpty(this.username)) { setMessage("用户名不能为空"); return json(false, super.getMessage()); } if (this.password == null) { setMessage("密码不能为空"); return json(false, super.getMessage()); } try { String hsql = "from UserInfo where loginName = ? and userState <> ? and deleted = ?"; UserInfo user = (UserInfo) this.getBaseService() .find(hsql, new Object[] {username, UserInfo.STATE_SUSPEND, false}); if (user == null) { setMessage("用户名或密码错误"); return json(false, super.getMessage()); } String userpassword = null; userpassword = user.getPassword(); String pwd = StringUtil.encodePassword(userpassword, "md5"); if (!userpassword.equalsIgnoreCase(this.password)) { setMessage("用户名或密码不正确"); return json(false, super.getMessage()); } // user.setUserType(this.userType); String hostName = getRequest().getRemoteHost(); user.setIp(hostName); if (user.getRoles().size() < 1) { Role role = new Role(); role.setName("ROLE_ADMIN"); user.getRoles().add(role); } user.setLoginTime(new Date()); MobileOnlineUser.onlineUserMap.put(user.getEntityId(), user); authorizedFuncs = new ArrayList(); if (user.getUserFlag() == UserInfo.USER_FLAG_SUPER_ADMIN) { // 如果是超级用户,将加所有权限,可以分配所有管理部门 authorizedFuncs = this.getBaseService().loadAll(FuncModel.class); } else { Role r = user.getRole(); if (r != null) { authorizedFuncs.addAll(r.getFuncs()); } } // 移动端的权限 List funcResult = new ArrayList(); Map userInfoMap = new HashMap(); // Map funcMap = new HashMap(); for (FuncModel f : authorizedFuncs) { if (f.getFuncType() == FuncModel.FUNC_TYPE_MOBILE) { funcResult.add(f.getFuncName()); // funcMap.put(f.getFuncName(), f.getFuncName()); } } userInfoMap.put("funcs", funcResult); SystemConfig sc = (SystemConfig) this.getBaseService().load(SystemConfig.class, 1); userInfoMap.put("id", user.getEntityId()); userInfoMap.put("name", user.getName()); userInfoMap.put("loginName", user.getLoginName()); userInfoMap.put("mapCenterLat", user.getMapCenterLat()); if (user.getMapCenterLat() > 0) { sc.setInitLat(user.getMapCenterLat()); } if (user.getMapCenterLng() > 0) { sc.setInitLng(user.getMapCenterLng()); } userInfoMap.put("mapCenterLng", user.getMapCenterLng()); if (user.getMapLevel() > 0) { userInfoMap.put("mapZoom", user.getMapLevel()); sc.setInitZoomLevel(user.getMapLevel()); } else { userInfoMap.put("mapZoom", 15); } if (user.getRoles().size() < 1) { // if (user.getUserType() == 0) { Role role = new Role(); // role.setDescription(getText("administrator")); role.setName("ROLE_ADMIN"); user.getRoles().add(role); // } } Role r = user.getRole(); userInfoMap.put("roleName", r.getName()); // JSONArray roleArray = JSONArray.fromObject(user.getRoles(), // this.jsonConfig); getSession().put(SESSION_KEY_SYSTEM_CONFIG, sc); super.setOnlineUser(user); super.setAuthorizedDep(user); this.LogOperation("移动端登录"); return json(true, userInfoMap); } catch (Exception e) { this.log.error(e.getMessage(), e); return json(false, e.getMessage()); } }