package com.tiger.oa.action; import javax.annotation.Resource; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Controller; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; import com.opensymphony.xwork2.ModelDriven; import com.tiger.oa.dto.AclDTO; import com.tiger.oa.manager.ModuleManager; import com.tiger.oa.manager.RoleManager; import com.tiger.oa.manager.UserManager; import com.tiger.oa.model.ACL; import com.tiger.oa.util.PagerModel; import com.tiger.oa.util.SystemContext; import com.tiger.oa.util.SystemException; @Controller("aclAction") @Scope("prototype") public class AclAction extends ActionSupport implements ModelDriven{ private RoleManager roleManager; private UserManager userManager; private ModuleManager moduleManager; private AclDTO aclDTO = new AclDTO(); public RoleManager getRoleManager() { return roleManager; } @Resource public void setRoleManager(RoleManager roleManager) { this.roleManager = roleManager; } public UserManager getUserManager() { return userManager; } @Resource public void setUserManager(UserManager userManager) { this.userManager = userManager; } public ModuleManager getModuleManager() { return moduleManager; } @Resource public void setModuleManager(ModuleManager moduleManager) { this.moduleManager = moduleManager; } //打开ACL授权界面 //接收的参数:principalType,principalSn //输出的参数:模块列表、角色或用户对象 @Override public String execute() throws Exception { //如果主体类型是角色 if(ACL.TYPE_ROLE.equals( aclDTO.getPrincipalType())){ ActionContext.getContext().put("role", roleManager.findRole(aclDTO.getPrincipalSn())); }else if(ACL.TYPE_USER.equals(aclDTO.getPrincipalType())){ ActionContext.getContext().put("user", userManager.findUser(aclDTO.getPrincipalSn())); }else{ throw new SystemException("无效的主体类型!!!!"); } //获得所有顶级模块列表 SystemContext.setOffset(0); SystemContext.setPagesize(Integer.MAX_VALUE); PagerModel pm = moduleManager.searchModules(0); ActionContext.getContext().put("modules", pm.getDatas()); return "index"; } public AclDTO getAclDTO() { return aclDTO; } public void setAclDTO(AclDTO aclDTO) { this.aclDTO = aclDTO; } @Override public Object getModel() { return aclDTO; } }

校园网 LV9
2024年8月4日
carloscarlos LV1
2023年9月13日
15029223037 LV1
2023年7月18日
linmou LV8
2023年3月19日
微信网友_6376279687794688 LV1
2023年3月5日
快乐的程序员 LV25
2023年1月21日
微信网友_6292700852981760 LV1
2023年1月5日
15342201772 LV9
2022年12月10日
swd287797983 LV1
2022年12月6日
wazp4071 LV1
2022年6月24日