提交 e65c294b authored 作者: 梁业锦's avatar 梁业锦 💬

修复 afrieshop 的bug

上级 e027f6dc
......@@ -57,8 +57,8 @@ public class AfricaShopItemSpider implements IItemSpider {
ProductResponse productResponse = new ProductResponse();
// 含有商品的属性,设置为true
productResponse.setPropFlag(true);
// 库存信息
productResponse.setStockFlag(false);
// 库存信息
productResponse.setStockFlag(true);
// 库存信息,如果没有可使用的库存信息则默认为999
DynStock dynStock = new DynStock();
dynStock.setSellableQuantity(9999);
......@@ -68,8 +68,6 @@ public class AfricaShopItemSpider implements IItemSpider {
List<ProductPromotion> promotionList = new ArrayList<>();
// 商品的属性,常用的商品属性为颜色与尺码
Map<String, Set<ProductProp>> productPropSet = new HashMap<>(16);
Set<ProductProp> propSet1 = new HashSet<>(16);
Set<ProductProp> propSet2 = new HashSet<>(16);
// 商品的基本属性
ItemInfo itemInfo = new ItemInfo();
......@@ -79,6 +77,7 @@ public class AfricaShopItemSpider implements IItemSpider {
itemInfo.setShopName(PlatformEnum.AfriEshop.getValue());
itemInfo.setShopUrl("https://www.afrieshop.com/");
itemInfo.setTitle(resultObj.getString("title"));
itemInfo.setPic(resultObj.getString("featured_image"));
//////////////////////////////////// 获取商品基本信息End /////////////////////////
// 该商品拥有的属性
......@@ -98,18 +97,26 @@ public class AfricaShopItemSpider implements IItemSpider {
String title = variantsObj.getString("title");
String[] optionStr = title.split("/");
for (int j = 0; j < optionStr.length; j++) {
optionStr[j] = optionStr[j].trim();
}
for (int j = 0; j < options.size(); j++) {
String optionName = options.get(j); // 商品的属性名
String option = optionStr[j].trim(); // 商品的属性值
//商品属性
Set<ProductProp> propSet = new HashSet<>();
ProductProp productProp = new ProductProp();
String optionName = options.get(j); // 商品的属性名
String option = optionStr[j]; // 商品的属性值
// 获取图片信息,仅在这个 featured_image 节点获取
if ("Color".equals(optionName)) {
if (variantsObj.containsKey("featured_image") && !"null".equals(variantsObj.getString("featured_image"))) {
productProp.setImage(variantsObj.getJSONObject("featured_image").getString("src"));
} else {
productProp.setImage(resultObj.getString("featured_image"));
}
}
productProp.setPropId(option);
productProp.setPropName(option);
propSet.add(productProp);
......@@ -122,6 +129,7 @@ public class AfricaShopItemSpider implements IItemSpider {
}
}
// 获取库存id
String skuStr = "";
if (optionStr.length > 1) {
skuStr = ";" + optionStr[0] + ";" + optionStr[1] + ";";
......@@ -145,14 +153,12 @@ public class AfricaShopItemSpider implements IItemSpider {
if (productSkuStockList == null) {
productSkuStockList = new ArrayList<>();
}
ProductSkuStock productSkuStock = new ProductSkuStock();
productSkuStock.setSellableQuantity(999);
productSkuStock.setSkuStr(skuStr);
productSkuStockList.add(productSkuStock);
dynStock.setProductSkuStockList(productSkuStockList);
////////////////////////////////////获取库存 END/////////////
}
productResponse.setProductPropSet(productPropSet);
......@@ -161,6 +167,11 @@ public class AfricaShopItemSpider implements IItemSpider {
productResponse.setOriginalPriceList(originalPriceList);
productResponse.setItemInfo(itemInfo);
productResponse.setDynStock(dynStock);
String price = resultObj.getString("price");
BigDecimal priceOld = new BigDecimal(price);
BigDecimal div = new BigDecimal("100");
BigDecimal priceNew = priceOld.divide(div, 2, BigDecimal.ROUND_DOWN);
productResponse.setPrice(priceNew.toString());
return productResponse;
}
......
......@@ -14,10 +14,6 @@ public class ItemInfo {
* 商品标题
*/
private String title;
/**
* 商品的品名
*/
private String variety;
/**
* 商品主图
*/
......@@ -31,14 +27,6 @@ public class ItemInfo {
*/
private String shopUrl;
public String getVariety() {
return variety;
}
public void setVariety(String variety) {
this.variety = variety;
}
public String getItemId() {
return itemId;
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论