ModuleManagerImpl.java
上传用户:kimgenplus
上传日期:2016-06-05
资源大小:20877k
文件大小:1k
源码类别:

OA系统

开发平台:

Java

  1. package com.bjsxt.oa.managers.impl;
  2. import com.bjsxt.oa.PagerModel;
  3. import com.bjsxt.oa.managers.ModuleManager;
  4. import com.bjsxt.oa.managers.SystemException;
  5. import com.bjsxt.oa.model.Module;
  6. public class ModuleManagerImpl extends AbstractManager implements ModuleManager {
  7. public void addModule(Module module, int parentid) {
  8. if(parentid != 0){
  9. module.setParent(
  10. (Module)getHibernateTemplate().load(Module.class, parentid)
  11. );
  12. }
  13. getHibernateTemplate().save(module);
  14. }
  15. public void delModule(int moduleId) {
  16. Module module = (Module)getHibernateTemplate().load(Module.class, moduleId);
  17. if(module.getChildren().size() > 0){
  18. throw new SystemException("存在子模块,不允许删除!");
  19. }
  20. getHibernateTemplate().delete(
  21. module
  22. );
  23. }
  24. public Module findModule(int moduleId) {
  25. return (Module)getHibernateTemplate().load(Module.class, moduleId);
  26. }
  27. public PagerModel searchModules(int parentId) {
  28. return searchPaginated("select m from Module m where " +
  29. (parentId == 0 ? "m.parent is null" : ("m.parent.id = " + parentId))
  30. );
  31. }
  32. public void updateModule(Module module, int parentid) {
  33. if(parentid != 0){
  34. module.setParent(
  35. (Module)getHibernateTemplate().load(Module.class, parentid)
  36. );
  37. }
  38. getHibernateTemplate().update(module);
  39. }
  40. }