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

📄 orgemaildao.java

📁 使用spring ,hibernate 框架的稽查管理系统
💻 JAVA
字号:
package com.je.ims.dao;

import com.chttl.im.organization.*;
import java.util.List;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.je.ims.hibernate.*;

import java.util.*;
public class OrgEmailDAO extends HibernateDaoSupport {

	public OrgEmailDAO() {
		super();
		
	}
	//	删除所有记录,做实验用
	public void Delete(){
		getHibernateTemplate().deleteAll(getHibernateTemplate().loadAll(OrgEmail.class));
	}
	//	新增
	public void AddOrgEmail(OrgEmail oe){
		getHibernateTemplate().save(oe);
	}
	
	//	 更新
	public void UpdateOrgEmail(OrgEmail oe){
		getHibernateTemplate().update(oe);
	}
	
	//   刪除
	public void DeleteOrgEmail(OrgEmail oe){
		getHibernateTemplate().delete(oe);
	}
	
	//	通過主鍵得到對象
	public OrgEmail GetByPk(String OrgId,Long year){
		List l = getHibernateTemplate().find("from OrgEmail where id.orgId ='"+OrgId +"' and id.year="+year);
		if(l.size()!=1)
		{
			
			return null;
		}
		return (OrgEmail)l.get(0);
	}
	
	
	public List GetOrgIdByUserId(String userid){
		String hql = "select rl.orgId from RoleMember rm, Role rl ";
		hql +="where rm.id.roleId=rl.id.roleId and ";
		hql +="rm.id.roleTypeId = rl.id.roleTypeId and ";
		hql +="rm.id.userId = '" + userid + "'";
		List l = getHibernateTemplate().find(hql);
		return l;
	}
	
	//得到所有的机构
	public Vector GetALLUnit(int year){
		
		UnitHistoryBean uhb = new UnitHistoryBean();
		uhb.setYear(year);
		Vector vmyUnit = uhb.getOrgData();
		return vmyUnit;
	}
	// 將所有機關單位分成兩部分:已設定公用帳?柕暮臀丛O定公用帳?柕?
	public List[] SplitOrg(String userid,int year){
		OrgEmail orgemail;
		UnitHistory[] myUnit = this.GetAllSubUnits(userid,year);
		UnitHistory temp = null;
		List lunit = this.Distinct(myUnit);
		List l = getHibernateTemplate().find("from OrgEmail where year =" + year);
		List[] larray = new List[2]; 
		larray[0] = new ArrayList();
		larray[1] = new ArrayList();
		int i,j;
		for (i=0;i<lunit.size();i++){
			temp = (UnitHistory)lunit.get(i);
			for (j=0;j<l.size();j++){
				orgemail = (OrgEmail)l.get(j);
				if (orgemail.getId().getOrgId().equals(temp.getUnitDN())){
					larray[0].add(orgemail);
					break;
				}
			}
			if (j==l.size()){
				larray[1].add(temp);
			}
		}
		return larray;
	}
	
	//	通過用戶名得到他所在權限内的所有機關單位
	public UnitHistory[] GetAllSubUnits(String userid,int year){
		Vector vectorUnit;
		Set setAll = new HashSet();
		String temp;
		UnitHistoryBean unitHistoryBean = new UnitHistoryBean();
		unitHistoryBean.setYear(year);
		List l = this.GetOrgIdByUserId(userid);
		for (int i=0;i<l.size();i++){
			temp = (String)l.get(i);
			vectorUnit = unitHistoryBean.getAllSubUnits(temp);
			setAll.addAll(vectorUnit);
		}
		
		UnitHistory[] myUnit = new UnitHistory[setAll.size()];
		int i = 0;
		Iterator it = setAll.iterator();
		while(it.hasNext()){
			
			myUnit[i] = (UnitHistory)it.next();
			i++;
		}
		return myUnit;
	} 
	
	public List Distinct(UnitHistory[] myUnit){
		List result = new ArrayList();
		UnitHistory temp = null;
		int i,j;
		for (i=0;i<myUnit.length;i++){
			for (j=0;j<result.size();j++){
				temp = (UnitHistory)result.get(j);
				if (myUnit[i].getUnitDN().equals(temp.getUnitDN())){
					break;
				}
				
			}
			if(j==result.size()){
				result.add(myUnit[i]);
			}
		}
		return result;
	}
	
//	得到下属机构单位的公用账号
	public List[] GetAllSubUnitsByUnit(String unit,int year){
		OrgEmail orgemail;
		UnitHistoryBean unitHistoryBean = new UnitHistoryBean();
		unitHistoryBean.setYear(year);
		UnitHistory hunit = null;
		Vector myUnit = unitHistoryBean.getAllSubUnits(unit);
		List l = getHibernateTemplate().find("from OrgEmail where year =" + year);
		List[] larray = new List[2]; 
		larray[0] = new ArrayList();
		larray[1] = new ArrayList();
		int i,j;
		for (i=0;i<myUnit.size();i++){
			hunit = (UnitHistory)myUnit.get(i);
			for (j=0;j<l.size();j++){
				orgemail = (OrgEmail)l.get(j);
				if (orgemail.getId().getOrgId().equals(hunit.getUnitDN())){
					larray[0].add(orgemail);
					break;
				}
			}
			if (j==l.size()){
				larray[1].add(hunit);
			}
		}
		return larray;
	} 
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -