Erweiterungen

This commit is contained in:
Sven committed 2024-01-31 09:40:48 +01:00
1 parent 3cc8ec47fc
commit 957b944b55
3 files changed
+62 -11

No files matched your search

+2 -4
View File
@@ -160,11 +160,11 @@ class _AssignedJobsPageState extends State<AssignedJobsPage> {
const SizedBox(height: 20), const SizedBox(height: 20),
Row(children: [ Row(children: [
Expanded( Expanded(
child: getDefaultButton('Ablehnen', () => {_sendAnswer(job, 1)}), child: getDefaultButton(!job.global ? 'Ablehnen' : 'Ignorieren', () => { _sendAnswer(job, !job.global ? 2: 3)}),
), ),
const SizedBox(width: 20), const SizedBox(width: 20),
Expanded( Expanded(
child: getDefaultButton('Annehmen', () => {_sendAnswer(job, 2)}), child: getDefaultButton('Annehmen', () => {_sendAnswer(job, 1)}),
) )
]) ])
], ],
@@ -193,6 +193,4 @@ class _AssignedJobsPageState extends State<AssignedJobsPage> {
message.reaction.track.pos.acc = 1; message.reaction.track.pos.acc = 1;
MqttCore.instance.publishPayloadMessage("server", message.toJson()); MqttCore.instance.publishPayloadMessage("server", message.toJson());
Util.logInfo('test');
}} }}
+8 -7
View File
@@ -7,6 +7,7 @@ import 'package:stadtbote/main.dart';
import 'package:stadtbote/model/accept_job_message.dart'; import 'package:stadtbote/model/accept_job_message.dart';
import 'package:stadtbote/model/job.dart'; import 'package:stadtbote/model/job.dart';
import 'package:stadtbote/tools/constants.dart'; import 'package:stadtbote/tools/constants.dart';
import 'package:stadtbote/tools/mqtt_core.dart';
import 'package:stadtbote/tools/util.dart'; import 'package:stadtbote/tools/util.dart';
import 'package:badges/badges.dart' as badges; import 'package:badges/badges.dart' as badges;
import 'package:uuid/uuid.dart'; import 'package:uuid/uuid.dart';
@@ -61,13 +62,12 @@ void showAcceptJobsPopup(BuildContext context) async {
); );
} }
// "Ablehnen" : "Ignorieren";
Future<List<Widget>> _createListEntries() async { Future<List<Widget>> _createListEntries() async {
List<Widget> entries = []; List<Widget> entries = [];
var jobs = await MyApp.isarInstance.jobs.filter().stateEqualTo(0).findAll(); var jobs = await MyApp.isarInstance.jobs.filter().stateEqualTo(0).findAll();
jobs.addAll(await MyApp.isarInstance.jobs.filter().stateEqualTo(0).findAll());
jobs.addAll(await MyApp.isarInstance.jobs.filter().stateEqualTo(0).findAll());
jobs.addAll(await MyApp.isarInstance.jobs.filter().stateEqualTo(0).findAll());
for (var job in jobs) { for (var job in jobs) {
entries.add(ExpandableNotifier( entries.add(ExpandableNotifier(
child: ListTile( child: ListTile(
@@ -144,11 +144,11 @@ Future<List<Widget>> _createListEntries() async {
const SizedBox(height: 20), const SizedBox(height: 20),
Row(children: [ Row(children: [
Expanded( Expanded(
child: getDefaultButton('Ablehnen', () => {_sendAnswer(1)}), child: getDefaultButton(!job.global ? 'Ablehnen' : 'Ignorieren', () => { _sendAnswer(!job.global ? 2: 3)}),
), ),
const SizedBox(width: 20), const SizedBox(width: 20),
Expanded( Expanded(
child: getDefaultButton('Annehmen', () => {_sendAnswer(2)}), child: getDefaultButton('Annehmen', () => {_sendAnswer(1)}),
) )
]) ])
], ],
@@ -197,11 +197,12 @@ private void SendAnswer(int item)
_sendAnswer(int item) { _sendAnswer(int item) {
var answer = AcceptJobMessage(); var answer = AcceptJobMessage();
answer.reaction = Reaction(); answer.reaction = Reaction();
answer.reaction.id = Uuid().v4().toString(); answer.reaction.item = item;
answer.reaction.id = const Uuid().v4().toString();
answer.reaction.track = Track(); answer.reaction.track = Track();
answer.reaction.track.time = DateTime.now().toUtc().toIso8601String(); answer.reaction.track.time = DateTime.now().toUtc().toIso8601String();
var json = answer.toJson(); var json = answer.toJson();
Util.logInfo('test'); MqttCore.instance.publishPayloadMessage("server", json);
} }
+52
View File
@@ -147,10 +147,22 @@ class MqttCore {
_sessionMessageReceived(payloadData); _sessionMessageReceived(payloadData);
break; break;
case 'ranks':
_rankingMessageReceived(payloadData);
break;
case 'jobs': case 'jobs':
_jobMessageReceived(payloadData); _jobMessageReceived(payloadData);
break; break;
case 'job_del':
_jobDeleteReceived(payloadData);
break;
case 'sync_request':
_syncRequestReceived(payloadData);
break;
case "mssg": case "mssg":
_messageMessageReceived(payloadData); _messageMessageReceived(payloadData);
break; break;
@@ -183,6 +195,18 @@ class MqttCore {
BroadcastReceiver().publish<StatusInfoUpdate>(Constants.messageTopicStatusInfoUpdate, arguments: StatusInfoUpdate(status: statusMessage)); BroadcastReceiver().publish<StatusInfoUpdate>(Constants.messageTopicStatusInfoUpdate, arguments: StatusInfoUpdate(status: statusMessage));
} }
void _rankingMessageReceived(payloadData) async {
Util.logInfo('_rankingMessageReceived');
/*var statusMessage = Status.fromJson(payloadData['status']);
await MyApp.isarInstance.writeTxn(() async {
await MyApp.isarInstance.status.put(statusMessage);
});
BroadcastReceiver().publish<StatusInfoUpdate>(Constants.messageTopicStatusInfoUpdate, arguments: StatusInfoUpdate(status: statusMessage));*/
}
void _jobMessageReceived(payloadData) async { void _jobMessageReceived(payloadData) async {
for (var foundJobData in payloadData) { for (var foundJobData in payloadData) {
Job newJob = Job.fromJson(foundJobData); Job newJob = Job.fromJson(foundJobData);
@@ -195,6 +219,34 @@ class MqttCore {
} }
} }
void _jobDeleteReceived(payloadData) async {
Util.logInfo('_jobDeleteReceived');
/*for (var foundJobData in payloadData) {
Job newJob = Job.fromJson(foundJobData);
await MyApp.isarInstance.writeTxn(() async {
await MyApp.isarInstance.jobs.put(newJob);
});
BroadcastReceiver().publish<JobReceivedMessage>(Constants.messageTopicJobReceived, arguments: JobReceivedMessage(job: newJob));
}*/
}
void _syncRequestReceived(payloadData) async {
Util.logInfo('_syncRequestReceived');
/*for (var foundJobData in payloadData) {
Job newJob = Job.fromJson(foundJobData);
await MyApp.isarInstance.writeTxn(() async {
await MyApp.isarInstance.jobs.put(newJob);
});
BroadcastReceiver().publish<JobReceivedMessage>(Constants.messageTopicJobReceived, arguments: JobReceivedMessage(job: newJob));
}*/
}
void _messageMessageReceived(Map<String, dynamic> payloadData) async { void _messageMessageReceived(Map<String, dynamic> payloadData) async {
var newMessage = Message.fromJson(payloadData); var newMessage = Message.fromJson(payloadData);