fixed position error and added goad condition button
This commit is contained in:
@ -562,19 +562,24 @@ class DestinationController extends GetxController {
|
||||
}
|
||||
|
||||
Future<void> addGPStoDB(double la, double ln, {isCheckin = 0}) async {
|
||||
GpsDatabaseHelper db = GpsDatabaseHelper.instance;
|
||||
final team_name = indexController.currentUser[0]["user"]['team_name'];
|
||||
final event_code = indexController.currentUser[0]["user"]["event_code"];
|
||||
GpsData gps_data = GpsData(
|
||||
id: 0,
|
||||
team_name: team_name,
|
||||
event_code: event_code,
|
||||
lat: la,
|
||||
lon: ln,
|
||||
is_checkin: isCheckin,
|
||||
created_at: DateTime.now().millisecondsSinceEpoch);
|
||||
var res = await db.insertGps(gps_data);
|
||||
//print("==gps res == ${res}");
|
||||
//print("in addGPStoDB ${indexController.currentUser}");
|
||||
try {
|
||||
GpsDatabaseHelper db = GpsDatabaseHelper.instance;
|
||||
final team_name = indexController.currentUser[0]["user"]['team_name'];
|
||||
final event_code = indexController.currentUser[0]["user"]["event_code"];
|
||||
GpsData gps_data = GpsData(
|
||||
id: 0,
|
||||
team_name: team_name,
|
||||
event_code: event_code,
|
||||
lat: la,
|
||||
lon: ln,
|
||||
is_checkin: isCheckin,
|
||||
created_at: DateTime.now().millisecondsSinceEpoch);
|
||||
var res = await db.insertGps(gps_data);
|
||||
} catch (err) {
|
||||
print("errr ready gps ${err}");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> checkForCheckin() async {
|
||||
@ -762,33 +767,38 @@ class DestinationController extends GetxController {
|
||||
}
|
||||
|
||||
void handleLocationUpdate(Position? position) async {
|
||||
if (position != null) {
|
||||
if (distanceToStart() >= 1000) {
|
||||
ready_for_goal = true;
|
||||
}
|
||||
try {
|
||||
if (position != null) {
|
||||
if (distanceToStart() >= 1000) {
|
||||
ready_for_goal = true;
|
||||
}
|
||||
|
||||
var distance = const Distance();
|
||||
double distanceToDest = distance.as(
|
||||
LengthUnit.Meter,
|
||||
LatLng(position.latitude, position.longitude),
|
||||
LatLng(currentLat, currentLon));
|
||||
Duration difference =
|
||||
lastGPSCollectedTime.difference(DateTime.now()).abs();
|
||||
if (difference.inSeconds >= 10 || distanceToDest >= 10) {
|
||||
// print(
|
||||
// "^^^^^^^^ GPS data collected ${DateFormat('kk:mm:ss \n EEE d MMM').format(DateTime.now())}, ^^^ ${position.latitude}, ${position.longitude}");
|
||||
var distance = const Distance();
|
||||
double distanceToDest = distance.as(
|
||||
LengthUnit.Meter,
|
||||
LatLng(position.latitude, position.longitude),
|
||||
LatLng(currentLat, currentLon));
|
||||
|
||||
LogManager().addLog(
|
||||
"GPS : $currentLat, $currentLon - ${DateTime.now().hour}:${DateTime.now().minute}:${DateTime.now().second}:${DateTime.now().microsecond}");
|
||||
Duration difference =
|
||||
lastGPSCollectedTime.difference(DateTime.now()).abs();
|
||||
if (difference.inSeconds >= 10 || distanceToDest >= 10) {
|
||||
// print(
|
||||
// "^^^^^^^^ GPS data collected ${DateFormat('kk:mm:ss \n EEE d MMM').format(DateTime.now())}, ^^^ ${position.latitude}, ${position.longitude}");
|
||||
|
||||
if (isInRog.value) {
|
||||
await addGPStoDB(position.latitude, position.longitude);
|
||||
lastGPSCollectedTime = DateTime.now();
|
||||
LogManager().addLog(
|
||||
"GPS : $currentLat, $currentLon - ${DateTime.now().hour}:${DateTime.now().minute}:${DateTime.now().second}:${DateTime.now().microsecond}");
|
||||
if (isInRog.value) {
|
||||
await addGPStoDB(position.latitude, position.longitude);
|
||||
lastGPSCollectedTime = DateTime.now();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
currentLat = position.latitude;
|
||||
currentLon = position.longitude;
|
||||
} finally {
|
||||
if (position != null &&
|
||||
(position.latitude != 0 || position.longitude != 0)) {
|
||||
currentLat = position.latitude;
|
||||
currentLon = position.longitude;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -908,7 +918,10 @@ class DestinationController extends GetxController {
|
||||
}
|
||||
|
||||
void centerMapToCurrentLocation() {
|
||||
indexController.mapController.move(LatLng(currentLat, currentLon), 17.0);
|
||||
print("center is ${currentLat}, ${currentLon}");
|
||||
if (currentLat != 0 || currentLon != 0) {
|
||||
indexController.mapController.move(LatLng(currentLat, currentLon), 17.0);
|
||||
}
|
||||
}
|
||||
|
||||
void connectionChanged(String val) {
|
||||
|
||||
Reference in New Issue
Block a user