From 7d9a5f672915bb5ab4650e58251b1e916364838d Mon Sep 17 00:00:00 2001 From: Sven Carstensen Date: Mon, 22 Apr 2024 15:27:16 +0200 Subject: [PATCH] Sender der Bilder eingebaut --- lib/content_views/task_list_page.dart | 29 +++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/lib/content_views/task_list_page.dart b/lib/content_views/task_list_page.dart index 21a954e..c85eebb 100644 --- a/lib/content_views/task_list_page.dart +++ b/lib/content_views/task_list_page.dart @@ -20,6 +20,7 @@ import 'package:stadtbote/popups/tasks_popups/take_photos_popup.dart'; import 'package:stadtbote/protocoll_messages/accept_job_message.dart'; import 'package:stadtbote/protocoll_messages/fin_task_message.dart'; import 'package:stadtbote/protocoll_messages/fin_tour_message.dart'; +import 'package:stadtbote/protocoll_messages/pic_message.dart'; import 'package:stadtbote/tools/constants.dart'; import 'package:stadtbote/tools/message_service.dart'; import 'package:stadtbote/tools/mqtt_core.dart'; @@ -493,9 +494,37 @@ class _TaskListPageState extends State { await MyApp.isarInstance.jobs.put(widget.job); }); + _sendImages(); + checkJobFinished(); } + _sendImages() { + Future.delayed(const Duration(seconds: 1), () { + if (_photos.isNotEmpty) { + int photoIndex = 0; + + for (var photoData in _photos) { + var message = PicMessage(); + message.pic = PicData(); + message.pic.trId = widget.tour.id; + message.pic.num = photoIndex; + message.pic.time = DateTime.now().millisecondsSinceEpoch; + message.pic.data = base64Encode(photoData); + + var position = MyApp.currentPosition; + if (position != null) { + message.pos = PicMessagePos(); + message.pos!.lat = position.latitude; + message.pos!.long = position.longitude; + } + + MqttCore.instance.publishMessage("pic", jsonEncode(message.toJson())); + } + } + }); + } + void checkJobFinished() async { var jobFinished = true;