Skip to content

Commit 9726067

Browse files
committed
refactor: extract queries for series sales import to separate properties file and use it
Correction for 5d486a3 or 59c9c83 commits. Relate to #927
1 parent 5d486a3 commit 9726067

File tree

4 files changed

+57
-53
lines changed

4 files changed

+57
-53
lines changed

Diff for: src/main/java/ru/mystamps/web/feature/series/importing/sale/JdbcSeriesSalesImportDao.java

+9-8
Original file line numberDiff line numberDiff line change
@@ -17,26 +17,27 @@
1717
*/
1818
package ru.mystamps.web.feature.series.importing.sale;
1919

20-
import lombok.RequiredArgsConstructor;
2120
import org.apache.commons.lang3.Validate;
22-
import org.springframework.beans.factory.annotation.Value;
21+
import org.springframework.core.env.Environment;
2322
import org.springframework.dao.EmptyResultDataAccessException;
2423
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
2524

2625
import java.util.Collections;
2726
import java.util.HashMap;
2827
import java.util.Map;
2928

30-
@RequiredArgsConstructor
3129
public class JdbcSeriesSalesImportDao implements SeriesSalesImportDao {
3230

3331
private final NamedParameterJdbcTemplate jdbcTemplate;
32+
private final String addParsedDataSql;
33+
private final String findParsedDataSql;
3434

35-
@Value("${series_import_requests.add_series_sales_parsed_data}")
36-
private String addParsedDataSql;
37-
38-
@Value("${series_import_requests.find_series_sale_parsed_data_by_request_id}")
39-
private String findParsedDataSql;
35+
@SuppressWarnings("checkstyle:linelength")
36+
public JdbcSeriesSalesImportDao(Environment env, NamedParameterJdbcTemplate jdbcTemplate) {
37+
this.jdbcTemplate = jdbcTemplate;
38+
this.addParsedDataSql = env.getRequiredProperty("series_sales_import.add_series_sales_parsed_data");
39+
this.findParsedDataSql = env.getRequiredProperty("series_sales_import.find_series_sale_parsed_data_by_request_id");
40+
}
4041

4142
@Override
4243
public void addParsedData(Integer requestId, SeriesSalesParsedDataDbDto data) {

Diff for: src/main/java/ru/mystamps/web/feature/series/importing/sale/SeriesSalesImportConfig.java

+5-1
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
import org.springframework.beans.factory.annotation.Qualifier;
2222
import org.springframework.context.annotation.Bean;
2323
import org.springframework.context.annotation.Configuration;
24+
import org.springframework.context.annotation.PropertySource;
25+
import org.springframework.core.env.Environment;
2426
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
2527
import ru.mystamps.web.feature.series.DownloaderService;
2628
import ru.mystamps.web.feature.series.importing.SeriesInfoExtractorService;
@@ -48,8 +50,10 @@ public SeriesSaleImportController seriesSaleImportController() {
4850
}
4951

5052
@RequiredArgsConstructor
53+
@PropertySource("classpath:sql/series_sales_import_dao_queries.properties")
5154
public static class Services {
5255

56+
private final Environment env;
5357
private final NamedParameterJdbcTemplate jdbcTemplate;
5458
private final SiteParserService siteParserService;
5559
private final SeriesInfoExtractorService extractorService;
@@ -69,7 +73,7 @@ public SeriesSalesImportService seriesSalesImportService(
6973

7074
@Bean
7175
public SeriesSalesImportDao seriesSalesImportDao() {
72-
return new JdbcSeriesSalesImportDao(jdbcTemplate);
76+
return new JdbcSeriesSalesImportDao(env, jdbcTemplate);
7377
}
7478

7579
}

Diff for: src/main/resources/sql/series_import_request_dao_queries.properties

-44
Original file line numberDiff line numberDiff line change
@@ -147,47 +147,3 @@ series_import_requests.find_all = \
147147
JOIN series_import_request_statuses s \
148148
ON r.status_id = s.id \
149149
ORDER BY r.updated_at DESC
150-
151-
series_import_requests.add_series_sales_parsed_data = \
152-
INSERT \
153-
INTO series_sales_import_parsed_data \
154-
( request_id \
155-
, seller_id \
156-
, seller_group_id \
157-
, seller_url \
158-
, seller_name \
159-
, price \
160-
, currency \
161-
, alt_price \
162-
, alt_currency \
163-
, cond \
164-
, created_at \
165-
, updated_at \
166-
) \
167-
VALUES \
168-
( :request_id \
169-
, :seller_id \
170-
, :seller_group_id \
171-
, :seller_url \
172-
, :seller_name \
173-
, :price \
174-
, :currency \
175-
, :alt_price \
176-
, :alt_currency \
177-
, :condition \
178-
, :created_at \
179-
, :updated_at \
180-
)
181-
182-
series_import_requests.find_series_sale_parsed_data_by_request_id = \
183-
SELECT seller_id \
184-
, seller_group_id \
185-
, seller_url \
186-
, seller_name \
187-
, price \
188-
, currency \
189-
, alt_price \
190-
, alt_currency \
191-
, cond \
192-
FROM series_sales_import_parsed_data \
193-
WHERE request_id = :request_id
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
series_sales_import.add_series_sales_parsed_data = \
2+
INSERT \
3+
INTO series_sales_import_parsed_data \
4+
( request_id \
5+
, seller_id \
6+
, seller_group_id \
7+
, seller_url \
8+
, seller_name \
9+
, price \
10+
, currency \
11+
, alt_price \
12+
, alt_currency \
13+
, cond \
14+
, created_at \
15+
, updated_at \
16+
) \
17+
VALUES \
18+
( :request_id \
19+
, :seller_id \
20+
, :seller_group_id \
21+
, :seller_url \
22+
, :seller_name \
23+
, :price \
24+
, :currency \
25+
, :alt_price \
26+
, :alt_currency \
27+
, :condition \
28+
, :created_at \
29+
, :updated_at \
30+
)
31+
32+
series_sales_import.find_series_sale_parsed_data_by_request_id = \
33+
SELECT seller_id \
34+
, seller_group_id \
35+
, seller_url \
36+
, seller_name \
37+
, price \
38+
, currency \
39+
, alt_price \
40+
, alt_currency \
41+
, cond \
42+
FROM series_sales_import_parsed_data \
43+
WHERE request_id = :request_id

0 commit comments

Comments
 (0)