package com.vci.client.framework.rightdistribution.roleRight;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JPopupMenu;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTextField;
import javax.swing.ListSelectionModel;
import javax.swing.tree.TreePath;
import com.vci.client.LogonApplication;
import com.vci.client.common.VCIBasePanel;
import com.vci.client.common.objects.RoleObject;
import com.vci.client.common.objects.UserObject;
import com.vci.client.framework.delegate.FuncOperationClientDelegate;
import com.vci.client.framework.delegate.FunctionClientDelegate;
import com.vci.client.framework.delegate.RightManagementClientDelegate;
import com.vci.client.framework.delegate.RoleRightClientDelegate;
import com.vci.client.framework.rightConfig.modelConfig.ModuleTreeCellRenderer;
import com.vci.client.framework.rightConfig.object.FuncOperationObject;
import com.vci.client.framework.rightConfig.object.FunctionObject;
import com.vci.client.framework.rightdistribution.object.RoleRightObject;
import com.vci.client.framework.specialrole.ModuleInterface.IModuleShow;
import com.vci.client.framework.systemConfig.stafforgmanage.ListLabelCellRender;
import com.vci.client.framework.util.RightControlUtil;
import com.vci.client.ui.exception.VCIException;
import com.vci.client.ui.image.BundleImage;
import com.vci.client.ui.locale.LocaleDisplay;
import com.vci.client.ui.swing.KJButton;
import com.vci.client.ui.swing.VCIOptionPane;
import com.vci.client.ui.swing.VCISwingUtil;
import com.vci.client.ui.tree.CheckBoxTreeManager;
import com.vci.client.ui.tree.VCIBaseTree;
import com.vci.client.ui.tree.VCIBaseTreeModel;
import com.vci.client.ui.tree.VCIBaseTreeNode;
/**
* 权限模块配置
*
* @author liudi
*
* 2011-6-21
*/
public class RoleRightPanel extends VCIBasePanel implements IModuleShow{
private static final long serialVersionUID = -2672216434571403222L;
private JLabel roleListLab = new JLabel(LocaleDisplay.getI18nString("rmip.framework.rightdistribution.moduleRight.RoleList","RMIPFramework", getLocale()));// 角色列表Lab
JList roleList = new JList(); // 角色列表
private JLabel titleLab = new JLabel(LocaleDisplay.getI18nString("rmip.framework.rightdistribution.moduleRight.name","RMIPFramework", getLocale()));// title
private JButton addButton = new JButton();
private JButton delButton = new JButton();
JScrollPane scrollTree = null;
JSplitPane jspConfigPanel; // 把Panel分成左右两部分
private JScrollPane leftPanel = new JScrollPane();
VCIBaseTree tree;
VCIBaseTreeModel treeModel;
VCIBaseTreeNode rootNode;
private JTextField top = new JTextField();// 上横线
private JTextField bottom = new JTextField();// 下横线
RightManagementClientDelegate rightManagementClient = new RightManagementClientDelegate(LogonApplication.getUserEntityObject());
RoleRightClientDelegate moduleRightClientDelegate = new RoleRightClientDelegate(LogonApplication.getUserEntityObject());
CheckBoxTreeManager treeManager;
private String currentUserName = LogonApplication.getUserEntityObject().getUserName();
/**
* 记录当前选中的角色
*/
private RoleObject curRole = null;
/**
* 存储需要保存的权限
*/
private Map rightMap = new HashMap();
/**
* 刷新按钮
*/
private JPopupMenu popupMenu;
private JMenuItem refMenuItem = new JMenuItem("刷新", VCISwingUtil.createImageIcon("arrow_refresh.png"));//刷新
/**查询功能**/
private JLabel searchLbl = new JLabel("查询:");
private JTextField searchTxt = new JTextField(20);
private KJButton searchBtn = new KJButton("", "search.gif");
private String logonUserId = "",logonRoleId;
private String moduleName = "";
private String iconName,moduleShowInfo ;
// private SpecialRoleObject specialRoleObject = new SpecialRoleObject();
// public SpecialRoleObject getSpecialRoleObject() {
// return specialRoleObject;
// }
//
// public void setSpecialRoleObject(SpecialRoleObject specialRoleObject) {
// this.specialRoleObject = specialRoleObject;
// }
public String getLogonUserId() {
return logonUserId;
}
public void setLogonUserId(String logonUserId) {
this.logonUserId = logonUserId;
}
public String getLogonRoleId() {
return logonRoleId;
}
public void setLogonRoleId(String logonRoleId) {
this.logonRoleId = logonRoleId;
}
public void setModuleName(String moduleName) {
this.moduleName = moduleName;
}
public void setIconName(String iconName) {
this.iconName = iconName;
}
public void setModuleShowInfo(String moduleShowInfo) {
this.moduleShowInfo = moduleShowInfo;
}
public RoleRightPanel(FunctionObject funcObj) {
super(funcObj);
rightRoleMap();
init();
LogonApplication.getUserEntityObject().setModules(this.getModuleName());
}
/**
* 初始化页面
*
*/
public void init() {
JPanel palMain = new JPanel();
JPanel contentPanel = new JPanel();
JPanel buttonPanel = new JPanel();
JPanel midPanel = new JPanel();
palMain.setLayout(new BorderLayout());
roleList("");
contentItem(contentPanel);
jButtonPanl(buttonPanel);
initTreeNode();
refMenuItem.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
refreshRole();
}
});
searchBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
searchRoleList();
}
});
midPanel.setLayout(new BorderLayout());
midPanel.add(top, BorderLayout.NORTH);
midPanel.add(bottom, BorderLayout.SOUTH);
midPanel.add(contentPanel, BorderLayout.CENTER);
palMain.add(titleLab, BorderLayout.NORTH);
palMain.add(midPanel, BorderLayout.CENTER);
palMain.add(buttonPanel, BorderLayout.SOUTH);
JPanel leftMainPanel = new JPanel(new BorderLayout());
leftMainPanel.add(leftPanel,BorderLayout.CENTER);
leftMainPanel.add(getSearchPanel(),BorderLayout.NORTH);
jspConfigPanel = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, leftMainPanel, palMain);
jspConfigPanel.setDividerSize(7);
jspConfigPanel.setContinuousLayout(true);
jspConfigPanel.setOneTouchExpandable(true);
jspConfigPanel.setDividerLocation(220);
this.setLayout(new BorderLayout());
this.add(jspConfigPanel, BorderLayout.CENTER);
}
private JPanel getSearchPanel() {
JPanel searchPanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
searchPanel.add(searchLbl);
searchPanel.add(searchTxt);
searchPanel.add(searchBtn);
return searchPanel;
}
public void initTreeNode(){
rootNode = new VCIBaseTreeNode(LocaleDisplay.getI18nString("rmip.framework.rightdistribution.moduleRight.moduleTree","RMIPFramework", getLocale()), "root");
treeModel = new VCIBaseTreeModel(rootNode);
tree = new VCIBaseTree(treeModel, new ModuleTreeCellRenderer());
FunctionObject[] funcObjs = null;
FunctionClientDelegate funcDel = new FunctionClientDelegate();
try {
UserObject curUser = LogonApplication.getUserObject();
boolean bAdmin = RightControlUtil.isAdminOrDeveloperOrRoot(curUser.getUserName());
if (bAdmin)
funcObjs = funcDel.getModuleListByParentId("system", false);
else
funcObjs = funcDel.getModuleListByParentId("business", false);
funMap.clear();
for(int k = 0;k < funcObjs.length;k++) {
funMap.put(funcObjs[k].getName(), funcObjs[k].getId());
}
// List list = getModelIds();
// boolean res = isSecurtyAdmin();
for (int i = 0; i < funcObjs.length; i++) {
VCIBaseTreeNode node = new VCIBaseTreeNode(funcObjs[i].getName(), funcObjs[i]);
//if ("business".equals(funcObjs[i].getParentId())) {
// if(res && list.contains(funcObjs[i].getId())) {
// continue;
// }
// 三员授权时,不能对普通用户授予系统管理菜单的权限
// int layer = funcObjs[i].getLayer();
// int userType = curUser.getUserType();
//if (!bAdmin)// && layer <= userType)
// continue;
treeModel.insertNodeInto(node, rootNode,rootNode.getChildCount());
//}
setChildNode(node,funcObjs[i]);
}
} catch (VCIException e) {
e.printStackTrace();
VCIOptionPane.showError(LogonApplication.frame,LocaleDisplay.getI18nString(e, "RMIPFramework", getLocale()));
return;
}
treeManager = new CheckBoxTreeManager(tree);
scrollTree.getViewport().removeAll();
scrollTree.getViewport().add(tree);
scrollTree.repaint();
}
private void setChildNode(VCIBaseTreeNode node ,FunctionObject funcObj) {
/**0表示该模块下什么都没有,1表示有模块,2表示有操作**/
FunctionClientDelegate funcDel = new FunctionClientDelegate();
try{
int funcType = funcDel.checkChildObject(funcObj.getId());
funcObj.setFuncType(funcType);
if(funcType == 1){
FunctionObject[] funcObjs = new FunctionClientDelegate().getModuleListByParentId(funcObj.getId(),false);
for(int i=0;iDescription:获取角色是0和1的授权(系统管理员,审计管理员,安全管理员所具有的权限)
*
* @author sunbo
* @time 2013-2-21
*/
Map rightRoleMap = new HashMap();
public void rightRoleMap(){
RoleRightObject[] roleRightObjs;
try {
roleRightObjs = new RoleRightClientDelegate().getRoleRightListByType(new String[]{"0", "1"});
for(RoleRightObject obj : roleRightObjs){
String key = obj.getFuncId();
rightRoleMap.put(key, obj.getRightValue());
}
} catch (VCIException e) {
e.printStackTrace();
VCIOptionPane.showError(LogonApplication.frame, LocaleDisplay.getI18nString(e,"RMIPFramework", getLocale()));
}
}
public boolean initRoleRightByType(VCIBaseTreeNode childNode){
boolean res = true;
res = isShowChildNode(childNode,rightRoleMap);
return res;
}
private boolean isShowChildNode(VCIBaseTreeNode node, Map rightMap){
boolean res = true;
Object obj = node.getObj();
String id = ((FuncOperationObject) obj).getFuncId();
if(rightMap.containsKey(id)){
Object a = rightMap.get(id);
if(a instanceof HashSet){
HashSet set = (HashSet) a;
Iterator it = set.iterator();
while(it.hasNext()){
long rightValue = (Long) it.next();
long nodeValue = ((FuncOperationObject) obj).getNumber();
//long preValue = (long)Math.pow(2, nodeValue);
long preValue = (rightValue >> nodeValue) & 1;
//进行位与操作,如果相等则表示具有当前操作的权限
//if(preValue == (preValue & rightValue)){
if (preValue == 1) {
res = false ;
}
}
}else{
long rightValue = (Long) a;
long nodeValue = ((FuncOperationObject) obj).getNumber();
//long preValue = (long)Math.pow(2, nodeValue);
long preValue = (rightValue >> nodeValue) & 1;
//进行位与操作,如果相等则表示具有当前操作的权限
//if(preValue == (preValue & rightValue)){
if (preValue == 1) {
res = false ;
}
}
}
return res;
}
/**
* 按钮
*
* @return
*/
public void jButtonPanl(JPanel p) {
addButton.setText(LocaleDisplay.getI18nString("rmip.framework.rightdistribution.moduleRight.addButton.file","RMIPFramework", getLocale()));
addButton.setIcon(new BundleImage().createImageIcon("create.gif"));
addButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
add_actionPerform();
}
});
delButton.setText(LocaleDisplay.getI18nString("rmip.framework.rightdistribution.moduleRight.delButton.file","RMIPFramework", getLocale()));
delButton.setIcon(new BundleImage().createImageIcon("delete.gif"));
delButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
rightMap.clear();
treeManager.getSelectionModel().clearSelection();
}
});
p.add(addButton);
p.add(delButton);
}
private void add_actionPerform(){
if (!checkItem()) {
return;
}
try {
rightMap.clear();
TreePath[] treePath = treeManager.getSelectionModel().getSelectionPaths();
//当没有选中模块的时候
if (treePath == null) {
new RoleRightClientDelegate(LogonApplication.getUserEntityObject()).saveRoleRight(new RoleRightObject[0],curRole.getId(),LogonApplication.getUserEntityObject().getUserName());
} else {
for(int i = 0;i < treePath.length;i++){
VCIBaseTreeNode node = (VCIBaseTreeNode)treePath[i].getLastPathComponent();
Object obj = node.getObj();
if(obj instanceof String){//如果是root节点,则保存所有模块的权限
getRightValue(node,false);//向下获取所有模块的权限值
}else if(obj instanceof FunctionObject){
getRightValue(node,true);//向上处理
getRightValue(node,false);//向下处理(包含当前节点)
}else if(obj instanceof FuncOperationObject){
VCIBaseTreeNode parentNode = (VCIBaseTreeNode)node.getParent();
String funcId = ((FunctionObject)parentNode.getObj()).getId();
getRightValue(parentNode,true);//向上处理该操作父级的上级模块权限(不包含父节点)
if(!rightMap.containsKey(funcId)){
RoleRightObject roleRightObj = new RoleRightObject();
roleRightObj.setFuncId(funcId);
roleRightObj.setRightType((short)1);
roleRightObj.setRightValue(countRightValue(parentNode,false));//没有操作的模块权限值存储为0
roleRightObj.setRoleId(curRole.getId());
roleRightObj.setCreateUser(currentUserName);
roleRightObj.setCreateTime(new Date());
roleRightObj.setModifyUser(currentUserName);
roleRightObj.setModifyTime(new Date());
roleRightObj.setLicensor("");
rightMap.put(funcId, roleRightObj);
}
}
}
/**上面处理完成后,循环遍历取出MAP里的对象进行保存**/
RoleRightObject[] roleRightObjs = new RoleRightObject[rightMap.size()];
Set objSet = rightMap.keySet();
Iterator it = objSet.iterator();
int i = 0;
while(it.hasNext()){
roleRightObjs[i++] = rightMap.get(it.next());
}
boolean res = new RoleRightClientDelegate(LogonApplication.getUserEntityObject()).saveRoleRight(roleRightObjs,curRole.getId(),currentUserName);
if(res){
VCIOptionPane.showMessage(LogonApplication.frame, "功能模块授权成功!");
}
}
}catch (VCIException e1) {
e1.printStackTrace();
VCIOptionPane.showError(LogonApplication.frame, "RMIPFramework", e1);
}
}
/**
* 获取权限
* @param isUp 是否是向上获取,如果是向上获取,传进来的必然是模块节点,且上级模块必然是没有选中
*/
private void getRightValue(VCIBaseTreeNode node,boolean isUp){
if(isUp){//向上获取,存储每个上级模块的权限值
VCIBaseTreeNode parentNode = (VCIBaseTreeNode)node.getParent();
while(!"root".equals(parentNode.getObj())){
String funcId = ((FunctionObject)parentNode.getObj()).getId();
RoleRightObject obj = null;
if(!rightMap.containsKey(funcId)){
obj = new RoleRightObject();
obj.setFuncId(funcId);
obj.setRightType((short)1);
obj.setRightValue(1);//没有操作的模块权限值存储为0
obj.setRoleId(curRole.getId());
obj.setCreateUser(currentUserName);
obj.setCreateTime(new Date());
obj.setModifyUser(currentUserName);
obj.setModifyTime(new Date());
obj.setLicensor("");
}else{
obj = rightMap.get(funcId);
if (obj == null) {
obj = new RoleRightObject();
obj.setFuncId(funcId);
obj.setRightType((short)1);
obj.setRightValue(1);//没有操作的模块权限值存储为0
obj.setRoleId(curRole.getId());
obj.setCreateUser(currentUserName);
obj.setCreateTime(new Date());
obj.setModifyUser(currentUserName);
obj.setModifyTime(new Date());
obj.setLicensor("");
}else {
obj.setRightValue(1);
}
}
rightMap.put(funcId, obj);
parentNode = (VCIBaseTreeNode)parentNode.getParent();
}
}else{//向下获取,无需判断是否选中,但需要判断其子级是否是操作
//先存储当前节点
String funcId = "";
if(node.getObj() instanceof String){
funcId = (String)node.getObj();
}else if(node.getObj() instanceof FunctionObject){
funcId = ((FunctionObject)node.getObj()).getId();
}
if(!isChildOperate(node)){//子节点不是操作
if(!rightMap.containsKey(funcId)&&!funcId.equals("root")){
RoleRightObject roleRightObj = new RoleRightObject();
roleRightObj.setFuncId(funcId);
roleRightObj.setRightType((short)1);
roleRightObj.setRightValue(0);//没有操作的模块权限值存储为0
roleRightObj.setRoleId(curRole.getId());
roleRightObj.setCreateUser(currentUserName);
roleRightObj.setCreateTime(new Date());
roleRightObj.setModifyUser(currentUserName);
roleRightObj.setModifyTime(new Date());
roleRightObj.setLicensor("");
rightMap.put(funcId, roleRightObj);
}
for(int i = 0;i < node.getChildCount();i++){
//对每个子向下递归遍历
getRightValue((VCIBaseTreeNode)node.getChildAt(i),false);
}
}else{//子节点是操作
if(!rightMap.containsKey(funcId)){
RoleRightObject roleRightObj = new RoleRightObject();
roleRightObj.setFuncId(funcId);
roleRightObj.setRightType((short)1);
roleRightObj.setRightValue(countRightValue(node,true));//没有操作的模块权限值存储为0
roleRightObj.setRoleId(curRole.getId());
roleRightObj.setCreateUser(currentUserName);
roleRightObj.setCreateTime(new Date());
roleRightObj.setModifyUser(currentUserName);
roleRightObj.setModifyTime(new Date());
roleRightObj.setLicensor("");
rightMap.put(funcId, roleRightObj);
}
}
}
}
/**
* 传入直接挂接操作的模块的节点,计算该节点的权限值
* @param node 模块节点
* @param isAll 是否子级全部选中
* @return
*/
private long countRightValue(VCIBaseTreeNode node,boolean isAll){
long value = 0;
for(int i = 0;i < node.getChildCount();i++){
VCIBaseTreeNode childNode = (VCIBaseTreeNode)node.getChildAt(i);
if(isAll || treeManager.getSelectionModel().isPathSelected(new TreePath(childNode.getPath()))){
FuncOperationObject obj = (FuncOperationObject)childNode.getObj();
value += (long)Math.pow(2, obj.getNumber());//累计加上各个操作的权限值
}
}
return value;
}
/**
* 判断子级是否是操作
* @param node
* @return
*/
private boolean isChildOperate(VCIBaseTreeNode node){
if(node.getChildCount() > 0){
VCIBaseTreeNode childNode = (VCIBaseTreeNode)node.getChildAt(0);
if(childNode.getObj() instanceof FuncOperationObject){
return true;
}
}
return false;
}
/**
* 内容项
*
* @return
*/
public void contentItem(JPanel contentPanel) {
top.setPreferredSize(new Dimension(60,2));
scrollTree = new JScrollPane();
bottom.setPreferredSize(new Dimension(60,2));
contentPanel.setLayout(new BorderLayout());
contentPanel.add(roleListLab);
contentPanel.add(scrollTree);
}
public void roleList(String searchText) {
setRoleList(searchText);
roleList.setCellRenderer(new ListLabelCellRender());
roleList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
roleList.getSelectedValue();
roleList.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
RoleObject roleObj = (RoleObject)roleList.getSelectedValue();
curRole = roleObj;
tree.clearSelection();
treeManager.getSelectionModel().clearSelection();
initRoleRight(roleObj.getId());
}
});
setComponentPopupMenu(roleList,getPopupMenu());
leftPanel.getViewport().add(roleList);
}
/**
* 角色刷新功能的添加
* Description:
*
* @author 李刚
* @time 2012-7-20
*/
private void refreshRole() {
roleList("");
treeManager.getSelectionModel().clearSelection();
}
/**查询满足条件的角色信息**/
private void searchRoleList() {
String search = this.searchTxt.getText().trim();
roleList(search);
treeManager.getSelectionModel().clearSelection();
}
/**
* 右键菜单
* @param parent
* @param menu
*/
private void setComponentPopupMenu(final java.awt.Component parent,
final javax.swing.JPopupMenu menu) {
parent.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseReleased(java.awt.event.MouseEvent e) {
int i = e.getButton();
if(i == 3) {//鼠标右键
popupMenu.removeAll();
popupMenu.add(refMenuItem);
menu.show(parent, e.getX(), e.getY());
}
}
});
}
/**
* 初始化角色权限
* @param roleId
*/
public void initRoleRight(String roleId){
try {
RoleRightObject[] roleRightObjs = new RoleRightClientDelegate().getRoleRightList(roleId, LogonApplication.getUserEntityObject().getUserName());
Map rightMap = new HashMap();
for(RoleRightObject obj:roleRightObjs){
rightMap.put(obj.getFuncId(), obj.getRightValue());
}
visitAllTreeNode(rootNode,rightMap);
} catch (VCIException e) {
e.printStackTrace();
VCIOptionPane.showError(LogonApplication.frame, LocaleDisplay.getI18nString(e,"RMIPFramework", getLocale()));
}
}
/**
* 遍历整棵树进行权限选中
* @param node
* @param rightMap
*/
private void visitAllTreeNode(VCIBaseTreeNode node,Map rightMap){
for(int i = 0;i < node.getChildCount();i++){
VCIBaseTreeNode childNode = (VCIBaseTreeNode)node.getChildAt(i);
Object obj = childNode.getObj();
//如果是模块,则先判断是否有此模块权限,如果有,则判断下级模块及操作
if(obj instanceof FunctionObject){
String id = ((FunctionObject) obj).getId();
if(rightMap.containsKey(id)){
visitAllTreeNode(childNode,rightMap);
}
}else if(obj instanceof FuncOperationObject){
String id = ((FuncOperationObject) obj).getFuncId();
if(rightMap.containsKey(id)){
long rightValue = rightMap.get(id);
long nodeValue = ((FuncOperationObject) obj).getNumber();
//long preValue = (long)Math.pow(2, nodeValue);
long preValue = (rightValue >> nodeValue) & 1;
//进行位与操作,如果相等则表示具有当前操作的权限
//if(preValue == (preValue & rightValue)){
if (preValue == 1) {
treeManager.getSelectionModel().addSelectionPath(new TreePath(childNode.getPath()));
}
}
}
}
}
//右键菜单
public JPopupMenu getPopupMenu() {
if (popupMenu == null) {
popupMenu = new JPopupMenu();
}
return popupMenu;
}
/**
* 给角色列表赋值
*/
private void setRoleList(String searchText) {
try {
RoleObject[] roleObjs = rightManagementClient.fetchRoleInfoByUserType(LogonApplication.getUserEntityObject().getUserName());// 取得角色信息
if(!"".equals(searchText)) {
List list = new LinkedList();
for(RoleObject roleObj : roleObjs) {
if(roleObj.getName().indexOf(searchText) != -1) {
list.add(roleObj);
}
}
roleList = new JList(list.toArray(new RoleObject[0]));
return ;
}
roleList = new JList(roleObjs);
} catch (VCIException e) {
e.printStackTrace();
VCIOptionPane.showError(LogonApplication.frame, LocaleDisplay.getI18nString(e,"RMIPFramework", getLocale()));
}
}
/**
* 提示信息框
*
* @param proValue
* 资源文件的值
* @param fileName
* 资源文件的名
* @param title
* 标题
*/
private void message(String proValue, String fileName) {
VCIOptionPane.showMessage(LogonApplication.frame,LocaleDisplay.getI18nString(proValue, fileName, getLocale()));
}
/**
* 校验
*
* @return
*/
public boolean checkItem() {
if (roleList.getSelectedValue() == null|| "null".equals(roleList.getSelectedValue())) {
message("rmip.framework.rightdistribution.moduleRight.roleListNotNull.message","RMIPFramework");
return false;
}
return true;
}
private static Map funMap = new LinkedHashMap();
// private ArrayList getModelIds() {
// ArrayList list = new ArrayList();
// for(String name : funMap.keySet()) {
// if("日志管理".equals(name) || "权限管理".equals(name) || "人员组织管理".equals(name)) {
// list.add(funMap.get(name));
// }
// }
//
// return list;
// }
@Override
public String getUserID() {
return logonUserId;
}
@Override
public String getRoleID() {
return logonRoleId;
}
@Override
public JPanel getModuleComponent() {
return this;
}
@Override
public String getModuleName() {
if (this.getFuncObj() != null && this.getFuncObj().getName() != null)
return this.getFuncObj().getName();
else if (moduleName != null && !moduleName.isEmpty())
return moduleName;
else
return this.getClass().getName();
}
@Override
public String getIconName() {
return iconName;
}
@Override
public String getModuleShowInfo() {
return moduleShowInfo;
}
// private boolean isSecurtyAdmin() {
// String roleName = getRoleByConf();
// String userName = LogonApplication.frame.getUserEntityObject().getUserName();
// try {
// UserObject userObj = new RightManagementClientDelegate().fetchUserInfoByName(userName);
// RoleObject[] roleObjs = new RightManagementClientDelegate().fetchRoleInfoByUserId(userObj.getId());
// for(RoleObject obj : roleObjs) {
// if(roleName.equals(obj.getName())) {
// return true;
// }
// }
// } catch (VCIError e) {
// e.printStackTrace();
// }
//
//
// return false;
// }
// private String getRoleByConf() {
// try {
// String result = new SystemCfgClientDelegate().getConfigValue("user.Sysadmin");
// return result;
// } catch (VCIException e) {
// e.printStackTrace();
// }
// return "";
// }
}