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

📄 productsadmin.jsp

📁 国外的一套开源CRM
💻 JSP
📖 第 1 页 / 共 2 页
字号:
<%@ 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?');">&nbsp;<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>&nbsp;</td>
    <td><input type="text" name="productName" size="30"></td>
    <td>&nbsp;<%=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 + -