@@ -212,7 +212,7 @@ public void sendNewAn124Flights() {
212
212
flightEntity .setDistance (flight .getDistance ());
213
213
flightService .addFlightToUser (flightEntity );
214
214
215
- if (flight .getDistance () < FLIGHT_IN_AIRPORT_DISTANCE_IN_KM && flight .getAltitude () < FLIGHT_IN_AIRPORT_ALTITUDE_IN_M ) {
215
+ if (flight .getAltitude () == ON_GROUND_ALTITUDE && flight .getDistance () < FLIGHT_IN_AIRPORT_DISTANCE_IN_KM ) {
216
216
SendMessage message = new SendMessage ();
217
217
message .setChatId (user .getChatId ());
218
218
message .setParseMode (MARKDOWN_PARSE_MODE );
@@ -224,7 +224,7 @@ public void sendNewAn124Flights() {
224
224
flight .getCallsign (), flight .getId ()
225
225
));
226
226
botSender .sendMessage (message );
227
- } else if (flight .getDistance () < FLIGHT_CLOSE_TO_AIRPORT_DISTANCE_IN_KM && flight .getAltitude () < FLIGHT_MAYBE_IN_AIRPORT_ALTITUDE_IN_M ) {
227
+ } else if (flight .getDistance () < FLIGHT_CLOSE_TO_AIRPORT_DISTANCE_IN_KM && flight .getAltitude () < FLIGHT_MAYBE_IN_AIRPORT_ALTITUDE_IN_M && flight . getVerticalSpeed () < APPROACHING_VERTICAL_SPEED_IN_FPM ) {
228
228
SendMessage message = new SendMessage ();
229
229
message .setChatId (user .getChatId ());
230
230
message .setParseMode (MARKDOWN_PARSE_MODE );
@@ -237,6 +237,8 @@ public void sendNewAn124Flights() {
237
237
));
238
238
botSender .sendMessage (message );
239
239
} else if (flight .getDistance () < FLIGHT_CLOSE_TO_AIRPORT_DISTANCE_IN_KM && flight .getAltitude () > FLIGHT_MAYBE_IN_AIRPORT_ALTITUDE_IN_M ) {
240
+ flightService .changeFlightFlyingNear (flightEntity , true );
241
+
240
242
SendMessage message = new SendMessage ();
241
243
message .setChatId (user .getChatId ());
242
244
message .setParseMode (MARKDOWN_PARSE_MODE );
@@ -336,7 +338,8 @@ public void sendNewAn124Flights() {
336
338
337
339
} else {
338
340
FlightEntity flightEntity = flightService .findByUserAndFlightId (user , flight .getId ());
339
- if (flight .getDistance () < flightEntity .getDistance () && flight .getDistance () < FLIGHT_IN_AIRPORT_DISTANCE_IN_KM && flight .getAltitude () < FLIGHT_IN_AIRPORT_ALTITUDE_IN_M && flightEntity .isActive ()) {
341
+
342
+ if (flight .getAltitude () == ON_GROUND_ALTITUDE && flight .getDistance () < FLIGHT_IN_AIRPORT_DISTANCE_IN_KM ) {
340
343
flightService .changeFlightDistance (flightEntity , flight .getDistance ());
341
344
SendMessage message = new SendMessage ();
342
345
message .setChatId (user .getChatId ());
@@ -363,7 +366,7 @@ public void sendNewAn124Flights() {
363
366
);
364
367
}
365
368
366
- } else if (flight .getDistance () < flightEntity .getDistance () && flight .getDistance () < FLIGHT_CLOSE_TO_AIRPORT_DISTANCE_IN_KM && flight .getAltitude () < FLIGHT_MAYBE_IN_AIRPORT_ALTITUDE_IN_M && !flightEntity .isActive ()) {
369
+ } else if (flight .getDistance () < flightEntity .getDistance () && flight .getDistance () < FLIGHT_CLOSE_TO_AIRPORT_DISTANCE_IN_KM && flight .getAltitude () < FLIGHT_MAYBE_IN_AIRPORT_ALTITUDE_IN_M && !flightEntity .isActive () && flight . getVerticalSpeed () < APPROACHING_VERTICAL_SPEED_IN_FPM ) {
367
370
flightService .changeFlightActive (flightEntity , true );
368
371
flightService .changeFlightDistance (flightEntity , flight .getDistance ());
369
372
SendMessage message = new SendMessage ();
@@ -377,8 +380,9 @@ public void sendNewAn124Flights() {
377
380
flight .getCallsign (), flight .getId ()
378
381
));
379
382
botSender .sendMessage (message );
380
- } else if (flight .getDistance () < flightEntity .getDistance () && flight .getDistance () < FLIGHT_CLOSE_TO_AIRPORT_DISTANCE_IN_KM && flight .getAltitude () > FLIGHT_MAYBE_IN_AIRPORT_ALTITUDE_IN_M ) {
381
- flightService .changeFlightDistance (flightEntity , flight .getDistance ());
383
+ } else if (!flightEntity .isFlyingNear () && flight .getDistance () < FLIGHT_CLOSE_TO_AIRPORT_DISTANCE_IN_KM && flight .getAltitude () > FLIGHT_MAYBE_IN_AIRPORT_ALTITUDE_IN_M ) {
384
+ flightService .changeFlightFlyingNear (flightEntity , true );
385
+
382
386
SendMessage message = new SendMessage ();
383
387
message .setChatId (user .getChatId ());
384
388
message .setParseMode (MARKDOWN_PARSE_MODE );
0 commit comments