Просмотр исходного кода

Merge branch 'master' of http://git.iamberry.com/hexiugang/iamberry-common-parent

# Conflicts:
#	iamberry-wechat-web/src/main/java/com/iamberry/wechat/filters/WechatFilter.java
liujiankang 7 лет назад
Родитель
Сommit
bea5945c66

+ 28 - 0
iamberry-common-core/src/main/java/com/iamberry/wechat/core/entity/product/ProductColor.java

@@ -24,11 +24,15 @@ public class ProductColor implements java.io.Serializable {
     private Integer colorStatus;        //状态    1:使用中,2:禁用
     private Integer colorPrice;			//产品市场价
     private String color69Code;			//产品69码
+    private String colorDesc;           //产品备注
     private Date colorCretaeTime;		//创建时间
     private Date colorUpdateTime;	//修改时间
     private List<SalesUserGift> salesUserGiftList; //赠品集合
     private PageBean page = new PageBean();		//分页
 
+    private Integer cartId; //购物车id
+    private Integer cartNum;//购物车数量
+
     public Integer getColorStatus() {
         return colorStatus;
     }
@@ -148,4 +152,28 @@ public class ProductColor implements java.io.Serializable {
     public void setSalesUserGiftList(List<SalesUserGift> salesUserGiftList) {
         this.salesUserGiftList = salesUserGiftList;
     }
+
+    public String getColorDesc() {
+        return colorDesc;
+    }
+
+    public void setColorDesc(String colorDesc) {
+        this.colorDesc = colorDesc;
+    }
+
+    public Integer getCartId() {
+        return cartId;
+    }
+
+    public void setCartId(Integer cartId) {
+        this.cartId = cartId;
+    }
+
+    public Integer getCartNum() {
+        return cartNum;
+    }
+
+    public void setCartNum(Integer cartNum) {
+        this.cartNum = cartNum;
+    }
 }

+ 5 - 0
iamberry-wechat-interface/src/main/java/com/iamberry/wechat/face/cart/CartService.java

@@ -173,4 +173,9 @@ public interface CartService {
 	 * @return
 	 */
 	Integer updateSendWarnNum(Order order);
+
+	/**
+	 * 根据商品id和openid查询购物车数量和ID
+	 * **/
+	CartDto getCartByOpenId(CartDto cartDto);
 }

+ 5 - 0
iamberry-wechat-service/src/main/java/com/iamberry/wechat/service/cart/CartServiceImpl.java

@@ -296,4 +296,9 @@ public class CartServiceImpl implements CartService {
 	public Integer updateSendWarnNum(Order order) {
 		return cartDao.updateSendWarnNum(order);
 	}
+
+	@Override
+	public CartDto getCartByOpenId(CartDto cartDto) {
+		return cartDao.getCartByOpenId(cartDto);
+	}
 }

+ 5 - 0
iamberry-wechat-service/src/main/java/com/iamberry/wechat/service/cart/dao/CartDao.java

@@ -174,4 +174,9 @@ public interface CartDao {
 	 * @return
 	 */
 	Integer updateSendWarnNum(Order order);
+
+	/**
+	 * 根据商品id和openid查询购物车数量和ID
+	 * **/
+	CartDto getCartByOpenId(CartDto cartDto);
 }

+ 5 - 0
iamberry-wechat-service/src/main/java/com/iamberry/wechat/service/cart/dao/impl/CartDaoImpl.java

@@ -223,4 +223,9 @@ public class CartDaoImpl implements CartDao{
 	public Integer updateSendWarnNum(Order order) {
 		return cartMapper.updateSendWarnNum(order);
 	}
+
+	@Override
+	public CartDto getCartByOpenId(CartDto cartDto) {
+		return cartMapper.getCartByOpenId(cartDto);
+	}
 }

+ 5 - 0
iamberry-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/CartMapper.java

@@ -121,4 +121,9 @@ public interface CartMapper {
 	 * @return
 	 */
 	Integer updateSendWarnNum(Order order);
+
+	/**
+	 * 根据商品id和openid查询购物车数量和ID
+	 * **/
+	CartDto getCartByOpenId(CartDto cartDto);
 }

+ 11 - 0
iamberry-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/cartMapper.xml

@@ -410,4 +410,15 @@ PUBLIC
 			SALES_STATUS = #{oldStatus}
 		</if>
 	</update>
+
+	<!-- 根据商品id和openid查询购物车数量和ID -->
+	<select id="getCartByOpenId" parameterType="CartDto" resultType="CartDto">
+		SELECT
+		CART_ID cartId,
+		CART_NUM cartNum
+		FROM
+		TB_IAMBERRY_SHOP_CART
+		WHERE
+		CART_OPENID = #{cartOpenId} AND CART_COLOR_ID = #{cartColorId}
+	</select>
 </mapper>

+ 1 - 0
iamberry-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/productInfoMapper.xml

@@ -36,6 +36,7 @@
 		<result column="color_code" property="colorCode"/>
 		<result column="color_product_pic" property="colorProductPic"/>
 		<result column="color_status" property="colorStatus"/>
+		<result column="color_desc" property="colorDesc"/>
 		<result column="color_cretae_time" property="colorCretaeTime"/>
 		<result column="color_update_time" property="colorUpdateTime"/>
 		<collection property="salesUserGiftList" column="color_id" ofType="SalesUserGift" select="listGift"/>

+ 25 - 0
iamberry-wechat-web/src/main/java/com/iamberry/wechat/handles/cart/ProductInfoHandler.java

@@ -11,8 +11,11 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import com.iamberry.wechat.core.entity.admin.ShopSystemRule;
+import com.iamberry.wechat.core.entity.cart.CartDto;
 import com.iamberry.wechat.core.entity.product.*;
 import com.iamberry.wechat.core.entity.search.SearchInfo;
+import com.iamberry.wechat.face.cart.CartService;
+import com.iamberry.wechat.service.cart.dao.CartDao;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -66,6 +69,9 @@ public class ProductInfoHandler {
 
 	@Autowired
 	private SystemService systemService;
+
+	@Autowired
+	private CartService cartService;
 	/**
 	 * 首页进入商城
 	 * @param request
@@ -527,8 +533,27 @@ public class ProductInfoHandler {
 			remsg.setMessage(ResultInfo.loginOutError);
 			return remsg;
 		}
+		Member member =  wechatUtils.getUserBySession(request);
+		if (member == null || member.getUserOpenid() == null) {
+			remsg.setMessage(ResultInfo.loginOutError);
+			remsg.setStatus(false);
+			remsg.setMessage(ResultInfo.loginOutError);
+			return remsg;
+		}
 		//查询所有产品颜色
 		List<ProductColor> productColorList = productInfoService.selectColorByPid(productId);
+		if(productColorList.size() > 0){
+			for (ProductColor color : productColorList){
+				CartDto cartDto = new CartDto();
+				cartDto.setCartColorId(color.getColorId());
+				cartDto.setCartOpenId(member.getUserOpenid());
+				cartDto = cartService.getCartByOpenId(cartDto);
+				if(cartDto != null){
+					color.setCartId(cartDto.getCartId());
+					color.setCartNum(cartDto.getCartNum());
+				}
+			}
+		}
 		Map<String, Object> map = new HashMap<String, Object>();
 		map.put("productColorList", productColorList);
 		remsg.setMessage(ResultInfo.SUCCESSINFO);