@Override public Collection<DepositProductData> retrieveAll(final DepositAccountType depositAccountType) { this.context.authenticatedUser(); final DepositProductMapper depositProductMapper = this.getDepositProductMapper(depositAccountType); if (depositProductMapper == null) return null; final StringBuilder sqlBuilder = new StringBuilder(400); sqlBuilder.append("select "); sqlBuilder.append(depositProductMapper.schema()); sqlBuilder.append(" where sp.deposit_type_enum = ? "); return this.jdbcTemplate.query( sqlBuilder.toString(), depositProductMapper, new Object[] {depositAccountType.getValue()}); }
@Override public DepositProductData retrieveOne( final DepositAccountType depositAccountType, final Long fixedDepositProductId) { try { this.context.authenticatedUser(); final DepositProductMapper depositProductMapper = this.getDepositProductMapper(depositAccountType); if (depositProductMapper == null) return null; final StringBuilder sqlBuilder = new StringBuilder(400); sqlBuilder.append("select "); sqlBuilder.append(depositProductMapper.schema()); sqlBuilder.append(" where sp.id = ? and sp.deposit_type_enum = ? "); return this.jdbcTemplate.queryForObject( sqlBuilder.toString(), depositProductMapper, new Object[] {fixedDepositProductId, depositAccountType.getValue()}); } catch (final EmptyResultDataAccessException e) { throw new FixedDepositProductNotFoundException(fixedDepositProductId); } }