Przeglądaj źródła

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

# Conflicts:
#	watero-rst-web/src/main/webapp/WEB-INF/views/cm/customer/order_list.ftl
wangxiang 6 lat temu
rodzic
commit
8399b5f59f

+ 70 - 69
watero-wechat-service/src/main/java/com/iamberry/wechat/service/mq/EfastOrderServiceImpl.java

@@ -155,9 +155,9 @@ public class EfastOrderServiceImpl implements EfastOrderService {
 		if (order == null || order.getSalesOrderid() == null) {
 			return false;
 		}
-		
+
 		List<OrderItem> items = adminOrderService.getShopOrderItemByOrderId(order.getSalesOrderid());
-		
+
 		// request url
 		//String url = NameUtils.getConfig("efast_base_url");
 		String url = NameUtils.getConfig("rst_efast_base_url");
@@ -165,9 +165,9 @@ public class EfastOrderServiceImpl implements EfastOrderService {
 
 		// set Requeset Data
 		Map<String, String> requestData = new HashMap<String, String>();
-		
+
 		int money = order.getSalesYetAmount();
-		
+
 		double couponMoney = 0;
 		double avgPercentage = 0.0;  //均摊比例
 		//将优惠券抵消金额加入实付金额中
@@ -178,16 +178,16 @@ public class EfastOrderServiceImpl implements EfastOrderService {
 			CouponType couponType = cartService.getCouponReduceByItemId(couponItem);
 			if (null != couponType) {
 				switch (couponType.getCouponType()) {
-				case 1:
-					couponMoney = couponType.getCouponReduce();
-					break;
-				case 2:
-					couponMoney = order.getSalesAmount() * couponType.getCouponReduce()/100;
-					break;
+					case 1:
+						couponMoney = couponType.getCouponReduce();
+						break;
+					case 2:
+						couponMoney = order.getSalesAmount() * couponType.getCouponReduce() / 100;
+						break;
 				}
 			}
 		}
-		
+
 		//只计算用户用微信支付的金额,不包含余额支付
 		if (order.getBalancePayAmount() != null && !"".equals(order.getBalancePayAmount().toString())) {
 			money = money - order.getBalancePayAmount().intValue();
@@ -200,9 +200,9 @@ public class EfastOrderServiceImpl implements EfastOrderService {
 				avgMoney += item.getItemNum().intValue() * item.getItemProductDiscount();
 			}
 			//计算均摊比例
-			avgPercentage = 1 - couponMoney/avgMoney;
+			avgPercentage = 1 - couponMoney / avgMoney;
 		}
-		
+
 		/**
 		 * 系统级参数
 		 */
@@ -212,24 +212,24 @@ public class EfastOrderServiceImpl implements EfastOrderService {
 		requestData.put("timestamp",DateTimeUtil.format(new Date(),"yyyyMMddHHmmss"));
 		requestData.put("app_act", message.getServiceOtherMessage());*/ // "efast.trade.new.add"
 		requestData.put("app_act", "rst.trade.new.add");
-		
+
 		/**
 		 * 订单基本信息
 		 */
-		String [] addressDesc = order.getSalesAddressInfo().split("-");
-		
+		String[] addressDesc = order.getSalesAddressInfo().split("-");
+
 		//判断收货地址从而选择仓库
 		String sd_id = NameUtils.getConfig("sd_id");
-		
+
 		String address = addressDesc[3];
-        if (addressDesc[3]!=null) {
-            Pattern p = Pattern.compile("\\s*|\t|\r|\n");
-            Matcher m = p.matcher(addressDesc[3]);
-            if (m.find()) {
-            	address = m.replaceAll("");
+		if (addressDesc[3] != null) {
+			Pattern p = Pattern.compile("\\s*|\t|\r|\n");
+			Matcher m = p.matcher(addressDesc[3]);
+			if (m.find()) {
+				address = m.replaceAll("");
 			}
-        }
-		
+		}
+
 		String provinceName = addressDesc[0];
 		if (addressDesc[0].indexOf("北京") != -1) {
 			provinceName = "北京";
@@ -241,65 +241,66 @@ public class EfastOrderServiceImpl implements EfastOrderService {
 			provinceName = "重庆";
 		}
 		Map<String, Object> orderData = new HashMap<String, Object>();
-		orderData.put("add_time", DateTimeUtil.format(order.getSalesCreateDate()));		// 时间
-		orderData.put("address", address);												// 收货地址
-		orderData.put("city_name", addressDesc[1]); 									// 城市
-		orderData.put("consignee", order.getSalesAddressName());						// 收货人
-		orderData.put("district_name", addressDesc[2]);									// 区域
-		orderData.put("email", "");														// email
-		orderData.put("goods_amount", (order.getSalesAmount()));					// 商品总价
-		orderData.put("goods_count", items.size());										// 产品数量
-		orderData.put("mobile", order.getSalesAddressTel());							// 手机号码
-		orderData.put("money_paid", money);										// 已付款
-		orderData.put("oid", order.getSalesOrderid());									// 订单号
-		orderData.put("order_amount", money);									// 应付款,应付款金额要与已付款金额相同
-		
-		
+		orderData.put("add_time", DateTimeUtil.format(order.getSalesCreateDate()));        // 时间
+		orderData.put("address", address);                                                // 收货地址
+		orderData.put("city_name", addressDesc[1]);                                    // 城市
+		orderData.put("consignee", order.getSalesAddressName());                        // 收货人
+		orderData.put("district_name", addressDesc[2]);                                    // 区域
+		orderData.put("email", "");                                                        // email
+		orderData.put("goods_amount", (order.getSalesAmount()));                    // 商品总价
+		orderData.put("goods_count", items.size());                                        // 产品数量
+		orderData.put("mobile", order.getSalesAddressTel());                            // 手机号码
+		orderData.put("money_paid", money);                                        // 已付款
+		orderData.put("oid", order.getSalesOrderid());                                    // 订单号
+		orderData.put("order_amount", money);                                    // 应付款,应付款金额要与已付款金额相同
+
+
 		/**
 		 * 产品信息
 		 */
 		List<Map<String, Object>> maps = new ArrayList<Map<String, Object>>();
 		for (OrderItem item : items) {
 			Map<String, Object> orders1 = new HashMap<String, Object>();
-			orders1.put("goods_name", item.getItemProductName());							// 产品名称
-			orders1.put("goods_number", item.getItemNum());									// 产品数量
-			orders1.put("goods_price", (item.getItemProductPrice()));					// 产品原价
-			orders1.put("outer_sku", item.getProduectRemark());								// 产品SKU
-			orders1.put("payment_ft", (item.getItemProductDiscount()*avgPercentage*item.getItemNum()));				// 产品分摊价
+			orders1.put("goods_name", item.getItemProductName());                            // 产品名称
+			orders1.put("goods_number", item.getItemNum());                                    // 产品数量
+			orders1.put("goods_price", (item.getItemProductPrice()));                    // 产品原价
+			orders1.put("outer_sku", item.getProduectRemark());                                // 产品SKU
+			orders1.put("payment_ft", (item.getItemProductDiscount() * avgPercentage * item.getItemNum()));                // 产品分摊价
 			maps.add(orders1);
 		}
-		
-		orderData.put("orders", maps);													// 订单产品
-		orderData.put("pay_name", "weixinpay");											// 支付方式
+
+		orderData.put("orders", maps);                                                    // 订单产品
+		orderData.put("pay_name", "weixinpay");                                            // 支付方式
 		orderData.put("pay_time", DateTimeUtil.format(order.getSalesTransactionDate()));// 支付时间
-		orderData.put("postscript", order.getSalesUserRemark());						// 买家留言
-		orderData.put("province_name", provinceName);									// 省份
-		orderData.put("sd_id", sd_id);													// 对应 efast 店铺 id
-		orderData.put("shipping_fee", 0);												// 快递费
-		orderData.put("shipping_name", "yto");											// 快递公司代码
-		orderData.put("tel", order.getSalesAddressTel());											// 我司电话
-		orderData.put("to_buyer", "");													// 商家备注
+		orderData.put("postscript", order.getSalesUserRemark());                        // 买家留言
+		orderData.put("province_name", provinceName);                                    // 省份
+		orderData.put("sd_id", sd_id);                                                    // 对应 efast 店铺 id
+		orderData.put("shipping_fee", 0);                                                // 快递费
+		orderData.put("shipping_name", "yto");                                            // 快递公司代码
+		orderData.put("tel", order.getSalesAddressTel());                                            // 我司电话
+		orderData.put("to_buyer", "");                                                    // 商家备注
 		//orderData.put("total_amount", (order.getSalesAmount()/100.0));					// 订单总额
-		orderData.put("total_amount", (order.getSalesAmount()));					// 订单总额
-		orderData.put("user_name", order.getSalesOpenid());							// 买家账户   百胜根据user_name来判断是否有重复,传openId是为了防止重复
-		orderData.put("zipcode", order.getSalesAddressPostnum());						// 邮编
-		
-		
+		orderData.put("total_amount", (order.getSalesAmount()));                    // 订单总额
+		orderData.put("user_name", order.getSalesOpenid());                            // 买家账户   百胜根据user_name来判断是否有重复,传openId是为了防止重复
+		orderData.put("zipcode", order.getSalesAddressPostnum());                        // 邮编
+
+
 		com.fasterxml.jackson.databind.ObjectMapper mapper = new ObjectMapper();
-		String orderDataStr = null;;
+		String orderDataStr = null;
+		;
 		try {
 			orderDataStr = mapper.writeValueAsString(orderData);
 		} catch (JsonProcessingException e2) {
 			e2.printStackTrace();
 		}
-		
+
 		requestData.put("info", orderDataStr);
-		
+
 		try {
-			logger.info("WaterPF HttpClient431Util.doGet begin...");
+			logger.info("WaterPF HttpClient431Util.doGet begin..."+url+"requestData..="+requestData.get("info")+"accpt="+requestData.get("app_act"));
 			String result = HttpClient431Util.doPost(requestData, url);
 			result = StringEscapeUtils.unescapeJava(result); // unicode 编码
-			logger.info("add-推送订单号为:" + order.getSalesOrderid() + "的订单,百胜返回信息:" + result);
+			logger.info("add-推送订单号为:" + order.getSalesOrderid() + "的订单返回信息:" + result);
 			// parse JSON String to Object
 			JSONObject jsonObject = JSONObject.fromObject(result);
 			//JSONObject respData = JSONObject.fromObject(jsonObject.get("resp_data"));
@@ -311,12 +312,12 @@ public class EfastOrderServiceImpl implements EfastOrderService {
 				}
 			}
 			logger.error(this, "add-推送订单号为:" + order.getSalesOrderid() + "的订单,百胜返回信息:" + result);
-		throw new Exception(jsonObject.getString("msg"));
-	} catch (Exception e) {
-		throw e;
-
-	}
-
+			throw new Exception(jsonObject.getString("msg"));
+		} catch (Exception e) {
+			e.printStackTrace();
+			logger.info(this, "Watero addOrderInfoToEfast error..");
+		}
+		return false;
 	}