📄 usermanagebean.java
字号:
/*$Id: UserManageBean.java,v 1.1 2008/07/15 03:38:23 liqi Exp $ *-------------------------------------- * Apusic (Kingdee Middleware) *--------------------------------------- * Copyright By Apusic ,All right Reserved * author date comment * chenhongxin 2008-4-14 Created*/package org.operamasks.example.ejb.hr.litebean.module;import java.util.ArrayList;import java.util.List;import java.util.UUID;import javax.faces.model.SelectItem;import org.operamasks.example.ejb.hr.entity.Role;import org.operamasks.example.ejb.hr.entity.User;import org.operamasks.example.ejb.hr.service.ServiceBean;import org.operamasks.faces.annotation.Accessible;import org.operamasks.faces.annotation.Action;import org.operamasks.faces.annotation.Bind;import org.operamasks.faces.annotation.DataModel;import org.operamasks.faces.annotation.ManagedBean;import org.operamasks.faces.annotation.ManagedBeanScope;import org.operamasks.faces.annotation.ManagedProperty;import org.operamasks.faces.annotation.Required;import org.operamasks.faces.annotation.SelectItems;import org.operamasks.faces.component.grid.impl.UIDataGrid;import org.operamasks.faces.component.layout.impl.UIWindow;/** * 用户管理页面的托管Bean * @author chenhongxin */@ManagedBean(name="module.userManageBean", scope=ManagedBeanScope.SESSION)public class UserManageBean extends BeforeRenderBaseBean { /** * 操作记录标识 */ private Operation curOperation = Operation.NOTHING; /** * 注入服务提供Bean,该Bean提供各种的业务操作对象 */ @ManagedProperty("#{serviceBean}") private ServiceBean service; /** * 绑定页面的DataGrid组件 */ @Bind(id="userDataGrid", attribute="binding") private UIDataGrid userDataGrid; /** * 绑定页面的Window组件 */ @Bind(id="detailDialog", attribute="binding") private UIWindow detailDialog; /** * 角色Combo下拉的子项 */ @Accessible private SelectItem[] items = new SelectItem[0]; /** * 绑定角色Combo,指定下拉子项为items和Required验证失败的错误提示 */ @Bind(id="roleCombo") @SelectItems(source="#{this.items}") @Required(message = "#{this.getMessages().get('required')}") private String roleCombo; /** * 绑定明细编辑框里的用户名称输入域,并指定Required验证失败的提示信息 */ @Bind(id="userName", attribute="value") @Required(message = "#{this.getMessages().get('required')}") private String userName; /** * 绑定明细编辑框里的用户密码输入域,并指定Required验证失败的提示信息 */ @Required @Bind(id="password", attribute="value") private String password; /** * DataGrid绑定数据的获取 * @return 绑定数据的List集合 */ @DataModel(id="userDataGrid") private List<User> getUserDataGridValues() { return service.getUserService().listUser(); } /** * 绑定添加按钮的点击击事件 */ @Action(id="add") public void add() { List<Role> roles = service.getRoleService().listRole(); List<SelectItem> tmpList = new ArrayList<SelectItem>(); for(Role role : roles) { tmpList.add(new SelectItem(role.getId(), role.getName())); } items = tmpList.toArray(new SelectItem[0]); curOperation = Operation.ADD; detailDialog.show(); } /** * 绑定修改按钮的点击事件 */ @Action(id="modify") public void modify() { User selectedUser = (User)userDataGrid.getSelectedRowData(); if(selectedUser != null) { userName = selectedUser.getName(); password = selectedUser.getPassword(); List<Role> roles = service.getRoleService().listRole(); List<SelectItem> tmpList = new ArrayList<SelectItem>(); for(Role role : roles) { tmpList.add(new SelectItem(role.getId(), role.getName())); } roleCombo = selectedUser.getRole().getId(); items = tmpList.toArray(new SelectItem[0]); curOperation = Operation.MODIFY; detailDialog.show(); } } /** * 绑定删除按钮的点击事件 */ @Action(id="del") public void del() { User selectedUser = (User)userDataGrid.getSelectedRowData(); if(selectedUser != null) { service.getUserService().removeUser(selectedUser); userDataGrid.reload(); } curOperation = Operation.NOTHING; } /** * 绑定取消按钮的点击事件,使用immediate=true跳过数据验证 */ @Action(id="cancel", immediate=true) public void cancel() { userName = ""; password = ""; roleCombo = ""; items = new SelectItem[0]; curOperation = Operation.NOTHING; detailDialog.close(); } /** * 绑定确定按钮的点击事件 */ @Action(id="ok") public void ok(){ Role role = service.getRoleService().findById(roleCombo); if(role != null) { if(curOperation == Operation.ADD) { User newOne = new User(); newOne.setId(UUID.randomUUID().toString()); newOne.setName(userName); newOne.setPassword(password); newOne.setRole(role); service.getUserService().createUser(newOne); userDataGrid.reload(); } else if(curOperation == Operation.MODIFY) { User selectedUser = (User)userDataGrid.getSelectedRowData(); if(selectedUser != null) { selectedUser.setName(userName); selectedUser.setPassword(password); selectedUser.setRole(role); service.getUserService().modifyUser(selectedUser); userDataGrid.reload(); } } } cancel(); } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -