Ejemplo n.º 1
0
 public static String browseToItem(ModelSearch modelSearch, String name) {
   ItemSearch itemSearch = new ItemSearch();
   if (modelSearch.getCategoryId() != null && !modelSearch.getCategoryId().trim().equals("")) {
     itemSearch.setCategoryIds(new ArrayList<String>());
     itemSearch.getCategoryIds().add(modelSearch.getCategoryId());
   }
   itemSearch.setKeyword(modelSearch.getKeyword());
   itemSearch.setManufacturerIds(modelSearch.getManufacturerIds());
   itemSearch.setProperties(modelSearch.getProperties());
   return UrlUtils.browseUrl(itemSearch, name);
 }
Ejemplo n.º 2
0
  /**
   * Danh sách sản phẩm cần review
   *
   * @param modelMap
   * @param session
   * @param page
   * @return
   */
  @RequestMapping(
      value = {"/reviewitem"},
      method = RequestMethod.GET)
  public String reviewList(
      ModelMap modelMap,
      HttpSession session,
      @RequestParam(value = "page", defaultValue = "0") int page) {

    ItemSearch itemSearch = new ItemSearch();
    itemSearch.setStatus(4);
    List<String> cateIds = new ArrayList<>();
    List<String> shopCateIds = new ArrayList<>();
    List<String> manufIds = new ArrayList<>();
    List<String> modelIds = new ArrayList<>();
    if (itemSearch.getCategoryIds() == null) {
      itemSearch.setCategoryIds(new ArrayList<String>());
    }
    itemSearch.setSource(ItemSource.SELLER);
    long createTime = 1388509200 * 1000L;
    itemSearch.setCreateTimeFrom(createTime);
    itemSearch.setCreateTimeTo(System.currentTimeMillis());
    if (session.getAttribute("itemSearch") != null && page != 0) {
      itemSearch = (ItemSearch) session.getAttribute("itemSearch");
    } else {
      session.setAttribute("itemSearch", itemSearch);
    }
    Map<String, Object> parentCategorys = new HashMap<>();
    getAncestors(itemSearch, parentCategorys);

    if (page > 0) {
      itemSearch.setPageIndex(page - 1);
    } else {
      itemSearch.setPageIndex(0);
    }
    itemSearch.setPageSize(50);

    DataPage<Item> itemPage = itemService.searchMongo(itemSearch);
    for (Item item : itemPage.getData()) {
      if (item.getCategoryId() != null
          && !item.getCategoryId().equals("")
          && !cateIds.contains(item.getCategoryId())) {
        cateIds.add(item.getCategoryId());
      }
      if (item.getShopCategoryId() != null
          && !item.getShopCategoryId().equals("")
          && !shopCateIds.contains(item.getShopCategoryId())) {
        shopCateIds.add(item.getShopCategoryId());
      }
      if (item.getManufacturerId() != null
          && !item.getManufacturerId().equals("")
          && !manufIds.contains(item.getManufacturerId())) {
        manufIds.add(item.getManufacturerId());
      }
      if (item.getModelId() != null
          && !item.getModelId().equals("")
          && !modelIds.contains(item.getModelId())) {
        modelIds.add(item.getModelId());
      }
    }
    for (Item item : itemPage.getData()) {
      List<String> images = new ArrayList<>();
      if (item != null && item.getImages() != null && !item.getImages().isEmpty()) {
        for (String img : item.getImages()) {
          images.add(
              imageService.getUrl(img).thumbnail(200, 200, "outbound").getUrl(item.getName()));
        }
        item.setImages(images);
      }
      if (item.getSellerName() == null || item.getSellerName().equals("")) {
        try {
          User seller = userService.get(item.getSellerId());
          item.setSellerName(seller.getEmail());
        } catch (Exception ex) {
        }
      }
    }
    List<City> cities = cityService.list();
    modelMap.put("itemSearch", itemSearch);
    modelMap.put("itemPage", itemPage);
    modelMap.put("cities", cities);
    modelMap.put("itemCates", categoryService.getCategories(cateIds));
    modelMap.put("itemShopCates", shopCategoryService.get(shopCateIds));
    modelMap.put("itemManuf", manufacturerService.getManufacturers(manufIds));
    modelMap.put("itemModels", modelService.getModels(modelIds));
    modelMap.put(
        "clientScript",
        "category = "
            + gson.toJson(categoryService.getChilds(null))
            + ",cities="
            + gson.toJson(cities)
            + ";reviewitem.init({parentCategorys:"
            + gson.toJson(parentCategorys)
            + ", categoryId:'"
            + (itemSearch.getCategoryIds().isEmpty() ? "" : itemSearch.getCategoryIds().get(0))
            + "'});");
    return "cp.item.review";
  }
Ejemplo n.º 3
0
  /**
   * Tìm kiếm tất cả sản phẩm
   *
   * @param itemSearch
   * @param session
   * @param modelMap
   * @return
   */
  @RequestMapping(
      value = {"/reviewitem"},
      method = RequestMethod.POST)
  public String reviewSearch(
      @ModelAttribute("itemSearch") ItemSearch itemSearch, HttpSession session, ModelMap modelMap) {
    Map<String, Object> parentCategorys = new HashMap<>();
    List<String> cateIds = new ArrayList<>();
    List<String> shopCateIds = new ArrayList<>();
    List<String> manufIds = new ArrayList<>();
    List<String> modelIds = new ArrayList<>();

    itemSearch.setPageIndex(0);
    itemSearch.setPageSize(50);
    if (itemSearch.getCategoryId() != null && !itemSearch.getCategoryId().equals("")) {
      itemSearch.setCategoryIds(new ArrayList<String>());
      itemSearch.getCategoryIds().add(itemSearch.getCategoryId());
    }
    getAncestors(itemSearch, parentCategorys);
    session.setAttribute("itemSearch", itemSearch);
    DataPage<Item> itemPage = itemService.searchMongo(itemSearch);
    for (Item item : itemPage.getData()) {
      if (item.getCategoryId() != null
          && !item.getCategoryId().equals("")
          && !cateIds.contains(item.getCategoryId())) {
        cateIds.add(item.getCategoryId());
      }
      if (item.getShopCategoryId() != null
          && !item.getShopCategoryId().equals("")
          && !shopCateIds.contains(item.getShopCategoryId())) {
        shopCateIds.add(item.getShopCategoryId());
      }
      if (item.getManufacturerId() != null
          && !item.getManufacturerId().equals("")
          && !manufIds.contains(item.getManufacturerId())) {
        manufIds.add(item.getManufacturerId());
      }
      if (item.getModelId() != null
          && !item.getModelId().equals("")
          && !modelIds.contains(item.getModelId())) {
        modelIds.add(item.getModelId());
      }
    }
    for (Item item : itemPage.getData()) {
      List<String> images = new ArrayList<>();
      if (item != null && item.getImages() != null && !item.getImages().isEmpty()) {
        for (String img : item.getImages()) {
          images.add(
              imageService.getUrl(img).thumbnail(200, 200, "outbound").getUrl(item.getName()));
        }
        item.setImages(images);
      }
      if (item.getSellerName() == null || item.getSellerName().equals("")) {
        try {
          User seller = userService.get(item.getSellerId());
          item.setSellerName(seller.getEmail());
        } catch (Exception ex) {
        }
      }
    }
    if (itemSearch.getCategoryIds() == null) {
      itemSearch.setCategoryIds(new ArrayList<String>());
    }
    List<City> cities = cityService.list();
    modelMap.put("itemSearch", itemSearch);
    modelMap.put("itemPage", itemPage);
    modelMap.put("cities", cities);
    modelMap.put("itemCates", categoryService.getCategories(cateIds));
    modelMap.put("itemShopCates", shopCategoryService.get(shopCateIds));
    modelMap.put("itemManuf", manufacturerService.getManufacturers(manufIds));
    modelMap.put("itemModels", modelService.getModels(modelIds));
    modelMap.put(
        "clientScript",
        "category = "
            + gson.toJson(categoryService.getChilds(null))
            + ",cities="
            + gson.toJson(cities)
            + ";reviewitem.init({parentCategorys:"
            + gson.toJson(parentCategorys)
            + ", categoryId:'"
            + (itemSearch.getCategoryIds().isEmpty() ? "" : itemSearch.getCategoryIds().get(0))
            + "'});");
    return "cp.item.review";
  }
Ejemplo n.º 4
0
 public static String browse(String id, String name) {
   ItemSearch itemSearch = new ItemSearch();
   itemSearch.setCategoryIds(new ArrayList<String>());
   itemSearch.getCategoryIds().add(id);
   return UrlUtils.browseUrl(itemSearch, name);
 }
Ejemplo n.º 5
0
  public static String browseUrl(ItemSearch sourceItemSearch, String name, String strChange) {
    ItemSearch itemSearch;
    try {
      itemSearch = (ItemSearch) BeanUtils.cloneBean(sourceItemSearch);
      itemSearch.setManufacturerIds(new ArrayList<>(sourceItemSearch.getManufacturerIds()));
      itemSearch.setModelIds(new ArrayList<>(sourceItemSearch.getModelIds()));
      itemSearch.setCityIds(new ArrayList<>(sourceItemSearch.getCityIds()));
      itemSearch.setProperties(new ArrayList<>(sourceItemSearch.getProperties()));
    } catch (IllegalAccessException
        | InstantiationException
        | InvocationTargetException
        | NoSuchMethodException ex) {
      itemSearch = new ItemSearch();
    }
    if (strChange != null && !strChange.equals("")) {
      List<Map<String, String>> changes =
          (List<Map<String, String>>)
              JsonUtils.decode(strChange, new TypeToken<List<Map<String, String>>>() {}.getType());

      for (Map<String, String> ch : changes) {
        String op = ch.get("op");
        String key = ch.get("key");
        String val = ch.get("val");
        if (key.equals("cid")) {
          if (op.equals("mk")) {
            itemSearch.setCategoryIds(new ArrayList<String>());
            itemSearch.getCategoryIds().add(val);
          } else if (op.equals("rm")) {
            itemSearch.setCategoryIds(null);
            itemSearch.setCategoryId(null);
          }
        }
        if (key.equals("keyword")) {
          if (op.equals("mk")) {
            itemSearch.setKeyword(val);
          } else if (op.equals("rm")) {
            itemSearch.setKeyword(null);
          }
        }
        if (key.equals("sellerId")) {
          if (op.equals("mk")) {
            itemSearch.setSellerId(val);
          } else if (op.equals("rm")) {
            itemSearch.setSellerId(null);
          }
        }
        if (key.equals("manufacturers")) {
          if (op.equals("mk")) {
            itemSearch.getManufacturerIds().remove(val);
            itemSearch.getManufacturerIds().add(val);
          } else if (op.equals("rm")) {
            itemSearch.getManufacturerIds().remove(val);
          } else if (op.equals("cl")) {
            itemSearch.getManufacturerIds().clear();
          }
        }
        if (key.equals("models")) {
          if (op.equals("mk")) {
            itemSearch.getModelIds().remove(val);
            itemSearch.getModelIds().add(val);
          } else if (op.equals("rm")) {
            itemSearch.getModelIds().remove(val);
          } else if (op.equals("cl")) {
            itemSearch.getModelIds().clear();
          }
        }
        if (key.equals("cities")) {
          if (op.equals("mk")) {
            itemSearch.getCityIds().remove(val);
            itemSearch.getCityIds().add(val);
          } else if (op.equals("rm")) {
            itemSearch.getCityIds().remove(val);
          } else if (op.equals("cl")) {
            itemSearch.getCityIds().clear();
          }
        }
        if (key.equals("properties")) {
          PropertySearch ps =
              (PropertySearch) JsonUtils.decode(val, new TypeToken<PropertySearch>() {}.getType());
          if (op.equals("mk")) {
            itemSearch.getProperties().remove(ps);
            itemSearch.getProperties().add(ps);
          } else if (op.equals("rm")) {
            itemSearch.getProperties().remove(ps);
          } else if (op.equals("cl")) {
            itemSearch.getProperties().clear();
          }
        }
        if (key.equals("freeship")) {
          if (op.equals("mk")) {
            itemSearch.setFreeShip(true);
          } else if (op.equals("rm")) {
            itemSearch.setFreeShip(false);
          }
        }
        if (key.equals("cod")) {
          if (op.equals("mk")) {
            itemSearch.setCod(true);
          } else if (op.equals("rm")) {
            itemSearch.setCod(false);
          }
        }
        if (key.equals("onlinepayment")) {
          if (op.equals("mk")) {
            itemSearch.setOnlinePayment(true);
          } else if (op.equals("rm")) {
            itemSearch.setOnlinePayment(false);
          }
        }
        if (key.equals("promotion")) {
          if (op.equals("mk")) {
            itemSearch.setPromotion(true);
          } else if (op.equals("rm")) {
            itemSearch.setPromotion(false);
          }
        }
        if (key.equals("promotionId")) {
          if (op.equals("mk")) {
            itemSearch.setPromotionId(val);
          } else if (op.equals("rm")) {
            itemSearch.setPromotionId(null);
          }
        }
        if (key.equals("type")) {
          try {
            if (val.equals("BUYNOW")) {
              itemSearch.setListingType(ListingType.BUYNOW);
            } else if (val.equals("AUCTION")) {
              itemSearch.setListingType(ListingType.AUCTION);
            } else {
              itemSearch.setListingType(null);
            }
          } catch (NumberFormatException ex) {
          }
        }
        if (key.equals("condition")) {
          try {
            if (val.equals("NEW")) {
              itemSearch.setCondition(Condition.NEW);
            } else if (val.equals("OLD")) {
              itemSearch.setCondition(Condition.OLD);
            } else {
              itemSearch.setCondition(null);
            }
          } catch (NumberFormatException ex) {
          }
        }
        if (key.equals("pricefrom")) {
          try {
            itemSearch.setPriceFrom(Integer.parseInt(val));
          } catch (NumberFormatException ex) {
          }
        }
        if (key.equals("priceto")) {
          try {
            itemSearch.setPriceTo(Integer.parseInt(val));
          } catch (NumberFormatException ex) {
          }
        }
        if (key.equals("order")) {
          try {
            itemSearch.setOrderBy(Integer.parseInt(val));
          } catch (NumberFormatException ex) {
          }
        }
        if (key.equals("page")) {
          try {
            itemSearch.setPageIndex(Integer.parseInt(val));
          } catch (NumberFormatException ex) {
          }
        }
      }
    }
    return UrlUtils.browseUrl(itemSearch, name);
  }