@Mapping(target = "dealId", source = "deal.id")
@Mapping(target = "type", source = "lifecycleEventType")
@Mapping(target = "operationAmount", source = "operationAmount")
@Mapping(target = "operDateCreate", source = "operDate")
@Mapping(target = "currency", source = "deal.currency")
@Mapping(target = "dealBranchCode", source = "deal.dealBranchCode")
@Mapping(target = "midasFacilityType", source = "deal.midasFacilityType")
@Mapping(target = "midasCreditProductType", source = "deal.midasCreditProductType")
@Mapping(target = "midasCreditProductSubtype", source = "deal.midasCreditProductSubtype")
@Mapping(target = "midasNumber", source = "deal.dealMidasNumber")
@Mapping(target = "dealNumber", source = "deal.dealNumber")
@Mapping(target = "mainBorrower", source = "deal.mainBorrowerCnum")
@Mapping(target = "openDate", source = "deal.openDate")
@Mapping(target = "planCloseDate", source = "deal.planCloseDate")
@Mapping(target = "midasLoanSubtype", source = "deal.midasFacilitySubtype")
@Mapping(target = "productId", source = "deal.productId")
@Mapping(target = "midasVirtualNumber", source = "virtualMidasNumber")
@Mapping(target = "institutionCode", source = "institutionCode")
@Mapping(target = "reversalOperationRequestId", ignore = true)
@Mapping(target = "isReversal", ignore = true)
@Mapping(target = "isDailyPosting", ignore = true)
@Mapping(target = "isCorrection", ignore = true)
@Mapping(target = "isBackValue", ignore = true)
@Mapping(target = "cbRepaymentAccount", ignore = true)
NrtLifecycleEvent mapForAccrual(
Deal deal,
String virtualMidasNumber,
LocalDate operDate,
BigDecimal operationAmount,
LifecycleEventType lifecycleEventType,
String institutionCode
);
}