1.下架规格未查询出修复

This commit is contained in:
2024-08-09 14:37:53 +08:00
parent f4af3a279f
commit 7f8a658143

View File

@@ -242,8 +242,10 @@ public class ProductService {
// 提取所有 value 的列表 // 提取所有 value 的列表
for (int i = 0; i < tagSnaps.size(); i++) { for (int i = 0; i < tagSnaps.size(); i++) {
JSONObject jsonObject = tagSnaps.getJSONObject(i); JSONObject jsonObject = tagSnaps.getJSONObject(i);
String[] values = jsonObject.getString("value").split(","); if (jsonObject.containsKey("value")) {
valuesList.add(Arrays.asList(values)); String[] values = jsonObject.getString("value").split(",");
valuesList.add(Arrays.asList(values));
}
} }
// 生成所有可能的排列组合 // 生成所有可能的排列组合
generateCombinations(valuesList, 0, new ArrayList<>(), result); generateCombinations(valuesList, 0, new ArrayList<>(), result);
@@ -305,7 +307,7 @@ public class ProductService {
TbProductSkuResult skuResult = tbProductSkuResultMapper.selectByPrimaryKey(it.getId()); TbProductSkuResult skuResult = tbProductSkuResultMapper.selectByPrimaryKey(it.getId());
// 上下架对应的sku // 上下架对应的sku
HashSet<String> specSet = new HashSet<>(); // HashSet<String> specSet = new HashSet<>();
AtomicDouble sum = new AtomicDouble(0.0); AtomicDouble sum = new AtomicDouble(0.0);
BigDecimal lowerPrice = null; BigDecimal lowerPrice = null;
for (TbProductSku item : tbProductSkus) { for (TbProductSku item : tbProductSkus) {
@@ -317,9 +319,9 @@ public class ProductService {
} }
String specSnap = item.getSpecSnap(); String specSnap = item.getSpecSnap();
if (specSnap != null) { // if (specSnap != null) {
specSet.addAll(Arrays.asList(specSnap.split(","))); // specSet.addAll(Arrays.asList(specSnap.split(",")));
} // }
} }
//销量 //销量
it.setStockNumber(sum.intValue()); it.setStockNumber(sum.intValue());
@@ -328,32 +330,32 @@ public class ProductService {
} }
//售价 //售价
it.setLowPrice(lowerPrice); it.setLowPrice(lowerPrice);
String tagSnap = skuResult != null ? skuResult.getTagSnap() : null; // String tagSnap = skuResult != null ? skuResult.getTagSnap() : null;
if (tagSnap != null) { // if (tagSnap != null) {
JSONArray tagSnaps = JSONObject.parseArray(tagSnap); // JSONArray tagSnaps = JSONObject.parseArray(tagSnap);
JSONObject snapJSON; // JSONObject snapJSON;
JSONArray finalSnap = new JSONArray(); // JSONArray finalSnap = new JSONArray();
for (Object snap : tagSnaps) { // for (Object snap : tagSnaps) {
snapJSON = (JSONObject) snap; // snapJSON = (JSONObject) snap;
String values = snapJSON.getString("value"); // String values = snapJSON.getString("value");
String finalValues = ""; // String finalValues = "";
if (StrUtil.isNotBlank(values)) { // if (StrUtil.isNotBlank(values)) {
String[] valueList = values.split(","); // String[] valueList = values.split(",");
for (String value : valueList) { // for (String value : valueList) {
if (specSet.contains(value)) { // if (specSet.contains(value)) {
finalValues = finalValues + (value) + ","; // finalValues = finalValues + (value) + ",";
} // }
} // }
if (StrUtil.isNotBlank(finalValues)) { // if (StrUtil.isNotBlank(finalValues)) {
finalValues = StrUtil.removeSuffix(finalValues, ","); // finalValues = StrUtil.removeSuffix(finalValues, ",");
snapJSON.put("value", finalValues); // snapJSON.put("value", finalValues);
finalSnap.add(snapJSON); // finalSnap.add(snapJSON);
} // }
} // }
} // }
//sku Result // //sku Result
skuResult.setTagSnap(finalSnap.toJSONString()); // skuResult.setTagSnap(finalSnap.toJSONString());
} // }
it.setProductSkuResult(skuResult); it.setProductSkuResult(skuResult);
}); });
return products; return products;