Erweiterungen
This commit is contained in:
1 parent
137ceebf6f
commit
e0b30366e5
2 files changed
+93
-108
No files matched your search
@@ -1,4 +1,3 @@
|
|||||||
import 'dart:convert' show utf8;
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
@@ -192,6 +191,8 @@ class _TaskListPageState extends State<TaskListPage> {
|
|||||||
var taskInfo = await MyApp.isarInstance.taskInfos.filter().sIdEqualTo(task.sId).findFirst();
|
var taskInfo = await MyApp.isarInstance.taskInfos.filter().sIdEqualTo(task.sId).findFirst();
|
||||||
if (taskInfo == null) {
|
if (taskInfo == null) {
|
||||||
taskInfo = TaskInfo();
|
taskInfo = TaskInfo();
|
||||||
|
taskInfo.id = await TaskInfo.getNextId();
|
||||||
|
taskInfo.sId = task.sId;
|
||||||
taskInfo.answer = null;
|
taskInfo.answer = null;
|
||||||
taskInfo.additionalText = null;
|
taskInfo.additionalText = null;
|
||||||
taskInfo.completed = task.opt != null ? task.opt! : false;
|
taskInfo.completed = task.opt != null ? task.opt! : false;
|
||||||
@@ -241,107 +242,96 @@ class _TaskListPageState extends State<TaskListPage> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_processTaskArrivedOrFinished(TaskInfo taskInfo) {
|
_processTaskArrivedOrFinished(TaskInfo taskInfo) {
|
||||||
_popup = showTaskArrivedPopup(context, taskInfo, () => {
|
_popup = showTaskArrivedPopup(context, taskInfo, () {
|
||||||
_finishProcessTaskArrivedOrFinished(taskInfo)
|
DateFormat dateFormat = DateFormat("dd.MM.yyyy HH:mm");
|
||||||
|
|
||||||
|
taskInfo.additionalText = dateFormat.format(DateTime.now());
|
||||||
|
taskInfo.completed = true;
|
||||||
|
|
||||||
|
_sendArrivedMessage(taskInfo);
|
||||||
|
|
||||||
|
setState(() {});
|
||||||
|
|
||||||
|
_finishTaskProcessing(taskInfo);
|
||||||
|
|
||||||
|
_popup.dismiss(context);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
_finishProcessTaskArrivedOrFinished(TaskInfo taskInfo) {
|
|
||||||
_popup.dismiss(context);
|
|
||||||
|
|
||||||
DateFormat dateFormat = DateFormat("dd.MM.yyyy HH:mm");
|
|
||||||
|
|
||||||
taskInfo.additionalText = dateFormat.format(DateTime.now());
|
|
||||||
taskInfo.completed = true;
|
|
||||||
|
|
||||||
_sendArrivedMessage(taskInfo);
|
|
||||||
|
|
||||||
setState(() {});
|
|
||||||
}
|
|
||||||
|
|
||||||
_processCommissionNumber(TaskInfo taskInfo) {
|
_processCommissionNumber(TaskInfo taskInfo) {
|
||||||
_popup = showComissionNumberPopup(context, taskInfo, (text) => {
|
_popup = showComissionNumberPopup(context, taskInfo, (comissionNumber) {
|
||||||
_finishProcessCommissionNumber(taskInfo, text)
|
taskInfo.additionalText = comissionNumber;
|
||||||
|
taskInfo.completed = true;
|
||||||
|
|
||||||
|
setState(() {});
|
||||||
|
|
||||||
|
_finishTaskProcessing(taskInfo);
|
||||||
|
|
||||||
|
_popup.dismiss(context);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
_finishProcessCommissionNumber(TaskInfo taskInfo, String comissionNumber) {
|
|
||||||
_popup.dismiss(context);
|
|
||||||
|
|
||||||
taskInfo.additionalText = comissionNumber;
|
|
||||||
taskInfo.completed = true;
|
|
||||||
|
|
||||||
setState(() {});
|
|
||||||
}
|
|
||||||
|
|
||||||
_processScanBarcodes(TaskInfo taskInfo) {
|
_processScanBarcodes(TaskInfo taskInfo) {
|
||||||
_popup = showScanBarcodesPopup(context, taskInfo, (List<String> barcodes) => {
|
_popup = showScanBarcodesPopup(context, taskInfo, (List<String> barcodes) {
|
||||||
_finishProcessScanBarcodes(taskInfo, barcodes)
|
taskInfo.additionalText = "Barcodes gescannt";
|
||||||
|
taskInfo.completed = true;
|
||||||
|
|
||||||
|
setState(() {});
|
||||||
|
|
||||||
|
_finishTaskProcessing(taskInfo);
|
||||||
|
|
||||||
|
_popup.dismiss(context);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
_finishProcessScanBarcodes(TaskInfo taskInfo, List<String> barcodess) {
|
|
||||||
_popup.dismiss(context);
|
|
||||||
|
|
||||||
taskInfo.additionalText = "Barcodes gescannt";
|
|
||||||
taskInfo.completed = true;
|
|
||||||
|
|
||||||
setState(() {});
|
|
||||||
}
|
|
||||||
|
|
||||||
_processTakePhotos(TaskInfo taskInfo) {
|
_processTakePhotos(TaskInfo taskInfo) {
|
||||||
_popup = showTakePhotosPopup(context, taskInfo, () => {
|
_popup = showTakePhotosPopup(context, taskInfo, () {
|
||||||
_finishProcessTakePhotos(taskInfo)
|
taskInfo.additionalText = "Fotos aufgenommen";
|
||||||
|
taskInfo.completed = true;
|
||||||
|
|
||||||
|
setState(() {});
|
||||||
|
|
||||||
|
_finishTaskProcessing(taskInfo);
|
||||||
|
|
||||||
|
_popup.dismiss(context);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
_finishProcessTakePhotos(TaskInfo taskInfo) {
|
|
||||||
_popup.dismiss(context);
|
|
||||||
|
|
||||||
taskInfo.additionalText = "Fotos aufgenommen";
|
|
||||||
taskInfo.completed = true;
|
|
||||||
|
|
||||||
setState(() {});
|
|
||||||
}
|
|
||||||
|
|
||||||
void _processStationNotice(TaskInfo taskInfo) {
|
void _processStationNotice(TaskInfo taskInfo) {
|
||||||
_popup = showStationNoticePopup(context, taskInfo, (notice) => {
|
_popup = showStationNoticePopup(context, taskInfo, (notice) {
|
||||||
_finishProcessStationNotice(taskInfo, notice)
|
_popup.dismiss(context);
|
||||||
|
|
||||||
|
taskInfo.additionalText = notice;
|
||||||
|
taskInfo.completed = true;
|
||||||
|
|
||||||
|
_finishTaskProcessing(taskInfo);
|
||||||
|
|
||||||
|
setState(() {});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
_finishProcessStationNotice(TaskInfo taskInfo, String notice) {
|
|
||||||
_popup.dismiss(context);
|
|
||||||
|
|
||||||
taskInfo.additionalText = notice;
|
|
||||||
taskInfo.completed = true;
|
|
||||||
|
|
||||||
setState(() {});
|
|
||||||
}
|
|
||||||
|
|
||||||
void _processReceiptGiver(TaskInfo taskInfo) {
|
void _processReceiptGiver(TaskInfo taskInfo) {
|
||||||
_popup = showReceiptGiverPopup(context, taskInfo, (receiptGiver) => {
|
_popup = showReceiptGiverPopup(context, taskInfo, (receiptGiver) {
|
||||||
_finishReceiptGiver(taskInfo, receiptGiver)
|
taskInfo.additionalText = receiptGiver;
|
||||||
|
taskInfo.completed = true;
|
||||||
|
|
||||||
|
setState(() {});
|
||||||
|
|
||||||
|
_finishTaskProcessing(taskInfo);
|
||||||
|
|
||||||
|
_popup.dismiss(context);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
_finishReceiptGiver(TaskInfo taskInfo, String receiptGiver) {
|
|
||||||
_popup.dismiss(context);
|
|
||||||
|
|
||||||
taskInfo.additionalText = receiptGiver;
|
|
||||||
taskInfo.completed = true;
|
|
||||||
|
|
||||||
setState(() {});
|
|
||||||
}
|
|
||||||
|
|
||||||
void _processPickupDeliveryStatusTask(TaskInfo taskInfo) {
|
void _processPickupDeliveryStatusTask(TaskInfo taskInfo) {
|
||||||
Future.delayed(const Duration(seconds: 1), () async {
|
Future.delayed(const Duration(seconds: 1), () async {
|
||||||
_popup = showPickupDeliveryStatusPopup(context, taskInfo, (tourEntry) => {
|
showPickupDeliveryStatusPopup(context, taskInfo, (tourEntry) {
|
||||||
_popup.dismiss(context),
|
taskInfo.additionalText = tourEntry!.text;
|
||||||
|
taskInfo.completed = true;
|
||||||
|
|
||||||
taskInfo.completed = true,
|
_finishTaskProcessing(taskInfo);
|
||||||
|
|
||||||
setState(() {})
|
setState(() {});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -351,17 +341,25 @@ class _TaskListPageState extends State<TaskListPage> {
|
|||||||
|
|
||||||
Future.delayed(const Duration(seconds: 1), () async {
|
Future.delayed(const Duration(seconds: 1), () async {
|
||||||
_popup = showSignaturePopup(context, taskInfo, () {
|
_popup = showSignaturePopup(context, taskInfo, () {
|
||||||
|
taskInfo.completed = true;
|
||||||
|
|
||||||
|
SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
|
||||||
|
|
||||||
|
_sendFinTourMessage();
|
||||||
|
|
||||||
|
_finishTaskProcessing(taskInfo);
|
||||||
|
|
||||||
_popup.dismiss(context);
|
_popup.dismiss(context);
|
||||||
|
|
||||||
taskInfo.completed = true;
|
|
||||||
|
|
||||||
SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
|
|
||||||
|
|
||||||
_sendFinTourMessage();
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_finishTaskProcessing(TaskInfo taskInfo) async {
|
||||||
|
await MyApp.isarInstance.writeTxn(() async {
|
||||||
|
await MyApp.isarInstance.taskInfos.put(taskInfo);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
bool isTaskActive(int index) {
|
bool isTaskActive(int index) {
|
||||||
for (int i = 0; i < index; i++) {
|
for (int i = 0; i < index; i++) {
|
||||||
var taskInfo = _taskList[i];
|
var taskInfo = _taskList[i];
|
||||||
@@ -406,33 +404,6 @@ class _TaskListPageState extends State<TaskListPage> {
|
|||||||
MqttCore.instance.publishPayloadMessage("", trackStationMessage.toJson());
|
MqttCore.instance.publishPayloadMessage("", trackStationMessage.toJson());
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
"fin_tour": {
|
|
||||||
"tr_id": 211,
|
|
||||||
"com": "changed com#",
|
|
||||||
"track": {
|
|
||||||
"time": "2021-02-18T12:35:51Z",
|
|
||||||
"pos":
|
|
||||||
{
|
|
||||||
"lat": 53.595121,
|
|
||||||
"long": 9.907433,
|
|
||||||
"acc": 35
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tasks": [
|
|
||||||
{
|
|
||||||
"s_id": 1,
|
|
||||||
"time": "2021-02-18T12:32:10Z",
|
|
||||||
"pos":
|
|
||||||
{
|
|
||||||
"lat": 53.595124,
|
|
||||||
"long": 9.907435
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
_sendFinTourMessage() async {
|
_sendFinTourMessage() async {
|
||||||
var finTourMessage = FinTourMessage();
|
var finTourMessage = FinTourMessage();
|
||||||
finTourMessage.finTour = FinTour();
|
finTourMessage.finTour = FinTour();
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
import 'package:isar/isar.dart';
|
import 'package:isar/isar.dart';
|
||||||
import 'package:stadtbote/model/tour_task.dart';
|
import 'package:stadtbote/model/tour_task.dart';
|
||||||
|
|
||||||
|
import '../tools/util.dart';
|
||||||
|
|
||||||
part 'task_info.g.dart';
|
part 'task_info.g.dart';
|
||||||
|
|
||||||
@collection
|
@collection
|
||||||
@@ -19,6 +21,18 @@ class TaskInfo {
|
|||||||
late TourTask task;
|
late TourTask task;
|
||||||
|
|
||||||
TaskInfo();
|
TaskInfo();
|
||||||
|
|
||||||
|
static Future<int> getNextId() async {
|
||||||
|
int taskInfoId = await Util.preferencesGetInt('task_info_id', 0) as int;
|
||||||
|
|
||||||
|
taskInfoId += 1;
|
||||||
|
|
||||||
|
Util.preferencesSaveInt("task_info_id", taskInfoId);
|
||||||
|
|
||||||
|
return taskInfoId;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Reference in new issue
Block a user