📄 loginlogicimpl.java
字号:
buffer.append("mpmenu");
buffer.append(index);
buffer.append(".addItem(new mMenuItem('");
buffer.append(itemMenu.attributeValue("caption"));
buffer.append("','");
String action = itemMenu.attributeValue("action");
if(action==null||action.equals("")){
action="alert('空链接')";
}
buffer.append(StringUtil.replace(action,"'","\\'"));
if (action != null && action.indexOf("(")>0) {
buffer.append("','javascript',false,'"
+ itemMenu.attributeValue("caption")
+ "',null,'','','',''));\n");
} else {
buffer.append("','iframe',false,'"
+ itemMenu.attributeValue("caption")
+ "',null,'','','',''));\n");
}
}
} else if (itemMenuName.equals("menuSeperator")) {
buffer.append("mpmenu");
buffer.append(index);
buffer.append(".addItem(new mMenuItem(null,null,null,true));\n");
}
}
}
}
return buffer.toString();
}
/**
* 普通用户登陆
* 返回值 0:帐户不存在
* 1:登陆成功
* 2:帐户未启用
* 3:密码错误
* 4:帐户被禁用
* 5:角色被禁用
* 6:帐户为删除状态
*/
public int checkUser(LoginUser loginUser, Map<String,Object> map) {
Userinfo userinfo = new Userinfo();
userinfo.setUsercode(loginUser.getLoginUserCode());
Userinfo userinfo_temp = userCodeDao.getUserCodeDetailByCode(userinfo);
if(userinfo_temp==null)return 0; //用户帐户不存在
if(userinfo_temp.getState().equals("0"))return 2;//帐户未启用
if(userinfo_temp.getState().equals("2"))return 4;//帐户被禁用
if(userinfo_temp.getState().equals("3"))return 6;//帐户为删除状态
if(userinfo_temp.getPassword().equalsIgnoreCase(new MD5().getMD5String(loginUser.getLoginPassword()))){
List list = roleDao.getRoleinfoListByUserID(userinfo_temp);
if(list!=null&&!list.isEmpty()){
Set<String> roleidset = new HashSet<String>();
for(Object obj:list){
Roleinfo roleinfo = (Roleinfo)obj;
if(roleinfo.getState().equals("1")){//角色启用
roleidset.add(roleinfo.getRoleid());
}
}
if(!roleidset.isEmpty()){
loginUser.setLoginUserId(userinfo_temp.getUserid());
loginUser.setLoginUserName(userinfo_temp.getUsername());
loginUser.setLoginPassword(userinfo_temp.getPassword());
loginUser.setLoginUserCode(userinfo_temp.getUsercode());
loginUser.setLoginRoleId(((Roleinfo)list.get(0)).getRoleid());
loginUser.setLoginRoleName(((Roleinfo)list.get(0)).getRolename());
loginUser.setLoginRoleState(((Roleinfo)list.get(0)).getState());
List menuList = moduleDao.findMenuByRoleIDs(roleidset);//能访问的所有菜单集合列表
map.put("menuList", createMenuItems(menuList));//创建访问菜单
map.put("actionSet", createActions(menuList)); //创建菜单下访问权限路径
return 1;//登陆成功
}
return 5;//角色被禁用了----没有一个可用角色
}
throw new RuntimeException("该帐户角色不存在?");
}
return 3;//密码错误
}
/**
* 创建普通用户菜单
* @param list
* @return
*/
private String createMenuItems(List menulist) {
StringBuffer buffer = new StringBuffer();
if(menulist!=null){
int index = 1; //菜单栏索引
int subIndex= 0; //子菜单索引
for(int i = 0 ; i < menulist.size() ; i++, index++){
Menuinfo menuinfo = (Menuinfo)menulist.get(i);
if(menuinfo.getMenuinfo().getMenuid()==null){//顶级菜单
buffer.append("mpmenu");
buffer.append(index);
buffer.append("=new mMenu('");
buffer.append(menuinfo.getMenuname());
buffer.append("','','iframe','','','','');\n");
for(int j = 0 ; j < menulist.size() ; j++){
Menuinfo subMenuinfo = (Menuinfo)menulist.get(j);
String fatherid = subMenuinfo.getMenuinfo().getMenuid();
if(fatherid!=null&&fatherid.equals(menuinfo.getMenuid())){
if(subMenuinfo.getMenutype().equals("1")){//有子菜单
subIndex++;
buffer.append("msub");
buffer.append(subIndex);
buffer.append("=new mMenuItem('");
buffer.append(subMenuinfo.getMenuname());
buffer.append("','','iframe',false,'','1','','','','');\n");
for(int k = 0 ; k<menulist.size() ; k++){
Menuinfo subItemMenuinfo = (Menuinfo)menulist.get(k);
String itemfatherid = subItemMenuinfo.getMenuinfo().getMenuid();
if(itemfatherid!=null&&itemfatherid.equals(subMenuinfo.getMenuid())){
if(subItemMenuinfo.getMenutype().equals("3")){//分割线
buffer.append("msub");
buffer.append(subIndex);
buffer.append(".addsubItem(new mMenuItem(null,null,null,true));\n");
}else{
buffer.append("msub");
buffer.append(subIndex);
buffer.append(".addsubItem(new mMenuItem('");
buffer.append(subItemMenuinfo.getMenuname());
buffer.append("','");
String action = subItemMenuinfo.getMenuurl();
if(action==null||action.equals("")){
action="alert('空链接')";
}
buffer.append(StringUtil.replace(action,"'","\\'"));
if (action != null && action.indexOf("(")>0) {
buffer.append("','javascript',false,'"
+ subItemMenuinfo.getMenuname()
+ "',null,'','','',''));\n");
} else {
buffer.append("','iframe',false,'"
+ subItemMenuinfo.getMenuname()
+ "',null,'','','',''));\n");
}
}
}
}
buffer.append("mpmenu");
buffer.append(index);
buffer.append(".addItem(");
buffer.append("msub" + subIndex);
buffer.append(");\n");
}else if(subMenuinfo.getMenutype().equals("2")){ //可执行菜单
buffer.append("mpmenu");
buffer.append(index);
buffer.append(".addItem(new mMenuItem('");
buffer.append(subMenuinfo.getMenuname());
buffer.append("','");
String action = subMenuinfo.getMenuurl();
if(action==null||action.equals("")){
action="alert('空链接')";
}
buffer.append(StringUtil.replace(action,"'","\\'"));
if (action != null && action.indexOf("(")>0) {
buffer.append("','javascript',false,'"
+ subMenuinfo.getMenuname()
+ "',null,'','','',''));\n");
} else {
buffer.append("','iframe',false,'"
+ subMenuinfo.getMenuname()
+ "',null,'','','',''));\n");
}
}else{//分割线
buffer.append("mpmenu");
buffer.append(index);
buffer.append(".addItem(new mMenuItem(null,null,null,true));\n");
}
}
}
}
}
}
return buffer.toString();
}
/**
* 创建普通用户权限列表
* @param menuList
* @return
*/
private Set createActions(List menuList) {
Set<String> actionSet = new HashSet<String>();
if(menuList==null||menuList.isEmpty())return actionSet;
Set<String> menuidset = new HashSet<String>();
for(Object menuidList: menuList){
Menuinfo menuinfo = (Menuinfo)menuidList;
menuidset.add(menuinfo.getMenuid());
}
List list = actionDao.getActioninfoByMenuidSet(menuidset);
if(list!=null){
for(Object actions:list){
Action action = (Action)actions;
actionSet.add("/"+action.getActionname());
}
}
return actionSet;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -