📄 productsadmin.jsp
字号:
<%@ page import="org.ofbiz.entity.*" %>
<%@ page import="org.ofbiz.entity.model.*" %>
<%@ page import="java.lang.reflect.Method" %>
<%@ page import="java.util.*" %>
<%@ page import="com.sourcetap.sfa.product.ProductHelper" %>
<%@ page import="com.sourcetap.sfa.replication.*" %>
<%@ page import="com.sourcetap.sfa.util.EntityHelper" %>
<%@ include file="/includes/header.jsp" %>
<body class="bodyform">
<%!
/*
Ensures that the field will be set to a default value.
*/
String validateRequest(HttpServletRequest request, String parameterName, String defaultValue){
String returnString = "";
if(request.getParameter(parameterName) == null){
returnString = defaultValue;
} else {
returnString = request.getParameter(parameterName);
}
return returnString;
}
%>
<%
try{
String action = "";
if(request.getParameter("action") != null){
action = request.getParameter("action");
}
if(action.equals("delete")){
Enumeration params = request.getParameterNames();
HashMap deleteMap = new HashMap();
String pName = "";
while(params.hasMoreElements()){
pName = (String)params.nextElement();
deleteMap.put(pName, request.getParameter(pName));
}
delegator.removeByAnd(request.getParameter("entityType"), deleteMap);
if(request.getParameter("entityType").equals("Product")){
deleteMap = new HashMap();
deleteMap.put("productId", request.getParameter("productId"));
delegator.removeByAnd("ProductAttribute", deleteMap);
}
if(request.getParameter("entityType").equals("ProductFeature")){
deleteMap = new HashMap();
deleteMap.put("productId", request.getParameter("productId"));
deleteMap.put("productFeatureId", request.getParameter("productFeatureId"));
delegator.removeByAnd("ProductFeatureAppl", deleteMap);
}
}
if(action.equals("update")){
String ENTITY = request.getParameter("entityType");
ModelEntity entity = delegator.getModelEntity(ENTITY);
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));
}
}
/* if(!ENTITY.equals("ProductCategory") || !ENTITY.equals("ProductFeature") || !ENTITY.equals("ProductFeatureIactn")){
genericValue.set("modifiedBy", session.getAttribute("userName"));
genericValue.set("modifiedDate", new Timestamp(new java.util.Date().getTime()));
}*/
delegator.store(genericValue);
}
if(action.equals("new") || action.equals("add")){
if(request.getParameter("entityType").equals("Product")){
String ENTITY = "Product";
ModelEntity entity = delegator.getModelEntity(ENTITY);
GenericValue genericValue = new GenericValue(entity);
genericValue.setDelegator(delegator);
String productId = GenericReplicator.getNextSeqId(ENTITY, delegator);
genericValue.set("productId", productId);
// genericValue.set("productId", validateRequest(request, "productName", ""));
genericValue.set("primaryProductCategoryId", validateRequest(request, "primaryProductCategoryId", ""));
genericValue.set("productName", validateRequest(request, "productName", ""));
genericValue.set("comments", validateRequest(request, "comments", ""));
genericValue.set("description", validateRequest(request, "description", ""));
// genericValue.set("defaultPrice", Double.valueOf(validateRequest(request, "defaultPrice", "0.00")));
// 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()));
GenericValue ownerValue = new GenericValue(delegator.getModelEntity("ProductAttribute"));
ownerValue.setDelegator(delegator);
ownerValue.set("productId", productId);
ownerValue.set("attrName", "OWNER");
ownerValue.set("attrValue", userInfo.getAccountId());
List storeGVL = new LinkedList();
storeGVL.add(genericValue);
storeGVL.add(ownerValue);
delegator.storeAll(storeGVL);
}
if(request.getParameter("entityType").equals("ProductCategory")){
String ENTITY = "ProductCategory";
ModelEntity entity = delegator.getModelEntity(ENTITY);
GenericValue genericValue = new GenericValue(entity);
genericValue.setDelegator(delegator);
String productCategoryId = GenericReplicator.getNextSeqId(ENTITY, delegator);
genericValue.set("productCategoryId", productCategoryId);
genericValue.set("primaryParentCategoryId", validateRequest(request, "primaryProductCategoryId", ""));
genericValue.set("description", validateRequest(request, "description", ""));
GenericValue ownerValue = new GenericValue(delegator.getModelEntity("ProductCategoryAttribute"));
ownerValue.setDelegator(delegator);
ownerValue.set("productCategoryId", productCategoryId);
ownerValue.set("attrName", "OWNER");
ownerValue.set("attrValue", userInfo.getAccountId());
List storeGVL = new LinkedList();
storeGVL.add(genericValue);
storeGVL.add(ownerValue);
delegator.storeAll(storeGVL);
}
if(request.getParameter("entityType").equals("ProductFeature")){
GenericValue genericValue = new GenericValue(delegator.getModelEntity("ProductFeature"));
genericValue.setDelegator(delegator);
genericValue.set("productFeatureId", GenericReplicator.getNextSeqId("ProductFeature", delegator));
genericValue.set("productFeatureTypeId",String.valueOf(request.getParameter("productFeatureTypeId")));
genericValue.set("description", request.getParameter("description"));
GenericValue productFeatureAppl = new GenericValue(delegator.getModelEntity("ProductFeatureAppl"));
productFeatureAppl.setDelegator(delegator);
productFeatureAppl.set("productId", request.getParameter("productId"));
productFeatureAppl.set("productFeatureId", genericValue.getString("productFeatureId"));
productFeatureAppl.set("fromDate", new java.sql.Date(Calendar.getInstance().getTime().getTime()));
List storeGVL = new LinkedList();
storeGVL.add(genericValue);
storeGVL.add(productFeatureAppl);
delegator.storeAll(storeGVL);
}
if(request.getParameter("entityType").equals("ProductFeatureType")){
GenericValue genericValue = new GenericValue(delegator.getModelEntity("ProductFeatureType"));
genericValue.setDelegator(delegator);
genericValue.set("productFeatureTypeId", GenericReplicator.getNextSeqId("ProductFeatureType", delegator));
genericValue.set("description", request.getParameter("description"));
genericValue.set("hasTable", "N");
delegator.create(genericValue);
}
if(request.getParameter("entityType").equals("ProductAssoc")){
GenericValue genericValue = new GenericValue(delegator.getModelEntity("ProductAssoc"));
genericValue.setDelegator(delegator);
genericValue.set("productId", request.getParameter("productId"));
genericValue.set("productIdTo", request.getParameter("productIdTo"));
genericValue.set("productAssocTypeId", request.getParameter("productAssocTypeId"));
genericValue.set("fromDate", request.getParameter("fromDate"));
genericValue.set("thruDate", request.getParameter("thruDate"));
genericValue.set("reason", request.getParameter("reason"));
genericValue.set("quantity", request.getParameter("quantity"));
genericValue.set("instruction", request.getParameter("instruction"));
delegator.create(genericValue);
}
}
/*
Enumeration enum = request.getParameterNames();
while(enum.hasMoreElements()){
String elem = (String)enum.nextElement();
out.write(elem + ":" + request.getParameter(elem) + "<br>");
}
*/
ArrayList pList = new ArrayList();
List productCategoryList = ProductHelper.getProductCategories(delegator, userInfo);
HashMap productCategoryProps = new HashMap();
productCategoryProps.put("NAME", "primaryProductCategoryId");
productCategoryProps.put("VALUE_FIELD", "productCategoryId" );
productCategoryProps.put("DISPLAY_FIELD", "description" );
productCategoryProps.put("EMPTY_FIRST", "-- none --");
//products
List productList = ProductHelper.getProducts(delegator, userInfo);
GenericValue products[] = (GenericValue[])productList.toArray(new GenericValue[0]);
GenericValue product = null;
//product category
GenericValue productCategories[] = (GenericValue[])productCategoryList.toArray(new GenericValue[0]);
GenericValue productCategory = null;
%>
<div class="head1" >Products</div>
<form action="<ofbiz:url>/productsAdmin</ofbiz:url>" method="post" target="content" name="ManufacturerPartyId">
<table>
<%
EntityCondition condition = new EntityConditionList( UtilMisc.toList(
new EntityExpr("accountTypeId", EntityOperator.EQUALS, "comp"),
new EntityExpr("accountTypeId", EntityOperator.EQUALS, "base")), EntityOperator.OR );
List accountList = delegator.findByCondition("Account", condition, null, null);
HashMap ownerProps = new HashMap();
ownerProps.put("NAME", "manufacturerPartyId");
ownerProps.put("VALUE_FIELD", "accountId" );
ownerProps.put("DISPLAY_FIELD", "accountName" );
ownerProps.put("SELECTED", request.getParameter("manufacturerPartyId"));
ownerProps.put("SELECT_JAVASCRIPT", "onchange='ManufacturerPartyId.submit();'");
ownerProps.put("EMPTY_FIRST", "-- none --");
%>
<tr>
<td>Show Products for</td><td><%=buildDropDown(accountList, ownerProps)%></td>
</tr>
</table>
</form>
<table width="100%" class="freeFormSectionDisplayTable" cellspacing="1" cellpadding="2" border="0" >
<thead class="freeFormSectionTitleTable">
<tr>
<td align="left" >Product Id</td>
<td align="left" >Product Name</td>
<td align="left" >Category</td>
<td align="left" >Comments</td>
<td align="left" >Description</td>
<td align="left" ></td>
</tr>
</thead>
<tbody class="tabularSectionDisplayTable">
<%
for(int i=0;i<products.length;i++){
product = products[i];
if(product.getString("primaryProductCategoryId") != null) {
productCategoryProps.put("SELECTED", product.getString("primaryProductCategoryId"));
} else {
productCategoryProps.remove("SELECTED");
} %>
<form action="<ofbiz:url>/productsAdmin</ofbiz:url>" method="post" target="content" name="Product">
<tr>
<td><%=product.get("productId")%></td>
<td><input type="text" name="productName" value="<%=product.get("productName")%>" size="30" ></td>
<td><%=buildDropDown(productCategoryList, productCategoryProps)%></td>
<td><input type="text" name="comments" value="<%=product.get("comments")%>" size="40" ></td>
<td><input type="text" name="description" value="<%=product.get("description")%>" size="50" ></td>
<td><input type="submit" name="action" value="delete" onclick="return confirm('Confirm delete?');"> <input type="submit" name="action" value="update"></td>
<input type="hidden" name="productId" value="<%=product.get("productId")%>">
<input type="hidden" name="entityType" value="Product">
</tr>
</form>
<%
}
%>
<% productCategoryProps.remove("SELECTED"); %>
<form action="<ofbiz:url>/productsAdmin</ofbiz:url>" method="post" target="content" name="Product">
<tr>
<td> </td>
<td><input type="text" name="productName" size="30"></td>
<td> <%=buildDropDown(productCategoryList, productCategoryProps ) %></td>
<td><input type="text" name="comments" size="40"></td>
<td><input type="text" name="description" size="50"></td>
<td><input type="submit" name="action" value="add"></td>
<input type="hidden" name="entityType" value="Product">
</tr>
</form>
</tbody>
</table>
<div class="head1" >Product Categories</div>
<table width="100%" class="freeFormSectionDisplayTable" cellspacing="1" cellpadding="2" border="0" >
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -