Skip to content

Commit 5885422

Browse files
committed
1 parent 9d24f2d commit 5885422

File tree

5 files changed

+19
-16
lines changed

5 files changed

+19
-16
lines changed

src/main/java/ru/mystamps/web/config/MvcConfig.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,17 @@
1717
*/
1818
package ru.mystamps.web.config;
1919

20+
import javax.inject.Inject;
21+
2022
import java.util.List;
2123

2224
import org.springframework.context.annotation.Bean;
2325
import org.springframework.context.annotation.ComponentScan;
2426
import org.springframework.context.annotation.Configuration;
2527
import org.springframework.context.MessageSource;
2628
import org.springframework.context.support.ReloadableResourceBundleMessageSource;
29+
import org.springframework.data.repository.support.DomainClassConverter;
30+
import org.springframework.format.support.FormattingConversionService;
2731
import org.springframework.scheduling.annotation.EnableScheduling;
2832
import org.springframework.validation.beanvalidation.LocalValidatorFactoryBean;
2933
import org.springframework.validation.Validator;
@@ -122,5 +126,11 @@ public MessageSource getMessageSource() {
122126
public MultipartResolver getMultipartResolver() {
123127
return new CommonsMultipartResolver();
124128
}
125-
129+
130+
@Bean
131+
@Inject
132+
public DomainClassConverter<?> getDomainClassConverter(FormattingConversionService service) {
133+
return new DomainClassConverter<FormattingConversionService>(service);
134+
}
135+
126136
}

src/main/java/ru/mystamps/web/model/AddSeriesForm.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626

2727
import org.springframework.web.multipart.MultipartFile;
2828

29+
import ru.mystamps.web.entity.Country;
2930
import ru.mystamps.web.service.dto.AddSeriesDto;
3031
import ru.mystamps.web.validation.jsr303.CatalogNumbers;
3132
import ru.mystamps.web.validation.jsr303.NotEmptyFile;
@@ -41,7 +42,7 @@
4142
@Getter
4243
@Setter
4344
public class AddSeriesForm implements AddSeriesDto {
44-
private Integer country;
45+
private Country country;
4546
private Integer year;
4647

4748
@NotNull

src/main/java/ru/mystamps/web/service/SeriesService.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@
3232

3333
import org.apache.commons.lang3.Validate;
3434

35-
import ru.mystamps.web.dao.CountryDao;
3635
import ru.mystamps.web.dao.GibbonsCatalogDao;
3736
import ru.mystamps.web.dao.MichelCatalogDao;
3837
import ru.mystamps.web.dao.ScottCatalogDao;
@@ -50,9 +49,6 @@
5049
@Service
5150
public class SeriesService {
5251

53-
@Inject
54-
private CountryDao countryDao;
55-
5652
@Inject
5753
private SeriesDao seriesDao;
5854

@@ -87,7 +83,7 @@ public Series add(AddSeriesDto dto) {
8783
Series series = new Series();
8884

8985
if (dto.getCountry() != null) {
90-
series.setCountry(countryDao.findOne(dto.getCountry()));
86+
series.setCountry(dto.getCountry());
9187
}
9288

9389
if (dto.getYear() != null) {

src/main/java/ru/mystamps/web/service/dto/AddSeriesDto.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,10 @@
2020

2121
import org.springframework.web.multipart.MultipartFile;
2222

23+
import ru.mystamps.web.entity.Country;
24+
2325
public interface AddSeriesDto {
24-
Integer getCountry();
26+
Country getCountry();
2527
Integer getYear();
2628
Integer getQuantity();
2729
Boolean getPerforated();

src/test/java/ru/mystamps/web/service/SeriesServiceTest.java

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -157,21 +157,15 @@ public void addShouldPassEntityToSeriesDao() {
157157
@Test
158158
public void addShouldLoadAndPassCountryToSeriesDaoIfCountryPresent() {
159159
Country expectedCountry = CountryServiceTest.getCountry();
160-
Integer expectedId = expectedCountry.getId();
161-
String expectedName = expectedCountry.getName();
162160

163-
form.setCountry(expectedId);
164-
165-
when(countryDao.findOne(anyInt())).thenReturn(expectedCountry);
161+
form.setCountry(expectedCountry);
166162

167163
service.add(form);
168164

169-
verify(countryDao).findOne(eq(expectedId));
170165
verify(seriesDao).save(seriesCaptor.capture());
171166

172167
assertThat(seriesCaptor.getValue().getCountry()).isNotNull();
173-
assertThat(seriesCaptor.getValue().getCountry().getId()).isEqualTo(expectedId);
174-
assertThat(seriesCaptor.getValue().getCountry().getName()).isEqualTo(expectedName);
168+
assertThat(seriesCaptor.getValue().getCountry()).isEqualTo(expectedCountry);
175169
}
176170

177171
@Test

0 commit comments

Comments
 (0)