empdao.java
来自「机房运营维护系统 java+oracle9i 使用struts 分用户权限」· Java 代码 · 共 380 行
JAVA
380 行
package com.model;
import java.sql.Date;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.springframework.dao.DataAccessException;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.yourcompany.struts.form.EmpForm;
import ms.hibernate.Dept;
import ms.hibernate.Emp;
import ms.hibernate.Log;
import ms.hibernate.Module;
import ms.hibernate.Popedom;
import ms.hibernate.Role;
import ms.hibernate.Room;
public class EmpDao extends HibernateDaoSupport implements IEmpDao {
public Map<String, Object> findById(String id) {
Map<String, Object> map = new HashMap<String, Object>();
Emp emp = new Emp();
emp = (Emp) this.getHibernateTemplate().get(Emp.class, id);
List<Module> list = new ArrayList<Module>();
if (emp == null) {
return null;
} else {
Set<Role> roles = emp.getEmpRoles();
for (Iterator it = roles.iterator(); it.hasNext();) {
Role role = (Role) it.next();
list.add(role.getModule());
}
map.put("emp", emp);
map.put("roles", list);
return map;
}
}
public List<Popedom> findPMangerPopedomById(String id) {
Emp emp = (Emp) this.getHibernateTemplate().get(Emp.class, id);
List<Module> mod = this.getHibernateTemplate().find(
"from Module where name = ?", "权限管理");
long MId = 0;
if (mod != null) {
MId = mod.get(0).getModuleid();
}
List<Popedom> popedoms = new ArrayList<Popedom>();
if (emp == null) {
return null;
} else {
Set<Role> set = emp.getEmpRoles();
for (Iterator it = set.iterator(); it.hasNext();) {
Role role = (Role) it.next();
long moduleId = role.getModule().getModuleid();
if (moduleId == MId) {
Set<Popedom> PSet = role.getRolePopedoms();
for (Iterator its = PSet.iterator(); its.hasNext();) {
Popedom pope = (Popedom) its.next();
popedoms.add(pope);
}
break;
}
}
}
return popedoms;
}
public List<Emp> findAllEmp() {
List<Emp> list = this.getHibernateTemplate().find(
"from Emp where emptype='admin'");
return list;
}
public boolean cfgRole(Long[] roleids, String id) {
boolean temp = true;
try {
Emp emp = (Emp) this.getHibernateTemplate().load(Emp.class, id);
Set set = new HashSet();
if (roleids != null) {
for (Long i : roleids) {
Role r = (Role) this.getHibernateTemplate().load(
Role.class, i);
set.add(r);
}
}
emp.setEmpRoles(set);
this.getHibernateTemplate().update(emp);
} catch (DataAccessException e) {
temp = false;
e.printStackTrace();
}
return temp;
}
public List<Popedom> findDMangerPopedomById(String id) {
Emp emp = (Emp) this.getHibernateTemplate().get(Emp.class, id);
List<Popedom> popedoms = new ArrayList<Popedom>();
if (emp == null) {
return null;
} else {
Set<Role> set = emp.getEmpRoles();
for (Iterator it = set.iterator(); it.hasNext();) {
Role role = (Role) it.next();
long moduleId = role.getModule().getModuleid();
if (moduleId == 1) {
Set<Popedom> PSet = role.getRolePopedoms();
for (Iterator its = PSet.iterator(); its.hasNext();) {
Popedom pope = (Popedom) its.next();
popedoms.add(pope);
}
break;
}
}
}
return popedoms;
}
public List<Popedom> findEMangerPopedomById(String id) {
Emp emp = (Emp) this.getHibernateTemplate().get(Emp.class, id);
List<Popedom> popedoms = new ArrayList<Popedom>();
if (emp == null) {
return null;
} else {
Set<Role> set = emp.getEmpRoles();
for (Iterator it = set.iterator(); it.hasNext();) {
Role role = (Role) it.next();
long moduleId = role.getModule().getModuleid();
if (moduleId == 4) {
Set<Popedom> PSet = role.getRolePopedoms();
for (Iterator its = PSet.iterator(); its.hasNext();) {
Popedom pope = (Popedom) its.next();
popedoms.add(pope);
}
break;
}
}
}
return popedoms;
}
public List<Popedom> findLMangerPopedomById(String id) {
Emp emp = (Emp) this.getHibernateTemplate().get(Emp.class, id);
List<Popedom> popedoms = new ArrayList<Popedom>();
if (emp == null) {
return null;
} else {
Set<Role> set = emp.getEmpRoles();
for (Iterator it = set.iterator(); it.hasNext();) {
Role role = (Role) it.next();
long moduleId = role.getModule().getModuleid();
if (moduleId == 3) {
Set<Popedom> PSet = role.getRolePopedoms();
for (Iterator its = PSet.iterator(); its.hasNext();) {
Popedom pope = (Popedom) its.next();
popedoms.add(pope);
}
break;
}
}
}
return popedoms;
}
public List<Popedom> findRMangerPopedomById(String id) {
Emp emp = (Emp) this.getHibernateTemplate().get(Emp.class, id);
List<Popedom> popedoms = new ArrayList<Popedom>();
if (emp == null) {
return null;
} else {
Set<Role> set = emp.getEmpRoles();
for (Iterator it = set.iterator(); it.hasNext();) {
Role role = (Role) it.next();
long moduleId = role.getModule().getModuleid();
if (moduleId == 2) {
Set<Popedom> PSet = role.getRolePopedoms();
for (Iterator its = PSet.iterator(); its.hasNext();) {
Popedom pope = (Popedom) its.next();
popedoms.add(pope);
}
break;
}
}
}
return popedoms;
}
public List<EmpForm> findAllEmps() {
List<Emp> emp = this.getHibernateTemplate().find(
"from Emp where empid <> 'yan'");
List<EmpForm> empForm = new ArrayList<EmpForm>();
for (Iterator<Emp> it = emp.iterator(); it.hasNext();) {
Emp e = it.next();
EmpForm ef = new EmpForm();
ef.setEmpid(e.getEmpid());
ef.setEname(e.getEname());
if (e.getDept() != null) {
ef.setFax(e.getDept().getDname());
}
if (e.getDept() != null && e.getDept().getEmp() != null) {
ef.setEmail(e.getDept().getEmp().getEname());
}
ef.setEmptype(e.getEmptype());
empForm.add(ef);
}
return empForm;
}
public EmpForm findEmpById(String id) {
Emp emp = (Emp) this.getHibernateTemplate().get(Emp.class, id);
EmpForm ef = new EmpForm();
if (emp != null) {
ef.setEmpid(emp.getEmpid());
ef.setEname(emp.getEname());
ef.setPassword(emp.getPassword());
if (emp.getDept() != null) {
ef.setDeptid(emp.getDept().getDeptid());
ef.setDname(emp.getDept().getDname());
}
ef.setEmptype(emp.getEmptype());
ef.setTel(emp.getTel());
ef.setEmail(emp.getEmail());
ef.setHandset(emp.getHandset());
ef.setFax(emp.getFax());
ef.setMemo(emp.getMemo());
}
return ef;
}
public void createLog(String empid, Long popedomid) {
Popedom pope = (Popedom) this.getHibernateTemplate().load(
Popedom.class, popedomid);
Log log = new Log();
log.setEmpid(empid);
log.setPopedom(pope);
Date date = new Date((new java.util.Date()).getTime());
log.setWorkdate(date);
this.getHibernateTemplate().save(log);
}
public boolean saveEmp(EmpForm form, String empid) {
boolean temp = true;
try {
Dept dept = (Dept) this.getHibernateTemplate().get(Dept.class,
form.getDeptid());
Emp emp = new Emp();
emp.setEmpid(form.getEmpid());
emp.setDept(dept);
emp.setEmail(form.getEmail());
emp.setEmptype(form.getEmptype());
emp.setMemo(form.getMemo());
emp.setEname(form.getEname());
emp.setFax(form.getFax());
emp.setHandset(form.getHandset());
emp.setPassword(form.getPassword());
emp.setTel(form.getTel());
this.getHibernateTemplate().save(emp);
} catch (DataAccessException e) {
temp = false;
e.printStackTrace();
}
return temp;
}
public boolean updateEmp(EmpForm form, String empid) {
boolean temp = true;
try {
Emp emp = (Emp) this.getHibernateTemplate().load(Emp.class,
form.getEmpids());
Dept dept = (Dept) this.getHibernateTemplate().get(Dept.class,
form.getDeptid());
if (emp.getDept() != null && (!emp.getDept().equals(dept))) {
Set set = emp.getDepts();
Set set1 = emp.getRooms();
for (Iterator<Room> its = set1.iterator(); its.hasNext();) {
Room room = its.next();
room.setEmp(null);
}
for (Iterator<Dept> it = set.iterator(); it.hasNext();) {
Dept de = it.next();
de.setEmp(null);
}
}
emp.setEmpid(form.getEmpids());
emp.setDept(dept);
emp.setEmail(form.getEmail());
emp.setEmptype(form.getEmptype());
emp.setMemo(form.getMemo());
emp.setEname(form.getEname());
emp.setFax(form.getFax());
emp.setHandset(form.getHandset());
emp.setPassword(form.getPassword());
emp.setTel(form.getTel());
this.getHibernateTemplate().update(emp);
} catch (DataAccessException e) {
temp = false;
e.printStackTrace();
}
return temp;
}
public boolean deleteEmp(String[] empids, String empid) {
boolean temp = true;
try {
if (empids != null) {
for (String id : empids) {
Emp emp = (Emp) this.getHibernateTemplate().load(Emp.class,
id);
Set set = emp.getDepts();
Set set1 = emp.getRooms();
for (Iterator<Dept> it = set.iterator(); it.hasNext();) {
Dept d = it.next();
d.setEmp(null);
}
for (Iterator<Room> its = set1.iterator(); its.hasNext();) {
Room r = its.next();
r.setEmp(null);
}
this.getHibernateTemplate().delete(emp);
}
}
} catch (DataAccessException e) {
temp = false;
e.printStackTrace();
}
return temp;
}
public List<EmpForm> queryEmpResult(EmpForm form, String empid) {
Object []obj = {"%"+form.getEname()+"%" ,"%"+form.getEmpid()+"%",form.getDeptid(),form.getEmptype()};
List<Emp> list = this
.getHibernateTemplate()
.find(
"select E from Emp E where E.ename like ? and empid like ? and E.dept.deptid =? and E.emptype = ?",obj);
List<EmpForm> empForm = new ArrayList<EmpForm>();
for (Iterator<Emp> it = list.iterator(); it.hasNext();) {
Emp e = it.next();
EmpForm ef = new EmpForm();
ef.setEmpid(e.getEmpid());
ef.setEname(e.getEname());
if (e.getDept() != null) {
ef.setFax(e.getDept().getDname());
}
if (e.getDept() != null && e.getDept().getEmp() != null) {
ef.setEmail(e.getDept().getEmp().getEname());
}
ef.setEmptype(e.getEmptype());
empForm.add(ef);
}
return empForm;
}
public boolean checkName(String name) {
name = name.trim();
List list = this.getHibernateTemplate().find("from Emp where empid = ?",name);
if(list==null||list.size()==0){
return true;
}else{
return false;
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?