浏览代码

Merge branch 'master' of http://git.iamberry.com/liuzhiwei/iamberry-common-tooth

# Conflicts:
#	tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/coupon/CouponItemDto.java
#	tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/couponItemMapper.xml
wangxiaoming 7 年之前
父节点
当前提交
9e5ad56394

+ 1 - 1
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/cartMapper.xml

@@ -22,7 +22,7 @@ PUBLIC
 			LEFT JOIN TB_IAMBERRY_PRODUCT_COLOR pc ON c.CART_COLOR_ID = pc.COLOR_ID 
 		WHERE
 			C.CART_OPENID = #{openId} 
-		ORDER BY C.CART_ID DESC
+		ORDER BY pc.color_status ASC , C.CART_ID DESC
 	</select>
 	
 	<select id="getCartNumByCartOpenId" parameterType="String" resultType="Integer">

+ 3 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/useIntegralMapper.xml

@@ -138,6 +138,9 @@
             <if test="stayStatus != null">
                 AND stay_status = #{stayStatus}
             </if>
+            <if test="orderId != null and orderId != ''">
+                AND sales_orderid = #{orderId}
+            </if>
             <if test="userOpenId != null">
                 AND user_openid = #{userOpenId}
             </if>

+ 12 - 7
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/order/OrderHandler.java

@@ -498,24 +498,29 @@ public class OrderHandler {
 	public ResultMsg getOrderIntegral(@RequestParam(value = "orderId") String orderId) {
 		ResultMsg msg = new ResultMsg();
 		msg.setResultCode(ResultInfo.ERRORCODE);
-
 		//Integer orderStatus = cartService.selectOrderStatusByOrderId(orderId);
-
+		if(orderId == null || "".equals(orderId)){
+			msg.setResultCode(ResultInfo.ERRORCODE);
+			msg.setMessage(NameUtils.getConfig("未查询到订单信息!"));
+			msg.setStatus(false);
+			return msg;
+		}
 		StayIntegral stayIntegral = new StayIntegral();
 		stayIntegral.setOrderId(orderId);
 		List<StayIntegral>  listStayIntegral = useIntegralService.listStayIntegral(stayIntegral);
-
 		if (listStayIntegral != null && listStayIntegral.size() > 0) {
 			msg.setResultCode(ResultInfo.SUCCESSCODE);
 			msg.setMessage(NameUtils.getConfig("SUCCESSINFO"));
 			msg.setData(listStayIntegral.get(0).getStayNumber());
 			msg.setStatus(true);
 			return msg;
+		}else{
+			msg.setResultCode(ResultInfo.SUCCESSCODE);
+			msg.setMessage(NameUtils.getConfig("SUCCESSINFO"));
+			msg.setData(0);
+			msg.setStatus(true);
+			return msg;
 		}
-		msg.setResultCode(ResultInfo.ERRORCODE);
-		msg.setMessage(NameUtils.getConfig("ERRORINFO"));
-		msg.setStatus(false);
-		return msg;
 	}
 
 	@RequestMapping("/paySuccess")

+ 7 - 4
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/pay/ResponseWechatPayHandler.java

@@ -196,30 +196,33 @@ public class ResponseWechatPayHandler {
 
 						CouponItemDto couponItemDto = couponItemService.getCouponItemById(couponId);
 						if(couponItemDto.getCouponType() == 1){  //按照金额
-							couponAmount = couponItemDto.getCouponReduce();
+							couponAmount = couponItemDto.getCouponReduce()/100;
 						}else if(couponItemDto.getCouponType() == 2){  ////按照折扣
-							couponAmount = or.getSalesAmount() - or.getSalesAmount()/(couponItemDto.getCouponReduce()/100);
+							couponAmount = or.getSalesAmount() - or.getSalesAmount()/(couponItemDto.getCouponReduce()/100)/100;
 						}
 					}
 
 					/*----------计算积分-----------
 					*  x * (n1*3 - n1) + y * (n2*3)  - coupon*3 + 400
 					*/
+
 					List<OrderItem> orderItemList = adminOrderService.getShopOrderItemByOrderId(orderIdMD5);
 					Integer allIntegral = 0;  //总积分
 					for(int i=0;i<orderItemList.size();i++){
 						OrderItem orderItem = orderItemList.get(i);
+						Integer amount = orderItem.getItemProductDiscount() / 100;
 						if(orderItem.getItemProductType()==100){//类型为电动牙刷
-							Integer integral = orderItem.getItemProductDiscount() * (orderItem.getItemNum()*3-orderItem.getItemNum());
+							Integer integral = amount * (orderItem.getItemNum()*3-orderItem.getItemNum());
 							allIntegral += integral;
 						}else{
-							Integer integral = orderItem.getItemProductDiscount() * (orderItem.getItemNum()*3);
+							Integer integral = amount * (orderItem.getItemNum()*3);
 							allIntegral += integral;
 						}
 					}
 					if(couponAmount > 0){  //有优惠券减去优惠券的金额
 						allIntegral += -couponAmount*3;
 					}
+					ratFWLogger.error(this, "订单:"+ orderIdMD5 +"订单使用优惠卷金额:" + couponAmount +"所得积分为:"+allIntegral);
 					boolean flag = apparatusService.addStayIntegral(or.getSalesOpenid(),3,allIntegral,or.getSalesOrderid());
 					ratFWLogger.info("积分是否入账:"+ flag);
 					/*----------计算积分-----------*/