Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -158,11 +158,13 @@ public ChoosingAirportPlainTextProcessor choosingAirportPlainTextProcessor(
BotTemplatesResolver botTemplatesResolver,
FlightradarApiLambdaAdapter flightradarApiLambdaAdapter,
MessagesConfig messagesConfig,
WidebodyAircraftDatabaseProvider widebodyAircraftDatabaseProvider) {
WidebodyAircraftDatabaseProvider widebodyAircraftDatabaseProvider,
UserAircraftFamilyFilterDatabaseProvider userAircraftFamilyFilterDatabaseProvider) {
return ChoosingAirportPlainTextProcessor.create(
userDatabaseProvider,
airportDatabaseProvider,
widebodyAircraftDatabaseProvider,
userAircraftFamilyFilterDatabaseProvider,
flightradarApiLambdaAdapter,
telegramClient,
botTemplatesResolver,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import project.vilsoncake.common.models.BotCommand;
import project.vilsoncake.common.models.UserStateResponseTemplate;
import project.vilsoncake.common.repositories.AirportDatabaseProvider;
import project.vilsoncake.common.repositories.UserAircraftFamilyFilterDatabaseProvider;
import project.vilsoncake.common.repositories.UserDatabaseProvider;
import project.vilsoncake.common.repositories.WidebodyAircraftDatabaseProvider;
import project.vilsoncake.common.services.adapters.FlightradarApiLambdaAdapter;
Expand All @@ -29,6 +30,7 @@ public class ChoosingAirportPlainTextProcessor implements PlainTextProcessor {
private final UserDatabaseProvider userDatabaseProvider;
private final AirportDatabaseProvider airportDatabaseProvider;
private final WidebodyAircraftDatabaseProvider widebodyAircraftDatabaseProvider;
private final UserAircraftFamilyFilterDatabaseProvider filterDatabaseProvider;
private final FlightradarApiLambdaAdapter flightradarApiLambdaAdapter;
private final TelegramClient telegramClient;
private final BotTemplatesResolver botTemplatesResolver;
Expand Down Expand Up @@ -80,12 +82,18 @@ public void process(String username, long chatId, String airportCode) {

telegramClient.sendMessage(chatId, message);

sendAircraftFilterRecommendationIfNeeded(airport, chatId, username);
sendAircraftFilterRecommendationIfNeeded(airport, chatId, user);
}

private void sendAircraftFilterRecommendationIfNeeded(
AirportEntity airport, long chatId, String username) {
AirportEntity airport, long chatId, UserEntity user) {
try {
long selectedAircraftFamilyCount = filterDatabaseProvider.countSelectedFamilies(user);

if (selectedAircraftFamilyCount > 0) {
return;
}

List<WideBodyAircraftEntity> allWideBodyAircraft =
widebodyAircraftDatabaseProvider.getAllWideBodyAircraft();
AirportRequest airportRequest =
Expand All @@ -110,7 +118,8 @@ private void sendAircraftFilterRecommendationIfNeeded(
BotCommand.AIRCRAFT.getCommand());

telegramClient.sendMessage(chatId, aircraftFilterRecommendationMessage);
log.info("Sent aircraft filter recommendation for the message to user {}", username);
log.info(
"Sent aircraft filter recommendation for the message to user {}", user.getUsername());
}
}
} catch (Exception e) {
Expand Down
Loading