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

📄 roleorgdao.java

📁 本平台是以web2.0为基本的标准
💻 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 + -