📄 myquotes.bsh
字号:
/* * Copyright (C) 2006 Open Source Strategies, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */import java.util.ArrayList;import org.ofbiz.base.util.*;import org.ofbiz.entity.condition.*;import org.ofbiz.entity.util.*;import com.opensourcestrategies.crmsfa.opportunities.UtilOpportunity;// get the configured organizationPartyIdconfigProperties = UtilProperties.getProperties("crmsfa.properties");organizationPartyId = configProperties.get("organizationPartyId");// get orderBy from the parametersopportunitiesOrderBy = parameters.get("opportunitiesOrderBy");if (opportunitiesOrderBy==null) opportunitiesOrderBy = "salesOpportunityId DESC";// no closed opportunities for this page (watch out for null values, which are allowed and not testable by a simple != closed)notClosedCondition = new EntityConditionList( UtilMisc.toList( new EntityExpr("opportunityStageId", EntityOperator.EQUALS, null), new EntityConditionList( UtilMisc.toList( new EntityExpr("opportunityStageId", EntityOperator.NOT_EQUAL, null), new EntityExpr("opportunityStageId", EntityOperator.NOT_EQUAL, "SOSTG_CLOSED") ), EntityOperator.AND) ), EntityOperator.OR);// strategy: get all of user's account opportunities, then find all related quotesopps = UtilOpportunity.getOpportunitiesForMyAccounts(organizationPartyId, userLogin.getString("partyId"), null, notClosedCondition, UtilMisc.toList(opportunitiesOrderBy), request.getAttribute("delegator"));// for each opportunity, get all related SalesOpportunityQuote, then Quotequotes = new ArrayList();for (iter = opps.getCompleteList().iterator(); iter.hasNext(); ) { relations = iter.next().getRelated("SalesOpportunityQuote"); for (subiter = relations.iterator(); subiter.hasNext(); ) { quotes.addAll(EntityUtil.filterByDate(subiter.next().getRelated("Quote"), UtilDateTime.nowTimestamp(), "validFromDate", "validThruDate", true)); }}context.put("quoteList", quotes);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -