package com.jiuqi.mobile.nigo.comeclose.manager.base;
import java.sql.SQLException;
import java.util.List;
import com.jiuqi.mobile.nigo.comeclose.bean.base.UserBean;
import com.jiuqi.mobile.nigo.comeclose.bean.base.UserRolesBean;
import com.jiuqi.mobile.nigo.comeclose.exception.NiGoException;
import com.jiuqi.mobile.nigo.comeclose.manager.ISimpleManger;
import com.jiuqi.mobile.nigo.comeclose.manager.ManagerAnnotation;
import com.jiuqi.mobile.nigo.comeclose.portal.PortalAnnotation;
import com.jiuqi.mobile.nigo.comeclose.portal.PortalMethodAnnctation;
@ManagerAnnotation(implClass = "com.jiuqi.mobile.nigo.biz.base.manager.UserRolesManagerImpl")
@PortalAnnotation(implClass = "com.jiuqi.mobile.nigo.biz.base.manager.UserRolesManagerImpl")
public interface IUserRolesManager extends ISimpleManger<UserRolesBean>{
/**
* @Title: getUserRolesByUserGuid
* gl
* @Description: 根据用户Guid获取用户拥有的角色信息
* @param @param userGuid 用户guid
* @param @return 设定文件
* @return List<UserRolesBean> 返回类型
* @throws
*/
List<UserRolesBean> getUserRolesByUserGuid(String userGuid);
@Override
@PortalMethodAnnctation
public void create(UserRolesBean bean) throws NiGoException;
/**
* @Title: updateOldRoleVersion
* @Description: 修改角色版本号为最新角色版本号
* @param @param roleGuid 角色guid
* @param @param roleVersion 最新角色版本号(与角色表保持一致)
* @return void 返回类型
* @throws
*/
//void updateOldRoleVersion(String roleGuid,String userGuid,int roleVersion);
void updateOldRoleVersion(List<UserRolesBean> userRolesBeans);
/**
* @throws SQLException
* @throws DBException
* @Title: createUserRoles
* @Description: 生成用户角色信息
* @param @param roles 用户选择角色数组
* @param @param userGuid
* @param @param sessionId 设定文件
* @return void 返回类型
* @throws
*/
@PortalMethodAnnctation
String createUserRoles(String roles[],UserBean userBean,String ...sessionId) throws NiGoException, SQLException;
/**
* @throws DBException
* @Title: saveChangeRole
* @Description: 保存用户更改后的角色
* @param @param userGuid
* @param @param roleGuid
* @param @return 设定文件
* @return String 返回类型
* @throws
*/
String saveChangeRole(UserBean userBean,String roleGuids) throws NiGoException;
/**
* @Title: initUserRolesBean
* @Description: 初始化用户角色、修改用户表中用户信息rolecode为-1 (用户管理中有使用)
* @param @param userBean 设定文件
* @return void 返回类型
* @throws
*/
void initUserRolesBean(UserBean userBean);
}