orgmanagerimpl.java

来自「这个主要是办公自动化系统的源代码」· Java 代码 · 共 64 行

JAVA
64
字号
package com.ygp.oa.managers.impl;

import java.util.List;

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

import com.ygp.oa.PagerModel;
import com.ygp.oa.managers.OrgManager;
import com.ygp.oa.managers.SystemException;
import com.ygp.oa.model.Organization;
//继承hibernate DAOsupport   
public class OrgManagerImpl extends AbstractManager implements OrgManager {

	public void addOrg(Organization org, int parentId,String description) {
		if(parentId!=0){
			org.setParent(
					(Organization)getHibernateTemplate()
					.load(Organization.class, parentId) 
					);
		}
		//在此让机构描述信息添加到数据库中
		org.setDescription(org.getDescription());
		getHibernateTemplate().save(org);
		
	
		//设置organization的唯一编号
		org.setSn(
				org.getParent()==null?(""+org.getId()):(org.getParent().getSn()+"_"+org.getId())
		);
		getHibernateTemplate().update(org);
	}
//如果是批量删除则用数组
	public void delOrg(int orgId) {
		Organization org=(Organization)getHibernateTemplate().load(Organization.class, orgId);
		if(org.getChildren().size()>0){
			throw new SystemException("存在子机构,不允许删除","exception.org.del",org.getId()); 
		}
		getHibernateTemplate().delete(org);
	}

	public Organization findOrg(int orgId) {
		return (Organization)getHibernateTemplate().load(Organization.class, orgId);
	}
//利用HQL语句查找
	public PagerModel findOrgs(int parentId) {
		if(parentId==0){
		return searchPaginated("from Organization o where o.parent is null");
		}
		return searchPaginated("from Organization o where o.parent.id=? ",parentId);       
	
	}

	public void updateOrg(Organization org, int parentId) {
		if(parentId != 0){
			org.setParent(
					(Organization)getHibernateTemplate()
					.load(Organization.class, parentId)
				);
		}		
		getHibernateTemplate().update(org);
	}	
	
}

⌨️ 快捷键说明

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