⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rolesaction.java

📁 基于struct结构的jsp
💻 JAVA
字号:
package com.ntsky.bbs.action;

import org.apache.struts.action.*;
import javax.servlet.http.*;
import org.apache.log4j.Logger ;

import java.util.StringTokenizer;
import java.util.*;
import org.apache.commons.beanutils.PropertyUtils;

import com.ntsky.bbs.service.Roles;
import com.ntsky.xml.bbs.XMLCreator;
import com.ntsky.xml.bbs.RolesXML;
import com.ntsky.bbs.service.RolesUtil;
import com.ntsky.bbs.service.User;
import com.ntsky.bbs.action.Constant;
import com.ntsky.bbs.service.UserUtil;
import com.ntsky.bbs.form.RolesActionForm;

import com.ntsky.xml.bbs.JavaScriptXML;
import com.ntsky.bbs.service.Proxy;
import com.ntsky.bbs.service.UserProxy;
import com.ntsky.bbs.service.UserFactory;


/**
 * <p>Title: Ntsky OpenSource BBS</p>
 * <p>Description: 角色信息</p>
 * <p>Copyright: Copyright (c) 2004</p>
 * <p>Company: WWW.FM880.COM</p>
 * @author 姚君林
 * @version 1.0
 */

public class RolesAction extends Action {
    private final static Logger logger = Logger.getLogger(RolesAction.class);
    public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception{
        HttpSession session = httpServletRequest.getSession();
        XMLCreator xmlCreator = XMLCreator.getInstance();
        JavaScriptXML jsXML = xmlCreator.getJavaScriptXML();
        // session判断
        String admin = (String)session.getAttribute(Constant.ADMIN_KEY);
        if(admin == null){
            httpServletRequest.setAttribute("javascript",jsXML.getJsInfo(1));
            return actionMapping.findForward("admin_logon");
        }

        /**
         * 察看权限
         */
        User users = UserFactory.getInstance().userInfo(admin);
        String usrRole = users.getUsrRole();
        Proxy proxy = new UserProxy();
        if (!proxy.isAction(usrRole, 30)) {
            httpServletRequest.setAttribute("javascript", jsXML.getJsInfo(2));
            return actionMapping.findForward("admin_logon");
        }

        String action = httpServletRequest.getParameter("action");
        String roleId = httpServletRequest.getParameter("roleId");

        RolesActionForm rolesActionForm = new RolesActionForm();
        httpServletRequest.setAttribute(actionMapping.getAttribute(), rolesActionForm);
        /**
         * 设置显示值
         */
        RolesXML rolesXML = XMLCreator.getInstance().getRolesXML();
        Collection rightsList = XMLCreator.getInstance().getRightsXML().getRightsXML();


        /**
         * 返回的公共部分
         */
        session.setAttribute("rightsList",rightsList);

        //列表的数据
        session.setAttribute("rolesXML",rolesXML.getRolesXML());

        //用户管理栏目 修改用户角色信息
        /**
         * 改变用户角色信息
         */
        if("changeRole".equals(action)){
            if (!proxy.isAction(usrRole, 17)) {
                httpServletRequest.setAttribute("javascript", jsXML.getJsInfo(2));
                return actionMapping.findForward("admin_logon");
            }
            logger.info("改变用户角色信息.....");
            User user = UserUtil.userInfo(httpServletRequest.getParameter("usrName"));
            rolesActionForm.setRoleRgtEnu(getStrEnu(user.getUsrRole()));
            return actionMapping.findForward("changeRole");
        }

        rolesActionForm.setAction(action);
        httpServletRequest.setAttribute("rolesPic",RolesUtil.rolesPic());
        //httpServletRequest.setAttribute("rolesList", RolesUtil.setRolesSel());
        /**
         * 添加情况
         */
        if((Constant.CREATE).equals(action)){
            if (!proxy.isAction(usrRole, 31)) {
                httpServletRequest.setAttribute("javascript", jsXML.getJsInfo(2));
                return actionMapping.findForward("admin_logon");
            }

            rolesActionForm.setRolePic("/images/level1.gif");
            rolesActionForm.setRoleId(rolesXML.getRoleId()+1);
            logger.info("成功mapping到权限信息设置");
            return actionMapping.findForward("continue");
        }
        /**
         * 修改情况
         */
        if((Constant.EDIT).equals(action)){
            if (!proxy.isAction(usrRole, 32)) {
                httpServletRequest.setAttribute("javascript", jsXML.getJsInfo(2));
                return actionMapping.findForward("admin_logon");
            }

            /**
             * roleId对应的rights的值
             */
            Roles roles = rolesXML.getSelRolesXML(Integer.parseInt(roleId));
            rolesActionForm.setRoleId(roles.getRoleId());
            rolesActionForm.setRoleName(roles.getRoleName());
            rolesActionForm.setRoleMin(roles.getRoleMin());
            rolesActionForm.setRolePic(roles.getRolePic());
            rolesActionForm.setRoleDesc(roles.getRoleDesc());
            rolesActionForm.setRoleRgtEnu(getStrEnu(roles.getRoleEnuStr()));
            return actionMapping.findForward("continue");
        }
        /**
         * 删除纪录
         */
        if((Constant.DELETE).equals(action)){
            if (!proxy.isAction(usrRole, 33)) {
                httpServletRequest.setAttribute("javascript", jsXML.getJsInfo(2));
                return actionMapping.findForward("admin_logon");
            }
            RolesXML role = new RolesXML();
            role.delRoles(Integer.parseInt(roleId));
            logger.info("删除纪录返回......");
            return actionMapping.findForward("delete");
        }
        if((Constant.FLUSH).equals(action)){
            return actionMapping.findForward("continue");
        }
        return actionMapping.findForward("continue");
        //throw new java.lang.UnsupportedOperationException("Method perform() not yet implemented.");
    }

    /**
     * 获得已有数据的数组
     * @param strEnu String
     * @return String[]
     */
    public String[] getStrEnu(String strEnu){
        StringTokenizer stringTokenizer = new StringTokenizer(strEnu, ",");
        String[] string = new String[stringTokenizer.countTokens()];

        logger.info(String.valueOf(string.length));

        int i = 0;
        while (stringTokenizer.hasMoreTokens()) {
            String str = stringTokenizer.nextToken();
            string[i] = str;
            i++;
        }
        return string;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -