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

📄 publicdirectory.java

📁 oa 源码
💻 JAVA
字号:
package com.redmoon.oa.netdisk;import java.sql.*;import javax.servlet.http.*;import cn.js.fan.db.*;import cn.js.fan.security.*;import cn.js.fan.util.*;import cn.js.fan.web.*;import org.apache.log4j.*;import java.util.Vector;import java.util.Iterator;import com.redmoon.oa.pvg.Privilege;import com.redmoon.oa.pvg.PrivDb;public class PublicDirectory {    String connname = "";    Logger logger = Logger.getLogger(PublicDirectory.class.getName());    public PublicDirectory() {        connname = Global.defaultDB;        if (connname.equals(""))            logger.info("PublicDirectory:默认数据库名不能为空");    }    public boolean AddChild(HttpServletRequest request) throws            ErrMsgException {                int child_count = 0, orders = 1, parent_orders = 1,                islocked = 0;        String root_code = "", name = "", code = "", parent_code = "";        name = ParamUtil.get(request, "name").trim();        if (name == null || name.equals(""))            throw new ErrMsgException("名称不能为空!");        code = ParamUtil.get(request, "code").trim();        if (code.equals(""))            throw new ErrMsgException("编码不能为空!");        parent_code = ParamUtil.get(request, "parent_code").trim();        if (parent_code.equals(""))            throw new ErrMsgException("父结点不能为空!");        String description = ParamUtil.get(request, "description");        String pluginCode = ParamUtil.get(request, "pluginCode");        String mappingAddress = ParamUtil.get(request,"mappingAddress");        mappingAddress = mappingAddress.replace('\\','/');        Privilege privilege = new Privilege();        PublicLeafPriv lp = new PublicLeafPriv();        lp.setDirCode(parent_code);        if (!lp.canUserManage(privilege.getUser(request))) {            throw new ErrMsgException(SkinUtil.LoadString(request, "pvg_invalid"));        }        PublicLeaf lf = new PublicLeaf();        lf = lf.getLeaf(code);        if (lf!=null && lf.isLoaded())            throw new ErrMsgException("已存在相同编码的节点:" + lf.getName());        lf = new PublicLeaf();        lf.setName(name);        lf.setCode(code);        lf.setParentCode(parent_code);        lf.setDescription(description);        lf.setType(lf.TYPE_LIST);        lf.setPluginCode(pluginCode);        lf.setMappingAddress(mappingAddress);        PublicLeaf leaf = getLeaf(parent_code);        return leaf.AddChild(lf);    }    public void del(HttpServletRequest request, String delcode) throws ErrMsgException {        Privilege privilege = new Privilege();        PublicLeafPriv lp = new PublicLeafPriv();        lp.setDirCode(delcode);        if (!lp.canUserManage(privilege.getUser(request))) {            throw new ErrMsgException(SkinUtil.LoadString(request, "pvg_invalid"));        }        PublicLeaf lf = getLeaf(delcode);        lf.del(lf);    }    public synchronized boolean update(HttpServletRequest request) throws            ErrMsgException {        String code = ParamUtil.get(request, "code", false);        String name = ParamUtil.get(request, "name", false);        String description = ParamUtil.get(request, "description");        boolean isHome = ParamUtil.get(request, "isHome").equals("true") ? true : false;        if (code == null || name == null) {            throw new ErrMsgException("code与name项必填!");        }        String parentCode = ParamUtil.get(request, "parentCode");        String pluginCode = ParamUtil.get(request, "pluginCode");        String mappingAddress = ParamUtil.get(request, "mappingAddress");        mappingAddress = mappingAddress.replace('\\','/');        Privilege privilege = new Privilege();        PublicLeafPriv lp = new PublicLeafPriv();        lp.setDirCode(code);        if (!lp.canUserManage(privilege.getUser(request))) {            throw new ErrMsgException(SkinUtil.LoadString(request, "pvg_invalid"));        }        PublicLeaf leaf = getLeaf(code);        leaf.setName(name);        leaf.setDescription(description);        leaf.setIsHome(isHome);        leaf.setType(leaf.TYPE_LIST);        leaf.setPluginCode(pluginCode);        leaf.setMappingAddress(mappingAddress);        boolean re = false;        if (parentCode.equals(leaf.getParentCode()))            re = leaf.update();        else            re = leaf.update(parentCode);        return re;    }    public synchronized boolean move(HttpServletRequest request) throws            ErrMsgException {        String code = ParamUtil.get(request, "code", false);        String direction = ParamUtil.get(request, "direction", false);        if (code == null || direction == null) {            throw new ErrMsgException("编码与方向项必填!");        }        Privilege privilege = new Privilege();        PublicLeafPriv lp = new PublicLeafPriv();        lp.setDirCode(code);        if (!lp.canUserManage(privilege.getUser(request))) {            throw new ErrMsgException(SkinUtil.LoadString(request, "pvg_invalid"));        }        PublicLeaf lf = new PublicLeaf(code);        return lf.move(direction);    }    public PublicLeaf getLeaf(String code) {        PublicLeaf leaf = new PublicLeaf();        return leaf.getLeaf(code);    }    public PublicLeaf getBrother(String code, String direction) throws            ErrMsgException {        PublicLeaf lf = getLeaf(code);        return lf.getBrother(direction);    }    public Vector getChildren(String code) throws ErrMsgException {        PublicLeaf leaf = getLeaf(code);        return leaf.getChildren();    }        public String getSubLeaves(String parentCode, int layer) {        if (layer>2)            return "";        String str = "";        PublicLeafChildrenCacheMgr lcc = new PublicLeafChildrenCacheMgr(parentCode);        Vector v = lcc.getList();        Iterator ir = v.iterator();                while (ir.hasNext()) {            PublicLeaf lf = (PublicLeaf) ir.next();            if (layer==2) {                                  lcc = new PublicLeafChildrenCacheMgr(lf.getCode());                 Iterator ir2 = lcc.getList().iterator();                 while (ir2.hasNext()) {                     lf = (PublicLeaf) ir2.next();                     if (str.equals(""))                         str = StrUtil.sqlstr(lf.getCode());                     else                         str += "," + StrUtil.sqlstr(lf.getCode());                 }            }            else {                if (str.equals(""))                    str = StrUtil.sqlstr(lf.getCode());                else                    str += "," + StrUtil.sqlstr(lf.getCode());            }        }        return str;    }}

⌨️ 快捷键说明

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