📄 roleorgdao.java
字号:
package com.afuer.hib.dao.orgModel.Dao;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.dao.DataAccessException;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.afuer.hib.dao.orgModel.Idao.IRoleOrgDao;
import com.afuer.hib.form.RoleInfo;
import com.afuer.hib.form.Roleorg;
import com.afuer.hib.form.UserInfo;
import com.afuer.hib.form.Userrole;
public class RoleOrgDao extends HibernateDaoSupport implements IRoleOrgDao {
private static final Log log = LogFactory.getLog(RoleInfoDao.class);
public Serializable saveRoleOrgDao(Roleorg ro) throws DataAccessException {
// TODO Auto-generated method stub
return getHibernateTemplate().save(ro);
}
public List find(final Integer orgid) throws DataAccessException {
// TODO Auto-generated method stub
List temp = new ArrayList();
List list = (List) this.getHibernateTemplate().execute(
new HibernateCallback() {
public Object doInHibernate(Session session) {
Query query = session
.createQuery("from RoleInfo where scope='0'");
return query.list();
}
});
Iterator it = list.iterator();
// 查找角色信息列表
while (it.hasNext()) {
RoleInfo ro = (RoleInfo) it.next();
if (find(orgid, ro.getId()).size() == 0) {
final Integer roleids = ro.getId();
RoleInfo ri = (RoleInfo) this.getHibernateTemplate().execute(
new HibernateCallback() {
public Object doInHibernate(Session session) {
Query query = session
.createQuery("from RoleInfo where id='"
+ roleids + "' and scope='0'");
return (RoleInfo) query.uniqueResult();
}
});
temp.add(ri);
}
}
return temp;
}
public List find(final Integer orgid, final Integer roleid)
throws DataAccessException {
// TODO Auto-generated method stub
return (List) this.getHibernateTemplate().execute(
new HibernateCallback() {
public Object doInHibernate(Session session) {
Query query = session
.createQuery("from Roleorg where orgid="
+ orgid + " and roleid=" + roleid);
return query.list();
}
});
}
public List findRolesAll(final Integer orgid) throws DataAccessException {
return (List) this.getHibernateTemplate().execute(
new HibernateCallback() {
public Object doInHibernate(Session session) {
Query query = session
.createQuery("from Roleorg where orgid="
+ orgid);
return query.list();
}
});
}
//查找该组织下的用户
public List findUsersbyrolebyorg(final Integer orgid)
throws DataAccessException {
List list = findRolesAll(orgid);
System.err.println("rolesList:"+list.size());
List temp = new ArrayList();
Iterator it = list.iterator();
while (it.hasNext()) {
Roleorg ro = (Roleorg)it.next();
temp.addAll(findUsersByrole(ro.getRoleid()));
}
System.err.println("xxxxxxxxxxxxxxtemp:"+temp.size());
return temp;
}
public List findUsersByrole(final Integer roleid)
throws DataAccessException {
List list=(List) this.getHibernateTemplate().execute(
new HibernateCallback() {
public Object doInHibernate(Session session) {
Query query = session
.createQuery("from Userrole where roleid="
+ roleid);
return query.list();
}
});
List temp=new ArrayList();
System.err.println("sddsfdfdsfd:"+list.size());
Iterator it = list.iterator();
while(it.hasNext())
{
Userrole ur=(Userrole)it.next();
UserInfo ui= getUserInfo(ur.getUserid());
System.err.println("xxxxxxxxxxxxxx:"+ui.getName());
temp.add(ui);
}
return temp;
}
public UserInfo getUserInfo(final Integer userid)throws DataAccessException {
return (UserInfo)this.getHibernateTemplate().execute(
new HibernateCallback() {
public Object doInHibernate(Session session) {
Query query = session
.createQuery("from UserInfo where id='"
+ userid + "'");
return (UserInfo) query.uniqueResult();
}
});
}
public List findRolesByOrgid(final Integer orgid)
throws DataAccessException {
// TODO Auto-generated method stub
List list = findRolesAll(orgid);
List list1 = new ArrayList();
Iterator it = list.iterator();
// 查找角色信息列表
while (it.hasNext()) {
Roleorg ro = (Roleorg) it.next();
final Integer id = ro.getRoleid();
System.err.println("diddd:" + id);
RoleInfo ri = (RoleInfo) this.getHibernateTemplate().execute(
new HibernateCallback() {
public Object doInHibernate(Session session) {
Query query = session
.createQuery("from RoleInfo where id='"
+ id + "'");
return (RoleInfo) query.uniqueResult();
}
});
list1.add(ri);
}
return list1;
}
public void deleteRoleInOrg(final Integer orgid, final Integer roleid)
throws DataAccessException {
// TODO Auto-generated method stub
log.warn("user deleteRoleInOrg.............................");
this.getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(Session session) {
Query query = session
.createQuery("delete Roleorg where orgid =" + orgid
+ " and roleid="+roleid);
query.executeUpdate();
return null;
}
});
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -