Fehlerkorrekturen und Erweiterungen

This commit is contained in:
Sven committed 2025-08-28 10:45:58 +02:00
1 parent 265d75a99b
commit 47b4c85133
14 files changed
+112 -82

No files matched your search

@@ -2,27 +2,27 @@ C/C++ Structured Log
Ž Ž
‹/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/additional_project_files.txtC ‹/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint   þóµŒ3  Ë‹·�Ô2Ž ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  …™ÚþŽ3  Ë‹·�Ô2Ž
‹ ‹
ˆ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/android_gradle_build.json   þóµŒ3Á Í‹·�Ô2“ ˆ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/android_gradle_build.json  …™ÚþŽ3Á Í‹·�Ô2“
� �
�/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/android_gradle_build_mini.json   þóµŒ3¸ ΋·�Ô2~ �/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/android_gradle_build_mini.json  …™ÚþŽ3¸ ΋·�Ô2~
| |
z/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/build.ninja   þóµŒ3€Ö À‹·�Ô2ƒ z/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/build.ninja  …™ÚþŽ3€Ö À‹·�Ô2ƒ
€ €
~/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/build.ninja.txt   þóµŒ3‰ ~/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/build.ninja.txt  …™ÚþŽ3‰
† †
ƒ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/build_file_index.txt   þóµŒ3␍f Ï‹·�Ô2Š ƒ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/build_file_index.txt  …™ÚþŽ3␍f Ï‹·�Ô2Š
‡ ‡
„/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/compile_commands.json   þóµŒ3Ž „/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/compile_commands.json  …™ÚþŽ3Ž
‹ ‹
ˆ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/compile_commands.json.bin   þóµŒ3 ” ˆ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/compile_commands.json.bin  …™ÚþŽ3 ”
‘ ‘
Ž/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/metadata_generation_command.txt   þóµŒ3 Ž/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/metadata_generation_command.txt  …™ÚþŽ3
Ê Ï‹·�Ô2‡ Ê Ï‹·�Ô2‡
„ „
�/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/prefab_config.json   þóµŒ3␍ ( Ï‹·�Ô2Œ �/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/prefab_config.json  …™ÚþŽ3␍ ( Ï‹·�Ô2Œ
‰ ‰
†/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/symbol_folder_index.txt   þóµŒ3␍ } Ï‹·�Ô2j †/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/arm64-v8a/symbol_folder_index.txt  …™ÚþŽ3␍ } Ï‹·�Ô2j
h h
f/Users/svencarstensen/Entwicklung/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt   þóµŒ3␍¤ ÊÍÊáÓ2 f/Users/svencarstensen/Entwicklung/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  …™ÚþŽ3␍¤ ÊÍÊáÓ2
@@ -2,27 +2,27 @@ C/C++ Structured Log
� �
�/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/additional_project_files.txtC �/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ¦þóµŒ3  ¨‘·�Ô2� ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ‰™ÚþŽ3  ¨‘·�Ô2�
� �
Š/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/android_gradle_build.json  ¦þóµŒ3Å ©‘·�Ô2• Š/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/android_gradle_build.json  ‰™ÚþŽ3Å ©‘·�Ô2•
’ ’
�/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/android_gradle_build_mini.json  ¦þóµŒ3¼ ©‘·�Ô2€ �/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/android_gradle_build_mini.json  ‰™ÚþŽ3¼ ©‘·�Ô2€
~ ~
|/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/build.ninja  ¦þóµŒ3ŒÖ ¡‘·�Ô2† |/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/build.ninja  ‰™ÚþŽ3ŒÖ ¡‘·�Ô2†
ƒ ƒ
€/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/build.ninja.txt  ¦þóµŒ3‹ €/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/build.ninja.txt  ‰™ÚþŽ3‹
ˆ ˆ
…/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/build_file_index.txt  ¦þóµŒ3␍f ©‘·�Ô2Œ …/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/build_file_index.txt  ‰™ÚþŽ3␍f ©‘·�Ô2Œ
‰ ‰
†/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/compile_commands.json  ¦þóµŒ3� †/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/compile_commands.json  ‰™ÚþŽ3�
� �
Š/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/compile_commands.json.bin  ¦þóµŒ3 – Š/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/compile_commands.json.bin  ‰™ÚþŽ3 –
“ “
�/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/metadata_generation_command.txt  ¦þóµŒ3 �/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/metadata_generation_command.txt  ‰™ÚþŽ3
Ô ©‘·�Ô2‰ Ô ©‘·�Ô2‰
† †
ƒ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/prefab_config.json  ¦þóµŒ3␍ ( ©‘·�Ô2Ž ƒ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/prefab_config.json  ‰™ÚþŽ3␍ ( ©‘·�Ô2Ž
‹ ‹
ˆ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/symbol_folder_index.txt  ¦þóµŒ3␍  ©‘·�Ô2j ˆ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/armeabi-v7a/symbol_folder_index.txt  ‰™ÚþŽ3␍  ©‘·�Ô2j
h h
f/Users/svencarstensen/Entwicklung/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  ¦þóµŒ3␍¤ ÊÍÊáÓ2 f/Users/svencarstensen/Entwicklung/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  ‰™ÚþŽ3␍¤ ÊÍÊáÓ2
@@ -2,27 +2,27 @@ C/C++ Structured Log
ˆ ˆ
…/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/additional_project_files.txtC …/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  «þóµŒ3  ¥“·�Ô2ˆ ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  Œ™ÚþŽ3  ¥“·�Ô2ˆ
… …
‚/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/android_gradle_build.json  «þóµŒ3µ ¥“·�Ô2� ‚/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/android_gradle_build.json  Œ™ÚþŽ3µ ¥“·�Ô2�
Š Š
‡/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/android_gradle_build_mini.json  «þóµŒ3¬ ¥“·�Ô2x ‡/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/android_gradle_build_mini.json  Œ™ÚþŽ3¬ ¥“·�Ô2x
v v
t/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/build.ninja  «þóµŒ3ÜÕ ž“·�Ô2| t/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/build.ninja  Œ™ÚþŽ3ÜÕ ž“·�Ô2|
z z
x/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/build.ninja.txt  «þóµŒ3� x/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/build.ninja.txt  Œ™ÚþŽ3�
 
}/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/build_file_index.txt  «þóµŒ3␍f ¦“·�Ô2ƒ }/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/build_file_index.txt  Œ™ÚþŽ3␍f ¦“·�Ô2ƒ
€ €
~/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/compile_commands.json  «þóµŒ3ˆ ~/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/compile_commands.json  Œ™ÚþŽ3ˆ
… …
‚/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/compile_commands.json.bin  «þóµŒ3 Ž ‚/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/compile_commands.json.bin  Œ™ÚþŽ3 Ž
‹ ‹
ˆ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/metadata_generation_command.txt  «þóµŒ3 ˆ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/metadata_generation_command.txt  Œ™ÚþŽ3
¬ ¦“·�Ô2 ¬ ¦“·�Ô2
} }
{/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/prefab_config.json  «þóµŒ3␍ ( ¦“·�Ô2† {/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/prefab_config.json  Œ™ÚþŽ3␍ ( ¦“·�Ô2†
ƒ ƒ
€/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/symbol_folder_index.txt  «þóµŒ3␍ w ¦“·�Ô2j €/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86/symbol_folder_index.txt  Œ™ÚþŽ3␍ w ¦“·�Ô2j
h h
f/Users/svencarstensen/Entwicklung/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  «þóµŒ3␍¤ ÊÍÊáÓ2 f/Users/svencarstensen/Entwicklung/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  Œ™ÚþŽ3␍¤ ÊÍÊáÓ2
@@ -2,27 +2,27 @@ C/C++ Structured Log
‹ ‹
ˆ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/additional_project_files.txtC ˆ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ¯þóµŒ3  ”•·�Ô2‹ ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  �™ÚþŽ3  ”•·�Ô2‹
ˆ ˆ
…/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/android_gradle_build.json  ¯þóµŒ3» ••·�Ô2� …/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/android_gradle_build.json  �™ÚþŽ3» ••·�Ô2�
� �
Š/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/android_gradle_build_mini.json  ¯þóµŒ3² ••·�Ô2{ Š/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/android_gradle_build_mini.json  �™ÚþŽ3² ••·�Ô2{
y y
w/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/build.ninja  ¯þóµŒ3îÕ Ž•·�Ô2 w/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/build.ninja  �™ÚþŽ3îÕ Ž•·�Ô2
} }
{/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/build.ninja.txt  ¯þóµŒ3† {/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/build.ninja.txt  �™ÚþŽ3†
ƒ ƒ
€/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/build_file_index.txt  ¯þóµŒ3␍f –•·�Ô2‡ €/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/build_file_index.txt  �™ÚþŽ3␍f –•·�Ô2‡
„ „
�/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/compile_commands.json  ¯þóµŒ3‹ �/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/compile_commands.json  �™ÚþŽ3‹
ˆ ˆ
…/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/compile_commands.json.bin  ¯þóµŒ3 ‘ …/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/compile_commands.json.bin  �™ÚþŽ3 ‘
Ž Ž
‹/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/metadata_generation_command.txt  ¯þóµŒ3 ‹/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/metadata_generation_command.txt  �™ÚþŽ3
» ••·�Ô2ƒ » ••·�Ô2ƒ
€ €
~/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/prefab_config.json  ¯þóµŒ3␍ ( ••·�Ô2‰ ~/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/prefab_config.json  �™ÚþŽ3␍ ( ••·�Ô2‰
† †
ƒ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/symbol_folder_index.txt  ¯þóµŒ3␍ z –•·�Ô2j ƒ/Users/svencarstensen/Entwicklung/Source/flutter/Assecutor/stadtbote/android/app/.cxx/Debug/2a1172u2/x86_64/symbol_folder_index.txt  �™ÚþŽ3␍ z –•·�Ô2j
h h
f/Users/svencarstensen/Entwicklung/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  ¯þóµŒ3␍¤ ÊÍÊáÓ2 f/Users/svencarstensen/Entwicklung/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  �™ÚþŽ3␍¤ ÊÍÊáÓ2
+1 -1
View File
@@ -178,7 +178,7 @@ class _ApproachAreaPageState extends State<ApproachAreaPage> with ProducerMixin,
} }
_sendZip(Rank rank, String zip) async { _sendZip(Rank rank, String zip) async {
var position = MyApp.currentPosition; var position = await MyApp.getCurrentPosition();
var setPosMessage = ZipSetPos(); var setPosMessage = ZipSetPos();
setPosMessage.zip = zip; setPosMessage.zip = zip;
+1 -1
View File
@@ -216,7 +216,7 @@ class _AssignedJobsPageState extends State<AssignedJobsPage> with ProducerMixin,
} }
_sendAnswer(Job job, int item) async { _sendAnswer(Job job, int item) async {
var currentPosition = MyApp.currentPosition; var currentPosition = await MyApp.getCurrentPosition();
var message = Reaction(); var message = Reaction();
message.id = job.id; message.id = job.id;
+1 -1
View File
@@ -401,7 +401,7 @@ class _MainPageState extends State<MainPage> with ConsumerMixin, ProducerMixin {
} }
_sendLogoutMessage() async { _sendLogoutMessage() async {
var position = MyApp.currentPosition; var position = await MyApp.getCurrentPosition();
var logoutMessage = LogoutMessage(); var logoutMessage = LogoutMessage();
if (position != null) { if (position != null) {
+17 -17
View File
@@ -255,10 +255,10 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
_processTaskArrivedOrFinished(TaskInfo taskInfo) { _processTaskArrivedOrFinished(TaskInfo taskInfo) {
Util.logInfo('Task ${taskInfo.task.sId} called'); Util.logInfo('Task ${taskInfo.task.sId} called');
showTaskArrivedPopup(context, taskInfo, () { showTaskArrivedPopup(context, taskInfo, () async {
DateFormat dateFormat = DateFormat("dd.MM.yyyy HH:mm"); DateFormat dateFormat = DateFormat("dd.MM.yyyy HH:mm");
var answer = _createAnswerHeader(taskInfo); var answer = await _createAnswerHeader(taskInfo);
taskInfo.answer = jsonEncode(answer.toJson()); taskInfo.answer = jsonEncode(answer.toJson());
taskInfo.additionalText = dateFormat.format(DateTime.now()); taskInfo.additionalText = dateFormat.format(DateTime.now());
@@ -275,8 +275,8 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
_processCommissionNumber(TaskInfo taskInfo) { _processCommissionNumber(TaskInfo taskInfo) {
Util.logInfo('Task ${taskInfo.task.sId} called'); Util.logInfo('Task ${taskInfo.task.sId} called');
showComissionNumberPopup(context, taskInfo, (comissionNumber) { showComissionNumberPopup(context, taskInfo, (comissionNumber) async {
var answer = _createAnswerHeader(taskInfo); var answer = await _createAnswerHeader(taskInfo);
answer.val = comissionNumber; answer.val = comissionNumber;
taskInfo.answer = jsonEncode(answer.toJson()); taskInfo.answer = jsonEncode(answer.toJson());
@@ -294,8 +294,8 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
/*_processScanBarcodes(TaskInfo taskInfo) { /*_processScanBarcodes(TaskInfo taskInfo) {
Util.logInfo('Task ${taskInfo.task.sId} called'); Util.logInfo('Task ${taskInfo.task.sId} called');
showScanBarcodesPopup(context, taskInfo, (List<String> barcodes) { showScanBarcodesPopup(context, taskInfo, (List<String> barcodes) async {
var answer = _createAnswerHeader(taskInfo); var answer = await _createAnswerHeader(taskInfo);
answer.codes = []; answer.codes = [];
for(var barcode in barcodes) { for(var barcode in barcodes) {
answer.codes!.add(barcode); answer.codes!.add(barcode);
@@ -343,8 +343,8 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
void _processStationNotice(TaskInfo taskInfo) { void _processStationNotice(TaskInfo taskInfo) {
Util.logInfo('Task ${taskInfo.task.sId} called'); Util.logInfo('Task ${taskInfo.task.sId} called');
showStationNoticePopup(context, taskInfo, (notice) { showStationNoticePopup(context, taskInfo, (notice) async {
var answer = _createAnswerHeader(taskInfo); var answer = await _createAnswerHeader(taskInfo);
answer.val = notice; answer.val = notice;
taskInfo.answer = jsonEncode(answer.toJson()); taskInfo.answer = jsonEncode(answer.toJson());
@@ -360,8 +360,8 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
void _processReceiptGiver(TaskInfo taskInfo) { void _processReceiptGiver(TaskInfo taskInfo) {
Util.logInfo('Task ${taskInfo.task.sId} called'); Util.logInfo('Task ${taskInfo.task.sId} called');
showReceiptGiverPopup(context, taskInfo, (receiptGiver, selectedTourEntry) { showReceiptGiverPopup(context, taskInfo, (receiptGiver, selectedTourEntry) async {
var answer = _createAnswerHeader(taskInfo); var answer = await _createAnswerHeader(taskInfo);
answer.code = selectedTourEntry.code; answer.code = selectedTourEntry.code;
answer.val = receiptGiver; answer.val = receiptGiver;
@@ -379,8 +379,8 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
Util.logInfo('Task ${taskInfo.task.sId} called'); Util.logInfo('Task ${taskInfo.task.sId} called');
Future.delayed(const Duration(seconds: 1), () async { Future.delayed(const Duration(seconds: 1), () async {
showPickupDeliveryStatusPopup(context, taskInfo, (tourEntry, remark) { showPickupDeliveryStatusPopup(context, taskInfo, (tourEntry, remark) async {
var answer = _createAnswerHeader(taskInfo); var answer = await _createAnswerHeader(taskInfo);
answer.code = tourEntry!.code; answer.code = tourEntry!.code;
answer.val = remark; answer.val = remark;
@@ -409,7 +409,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]); SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
if (signature != null) { if (signature != null) {
var answer = _createAnswerHeader(taskInfo); var answer = await _createAnswerHeader(taskInfo);
answer.sign = signature; answer.sign = signature;
taskInfo.answer = jsonEncode(answer.toJson()); taskInfo.answer = jsonEncode(answer.toJson());
@@ -465,7 +465,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
message.task.sId = taskInfo.task.sId; message.task.sId = taskInfo.task.sId;
message.task.time = DateTime.now().toIso8601String(); message.task.time = DateTime.now().toIso8601String();
var position = MyApp.currentPosition; var position = await MyApp.getCurrentPosition();
if (position != null) { if (position != null) {
message.task.pos = FinTaskPos(); message.task.pos = FinTaskPos();
message.task.pos!.lat = position.latitude; message.task.pos!.lat = position.latitude;
@@ -480,8 +480,8 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
); );
} }
FinTourTask _createAnswerHeader(TaskInfo taskInfo) { Future<FinTourTask> _createAnswerHeader(TaskInfo taskInfo) async {
var position = MyApp.currentPosition; var position = await MyApp.getCurrentPosition();
var finTourTask = FinTourTask(); var finTourTask = FinTourTask();
finTourTask.sId = taskInfo.task.sId; finTourTask.sId = taskInfo.task.sId;
@@ -503,7 +503,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
finTourMessage.trId = widget.tour.id; finTourMessage.trId = widget.tour.id;
finTourMessage.com = _commisionNumber; finTourMessage.com = _commisionNumber;
var position = MyApp.currentPosition; var position = await MyApp.getCurrentPosition();
if (position != null) { if (position != null) {
finTourMessage.track = Track(); finTourMessage.track = Track();
finTourMessage.track!.time = DateTime.now().toIso8601String(); finTourMessage.track!.time = DateTime.now().toIso8601String();
+19 -3
View File
@@ -1,6 +1,7 @@
import 'dart:async'; import 'dart:async';
import 'package:dart_mq/dart_mq.dart'; import 'package:dart_mq/dart_mq.dart';
import 'package:synchronized/synchronized.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:geolocator/geolocator.dart'; import 'package:geolocator/geolocator.dart';
import 'package:isar/isar.dart'; import 'package:isar/isar.dart';
@@ -100,10 +101,25 @@ class MyApp extends StatefulWidget {
static late Isar isarInstance; static late Isar isarInstance;
static Position? currentPosition; static Position? _currentPosition;
static final Lock _positionLock = Lock();
static bool suppressAcceptDialog = false; static bool suppressAcceptDialog = false;
/// Thread-safe getter for current position
static Future<Position?> getCurrentPosition() async {
return await _positionLock.synchronized(() {
return _currentPosition;
});
}
/// Thread-safe setter for current position
static Future<void> setCurrentPosition(Position? position) async {
await _positionLock.synchronized(() {
_currentPosition = position;
});
}
@override @override
State<MyApp> createState() => _MyAppState(); State<MyApp> createState() => _MyAppState();
} }
@@ -138,8 +154,8 @@ class _MyAppState extends State<MyApp> with ConsumerMixin {
distanceFilter: 0, distanceFilter: 0,
); );
Geolocator.getPositionStream(locationSettings: locationSettings).listen((Position? position) { Geolocator.getPositionStream(locationSettings: locationSettings).listen((Position? position) async {
MyApp.currentPosition = position; await MyApp.setCurrentPosition(position);
}); });
} }
} }
+1 -1
View File
@@ -368,7 +368,7 @@ Future<List<Widget>> _fetchJobWidgets(StateSetter dialogState, Function() onFini
} }
_sendAnswer(SharedMapReference mapReference, Job job, int item) async { _sendAnswer(SharedMapReference mapReference, Job job, int item) async {
var currentPosition = MyApp.currentPosition; var currentPosition = await MyApp.getCurrentPosition();
var message = Reaction(); var message = Reaction();
message.id = job.id; message.id = job.id;
+12 -4
View File
@@ -17,11 +17,12 @@ void showInfosPopup(SessionStatus? status) async {
shadowColor: Colors.transparent, shadowColor: Colors.transparent,
backgroundColor: Colors.white, backgroundColor: Colors.white,
content: StatefulBuilder(builder: (BuildContext context, StateSetter setState) { content: StatefulBuilder(builder: (BuildContext context, StateSetter setState) {
String getGpsStatustext() { Future<String> getGpsStatustext() async {
String gpsStatus = "nicht verfügbar"; String gpsStatus = "nicht verfügbar";
if (MyApp.currentPosition != null) { var currentPosition = await MyApp.getCurrentPosition();
if (currentPosition != null) {
var nowUtc = DateTime.now().toUtc(); var nowUtc = DateTime.now().toUtc();
var minutesDelta = nowUtc.difference(MyApp.currentPosition!.timestamp); var minutesDelta = nowUtc.difference(currentPosition.timestamp);
if (minutesDelta >= const Duration(minutes: 15)) { if (minutesDelta >= const Duration(minutes: 15)) {
gpsStatus = "veraltet"; gpsStatus = "veraltet";
@@ -32,9 +33,14 @@ void showInfosPopup(SessionStatus? status) async {
return gpsStatus; return gpsStatus;
} }
return FutureBuilder<String>(
future: getGpsStatustext(),
builder: (context, snapshot) {
String gpsStatus = snapshot.data ?? "wird geladen...";
var text = "Versionsnummer: a$version\n"; var text = "Versionsnummer: a$version\n";
text += "Verbindungsstatus: $connectedString\n"; text += "Verbindungsstatus: $connectedString\n";
text += "GPS-Status: ${getGpsStatustext()}\n"; text += "GPS-Status: $gpsStatus\n";
text += "\n"; text += "\n";
text += "User Status:\n"; text += "User Status:\n";
if (status != null) { if (status != null) {
@@ -77,6 +83,8 @@ void showInfosPopup(SessionStatus? status) async {
), ),
), ),
)); ));
},
);
})); }));
}); });
} }
+9 -4
View File
@@ -591,7 +591,7 @@ class MqttCore with ProducerMixin, ConsumerMixin {
} }
_sendSyncMessage() async { _sendSyncMessage() async {
var currentPosition = MyApp.currentPosition; var currentPosition = await MyApp.getCurrentPosition();
var jobs = await MyApp.isarInstance.jobs.filter().stateGreaterThan(-1).findAll(); var jobs = await MyApp.isarInstance.jobs.filter().stateGreaterThan(-1).findAll();
@@ -617,9 +617,11 @@ class MqttCore with ProducerMixin, ConsumerMixin {
} }
void _startTrackTimer() { void _startTrackTimer() {
_trackTimer ??= Timer.periodic(const Duration(seconds: 120), (Timer t) { _cancelTrackTimer();
_trackTimer ??= Timer.periodic(const Duration(seconds: 120), (Timer t) async {
try { try {
var position = MyApp.currentPosition; var position = await MyApp.getCurrentPosition();
if (position != null) { if (position != null) {
var trackMessage = TrackPosition(); var trackMessage = TrackPosition();
trackMessage.time = position.timestamp.toIso8601String(); trackMessage.time = position.timestamp.toIso8601String();
@@ -636,8 +638,11 @@ class MqttCore with ProducerMixin, ConsumerMixin {
} }
void _cancelTrackTimer() { void _cancelTrackTimer() {
if (_trackTimer != null && _trackTimer!.isActive) { if (_trackTimer != null) {
if (_trackTimer!.isActive) {
_trackTimer!.cancel(); _trackTimer!.cancel();
}
_trackTimer = null; _trackTimer = null;
} }
} }
+1 -1
View File
@@ -1326,7 +1326,7 @@ packages:
source: hosted source: hosted
version: "1.4.1" version: "1.4.1"
synchronized: synchronized:
dependency: transitive dependency: "direct main"
description: description:
name: synchronized name: synchronized
sha256: "0669c70faae6270521ee4f05bffd2919892d42d1276e6c495be80174b6bc0ef6" sha256: "0669c70faae6270521ee4f05bffd2919892d42d1276e6c495be80174b6bc0ef6"
+2 -1
View File
@@ -16,7 +16,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
# In Windows, build-name is used as the major, minor, and patch parts # In Windows, build-name is used as the major, minor, and patch parts
# of the product and file versions while build-number is used as the build suffix. # of the product and file versions while build-number is used as the build suffix.
version: 338.0.0+338 version: 339.0.0+339
environment: environment:
sdk: '>=2.19.6 <3.0.0' sdk: '>=2.19.6 <3.0.0'
@@ -72,6 +72,7 @@ dependencies:
permission_handler: ^11.4.0 permission_handler: ^11.4.0
dart_mq: ^1.1.0 dart_mq: ^1.1.0
intl: ^0.20.2 intl: ^0.20.2
synchronized: ^3.1.0
dev_dependencies: dev_dependencies:
flutter_test: flutter_test: