|
@@ -1,6 +1,7 @@
|
|
|
package org.linlinjava.litemall.wx.web;
|
|
package org.linlinjava.litemall.wx.web;
|
|
|
|
|
|
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.apache.commons.logging.Log;
|
|
import org.apache.commons.logging.Log;
|
|
|
import org.apache.commons.logging.LogFactory;
|
|
import org.apache.commons.logging.LogFactory;
|
|
|
import org.linlinjava.litemall.core.system.SystemConfig;
|
|
import org.linlinjava.litemall.core.system.SystemConfig;
|
|
@@ -14,10 +15,7 @@ import org.springframework.validation.annotation.Validated;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
-import java.util.ArrayList;
|
|
|
|
|
-import java.util.HashMap;
|
|
|
|
|
-import java.util.List;
|
|
|
|
|
-import java.util.Map;
|
|
|
|
|
|
|
+import java.util.*;
|
|
|
|
|
|
|
|
import static org.linlinjava.litemall.wx.util.WxResponseCode.GOODS_NO_STOCK;
|
|
import static org.linlinjava.litemall.wx.util.WxResponseCode.GOODS_NO_STOCK;
|
|
|
import static org.linlinjava.litemall.wx.util.WxResponseCode.GOODS_UNSHELVE;
|
|
import static org.linlinjava.litemall.wx.util.WxResponseCode.GOODS_UNSHELVE;
|
|
@@ -60,7 +58,22 @@ public class WxCartController {
|
|
|
return ResponseUtil.unlogin();
|
|
return ResponseUtil.unlogin();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- List<LitemallCart> cartList = cartService.queryByUid(userId);
|
|
|
|
|
|
|
+ List<LitemallCart> list = cartService.queryByUid(userId);
|
|
|
|
|
+ List<LitemallCart> cartList = new ArrayList<>();
|
|
|
|
|
+ // TODO
|
|
|
|
|
+ // 如果系统检查商品已删除或已下架,则系统自动删除。
|
|
|
|
|
+ // 更好的效果应该是告知用户商品失效,允许用户点击按钮来清除失效商品。
|
|
|
|
|
+ for (LitemallCart cart : list) {
|
|
|
|
|
+ LitemallGoods goods = goodsService.findById(cart.getGoodsId());
|
|
|
|
|
+ if (goods == null || !goods.getIsOnSale()) {
|
|
|
|
|
+ cartService.deleteById(cart.getId());
|
|
|
|
|
+ logger.debug("系统自动删除失效购物车商品 goodsId=" + cart.getGoodsId() + " productId=" + cart.getProductId());
|
|
|
|
|
+ }
|
|
|
|
|
+ else{
|
|
|
|
|
+ cartList.add(cart);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
Integer goodsCount = 0;
|
|
Integer goodsCount = 0;
|
|
|
BigDecimal goodsAmount = new BigDecimal(0.00);
|
|
BigDecimal goodsAmount = new BigDecimal(0.00);
|
|
|
Integer checkedGoodsCount = 0;
|
|
Integer checkedGoodsCount = 0;
|
|
@@ -133,7 +146,12 @@ public class WxCartController {
|
|
|
cart.setId(null);
|
|
cart.setId(null);
|
|
|
cart.setGoodsSn(goods.getGoodsSn());
|
|
cart.setGoodsSn(goods.getGoodsSn());
|
|
|
cart.setGoodsName((goods.getName()));
|
|
cart.setGoodsName((goods.getName()));
|
|
|
- cart.setPicUrl(goods.getPicUrl());
|
|
|
|
|
|
|
+ if(StringUtils.isEmpty(product.getUrl())){
|
|
|
|
|
+ cart.setPicUrl(goods.getPicUrl());
|
|
|
|
|
+ }
|
|
|
|
|
+ else{
|
|
|
|
|
+ cart.setPicUrl(product.getUrl());
|
|
|
|
|
+ }
|
|
|
cart.setPrice(product.getPrice());
|
|
cart.setPrice(product.getPrice());
|
|
|
cart.setSpecifications(product.getSpecifications());
|
|
cart.setSpecifications(product.getSpecifications());
|
|
|
cart.setUserId(userId);
|
|
cart.setUserId(userId);
|
|
@@ -202,7 +220,12 @@ public class WxCartController {
|
|
|
cart.setId(null);
|
|
cart.setId(null);
|
|
|
cart.setGoodsSn(goods.getGoodsSn());
|
|
cart.setGoodsSn(goods.getGoodsSn());
|
|
|
cart.setGoodsName((goods.getName()));
|
|
cart.setGoodsName((goods.getName()));
|
|
|
- cart.setPicUrl(goods.getPicUrl());
|
|
|
|
|
|
|
+ if(StringUtils.isEmpty(product.getUrl())){
|
|
|
|
|
+ cart.setPicUrl(goods.getPicUrl());
|
|
|
|
|
+ }
|
|
|
|
|
+ else{
|
|
|
|
|
+ cart.setPicUrl(product.getUrl());
|
|
|
|
|
+ }
|
|
|
cart.setPrice(product.getPrice());
|
|
cart.setPrice(product.getPrice());
|
|
|
cart.setSpecifications(product.getSpecifications());
|
|
cart.setSpecifications(product.getSpecifications());
|
|
|
cart.setUserId(userId);
|
|
cart.setUserId(userId);
|