📄 orgemaildao.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 + -