/**
   * 构造订单时需要凭证对象和履行对象,避免service内部调用远程方法 此serviceImpl是代理类
   *
   * @param buyInfo
   * @param bcertTargetMap
   * @param performTargetMap
   */
  private void buildMetaProductId(
      BuyInfo buyInfo,
      Map<Long, SupBCertificateTarget> bcertTargetMap,
      Map<Long, List<SupPerformTarget>> performTargetMap,
      Map<Long, OrdOrderItemMeta> ordOrderItemMateMap) {
    Map<Item, List<ProdProductBranchItem>> branchItemMap =
        this.buildOrderService.buildProductBranchItem(buyInfo);
    List<SupPerformTarget> performTargetList = null;
    List<SupBCertificateTarget> bcertTargetList = null;
    for (Item item : branchItemMap.keySet()) {
      List<ProdProductBranchItem> branchItemList = branchItemMap.get(item);
      for (ProdProductBranchItem branchItem : branchItemList) {
        bcertTargetList =
            this.bCertificateTargetService.selectSuperMetaBCertificateByMetaProductId(
                branchItem.getMetaProductId());
        if (bcertTargetList != null && bcertTargetList.size() > 0) {
          bcertTargetMap.put(branchItem.getMetaProductId(), bcertTargetList.get(0));
        }
        performTargetList =
            this.performTargetService.findSuperSupPerformTargetByMetaProductId(
                branchItem.getMetaProductId());
        if (performTargetList != null && performTargetList.size() > 0) {
          performTargetMap.put(branchItem.getMetaProductId(), performTargetList);
        }

        initOrdOrderItemMeta(ordOrderItemMateMap, branchItem, item.getVisitTime());
        // 初始化机票相关信息
        initFlightInfo(ordOrderItemMateMap, branchItem, item.getVisitTime());
      }
    }
  }
  private boolean isKill(final BuyInfo buyInfo) {
    boolean isKill = false;

    for (Item item : buyInfo.getItemList()) {
      if ("true".equals(item.getIsDefault())) {
        String productId =
            (String) MemcachedUtil.getInstance().get("KILL_PRODUCT_" + item.getProductId());
        if (productId != null && productId.equals("Y")) {
          isKill = true;
        }
      }
    }

    return isKill;
  }