Erweiterungen

This commit is contained in:
Sven committed 2024-02-05 13:07:09 +01:00
1 parent d0892e552e
commit 69dcd1d2a7
4 files changed
+17 -14

No files matched your search

+2 -10
View File
@@ -256,9 +256,9 @@ class _MainPageState extends State<MainPage> {
widget.sidValueNotifier.value = statusInfoUpdateMessage.status.sid; widget.sidValueNotifier.value = statusInfoUpdateMessage.status.sid;
}); });
BroadcastReceiver().subscribe<JobReceivedMessage>(Constants.messageTopicJobReceived, (JobReceivedMessage jobReceivedMessage) { /*BroadcastReceiver().subscribe<JobReceivedMessage>(Constants.messageTopicJobReceived, (JobReceivedMessage jobReceivedMessage) {
_jobReceived(jobReceivedMessage.job); _jobReceived(jobReceivedMessage.job);
}); });*/
} }
void _exitMessages() { void _exitMessages() {
@@ -274,13 +274,5 @@ class _MainPageState extends State<MainPage> {
void _jobReceived(Job job) { void _jobReceived(Job job) {
_refreshBadges(); _refreshBadges();
if (job.state == 0) {
_showAcceptanceDialog(job);
}
}
void _showAcceptanceDialog(Job job) async {
await showAcceptJobsPopup(context, await MyApp.isarInstance.jobs.filter().stateEqualTo(0).findAll());
} }
} }
+2 -2
View File
@@ -96,8 +96,8 @@ class _MessagesPageState extends State<MessagesPage> {
message.time = DateFormat("yyyy.mm.dd HH:mm").format(DateTime.now()); message.time = DateFormat("yyyy.mm.dd HH:mm").format(DateTime.now());
message.id = 0; message.id = 0;
await MyApp.isarInstance.writeTxn(() async { MyApp.isarInstance.writeTxnSync(() {
await MyApp.isarInstance.messages.put(message); MyApp.isarInstance.messages.putSync(message);
}); });
_messages.insert(0, types.TextMessage( _messages.insert(0, types.TextMessage(
+11
View File
@@ -7,9 +7,11 @@ import 'package:isar/isar.dart';
import 'package:path_provider/path_provider.dart'; import 'package:path_provider/path_provider.dart';
import 'package:stadtbote/model/message.dart'; import 'package:stadtbote/model/message.dart';
import 'package:stadtbote/model/task_info.dart'; import 'package:stadtbote/model/task_info.dart';
import 'package:stadtbote/popups/accept_jobs_popup.dart';
import 'package:stadtbote/tools/colored_safe_area.dart'; import 'package:stadtbote/tools/colored_safe_area.dart';
import 'package:stadtbote/model/status.dart'; import 'package:stadtbote/model/status.dart';
import 'package:stadtbote/tools/connection_status.dart'; import 'package:stadtbote/tools/connection_status.dart';
import 'package:stadtbote/tools/messages/job_received_message.dart';
import 'tools/mqtt_core.dart'; import 'tools/mqtt_core.dart';
import 'content_views/main_page.dart'; import 'content_views/main_page.dart';
@@ -317,6 +319,9 @@ class _MainState extends State<Main> with SingleTickerProviderStateMixin {
BroadcastReceiver().subscribe<ConnectionStatus>(Constants.messageTopicConnectionStatusChanged, (ConnectionStatus connectionStatus) { BroadcastReceiver().subscribe<ConnectionStatus>(Constants.messageTopicConnectionStatusChanged, (ConnectionStatus connectionStatus) {
_connectionStatusChanged(connectionStatus); _connectionStatusChanged(connectionStatus);
}); });
BroadcastReceiver().subscribe<JobReceivedMessage>(Constants.messageTopicJobReceived, (JobReceivedMessage jobReceivedMessage) {
_jobReceived(jobReceivedMessage.job);
});
} }
void _replaceContentView(ContentViewWidget widget) async { void _replaceContentView(ContentViewWidget widget) async {
@@ -396,4 +401,10 @@ class _MainState extends State<Main> with SingleTickerProviderStateMixin {
void _connectionStatusChanged(ConnectionStatus connectionStatus) { void _connectionStatusChanged(ConnectionStatus connectionStatus) {
_connectionLostValueNotifier.value = connectionStatus.status == ConnectionStatusEnum.notConnected; _connectionLostValueNotifier.value = connectionStatus.status == ConnectionStatusEnum.notConnected;
} }
void _jobReceived(Job job) async {
if (job.state == 0) {
await showAcceptJobsPopup(context, await MyApp.isarInstance.jobs.filter().stateEqualTo(0).findAll());
}
}
} }
+2 -2
View File
@@ -227,8 +227,8 @@ class MqttCore {
for (var foundJobData in payloadData) { for (var foundJobData in payloadData) {
Job newJob = Job.fromJson(foundJobData); Job newJob = Job.fromJson(foundJobData);
await MyApp.isarInstance.writeTxn(() async { MyApp.isarInstance.writeTxnSync(() async {
await MyApp.isarInstance.jobs.put(newJob); MyApp.isarInstance.jobs.putSync(newJob);
}); });
BroadcastReceiver().publish<JobReceivedMessage>(Constants.messageTopicJobReceived, arguments: JobReceivedMessage(job: newJob)); BroadcastReceiver().publish<JobReceivedMessage>(Constants.messageTopicJobReceived, arguments: JobReceivedMessage(job: newJob));