public static JSONArray getProductsJson(HttpServletRequest request, List list) throws JSONException, ServiceException { Iterator itr = list.iterator(); JSONArray jArr = new JSONArray(); Producttype producttype = new Producttype(); String productid = request.getParameter("productid"); Boolean nonSaleInventory = Boolean.parseBoolean((String) request.getParameter("loadInventory")); while (itr.hasNext()) { Object[] row = (Object[]) itr.next(); Product product = (Product) row[0]; Product parentProduct = product.getParent(); if (product.getID().equals(productid)) continue; ProductCyclecount pcObject = (ProductCyclecount) row[8]; JSONObject obj = new JSONObject(); obj.put("productid", product.getID()); obj.put("productname", product.getName()); obj.put("desc", product.getDescription()); UnitOfMeasure uom = product.getUnitOfMeasure(); obj.put("uomid", uom == null ? "" : uom.getID()); obj.put("uomname", uom == null ? "" : uom.getName()); obj.put("precision", uom == null ? 0 : (Integer) uom.getAllowedPrecision()); obj.put("leadtime", product.getLeadTimeInDays()); obj.put("syncable", product.isSyncable()); obj.put("reorderlevel", product.getReorderLevel()); obj.put("reorderquantity", product.getReorderQuantity()); obj.put( "purchaseaccountid", (product.getPurchaseAccount() != null ? product.getPurchaseAccount().getID() : "")); obj.put( "salesaccountid", (product.getSalesAccount() != null ? product.getSalesAccount().getID() : "")); obj.put( "purchaseretaccountid", (product.getPurchaseReturnAccount() != null ? product.getPurchaseReturnAccount().getID() : "")); obj.put( "salesretaccountid", (product.getSalesReturnAccount() != null ? product.getSalesReturnAccount().getID() : "")); obj.put("vendor", (product.getVendor() != null ? product.getVendor().getID() : "")); obj.put("vendornameid", (product.getVendor() != null ? product.getVendor().getName() : "")); obj.put( "producttype", (product.getProducttype() != null ? product.getProducttype().getID() : "")); obj.put( "vendorphoneno", (product.getVendor() != null ? product.getVendor().getContactNumber() : "")); obj.put("vendoremail", (product.getVendor() != null ? product.getVendor().getEmail() : "")); obj.put("type", (product.getProducttype() != null ? product.getProducttype().getName() : "")); obj.put("pid", product.getProductid()); obj.put("parentuuid", parentProduct == null ? "" : parentProduct.getID()); obj.put("parentid", parentProduct == null ? "" : parentProduct.getProductid()); obj.put("parentname", parentProduct == null ? "" : parentProduct.getName()); obj.put("level", row[1]); obj.put("leaf", row[2]); obj.put("purchaseprice", row[3]); obj.put("saleprice", row[4]); obj.put("quantity", (row[5] == null ? 0 : row[5])); obj.put("initialquantity", (row[6] == null ? 0 : row[6])); obj.put("initialprice", (row[7] == null ? 0 : row[7])); obj.put("salespricedatewise", (row[9] == null ? 0 : row[9])); obj.put("purchasepricedatewise", (row[10] == null ? 0 : row[10])); obj.put("initialsalesprice", (row[11] == null ? 0 : row[11])); obj.put("ccountinterval", pcObject != null ? pcObject.getCountInterval() : ""); obj.put("ccounttolerance", pcObject != null ? pcObject.getTolerance() : ""); SimpleDateFormat sdf = new SimpleDateFormat("MMMM d, yyyy hh:mm:ss aa"); // obj.put("createdon", (row[12]==null?"":sdf.format(row[12]))); // jArr.put(obj); if (nonSaleInventory && obj.get("producttype").equals(producttype.Inventory_Non_Sales)) { // Do Nothing } else { jArr.put(obj); } } return jArr; }
@Override public KwlReturnObject updateMassAccount(JSONObject jobj) throws ServiceException { List ll = new ArrayList(); String hqlVarPart = ""; List<Object> params = new ArrayList<Object>(); int dl = 0; try { String companyid = null; String userid = null; String[] accountids = (String[]) jobj.get("accountid"); if (jobj.has("accountname")) { hqlVarPart += " accountname = ?,"; params.add(jobj.getString("accountname")); } if (jobj.has("accounttypeid")) { hqlVarPart += " crmCombodataByAccounttypeid = ?,"; params.add(get(DefaultMasterItem.class, jobj.getString("accounttypeid"))); } if (jobj.has("companyid")) { hqlVarPart += " company = ?,"; params.add(get(Company.class, jobj.getString("companyid"))); } if (jobj.has("description")) { hqlVarPart += " description = ?,"; params.add(jobj.getString("description")); } if (jobj.has("website")) { hqlVarPart += " website = ?,"; params.add(jobj.getString("website")); } if (jobj.has("email")) { hqlVarPart += " email = ?,"; params.add(jobj.getString("email")); } if (jobj.has("address")) { hqlVarPart += " mailstreet = ?,"; params.add(jobj.getString("address")); } if (jobj.has("productid")) { saveAccountProducts(accountids, jobj.getString("productid").split(",")); } if (jobj.has("price")) { hqlVarPart += " price = ?,"; params.add(jobj.getString("price")); } if (jobj.has("phone")) { hqlVarPart += " phone = ?,"; params.add(jobj.getString("phone")); } if (jobj.has("revenue")) { hqlVarPart += " revenue = ?,"; params.add(jobj.getString("revenue")); } if (jobj.has("industryid")) { hqlVarPart += " crmCombodataByIndustryid = ?,"; params.add(get(DefaultMasterItem.class, jobj.getString("industryid"))); } if (jobj.has("updatedon")) { hqlVarPart += " updatedOn = ?,"; params.add(jobj.getLong("updatedon")); } if (jobj.has("createdon")) { Long createdOn = jobj.getLong("createdon"); hqlVarPart += " createdOn = ?,"; params.add(createdOn); } if (jobj.has("userid")) { hqlVarPart += " usersByUpdatedbyid = ?,"; params.add(get(User.class, jobj.getString("userid"))); } if (jobj.has("accountownerid")) { setMainAccOwner(accountids, jobj.getString("accountownerid")); } if (jobj.has("validflag")) { hqlVarPart += " validflag = ?,"; params.add(Integer.parseInt(jobj.getString("validflag"))); } if (jobj.has("deleteflag")) { hqlVarPart += " deleteflag = ?,"; params.add(Integer.parseInt(jobj.getString("deleteflag"))); String query = "delete from AccountProducts where accountid.accountid in (:accountids)"; Map map = new HashMap(); map.put("accountids", accountids); executeUpdate(query, null, map); } if (jobj.has("CrmAccountCustomDataobj") && jobj.getBoolean("CrmAccountCustomDataobj")) { linkCustomData(); } if (jobj.has("leadid")) { hqlVarPart += " crmLead = ?,"; params.add(get(CrmLead.class, jobj.getString("leadid"))); } hqlVarPart = hqlVarPart.substring(0, Math.max(0, hqlVarPart.lastIndexOf(','))); String hql = "update CrmAccount set " + hqlVarPart + " where accountid in (:accountids)"; Map map = new HashMap(); map.put("accountids", accountids); executeUpdate(hql, params.toArray(), map); } catch (JSONException e) { throw ServiceException.FAILURE("crmAccountDAOImpl.updateMassAccount : " + e.getMessage(), e); } catch (DataAccessException e) { throw ServiceException.FAILURE("crmAccountDAOImpl.updateMassAccount : " + e.getMessage(), e); } catch (Exception e) { throw ServiceException.FAILURE("crmAccountDAOImpl.updateMassAccount : " + e.getMessage(), e); } return new KwlReturnObject(true, KWLErrorMsgs.S01, "", ll, dl); }