documentmgr.java

来自「cwbbs 云网论坛源码」· Java 代码 · 共 1,162 行 · 第 1/3 页

JAVA
1,162
字号
        public void createAllPageHtml(HttpServletRequest request, Document doc) throws ErrMsgException  {        for (int i = 0; i < doc.getPageCountPlugin(); i++) {            createHtml(request, doc, i + 1);        }    }        public void createHtml(HttpServletRequest request, Document doc,                           int pageNum) throws ErrMsgException {                if (Leaf.isLeafOfSubsite(doc.getDirCode()))            return;        String filePath = "";        TemplateDb td = doc.getTemplateDb();        filePath = Global.getRealPath() + td.getString("path");        try {                        request.setAttribute("id", "" + doc.getID());            request.setAttribute("isCreateHtml", "true");             request.setAttribute("CPages", "" + pageNum);                        TemplateLoader tl = new TemplateLoader(request, filePath);            FileUtil fu = new FileUtil();            File f = new File(Global.getRealPath() + doc.getDocHtmlPath());            if (!f.isDirectory()) {                f.mkdirs();            }            fu.WriteFile(Global.getRealPath() +                         doc.getDocHtmlName(pageNum),                         tl.toString(), "UTF-8");        } catch (IOException e) {            LogUtil.getLog(getClass()).error("createHtml:" + e.getMessage());        }    }        public void createListHtmlOfDirecroty(HttpServletRequest request) throws            ErrMsgException {        String dirCode = ParamUtil.get(request, "dir_code");        boolean isIncludeChildren = ParamUtil.getBoolean(request,                "isIncludeChildren", false);        int pageNumBegin = ParamUtil.getInt(request, "pagNumBegin", 1);        int pageNumEnd = ParamUtil.getInt(request, "pagNumEnd", -1);        createListHtmlOfDirectory(request, dirCode, isIncludeChildren, pageNumBegin, pageNumEnd);    }    public void createListHtmlOfDirectory(HttpServletRequest request,                                          String dirCode,                                          boolean isIncludeChildren,                                          int pageNumBegin, int pageNumEnd) throws            ErrMsgException {        String sql = SQLBuilder.getDirDocListSql(dirCode);                Document doc = new Document();        int total = doc.getDocCount(sql);        cn.js.fan.module.cms.Config cfg = new cn.js.fan.module.cms.Config();        int pageSize = cfg.getIntProperty("cms.listPageSize");        Paginator paginator = new Paginator(request, total, pageSize);        int totalpages = paginator.getTotalPages();        if (totalpages == 0) {            totalpages = 1;        }        if (pageNumEnd == -1) {            pageNumEnd = totalpages;        }        for (int num = pageNumBegin; num <= pageNumEnd; num++) {            createListPageHtml(request, dirCode, num);        }        if (isIncludeChildren) {            Leaf lf = new Leaf();            lf = lf.getLeaf(dirCode);            Vector vchild = lf.getChildren();            Iterator irchild = vchild.iterator();            while (irchild.hasNext()) {                Leaf childlf = (Leaf) irchild.next();                createListHtmlOfDirectory(request, childlf.getCode(),                                          isIncludeChildren, pageNumBegin,                                          pageNumEnd);            }        }    }    public void createHtmlOfDirecroty(HttpServletRequest request) throws            ErrMsgException {        String dirCode = ParamUtil.get(request, "dir_code");        String bDate = ParamUtil.get(request, "beginDate");        String eDate = ParamUtil.get(request, "endDate");        Date beginDate = DateUtil.parse(bDate, "yyyy-MM-dd");        Date endDate = DateUtil.parse(eDate, "yyyy-MM-dd");        if (beginDate == null || endDate == null) {                    }        boolean isIncludeChildren = ParamUtil.getBoolean(request,                "isIncludeChildren", false);        String sql;        if (beginDate==null && endDate==null)            sql = "select id from document where class1=? and examine=2";        else if (beginDate==null) {            sql = "select id from document where class1=? and modifiedDate<=? and examine=2";        }        else if (endDate==null) {            sql = "select id from document where class1=? and modifiedDate>=? and examine=2";        }        else            sql = "select id from document where class1=? and modifiedDate>=? and modifiedDate<=? and examine=2";        createHtmlOfDirectory(request, dirCode, sql, isIncludeChildren, beginDate, endDate);    }    public void createHtmlOfDirectory(HttpServletRequest request,                                      String dirCode, String sql,                                      boolean isIncludeChildren, Date beginDate, Date endDate) throws ErrMsgException  {        Object[] params = null;        if (beginDate==null && endDate==null)            params = new Object[] {dirCode};        else if (beginDate == null) {            params = new Object[] {dirCode,                     DateUtil.toLongString(endDate)};        }        else if (endDate==null) {            params = new Object[] {dirCode,                     DateUtil.toLongString(beginDate)};        }        else            params = new Object[] {dirCode,                          DateUtil.toLongString(beginDate),                          DateUtil.toLongString(endDate)};        Document doc = new Document();        Vector v = doc.list(sql, params);        Iterator ir = v.iterator();        while (ir.hasNext()) {            doc = (Document) ir.next();                                    createAllPageHtml(request, doc);        }        if (isIncludeChildren) {            Leaf lf = new Leaf();            lf = lf.getLeaf(dirCode);            Vector vchild = lf.getChildren();            Iterator irchild = vchild.iterator();            while (irchild.hasNext()) {                Leaf childlf = (Leaf) irchild.next();                createHtmlOfDirectory(request, childlf.getCode(), sql, isIncludeChildren, beginDate, endDate);            }        }    }    public boolean ChangeDir(HttpServletRequest request, int id,                             String newDirCode) throws ErrMsgException {        Privilege privilege = new Privilege();        if (!privilege.isUserPrivValid(request, Priv.PRIV_ADMIN)) {            throw new ErrMsgException(SkinUtil.LoadString(request,                    SkinUtil.PVG_INVALID));        }        Document doc = getDocument(id);        return doc.ChangeDir(newDirCode);    }    public void createSubjectHtmlOfDirecroty(HttpServletRequest request) throws            ErrMsgException {        String dirCode = ParamUtil.get(request, "code");        String bDate = ParamUtil.get(request, "beginDate");        String eDate = ParamUtil.get(request, "endDate");        Date beginDate = DateUtil.parse(bDate, "yyyy-MM-dd");        Date endDate = DateUtil.parse(eDate, "yyyy-MM-dd");        if (beginDate == null || endDate == null) {                    }        boolean isIncludeChildren = ParamUtil.getBoolean(request,                "isIncludeChildren", false);        String sql;        if (beginDate==null && endDate==null)            sql = "select d.id from cws_cms_subject_doc s,document d where s.doc_id=d.id and s.code=? and d.examine=2";        else if (beginDate==null) {            sql = "select d.id from cws_cms_subject_doc s,document d where s.doc_id=d.id and s.code=? and d.modifiedDate<=? and d.examine=2";        }        else if (endDate==null) {            sql = "select d.id from cws_cms_subject_doc s,document d where s.doc_id=d.id and s.code=? and d.modifiedDate>=? and d.examine=2";        }        else            sql = "select d.id from cws_cms_subject_doc s,document d where s.doc_id=d.id and s.code=? and d.modifiedDate>=? and d.modifiedDate<=? and examine=2";        createSubjectHtmlOfDirectory(request, dirCode, sql, isIncludeChildren, beginDate, endDate);    }    public void createSubjectHtmlOfDirectory(HttpServletRequest request,                                      String subjectCode, String sql,                                      boolean isIncludeChildren, Date beginDate, Date endDate) throws ErrMsgException  {        Object[] params = null;        if (beginDate==null && endDate==null)            params = new Object[] {subjectCode};        else if (beginDate == null) {            params = new Object[] {subjectCode,                     DateUtil.toLongString(endDate)};        }        else if (endDate==null) {            params = new Object[] {subjectCode,                     DateUtil.toLongString(beginDate)};        }        else            params = new Object[] {subjectCode,                          DateUtil.toLongString(beginDate),                          DateUtil.toLongString(endDate)};                Document doc = new Document();        Vector v = doc.list(sql, params);                Iterator ir = v.iterator();        while (ir.hasNext()) {            doc = (Document) ir.next();                                    createSubjectAllPageHtml(request, subjectCode, doc);        }        if (isIncludeChildren) {            SubjectDb lf = new SubjectDb();            lf = lf.getSubjectDb(subjectCode);            Vector vchild = lf.getChildren();            Iterator irchild = vchild.iterator();            while (irchild.hasNext()) {                Leaf childlf = (Leaf) irchild.next();                createSubjectHtmlOfDirectory(request, childlf.getCode(), sql, isIncludeChildren, beginDate, endDate);            }        }    }        public void createSubjectAllPageHtml(HttpServletRequest request, String subjectCode, Document doc) throws ErrMsgException  {        for (int i = 0; i < doc.getPageCountPlugin(); i++) {            createSubjectHtml(request, subjectCode, doc, i + 1);        }    }        public void createSubjectHtml(HttpServletRequest request, String subjectCode, Document doc,                           int pageNum) throws ErrMsgException {        String filePath = "";        SubjectDb sd = new SubjectDb();        sd = sd.getSubjectDb(subjectCode);        TemplateDb td = new TemplateDb();        if (sd.getPageTemplateId()!=SubjectDb.NOTEMPLATE) {                td = td.getTemplateDb(sd.getPageTemplateId());        }        else {            td = doc.getTemplateDb();        }        filePath = Global.getRealPath() + td.getString("path");        try {                        request.setAttribute("id", "" + doc.getID());            request.setAttribute("isCreateHtml", "true");             request.setAttribute("CPages", "" + pageNum);                        TemplateLoader tl = new TemplateLoader(request, filePath);            FileUtil fu = new FileUtil();            File f = new File(Global.getRealPath() + SubjectListDb.getDocHtmlPath(subjectCode, doc));            if (!f.isDirectory()) {                f.mkdirs();            }            fu.WriteFile(Global.getRealPath() +                         SubjectListDb.getDocHtmlName(subjectCode, doc, pageNum),                         tl.toString(), "UTF-8");        } catch (IOException e) {            LogUtil.getLog(getClass()).error("createHtml:" + e.getMessage());        }    }        public String[] uploadImg(ServletContext application, HttpServletRequest request) throws            ErrMsgException {                        FileUpload fu = new FileUpload();        String[] ext = new String[] {"jpg", "gif", "png", "bmp", "swf"};        if (ext!=null)            fu.setValidExtname(ext);        int ret = 0;        try {            ret = fu.doUpload(application, request);            if (ret!=fu.RET_SUCCESS) {                throw new ErrMsgException(fu.getErrMessage(request));            }            if (fu.getFiles().size()==0)                throw new ErrMsgException("请上传文件!");        } catch (IOException e) {            logger.error("doUpload:" + e.getMessage());            throw new ErrMsgException(e.getMessage());        }        Calendar cal = Calendar.getInstance();        String year = "" + (cal.get(cal.YEAR));        String month = "" + (cal.get(cal.MONTH) + 1);        String virtualpath = year +                             "/" +                             month;        Config cfg = new Config();        String attPath = cfg.getProperty("cms.file_doc_attach");        String filepath = Global.getRealPath() + attPath + "/" +                          virtualpath + "/";        File f = new File(filepath);        if (!f.isDirectory()) {            f.mkdirs();        }        fu.setSavePath(filepath);                 String[] re = null;        Vector v = fu.getFiles();        Iterator ir = v.iterator();        int orders = 0;        String attachmentBasePath = request.getContextPath() + "/";        if (ir.hasNext()) {            FileInfo fi = (FileInfo) ir.next();                        String fname = FileUpload.getRandName() + "." +                           fi.getExt();                        Attachment att = new Attachment();            att.setDiskName(fi.getDiskName());                        att.setDocId(att.TEMP_DOC_ID);            att.setName(fi.getName());            att.setDiskName(fname);            att.setOrders(orders);            att.setVisualPath(attPath + "/" + virtualpath);            att.setUploadDate(new java.util.Date());            att.setSize(fi.getSize());            if (att.create()) {                fi.write(filepath, fname);                re = new String[2];                re[0] = "" + att.getId();                re[1] = attachmentBasePath + att.getVisualPath() + "/" + att.getDiskName();            }        }        return re;    }    public FileUpload getFileUpload() {        return fileUpload;    }    public String getDirCode() {        return dirCode;    }    private FileUpload fileUpload;    private String dirCode;}

⌨️ 快捷键说明

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