diff --git a/lib/content_views/task_list_page.dart b/lib/content_views/task_list_page.dart index 5541986..4734f89 100644 --- a/lib/content_views/task_list_page.dart +++ b/lib/content_views/task_list_page.dart @@ -428,30 +428,29 @@ class _TaskListPageState extends State { } _sendFinTourMessage() async { - var finTourMessage = FinTourMessage(); - finTourMessage.finTour = FinTour(); - finTourMessage.finTour.trId = widget.tour.id; - finTourMessage.finTour.com = "Mir doch egal!"; + var message = FinTour(); + message.trId = widget.tour.id; + message.com = "Mir doch egal!"; var position = MyApp.currentPosition; if (position != null) { - finTourMessage.finTour.track = Track(); - finTourMessage.finTour.track.time = DateTime.now().toIso8601String(); - finTourMessage.finTour.track.pos = FinTaskPos(); - finTourMessage.finTour.track.pos.lat = position.latitude; - finTourMessage.finTour.track.pos.long = position.longitude; + message.track = Track(); + message.track.time = DateTime.now().toIso8601String(); + message.track.pos = FinTaskPos(); + message.track.pos.lat = position.latitude; + message.track.pos.long = position.longitude; } - finTourMessage.finTour.tasks = []; + message.tasks = []; for(var taskInfo in _taskList) { if (taskInfo.answer != null) { var finTourTask = FinTourTask.fromJson(jsonDecode(taskInfo.answer!)); - finTourMessage.finTour.tasks.add(finTourTask); + message.tasks.add(finTourTask); } } - MqttCore.instance.publishPayloadMessage("fin_tour", finTourMessage.toJson()); + MqttCore.instance.publishText("/appserver/to_server/100/1/104400/fin_tour", jsonEncode(message.toJson())); widget.tour.state = Constants.stateFinishedNotConfirmed; await MyApp.isarInstance.writeTxn(() async { diff --git a/lib/protocoll_messages/job_del_message.dart b/lib/protocoll_messages/job_del_message.dart index 5369260..619b4d9 100644 --- a/lib/protocoll_messages/job_del_message.dart +++ b/lib/protocoll_messages/job_del_message.dart @@ -4,7 +4,7 @@ part 'job_del_message.g.dart'; @JsonSerializable() class JobDelMessage { - late List jobDel; + late List jobs; JobDelMessage(); diff --git a/lib/protocoll_messages/job_del_message.g.dart b/lib/protocoll_messages/job_del_message.g.dart index 93b15a3..9199dea 100644 --- a/lib/protocoll_messages/job_del_message.g.dart +++ b/lib/protocoll_messages/job_del_message.g.dart @@ -8,10 +8,9 @@ part of 'job_del_message.dart'; JobDelMessage _$JobDelMessageFromJson(Map json) => JobDelMessage() - ..jobDel = - (json['jobDel'] as List).map((e) => e as int).toList(); + ..jobs = (json['jobs'] as List).map((e) => e as int).toList(); Map _$JobDelMessageToJson(JobDelMessage instance) => { - 'jobDel': instance.jobDel, + 'jobs': instance.jobs, }; diff --git a/lib/tools/mqtt_core.dart b/lib/tools/mqtt_core.dart index 92c7e0a..84aa423 100644 --- a/lib/tools/mqtt_core.dart +++ b/lib/tools/mqtt_core.dart @@ -192,11 +192,11 @@ class MqttCore { break; case 'job_del': - //_jobDeleteReceived(payloadData); + _jobDeleteReceived(messageData); break; case 'sync_request': - //_syncRequestReceived(payloadData); + _syncRequestReceived(messageData); break; case "mssg": @@ -215,6 +215,7 @@ class MqttCore { _mqttClient.subscribe(_fromServerTopic + "/session", MqttQos.exactlyOnce); _mqttClient.subscribe(_fromServerTopic + "/status", MqttQos.exactlyOnce); _mqttClient.subscribe(_fromServerTopic + "/job", MqttQos.exactlyOnce); + _mqttClient.subscribe(_fromServerTopic + "/job_del", MqttQos.exactlyOnce); Util.logInfo('subscribed to topic: $_fromServerTopic'); MessageService().publish(Constants.messageTopicConnectionStatusChanged, arguments: ConnectionStatus(status: ConnectionStatusEnum.connected)); @@ -278,12 +279,10 @@ class MqttCore { MessageService().publish(Constants.messageTopicJobReceived, arguments: JobReceivedMessage(job: newJob)); } - void _jobDeleteReceived(List payloadData) async { - Map map = {}; - map["jobDel"] = payloadData; - var jobDelMessage = JobDelMessage.fromJson(map); + void _jobDeleteReceived(payloadData) async { + var jobDelMessage = JobDelMessage.fromJson(payloadData); - for(var jobId in jobDelMessage.jobDel) { + for(var jobId in jobDelMessage.jobs) { await MyApp.isarInstance.writeTxn(() async { await MyApp.isarInstance.jobs.delete(jobId); });