Program: 58631
Project: 58631
Buggy source:
public String createDomainForBankDetails(BankOrderLine bankOrderLine,BankOrder bankOrder){
  String domain="String_Node_Str";
  String bankDetailsIds="String_Node_Str";
  if ((bankOrderLine == null) || (bankOrder == null)) {
    return domain;
  }
  if (bankOrder.getPartnerTypeSelect() == BankOrderRepository.PARTNER_TYPE_COMPANY) {
    if (bankOrderLine.getReceiverCompany() != null) {
      bankDetailsIds=this.getIdStringListFromList(bankOrderLine.getReceiverCompany().getBankDetailsSet());
      if (bankOrderLine.getReceiverCompany().getDefaultBankDetails() != null) {
        bankDetailsIds+=bankDetailsIds.equals("String_Node_Str") ? "String_Node_Str" : "String_Node_Str";
        bankDetailsIds+=bankOrderLine.getReceiverCompany().getDefaultBankDetails().getId().toString();
      }
    }
  }
 else   if (bankOrderLine.getPartner() != null) {
    bankDetailsIds=this.getIdStringListFromList(bankOrderLine.getPartner().getBankDetailsList());
  }
  if (bankDetailsIds.equals("String_Node_Str")) {
    return domain="String_Node_Str";
  }
  domain="String_Node_Str" + bankDetailsIds + "String_Node_Str";
  domain+="String_Node_Str";
  EbicsPartner ebicsPartner=Beans.get(EbicsPartnerRepository.class).all().filter("String_Node_Str",bankOrder.getSenderBankDetails()).fetchOne();
  if (ebicsPartnerIsFiltering(ebicsPartner,bankOrder.getOrderTypeSelect())) {
    domain+="String_Node_Str" + this.getIdStringListFromList(ebicsPartner.getReceiverBankDetailsSet()) + "String_Node_Str";
  }
  if (bankOrder.getBankOrderFileFormat() != null) {
    String acceptedIdentifiers=bankOrder.getBankOrderFileFormat().getBankDetailsTypeSelect();
    if (acceptedIdentifiers != null && !acceptedIdentifiers.equals("String_Node_Str")) {
      domain+="String_Node_Str" + acceptedIdentifiers + "String_Node_Str";
    }
    Currency currency=bankOrder.getBankOrderFileFormat().getCurrency();
    if (!bankOrder.getIsMultiCurrency() && bankOrder.getBankOrderFileFormat().getCurrency() != null) {
      String fileFormatCurrencyId=bankOrder.getBankOrderFileFormat().getCurrency().getId().toString();
      domain+="String_Node_Str" + fileFormatCurrencyId + "String_Node_Str";
    }
  }
  return domain;
}

Fixed version (ground truth):
public String createDomainForBankDetails(BankOrderLine bankOrderLine,BankOrder bankOrder){
  String domain="String_Node_Str";
  String bankDetailsIds="String_Node_Str";
  if ((bankOrderLine == null) || (bankOrder == null)) {
    return domain;
  }
  if (bankOrder.getPartnerTypeSelect() == BankOrderRepository.PARTNER_TYPE_COMPANY) {
    if (bankOrderLine.getReceiverCompany() != null) {
      bankDetailsIds=this.getIdStringListFromList(bankOrderLine.getReceiverCompany().getBankDetailsSet());
      if (bankOrderLine.getReceiverCompany().getDefaultBankDetails() != null) {
        bankDetailsIds+=bankDetailsIds.equals("String_Node_Str") ? "String_Node_Str" : "String_Node_Str";
        bankDetailsIds+=bankOrderLine.getReceiverCompany().getDefaultBankDetails().getId().toString();
      }
    }
  }
 else   if (bankOrderLine.getPartner() != null) {
    bankDetailsIds=this.getIdStringListFromList(bankOrderLine.getPartner().getBankDetailsList());
  }
  if (bankDetailsIds.equals("String_Node_Str")) {
    return domain="String_Node_Str";
  }
  domain="String_Node_Str" + bankDetailsIds + "String_Node_Str";
  domain+="String_Node_Str";
  EbicsPartner ebicsPartner=Beans.get(EbicsPartnerRepository.class).all().filter("String_Node_Str",bankOrder.getSenderBankDetails()).fetchOne();
  if (ebicsPartnerIsFiltering(ebicsPartner,bankOrder.getOrderTypeSelect())) {
    domain+="String_Node_Str" + this.getIdStringListFromList(ebicsPartner.getReceiverBankDetailsSet()) + "String_Node_Str";
  }
  if (bankOrder.getBankOrderFileFormat() != null) {
    String acceptedIdentifiers=bankOrder.getBankOrderFileFormat().getBankDetailsTypeSelect();
    if (acceptedIdentifiers != null && !acceptedIdentifiers.equals("String_Node_Str")) {
      domain+="String_Node_Str" + acceptedIdentifiers + "String_Node_Str";
    }
    Currency currency=bankOrder.getBankOrderFileFormat().getCurrency();
    if (!bankOrder.getIsMultiCurrency() && currency != null) {
      String fileFormatCurrencyId=currency.getId().toString();
      domain+="String_Node_Str" + fileFormatCurrencyId + "String_Node_Str";
    }
  }
  return domain;
}