yujian
2019-03-27 cdcbed9af813b2a02cdc01eefa24db8bec6b51a9
fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java
@@ -40,6 +40,7 @@
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.factory.CommonOrderGoodsFactory;
import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.vo.msg.ClientTextStyleVO;
import com.yeshi.fanli.vo.order.CommonOrderGoodsVO;
@@ -76,12 +77,12 @@
   
   
   // 奖励订单图片
   public final static String PIC_REWARD= "http://192.168.1.200/icon/jl.png";
   public final static String PIC_REWARD= "http://img.flqapp.com/resource/order/order_state_reward.png";
   
   // 免单状态图片
   public final static String PIC_FREE_ON = "http://192.168.1.200/icon/state1.png";
   public final static String PIC_FREE_FAIL =  "http://192.168.1.200/icon/state2.png";
   public final static String PIC_FREE_SUCCEED =  "http://192.168.1.200/icon/state3.png";
   public final static String PIC_FREE_ON = "http://img.flqapp.com/resource/order/order_state_freeing.png";
   public final static String PIC_FREE_FAIL =  "http://img.flqapp.com/resource/order/order_state_free_fail.png";
   public final static String PIC_FREE_SUCCEED =  "http://img.flqapp.com/resource/order/order_state_free_suc.png";
   @Override
@@ -435,109 +436,117 @@
         hongBaoMap.put("fontColor", hongbaoInfoFontColor);
         order.setHongBaoInfo(hongBaoMap);
         
         // 是否免单商品
         boolean freeOrder = false;
         // 是否奖励成功
         boolean rewardSuccess = false;
         // 奖励订单、免单
         if (couponRecordList != null && couponRecordList.size() > 0) {
         // 非自购的订单 不显示返利、免单详情
         if (HongBaoV2.TYPE_ZIGOU != hongBaoType) {
            // 订单标识
            order.setSignList(signList);
            
            for (UserSystemCouponRecord couponRecord: couponRecordList) {
               // 订单号匹配
               if (order.getOrderNo().equals(couponRecord.getOrderNo())) {
                  String systemCouponType = couponRecord.getCouponType();
                  Integer state = couponRecord.getState();
                  // 奖励订单: 且成功
                  if (CouponTypeEnum.rebatePercentCoupon.name().equals(systemCouponType)
                        && UserSystemCouponRecord.STATE_SUCCESS == state) {
                     rewardSuccess = true;
                     signList.add(PIC_REWARD); // 加入奖励成功图片
         } else {
            // 是否免单商品
            boolean freeOrder = false;
            // 是否奖励成功
            boolean rewardSuccess = false;
            // 奖励订单、免单 使用记录
            if (couponRecordList != null && couponRecordList.size() > 0) {
               for (UserSystemCouponRecord couponRecord: couponRecordList) {
                  // 订单号匹配
                  if (order.getOrderNo().equals(couponRecord.getOrderNo())) {
                     
                  } else if (CouponTypeEnum.freeCoupon.name().equals(systemCouponType)
                        || CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)) {
                     String systemCouponType = couponRecord.getCouponType();
                     Integer state = couponRecord.getState();
                     
                      if (UserSystemCouponRecord.STATE_FREE_ON == state) {
                        // 免单中
                         freeOrder = true;
                         signList.add(PIC_FREE_ON);
                     } else if (UserSystemCouponRecord.STATE_SUCCESS == state) {
                        // 免单成功
                        freeOrder = true;
                        signList.add(PIC_FREE_SUCCEED);
                     } else if (UserSystemCouponRecord.STATE_FAIL_RULE == state || UserSystemCouponRecord.STATE_FAIL_DRAWBACK == state) {
                        // 规则不匹配、退款
                        freeOrder = true;
                        signList.add(PIC_FREE_FAIL);
                     }
                     // 奖励订单: 且成功
                     if (CouponTypeEnum.rebatePercentCoupon.name().equals(systemCouponType)
                           && UserSystemCouponRecord.STATE_SUCCESS == state) {
                        rewardSuccess = true;
                        signList.add(PIC_REWARD); // 加入奖励成功图片
                     } else if (CouponTypeEnum.freeCoupon.name().equals(systemCouponType)
                           || CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)) {
                         if (UserSystemCouponRecord.STATE_FREE_ON == state) {
                           // 免单中
                            freeOrder = true;
                            signList.add(PIC_FREE_ON);
                        } else if (UserSystemCouponRecord.STATE_SUCCESS == state) {
                           // 免单成功
                           freeOrder = true;
                           signList.add(PIC_FREE_SUCCEED);
                        } else if (UserSystemCouponRecord.STATE_FAIL_RULE == state || UserSystemCouponRecord.STATE_FAIL_DRAWBACK == state) {
                           // 规则不匹配、退款
                           freeOrder = true;
                           signList.add(PIC_FREE_FAIL);
                        }
                     }
                     break;
                  }
                  break;
               }
            }
            // 订单标识
            order.setSignList(signList);
            boolean rewardOrder = false;
            int type = 1; // 1 常规跳转页面  2弹出选项(奖励券)
            if (rewardSuccess) {
               // 奖励成功
               rewardOrder = true;
            } else if(hasRewardCoupon && !freeOrder && HongBaoV2.TYPE_ZIGOU == hongBaoType &&
                  HongBaoV2.STATE_YILINGQU == hongBaoState) {
               // 有可用的奖励券 、非免单订单 、且已到账的 、返利订单
               type = 2;
               rewardOrder = true;
            }
            if (rewardOrder) {
               ClientTextStyleVO rewardStyleVO = new ClientTextStyleVO();
               // 奖励券进度详情
               rewardStyleVO.setContent("返利奖励 >");
               rewardStyleVO.setColor( "#E5005C");
               rewardStyleVO.setBottomColor("#FFDCEA");
               Map<String, Object> jumpLink = new HashMap<String,Object>();
               jumpLink.put("orderNo", order.getOrderNo());
               Map<String, Object> jump = new HashMap<String,Object>();
               jump.put("type", type);
                jump.put("params", jumpLink);
                jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail"));
                Map<String, Object> rewardMap = new HashMap<String,Object>();
                rewardMap.put("text", rewardStyleVO);
                rewardMap.put("jump", jump);
               order.setRewardDetail(rewardMap);
            }
            if (freeOrder) {
               ClientTextStyleVO rewardStyleVO = new ClientTextStyleVO();
               // 返利、免单详情
               rewardStyleVO.setContent("免单详情 >");
               rewardStyleVO.setColor( "#E5005C");
               rewardStyleVO.setBottomColor("#FFDCEA");
               Map<String, Object> jumpLink = new HashMap<String,Object>();
               jumpLink.put("orderNo", order.getOrderNo());
               Map<String, Object> jump = new HashMap<String,Object>();
               jump.put("type", 1); // 页面跳转
                jump.put("params", jumpLink);
                jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("freeCouponDetail"));
                Map<String, Object> rewardMap = new HashMap<String,Object>();
                rewardMap.put("text", rewardStyleVO);
                rewardMap.put("jump", jump);
               order.setRewardDetail(rewardMap);
            }
         }
         // 订单标识
         order.setSignList(signList);
         boolean rewardOrder = false;
         int type = 1; // 1 常规跳转页面  2弹出选项(奖励券)
         if (rewardSuccess) {
            // 奖励成功
            rewardOrder = true;
         } else if(hasRewardCoupon && !freeOrder && HongBaoV2.STATE_YILINGQU == hongBaoState) {
            // 有可用的奖励券 、非免单订单 、且已到账的
            type = 2;
            rewardOrder = true;
         }
         if (rewardOrder) {
            ClientTextStyleVO rewardStyleVO = new ClientTextStyleVO();
            // 奖励券进度详情
            rewardStyleVO.setContent("返利奖励 >");
            rewardStyleVO.setColor( "#E5005C");
            rewardStyleVO.setBottomColor("#FFDCEA");
            Map<String, Object> jumpLink = new HashMap<String,Object>();
            jumpLink.put("orderNo", order.getOrderNo());
            Map<String, Object> jump = new HashMap<String,Object>();
            jump.put("type", type);
             jump.put("params", jumpLink);
             jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail"));
             Map<String, Object> rewardMap = new HashMap<String,Object>();
             rewardMap.put("text", rewardStyleVO);
             rewardMap.put("jump", jump);
            order.setRewardDetail(rewardMap);
         }
         if (freeOrder) {
            ClientTextStyleVO rewardStyleVO = new ClientTextStyleVO();
            // 返利、免单详情
            rewardStyleVO.setContent("免单详情 >");
            rewardStyleVO.setColor( "#E5005C");
            rewardStyleVO.setBottomColor("#FFDCEA");
            Map<String, Object> jumpLink = new HashMap<String,Object>();
            jumpLink.put("orderNo", order.getOrderNo());
            Map<String, Object> jump = new HashMap<String,Object>();
            jump.put("type", 1); // 页面跳转
             jump.put("params", jumpLink);
             jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("freeCouponDetail"));
             Map<String, Object> rewardMap = new HashMap<String,Object>();
             rewardMap.put("text", rewardStyleVO);
             rewardMap.put("jump", jump);
            order.setRewardDetail(rewardMap);
         }
      }
   }
@@ -587,6 +596,7 @@
                  taoBaoGoods = TaoKeApiUtil.getSimpleGoodsInfo(taoBaoOrder.getAuctionId());
               } catch (TaobaoGoodsDownException e) {
                  e.printStackTrace();
                  taoBaoGoods=TaoBaoUtil.getSimpleGoodsBrief(taoBaoOrder.getAuctionId());
               }
               if (taoBaoGoods != null) {
                  goods = CommonOrderGoodsFactory.create(taoBaoGoods);