📄 dealdetail.jsp
字号:
<%@ page import="org.ofbiz.entity.*" %>
<%@ page import="org.ofbiz.entity.model.*" %>
<%@ page import="java.lang.reflect.Method" %>
<%@ page import="java.util.*" %>
<%@ page import="java.text.*" %>
<%@ page import="org.ofbiz.entity.util.SequenceUtil" %>
<%@ page import="com.sourcetap.sfa.role.RoleHelper" %>
<%@ page import="com.sourcetap.sfa.opportunity.OpportunityHelper" %>
<%@ page import="com.sourcetap.sfa.util.Preference" %>
<%@ page import="com.sourcetap.sfa.util.EntityHelper" %>
<%@ page import="com.sourcetap.sfa.product.ProductHelper" %>
<%@ page import="com.sourcetap.sfa.replication.*" %>
<%@ include file="/includes/header.jsp" %>
<%@ include file="/includes/tabControlWithDivs.jsp" %>
<%!
/**
Checks to see if the proper steps to close have been completed before the opportunity can be updated.
*/
boolean validateOppStep(String dealId, GenericDelegator delegator){
GenericPK pk = new GenericPK(delegator.getModelEntity("Deal"));
pk.set("dealId", dealId);
try{
GenericValue genericValue = delegator.findByPrimaryKey(pk);
HashMap fields = new HashMap();
fields.put("dealStageId", genericValue.getString("stageId"));
fields.put("dealStageTypeId", genericValue.getString("dealStageTypeId"));
List steps = delegator.findByAnd("DealStageSteps", fields);
HashMap fields2 = new HashMap();
fields2.put("dealStageId", genericValue.getString("stageId"));
fields2.put("dealId", genericValue.getString("dealId"));
List track = delegator.findByAnd("DealStageStepsTracking", fields2);
GenericValue stepsValues[] = (GenericValue[])steps.toArray(new GenericValue[0]);
GenericValue trackValues[] = (GenericValue[])track.toArray(new GenericValue[0]);
String dealStageStepId = "";
String isStepRequired = "";
for(int i=0;i<stepsValues.length;i++){
GenericValue stepValue = stepsValues[i];
isStepRequired = stepValue.getString("isStepRequired");
dealStageStepId = getFieldValue(track, "dealStageId", stepValue.getString("dealStageId"), "dealStageStepId");
if(dealStageStepId.trim().length() <= 0 && isStepRequired.equals("Y")){
return false;
}
}
} catch (GenericEntityException e){
Debug.logError("!--!ERROR: error setting primary key in validateOppStep. See stack trace below.", "dealDetail");
e.printStackTrace();
return false;
}
return true;
}
String getBooleanString(String value){
if(value.equals("1") || value.equals("Y")){
return "Yes";
} else {
return "No";
}
}
Double calculateAmountOfProducts(List opCol){
GenericValue oppProds[] = (GenericValue[])opCol.toArray(new GenericValue[0]);
GenericValue oppProd = null;
double returnAmount = 0.0;
for(int i=0;i<oppProds.length;i++){
oppProd = oppProds[i];
if(oppProd.get("amount") != null){
returnAmount = returnAmount + oppProd.getDouble("amount").doubleValue();
}
}
return new Double(returnAmount);
}
boolean doesDealHaveProducts(String dealId, GenericDelegator delegator){
HashMap dealProducts = new HashMap();
dealProducts.put("dealId", dealId);
List results = null;
try{
results = delegator.findByAnd("OpportunityProduct", dealProducts);
} catch (GenericEntityException e){
e.printStackTrace();
}
if(results != null && results.size() > 0){
return true;
} else {
return false;
}
}
/*
* Sets or UnSets the useProductsForAmount Flag.
* Use true for setOrUnset to set the flag.
*/
void setDealHasProductsFlag(String dealId, boolean setOrUnset, GenericDelegator delegator){
HashMap dealMap = new HashMap();
dealMap.put("dealId", dealId);
GenericValue dealValue = null;
try{
dealValue = delegator.findByPrimaryKey("Deal", dealMap);
if(setOrUnset){
dealValue.set("useProductsForAmount", "Y");
} else {
dealValue.set("useProductsForAmount", "N");
}
delegator.store(dealValue);
} catch (GenericEntityException e){
e.printStackTrace();
}
}
/**
Check for nulls
*/
String formatString(String in){
if(in == null){
return "";
} else if(in.equalsIgnoreCase("null")) {
return "";
} else {
return in;
}
}
%>
<%
try {
Enumeration enum = request.getParameterNames();
while(enum.hasMoreElements()){
String elem = (String)enum.nextElement();
}
String ENTITY = "Deal";
ModelEntity entity = delegator.getModelEntity(ENTITY);
Preference pref = Preference.getInstance(delegator);
String opportunityMode = pref.getPreference( userInfo.getAccountId(), "OPPORTUNITY_INFO", "basic");
String opportunityHasProducts = pref.getPreference( userInfo.getAccountId(), "OPPORTUNITY_PRODUCTS", "yes");
String action = "";
if(request.getParameter("action") != null){
action = request.getParameter("action");
}
String entityType = "";
if(request.getParameter("entityType") != null){
entityType = request.getParameter("entityType");
} else {
entityType = "Deal";
}
String dealId = "";
if(request.getParameter("dealId") != null){
dealId = request.getParameter("dealId");
}
if(action.equals("create")){
try {
dealId = GenericReplicator.getNextSeqId("Deal", delegator);
GenericValue genericValue = new GenericValue(entity);
genericValue.setDelegator(delegator);
List dealFields = entity.getFieldsCopy();
Enumeration params = request.getParameterNames();
String pName = "";
ModelField modelField = null;
while(params.hasMoreElements()){
pName = (String)params.nextElement();
if((modelField = contains(dealFields, pName)) != null){
genericValue = setCorrectDataType( genericValue, modelField, request.getParameter(pName));
}
}
//set the owner to the person adding the deal.
genericValue = setCorrectDataType( genericValue, entity.getField("ownerId"), (String)session.getAttribute("partyId"));
genericValue.set("dealId", dealId);
genericValue.set("createdBy", session.getAttribute("userName"));
genericValue.set("createdDate", new Timestamp(new java.util.Date().getTime()));
genericValue.set("modifiedBy", session.getAttribute("userName"));
genericValue.set("modifiedDate", new Timestamp(new java.util.Date().getTime()));
//Create a new Team, with the current logged-in user as primary.
GenericValue team = new GenericValue(delegator.getModelEntity("Team"));
team.setDelegator(delegator);
GenericValue party = new GenericValue(delegator.getModelEntity("Party"));
party.setDelegator(delegator);
GenericValue teamMember = new GenericValue(delegator.getModelEntity("TeamMember"));
teamMember.setDelegator(delegator);
GenericValue entityAccess = new GenericValue(delegator.getModelEntity("EntityAccess"));
entityAccess.setDelegator(delegator);
GenericValue entityRoleAccess = new GenericValue(delegator.getModelEntity("EntityAccess"));
entityRoleAccess.setDelegator(delegator);
party.set("partyId", GenericReplicator.getNextSeqId("Party", delegator));
team.set("teamId", party.getString("partyId"));
team.set("createdBy", session.getAttribute("userName"));
team.set("createdDate", new Timestamp(new java.util.Date().getTime()));
team.set("modifiedBy", session.getAttribute("userName"));
team.set("modifiedDate", new Timestamp(new java.util.Date().getTime()));
//Add team owner to team_member
teamMember.set("teamMemberId", GenericReplicator.getNextSeqId("TeamMember", delegator));
teamMember.set("teamId", team.getString("teamId"));
teamMember.set("partyId", (String)session.getAttribute("partyId"));
teamMember.set("teamOwner", "Y");
teamMember.set("createdBy", session.getAttribute("userName"));
teamMember.set("createdDate", new Timestamp(new java.util.Date().getTime()));
teamMember.set("modifiedBy", session.getAttribute("userName"));
teamMember.set("modifiedDate", new Timestamp(new java.util.Date().getTime()));
//add Team to Entity Access.
entityAccess.set("entityAccessId", GenericReplicator.getNextSeqId("EntityAccess", delegator));
entityAccess.set("entity", "Deal");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -