Beispiel #1
0
  /**
   * 定时从在线商品中同步数据下来,行成在线数据
   *
   * @param xml
   * @return
   * @throws DocumentException
   */
  public static List<TradingListingData> getItemListElememt(String xml, String ebayAccount)
      throws Exception {
    List li = new ArrayList();
    Document document = formatStr2Doc(xml);
    Element rootElt = document.getRootElement();
    Element recommend = rootElt.element("ItemArray");
    Iterator<Element> iter = recommend.elementIterator("Item");
    String listType = "";
    while (iter.hasNext()) {
      TradingListingData item = new TradingListingData();
      Element element = iter.next();
      item.setTitle(StringEscapeUtils.escapeXml(element.elementText("Title")));
      item.setItemId(element.elementText("ItemID"));
      item.setSite(element.elementText("Site"));
      item.setSku(element.elementText("SKU"));
      item.setEbayAccount(ebayAccount);
      if ("FixedPriceItem".equals(element.elementText("ListingType"))) {
        if (element.element("Variations") != null) {
          listType = "2";
        } else {
          listType = element.elementText("ListingType");
        }
      } else {
        listType = element.elementText("ListingType");
      }
      item.setListingType(listType);
      item.setPrice(
          Double.parseDouble(element.element("SellingStatus").elementText("CurrentPrice")));
      Element shippingdes = element.element("ShippingDetails");
      if (shippingdes != null) {
        List<Element> shippingit = shippingdes.elements("ShippingServiceOptions");
        Element shippingOption = shippingit.get(0);
        if (shippingOption != null) {
          Element option = shippingOption.element("ShippingServiceCost");
          if (option != null) {
            item.setShippingPrice(Double.parseDouble(option.getText()));
          } else {
            item.setShippingPrice(0.00);
          }
        } else {
          item.setShippingPrice(0.00);
        }
      } else {
        item.setShippingPrice(0.00);
      }
      item.setQuantity(
          Long.parseLong(element.elementText("Quantity"))
              - Long.parseLong(element.element("SellingStatus").elementText("QuantitySold")));
      item.setQuantitysold(
          Long.parseLong(element.element("SellingStatus").elementText("QuantitySold")));
      Element elflag = element.element("SellingStatus").element("ListingStatus");
      if (elflag != null) {
        if (elflag.getText().equals("Active")) {
          item.setIsFlag("0");
        } else {
          item.setIsFlag("1");
        }
      } else {
        item.setIsFlag("1");
      }
      item.setSubtitle("");
      item.setBuyitnowprice(
          Double.parseDouble(
              element.element("ListingDetails").elementText("ConvertedBuyItNowPrice")));
      item.setReserveprice(
          Double.parseDouble(
              element.element("ListingDetails").elementText("ConvertedReservePrice")));
      item.setListingduration(element.elementText("ListingDuration"));
      item.setStarttime(
          DateUtils.returnDate(element.element("ListingDetails").elementText("StartTime")));
      item.setEndtime(
          DateUtils.returnDate(element.element("ListingDetails").elementText("EndTime")));
      String url = element.element("PictureDetails").elementText("GalleryURL");

      // item.setPicUrl(url.substring(0,url.lastIndexOf("_")+1)+"14"+url.substring(url.lastIndexOf(".")));
      item.setPicUrl("http://thumbs.ebaystatic.com/pict/" + item.getItemId() + ".jpg");
      li.add(item);
    }
    return li;
  }