@Override public FundWithUserDto map(final Fund fund) { final TokenValueDto tokenValueDto = tokenValueDtoMapper.map(fund.getTokenValue()); final String funderNameOrAddress = StringUtils.isNotBlank(fund.getFunderUserId()) ? profileService.getUserProfile(fund::getFunderUserId).getName() : fund.getFunderAddress(); final boolean isFundedByLoggedInUser = isFundedByLoggedInUser(fund.getFunderUserId(), fund.getFunderAddress()); return tokenValueDto == null ? null : FundWithUserDto.builder() .funder(funderNameOrAddress) .funderAddress(fund.getFunderAddress()) .fndFunds(getFndFunds(tokenValueDto)) .otherFunds(getOtherFunds(tokenValueDto)) .isLoggedInUser(isFundedByLoggedInUser) .timestamp(fund.getTimestamp()) .isRefund(false) .build(); }
@Override public FundWithUserDto map(final Refund refund) { final TokenValueDto tokenValueDto = negate(tokenValueDtoMapper.map(refund.getTokenValue())); final String funderNameOrAddress = StringUtils.isNotBlank(refund.getRequestedBy()) ? profileService.getUserProfile(refund::getRequestedBy).getName() : refund.getFunderAddress(); final boolean isFundedByLoggedInUser = isFundedByLoggedInUser(refund.getRequestedBy(), refund.getFunderAddress()); return tokenValueDto == null ? null : FundWithUserDto.builder() .funder(funderNameOrAddress) .funderAddress(refund.getFunderAddress()) .fndFunds(getFndFunds(tokenValueDto)) .otherFunds(getOtherFunds(tokenValueDto)) .isLoggedInUser(isFundedByLoggedInUser) .timestamp(refund.getCreationDate()) .isRefund(true) .build(); }