From 8ce7c720e4e7a604b0ff770349b5556f39d37759 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 13 九月 2021 11:44:38 +0800
Subject: [PATCH] 好省呗应用兼容

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java |   70 ++++++++++++++++++++++------------
 1 files changed, 45 insertions(+), 25 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java
index f92a2c7..e594087 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java
@@ -368,7 +368,7 @@
                     CommonOrderGoodsVO commonGoodsVO = new CommonOrderGoodsVO();
                     PropertyUtils.copyProperties(commonGoodsVO, goods);
                     commonGoodsVO.setGoodsType(sourceType);
-                    commonGoodsVO.setPlaceOrderTime(TimeUtil.getGernalTime(order.getThirdCreateTime().getTime(),"yyyy.MM.dd HH:mm"));
+                    commonGoodsVO.setPlaceOrderTime(TimeUtil.getGernalTime(order.getThirdCreateTime().getTime(), "yyyy.MM.dd HH:mm"));
 
 
                     // 娣樺疂鍟嗗搧鍥剧墖澶勭悊
@@ -386,7 +386,7 @@
                     if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0) {
                         totalSettlement = commonOrder.getTotalPayment();
                     }
-                    if (totalSettlement== null || totalSettlement.compareTo(new BigDecimal(0)) <= 0)
+                    if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0)
                         commonGoodsVO.setPayState("鏈粯娆�/宸查��娆�");
                     else
                         commonGoodsVO.setPayState("宸蹭粯娆�");
@@ -728,7 +728,7 @@
             Map<String, Object> jump = new HashMap<String, Object>();
             jump.put("type", 1); // 椤甸潰璺宠浆
             jump.put("params", jumpLink);
-            jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("freeCouponDetail",acceptData.getSystem()));
+            jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("freeCouponDetail", acceptData.getSystem()));
 
             Map<String, Object> rewardMap = new HashMap<String, Object>();
             rewardMap.put("text", rewardStyleVO);
@@ -757,7 +757,7 @@
             Map<String, Object> jump = new HashMap<String, Object>();
             jump.put("type", 1); // 1 甯歌璺宠浆椤甸潰
             jump.put("params", jumpLink);
-            jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail",acceptData.getSystem()));
+            jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail", acceptData.getSystem()));
             rewardMap.put("jump", jump);
             order.setRewardDetail(rewardMap);
         }
@@ -782,7 +782,7 @@
             long limitDate = TimeUtil.convertDateToTemp(Constant.VIP_ONLINE_TIME);
             if (downOrderTime > limitDate) {
                 // 2.1 寮�濮嬫柊鐗�
-                rewardCounponLimitTime(order, accountTime,acceptData.getSystem());
+                rewardCounponLimitTime(order, accountTime, acceptData.getSystem());
             } else if (hasRewardCoupon) {
                 // 鍦�2.1鏂扮増涓婄嚎涔嬪墠璁㈠崟-瀛樺湪鍒欐樉绀哄鍔卞埜鍙娇鐢�
                 ClientTextStyleVO rewardStyleVO = new ClientTextStyleVO();
@@ -797,7 +797,7 @@
                 Map<String, Object> jump = new HashMap<String, Object>();
                 jump.put("type", 2); // 寮规
                 jump.put("params", jumpLink);
-                jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail",acceptData.getSystem()));
+                jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail", acceptData.getSystem()));
 
                 Map<String, Object> rewardMap = new HashMap<String, Object>();
                 rewardMap.put("text", rewardStyleVO);
@@ -807,7 +807,7 @@
         }
     }
 
-    private void rewardCounponLimitTime(CommonOrderVO order, Date accountTime,SystemEnum system) throws Exception {
+    private void rewardCounponLimitTime(CommonOrderVO order, Date accountTime, SystemEnum system) throws Exception {
         // 鍊掕鏃堕獙璇�
         Date endDay = DateUtil.plusDayDate(Constant.COUPON_REWARD_LIMIT_DAY, accountTime);
         long currentTime = java.lang.System.currentTimeMillis();
@@ -882,7 +882,7 @@
         Map<String, Object> jump = new HashMap<String, Object>();
         jump.put("type", 2); // 寮瑰嚭妗嗕娇鐢ㄥ埜
         jump.put("params", jumpLink);
-        jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail",system));
+        jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail", system));
         rewardMap.put("jump", jump);
         order.setRewardDetail(rewardMap);
     }
@@ -961,7 +961,7 @@
         // 鍒ゆ柇鎵�鏈夌殑璁㈠崟鐘舵��
         int invalidCount = 0;
         for (TaoBaoOrder tb : taoBaoOrders) {
-            if ("璁㈠崟澶辨晥".equalsIgnoreCase(tb.getOrderState())) {
+            if ("璁㈠崟澶辨晥" .equalsIgnoreCase(tb.getOrderState())) {
                 invalidCount++;
             }
         }
@@ -979,7 +979,7 @@
             CommonOrder newCommonOrder = CommonOrderFactory.create(taoBaoOrder);
             CommonOrderGoods cog = new CommonOrderGoods();
 
-            if ("楗夸簡涔�".equalsIgnoreCase(taoBaoOrder.getOrderType())) {
+            if ("楗夸簡涔�" .equalsIgnoreCase(taoBaoOrder.getOrderType())) {
                 cog.setGoodsId(taoBaoOrder.getTradeId() + "");
                 cog.setGoodsType(Constant.SOURCE_TYPE_ELME);
                 TaoBaoOrderGoods goods = taoBaoOrderGoodsMapper.selectByTradeId(taoBaoOrder.getTradeId());
@@ -1272,8 +1272,8 @@
         // 鍒ゆ柇鎵�鏈夌殑璁㈠崟鐘舵��
         int invalidCount = 0;
         for (SuningOrderInfo order : suningOrderList) {
-            if ("閫�娆�".equalsIgnoreCase(order.getOrderLineStatusDesc())
-                    || "璁㈠崟宸插彇娑�".equalsIgnoreCase(order.getOrderLineStatusDesc())) {
+            if ("閫�娆�" .equalsIgnoreCase(order.getOrderLineStatusDesc())
+                    || "璁㈠崟宸插彇娑�" .equalsIgnoreCase(order.getOrderLineStatusDesc())) {
                 invalidCount++;
             }
         }
@@ -1300,7 +1300,7 @@
             {
                 SuningGoodsInfo pddGoods = null;
                 // TODO 闇�瑕佽幏鍙�
-                pddGoods = SuningApiUtil.getGoodsDetail(suningOrderInfo.getGoodsNum(),"0000000000");
+                pddGoods = SuningApiUtil.getGoodsDetail(suningOrderInfo.getGoodsNum(), "0000000000");
                 if (pddGoods != null) {
                     cog = CommonOrderGoodsFactory.create(pddGoods);
                 }
@@ -1315,6 +1315,30 @@
         }
         addConfirmMQMsg(commonOrderList);
         return commonOrderList;
+    }
+
+    private boolean needUpdateCommonOrder(CommonOrder oldCommonOrder, CommonOrder newCommonOrder) {
+        // 闈炰含涓滃凡缁忕粨绠楋紝宸茬粡澶辨晥锛岀姸鎬佹湭鏀瑰彉鐨勮鍗曚笉澶勭悊
+        if ((oldCommonOrder.getState() == CommonOrder.STATE_JS
+                && oldCommonOrder.getSourceType() != Constant.SOURCE_TYPE_JD)
+                || oldCommonOrder.getState() == CommonOrder.STATE_SX
+                || oldCommonOrder.getState() == CommonOrder.STATE_WQ) {
+            return false;
+        }
+
+
+        //鐘舵�佺浉鍚屼笖浠樻閲戦锛岀粨绠楅噾棰濅竴鑷存椂鎵嶄笉闇�瑕佹洿鏂�
+        if (oldCommonOrder.getState().intValue() == newCommonOrder.getState()) {
+            if (oldCommonOrder.getPayment().compareTo(newCommonOrder.getPayment()) == 0) {
+                if (oldCommonOrder.getSettlement() == null && newCommonOrder.getSettlement() == null) {
+                    return false;
+                } else if (oldCommonOrder.getSettlement() != null && newCommonOrder.getSettlement() != null && oldCommonOrder.getSettlement().compareTo(newCommonOrder.getSettlement()) == 0) {
+                    return false;
+                }
+            }
+        }
+
+        return true;
     }
 
     /**
@@ -1378,12 +1402,8 @@
                     commonOrder.getTradeId(), new Date(), commonOrder.getSourceType()));
             return new CommonOrderAddResultDTO(commonOrder, CommonOrderAddResultDTO.TYPE_ADD);
         } else {// 淇敼
-            // 闈炰含涓滃凡缁忕粨绠楋紝宸茬粡澶辨晥锛岀姸鎬佹湭鏀瑰彉鐨勮鍗曚笉澶勭悊
-            if ((oldCommonOrder.getState() == CommonOrder.STATE_JS
-                    && oldCommonOrder.getSourceType() != Constant.SOURCE_TYPE_JD)
-                    || oldCommonOrder.getState() == CommonOrder.STATE_SX
-                    || oldCommonOrder.getState() == CommonOrder.STATE_WQ
-                    || (oldCommonOrder.getState().intValue() == commonOrder.getState()&&oldCommonOrder.getPayment().compareTo(commonOrder.getPayment())==0)) {
+
+            if (!needUpdateCommonOrder(oldCommonOrder, commonOrder)) {
                 return new CommonOrderAddResultDTO(oldCommonOrder, CommonOrderAddResultDTO.TYPE_NOUPDATE);
             }
             // 浜ゆ槗ID涓�鑷存墠淇敼
@@ -1752,7 +1772,7 @@
                 } catch (Exception e) {
                     e.printStackTrace();
                 }
-                commonGoodsVO.setPlaceOrderTime(TimeUtil.getGernalTime(commonOrder.getThirdCreateTime().getTime(),"yyyy.MM.dd HH:mm"));
+                commonGoodsVO.setPlaceOrderTime(TimeUtil.getGernalTime(commonOrder.getThirdCreateTime().getTime(), "yyyy.MM.dd HH:mm"));
 
                 String picture = commonGoodsVO.getPicture();
                 if (!StringUtil.isNullOrEmpty(picture) && !picture.contains("320x320")) {
@@ -1779,7 +1799,7 @@
                 if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0) {
                     totalSettlement = commonOrder.getTotalPayment();
                 }
-                if (totalSettlement== null || totalSettlement.compareTo(new BigDecimal(0)) <= 0)
+                if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0)
                     commonGoodsVO.setPayState("鏈粯娆�/宸查��娆�");
                 else
                     commonGoodsVO.setPayState("宸蹭粯娆�");
@@ -1806,7 +1826,7 @@
     }
 
     @Override
-    public JSONObject getRewardJumpInfo(String orderNo, Integer goodsType,SystemEnum system) {
+    public JSONObject getRewardJumpInfo(String orderNo, Integer goodsType, SystemEnum system) {
 
         JSONObject map = new JSONObject();
         // 璁㈠崟鏍囪瘑
@@ -1828,7 +1848,7 @@
         Map<String, Object> jump = new HashMap<String, Object>();
         jump.put("type", 1);
         jump.put("params", jumpLink);
-        jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail",system));
+        jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail", system));
 
         Map<String, Object> rewardMap = new HashMap<String, Object>();
         rewardMap.put("text", rewardStyleVO);
@@ -2122,7 +2142,7 @@
                     if (commonGoodsVO.getGoodsType() == null) {
                         commonGoodsVO.setGoodsType(sourceType);
                     }
-                    commonGoodsVO.setPlaceOrderTime(TimeUtil.getGernalTime(order.getThirdCreateTime().getTime(),"yyyy.MM.dd HH:mm"));
+                    commonGoodsVO.setPlaceOrderTime(TimeUtil.getGernalTime(order.getThirdCreateTime().getTime(), "yyyy.MM.dd HH:mm"));
 
                     // 娣樺疂鍟嗗搧鍥剧墖澶勭悊
                     String picture = commonGoodsVO.getPicture();
@@ -2139,7 +2159,7 @@
                     if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0) {
                         totalSettlement = commonOrder.getTotalPayment();
                     }
-                    if (totalSettlement== null || totalSettlement.compareTo(new BigDecimal(0)) <= 0)
+                    if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0)
                         commonGoodsVO.setPayState("鏈粯娆�/宸查��娆�");
                     else
                         commonGoodsVO.setPayState("宸蹭粯娆�");

--
Gitblit v1.8.0