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

📄 contentmanagementevents.java

📁 Sequoia ERP是一个真正的企业级开源ERP解决方案。它提供的模块包括:电子商务应用(e-commerce), POS系统(point of sales),知识管理,存货与仓库管理
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
            roleTypeList = StringUtil.split(roles, "|");        }        List targetOperationList = UtilMisc.toList("CONTENT_PUBLISH");        List contentPurposeList = null; //UtilMisc.toList("ARTICLE");        //if (Debug.infoOn()) Debug.logInfo("in updatePublishLinks, roles:" + roles +" roleTypeList:" + roleTypeList , module);        String permittedAction = (String)paramMap.get("permittedAction"); // The content to be linked to one or more sites        String permittedOperations = (String)paramMap.get("permittedOperations"); // The content to be linked to one or more sites        if ( UtilValidate.isEmpty(targContentId)) {            request.setAttribute("_ERROR_MESSAGE_", "targContentId is empty.");            return "error";        }        // Get all the subSites that the user is permitted to link to        List origPublishedLinkList = null;        try {            // TODO: this needs to be given author userLogin            GenericValue authorUserLogin = delegator.findByPrimaryKeyCache("UserLogin", UtilMisc.toMap("userLoginId", authorId));            origPublishedLinkList = ContentManagementWorker.getPublishedLinks(delegator, targContentId, webSiteId, userLogin, security, permittedAction, permittedOperations, roles );        } catch(GenericEntityException e) {            request.setAttribute("_ERROR_MESSAGE_", e.getMessage());            return "error";        } catch(GeneralException e2) {            request.setAttribute("_ERROR_MESSAGE_", e2.getMessage());            return "error";        }                //if (Debug.infoOn()) Debug.logInfo("in updatePublishLinks, origPublishedLinkList:" + origPublishedLinkList , module);        // make a map of the values that are passed in using the top subSite as the key.        // Content can only be linked to one subsite under a top site (ends with "_MASTER")        Set keySet = paramMap.keySet();        Iterator itKeySet = keySet.iterator();        Map siteIdLookup = new HashMap();        while (itKeySet.hasNext()) {            String param = (String)itKeySet.next();            int pos = param.indexOf("select_");                //if (Debug.infoOn()) Debug.logInfo("in updatePublishLinks, param:" + param + " pos:" + pos , module);            if (pos >= 0) {                String siteId = param.substring(7);                String subSiteVal = (String)paramMap.get(param);                siteIdLookup.put(siteId, subSiteVal);            }        }                //if (Debug.infoOn()) Debug.logInfo("in updatePublishLinks, siteIdLookup:" + siteIdLookup , module);        // Loop thru all the possible subsites        Iterator it = origPublishedLinkList.iterator();        Timestamp nowTimestamp = UtilDateTime.nowTimestamp();        int counter = 0;        String responseMessage = null;        String errorMessage = null;        String permissionMessage = null;        boolean statusIdUpdated = false;        Map results = null;        while (it.hasNext()) {            Object [] arr = (Object [])it.next();                //if (Debug.infoOn()) Debug.logInfo("in updatePublishLinks, arr:" + Arrays.asList(arr) , module);            String contentId = (String)arr[0]; // main (2nd level) site id            String origSubContentId = null;            List origSubList = (List)arr[1];            Timestamp topFromDate = (Timestamp)arr[3];            Timestamp origFromDate = null;            Iterator itOrigSubPt = origSubList.iterator();            // see if a link already exists by looking for non-null fromDate            while (itOrigSubPt.hasNext()) {                Object [] pubArr = (Object [])itOrigSubPt.next();                //if (Debug.infoOn()) Debug.logInfo("in updatePublishLinks, pubArr:" + Arrays.asList(pubArr) , module);                Timestamp fromDate = (Timestamp)pubArr[2];                origSubContentId = null;                if (fromDate != null) {                    origSubContentId = (String)pubArr[0];                    origFromDate = fromDate;                    break;                }            }            String currentSubContentId = (String)siteIdLookup.get(contentId);                //if (Debug.infoOn()) Debug.logInfo("in updatePublishLinks, currentSubContentId:" + currentSubContentId , module);                //if (Debug.infoOn()) Debug.logInfo("in updatePublishLinks, origSubContentId:" + origSubContentId , module);            try {                if (UtilValidate.isNotEmpty(currentSubContentId)) {                    if (!currentSubContentId.equals(origSubContentId)) {                        // disable existing link                        if (UtilValidate.isNotEmpty(origSubContentId) && origFromDate != null) {                            List oldActiveValues = delegator.findByAnd("ContentAssoc", UtilMisc.toMap("contentId", targContentId, "contentIdTo", origSubContentId, "contentAssocTypeId", "PUBLISH_LINK", "thruDate", null));                            Iterator iterOldActive = oldActiveValues.iterator();                            while (iterOldActive.hasNext()) {                                GenericValue cAssoc = (GenericValue)iterOldActive.next();                                cAssoc.set("thruDate", nowTimestamp);                                cAssoc.store();                                //if (Debug.infoOn()) Debug.logInfo("in updatePublishLinks, deactivating:" + cAssoc , module);                            }                        }                        // create new link                        Map serviceIn = new HashMap();                        serviceIn.put("userLogin", userLogin);                        serviceIn.put("contentId", targContentId);                        serviceIn.put("contentAssocTypeId", "PUBLISH_LINK");                        serviceIn.put("fromDate", nowTimestamp);                        serviceIn.put("contentIdTo", currentSubContentId);                        serviceIn.put("roleTypeList", roleTypeList);                        serviceIn.put("targetOperationList", targetOperationList);                        serviceIn.put("contentPurposeList", contentPurposeList);                        results = dispatcher.runSync("createContentAssoc", serviceIn);                        responseMessage = (String)results.get(ModelService.RESPONSE_MESSAGE);                         if (UtilValidate.isNotEmpty(responseMessage)) {                            errorMessage = (String)results.get(ModelService.ERROR_MESSAGE);                            Debug.logError("in updatePublishLinks, serviceIn:" + serviceIn , module);                            Debug.logError(errorMessage, module);                            request.setAttribute("_ERROR_MESSAGE_", errorMessage);                            return "error";                        }                        serviceIn = new HashMap();                        serviceIn.put("userLogin", userLogin);                        serviceIn.put("contentId", targContentId);                        serviceIn.put("contentAssocTypeId", "PUBLISH_LINK");                        serviceIn.put("fromDate", nowTimestamp);                        serviceIn.put("contentIdTo", contentId);                        serviceIn.put("roleTypeList", roleTypeList);                        serviceIn.put("targetOperationList", targetOperationList);                        serviceIn.put("contentPurposeList", contentPurposeList);                        //if (Debug.infoOn()) Debug.logInfo("in updatePublishLinks, serviceIn(3b):" + serviceIn , module);                        results = dispatcher.runSync("createContentAssoc", serviceIn);                        //if (Debug.infoOn()) Debug.logInfo("in updatePublishLinks, results(3b):" + results , module);                        if (!statusIdUpdated) {                            try {                                GenericValue targContent = delegator.findByPrimaryKey("Content", UtilMisc.toMap("contentId", targContentId));                                targContent.set("statusId", "BLOG_PUBLISHED");                                targContent.store();                                statusIdUpdated = true;                            } catch(GenericEntityException e) {                                Debug.logError(e.getMessage(), module);                                request.setAttribute("_ERROR_MESSAGE_", e.getMessage());                                return "error";                            }                        }                    }                } else if ( UtilValidate.isNotEmpty(origSubContentId)) {                    // if no current link is passed in, look to see if there is an existing link(s) that must be disabled                    List oldActiveValues = delegator.findByAnd("ContentAssoc", UtilMisc.toMap("contentId", targContentId, "contentIdTo", origSubContentId, "contentAssocTypeId", "PUBLISH_LINK", "thruDate", null));                    Iterator iterOldActive = oldActiveValues.iterator();                    while (iterOldActive.hasNext()) {                        GenericValue cAssoc = (GenericValue)iterOldActive.next();                        cAssoc.set("thruDate", nowTimestamp);                        cAssoc.store();                    }                    oldActiveValues = delegator.findByAnd("ContentAssoc", UtilMisc.toMap("contentId", targContentId, "contentIdTo", contentId, "contentAssocTypeId", "PUBLISH_LINK", "thruDate", null));                    iterOldActive = oldActiveValues.iterator();                    while (iterOldActive.hasNext()) {                        GenericValue cAssoc = (GenericValue)iterOldActive.next();                        cAssoc.set("thruDate", nowTimestamp);                        cAssoc.store();                    }                }            } catch(GenericEntityException e) {                    Debug.logError(e.getMessage(), module);                    request.setAttribute("_ERROR_MESSAGE_", e.getMessage());                    return "error";            } catch(GenericServiceException e2) {                    Debug.logError(e2, module);                    request.setAttribute("_ERROR_MESSAGE_", e2.getMessage());                    return "error";            }        }        return "success";    }}

⌨️ 快捷键说明

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