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