public SyncRfQCloseEvent createSyncRfQCloseEvent(
      final I_C_RfQResponseLine rfqResponseLine, final boolean winnerKnown) {
    if (!pmmRfQBL.isCompletedOrClosed(rfqResponseLine)) {
      logger.warn(
          "Skip creating close event for {} because it's not completed or closed", rfqResponseLine);
      return null;
    }

    final SyncRfQCloseEvent event = new SyncRfQCloseEvent();
    event.setRfq_uuid(SyncUUIDs.toUUIDString(rfqResponseLine));
    event.setWinnerKnown(winnerKnown);
    if (winnerKnown) {
      event.setWinner(rfqResponseLine.isSelectedWinner());
    }

    if (winnerKnown && event.isWinner()) {
      final List<SyncProductSupply> plannedSyncProductSupplies =
          createPlannedSyncProductSupplies(rfqResponseLine);
      event.getPlannedSupplies().addAll(plannedSyncProductSupplies);
    }

    return event;
  }