Erweiterungen

This commit is contained in:
Sven committed 2023-11-16 11:02:35 +01:00
1 parent 48eaa75014
commit 0399129dbd
9 files changed
+78 -57

No files matched your search

+10 -4
View File
@@ -35,6 +35,8 @@ PODS:
- DKImagePickerController/PhotoGallery - DKImagePickerController/PhotoGallery
- Flutter - Flutter
- Flutter (1.0.0) - Flutter (1.0.0)
- flutter_barcode_scanner (2.0.0):
- Flutter
- flutter_osm_plugin (0.0.1): - flutter_osm_plugin (0.0.1):
- Alamofire - Alamofire
- Flutter - Flutter
@@ -66,13 +68,14 @@ PODS:
DEPENDENCIES: DEPENDENCIES:
- file_picker (from `.symlinks/plugins/file_picker/ios`) - file_picker (from `.symlinks/plugins/file_picker/ios`)
- Flutter (from `Flutter`) - Flutter (from `Flutter`)
- flutter_barcode_scanner (from `.symlinks/plugins/flutter_barcode_scanner/ios`)
- flutter_osm_plugin (from `.symlinks/plugins/flutter_osm_plugin/ios`) - flutter_osm_plugin (from `.symlinks/plugins/flutter_osm_plugin/ios`)
- image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`) - image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`)
- isar_flutter_libs (from `.symlinks/plugins/isar_flutter_libs/ios`) - isar_flutter_libs (from `.symlinks/plugins/isar_flutter_libs/ios`)
- open_filex (from `.symlinks/plugins/open_filex/ios`) - open_filex (from `.symlinks/plugins/open_filex/ios`)
- path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/ios`) - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`)
- permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`) - permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`)
- shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/ios`) - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`)
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
SPEC REPOS: SPEC REPOS:
@@ -90,6 +93,8 @@ EXTERNAL SOURCES:
:path: ".symlinks/plugins/file_picker/ios" :path: ".symlinks/plugins/file_picker/ios"
Flutter: Flutter:
:path: Flutter :path: Flutter
flutter_barcode_scanner:
:path: ".symlinks/plugins/flutter_barcode_scanner/ios"
flutter_osm_plugin: flutter_osm_plugin:
:path: ".symlinks/plugins/flutter_osm_plugin/ios" :path: ".symlinks/plugins/flutter_osm_plugin/ios"
image_picker_ios: image_picker_ios:
@@ -99,11 +104,11 @@ EXTERNAL SOURCES:
open_filex: open_filex:
:path: ".symlinks/plugins/open_filex/ios" :path: ".symlinks/plugins/open_filex/ios"
path_provider_foundation: path_provider_foundation:
:path: ".symlinks/plugins/path_provider_foundation/ios" :path: ".symlinks/plugins/path_provider_foundation/darwin"
permission_handler_apple: permission_handler_apple:
:path: ".symlinks/plugins/permission_handler_apple/ios" :path: ".symlinks/plugins/permission_handler_apple/ios"
shared_preferences_foundation: shared_preferences_foundation:
:path: ".symlinks/plugins/shared_preferences_foundation/ios" :path: ".symlinks/plugins/shared_preferences_foundation/darwin"
url_launcher_ios: url_launcher_ios:
:path: ".symlinks/plugins/url_launcher_ios/ios" :path: ".symlinks/plugins/url_launcher_ios/ios"
@@ -113,6 +118,7 @@ SPEC CHECKSUMS:
DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179 DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179
file_picker: ce3938a0df3cc1ef404671531facef740d03f920 file_picker: ce3938a0df3cc1ef404671531facef740d03f920
Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
flutter_barcode_scanner: 7a1144744c28dc0c57a8de7218ffe5ec59a9e4bf
flutter_osm_plugin: 029b14f54485ced3190bb2c4444616b76e10c6a8 flutter_osm_plugin: 029b14f54485ced3190bb2c4444616b76e10c6a8
image_picker_ios: 4a8aadfbb6dc30ad5141a2ce3832af9214a705b5 image_picker_ios: 4a8aadfbb6dc30ad5141a2ce3832af9214a705b5
isar_flutter_libs: b69f437aeab9c521821c3f376198c4371fa21073 isar_flutter_libs: b69f437aeab9c521821c3f376198c4371fa21073
+2 -1
View File
@@ -156,7 +156,7 @@
97C146E61CF9000F007C117D /* Project object */ = { 97C146E61CF9000F007C117D /* Project object */ = {
isa = PBXProject; isa = PBXProject;
attributes = { attributes = {
LastUpgradeCheck = 1300; LastUpgradeCheck = 1430;
ORGANIZATIONNAME = ""; ORGANIZATIONNAME = "";
TargetAttributes = { TargetAttributes = {
97C146ED1CF9000F007C117D = { 97C146ED1CF9000F007C117D = {
@@ -205,6 +205,7 @@
files = ( files = (
); );
inputPaths = ( inputPaths = (
"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
); );
name = "Thin Binary"; name = "Thin Binary";
outputPaths = ( outputPaths = (
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Scheme <Scheme
LastUpgradeVersion = "1300" LastUpgradeVersion = "1430"
version = "1.3"> version = "1.3">
<BuildAction <BuildAction
parallelizeBuildables = "YES" parallelizeBuildables = "YES"
+55 -12
View File
@@ -1,5 +1,6 @@
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:isar/isar.dart'; import 'package:isar/isar.dart';
import 'package:kumi_popup_window/kumi_popup_window.dart'; import 'package:kumi_popup_window/kumi_popup_window.dart';
import 'package:stadtbote/content_views/utils/content_view_widget.dart'; import 'package:stadtbote/content_views/utils/content_view_widget.dart';
@@ -212,24 +213,50 @@ class _TaskListPageState extends State<TaskListPage> {
} }
} }
void _processTaskArrivedOrFinished(TaskInfo taskInfo) { _processTaskArrivedOrFinished(TaskInfo taskInfo) {
_popup = showTaskArrivedPopup(context, taskInfo, () => { _popup = showTaskArrivedPopup(context, taskInfo, () => {
_popup.dismiss(context), _finishProcessTaskArrivedOrFinished(taskInfo)
}); });
} }
void _processCommissionNumber(TaskInfo taskInfo) { _finishProcessTaskArrivedOrFinished(TaskInfo taskInfo) {
_popup = showCommisionNumberPopup(context, taskInfo, () => { _popup.dismiss(context);
_popup.dismiss(context),
DateFormat dateFormat = DateFormat("dd.MM.yyyy HH:mm");
taskInfo.additionalText = dateFormat.format(DateTime.now());
setState(() {});
}
_processCommissionNumber(TaskInfo taskInfo) {
_popup = showComissionNumberPopup(context, taskInfo, (text) => {
_finishProcessCommissionNumber(taskInfo, text)
}); });
} }
void _processScanBarcodes(TaskInfo taskInfo) { _finishProcessCommissionNumber(TaskInfo taskInfo, String comissionNumber) {
_popup = showScanBarcodesPopup(context, taskInfo, () => { _popup.dismiss(context);
_popup.dismiss(context)
taskInfo.additionalText = comissionNumber;
setState(() {});
}
_processScanBarcodes(TaskInfo taskInfo) {
_popup = showScanBarcodesPopup(context, taskInfo, (List<String> barcodes) => {
_finishProcessScanBarcodes(taskInfo, barcodes)
}); });
} }
_finishProcessScanBarcodes(TaskInfo taskInfo, List<String> barcodess) {
_popup.dismiss(context);
taskInfo.additionalText = "Barcodes gescannt";
setState(() {});
}
void _processTakePhotos(TaskInfo taskInfo) { void _processTakePhotos(TaskInfo taskInfo) {
_popup = showTakePhotosPopup(context, taskInfo, () => { _popup = showTakePhotosPopup(context, taskInfo, () => {
_popup.dismiss(context) _popup.dismiss(context)
@@ -237,17 +264,33 @@ class _TaskListPageState extends State<TaskListPage> {
} }
void _processStationNotice(TaskInfo taskInfo) { void _processStationNotice(TaskInfo taskInfo) {
_popup = showStationNoticePopup(context, taskInfo, () => { _popup = showStationNoticePopup(context, taskInfo, (notice) => {
_popup.dismiss(context) _finishProcessStationNotice(taskInfo, notice)
}); });
} }
_finishProcessStationNotice(TaskInfo taskInfo, String notice) {
_popup.dismiss(context);
taskInfo.additionalText = notice;
setState(() {});
}
void _processReceiptGiver(TaskInfo taskInfo) { void _processReceiptGiver(TaskInfo taskInfo) {
_popup = showReceiptGiverPopup(context, taskInfo, () => { _popup = showReceiptGiverPopup(context, taskInfo, (receiptGiver) => {
_popup.dismiss(context) _finishReceiptGiver(taskInfo, receiptGiver)
}); });
} }
_finishReceiptGiver(TaskInfo taskInfo, String receiptGiver) {
_popup.dismiss(context);
taskInfo.additionalText = receiptGiver;
setState(() {});
}
void _processSignature(TaskInfo taskInfo) { void _processSignature(TaskInfo taskInfo) {
SystemChrome.setPreferredOrientations([DeviceOrientation.landscapeLeft]); SystemChrome.setPreferredOrientations([DeviceOrientation.landscapeLeft]);
@@ -4,7 +4,7 @@ import 'package:kumi_popup_window/kumi_popup_window.dart';
import 'package:stadtbote/model/task_info.dart'; import 'package:stadtbote/model/task_info.dart';
import 'package:stadtbote/tools/util.dart'; import 'package:stadtbote/tools/util.dart';
KumiPopupWindow showCommisionNumberPopup(BuildContext context, TaskInfo taskInfo, Function() onFinished) { KumiPopupWindow showComissionNumberPopup(BuildContext context, TaskInfo taskInfo, Function(String) onFinished) {
return showPopupWindow( return showPopupWindow(
context, context,
//childSize:Size(240, MediaQuery.of(context).size.width * 0.8), //childSize:Size(240, MediaQuery.of(context).size.width * 0.8),
@@ -56,8 +56,9 @@ KumiPopupWindow showCommisionNumberPopup(BuildContext context, TaskInfo taskInfo
type: TextInputType.text, formatter: [FilteringTextInputFormatter.singleLineFormatter], controller: textEditingController, autofocus: true), type: TextInputType.text, formatter: [FilteringTextInputFormatter.singleLineFormatter], controller: textEditingController, autofocus: true),
const SizedBox(height: 20), const SizedBox(height: 20),
getDefaultButton('Übernehmen', () => { getDefaultButton('Übernehmen', () => {
onFinished() onFinished(textEditingController.text)
}) ], })
],
), ),
), ),
)); ));
@@ -4,7 +4,7 @@ import 'package:kumi_popup_window/kumi_popup_window.dart';
import 'package:stadtbote/model/task_info.dart'; import 'package:stadtbote/model/task_info.dart';
import 'package:stadtbote/tools/util.dart'; import 'package:stadtbote/tools/util.dart';
KumiPopupWindow showReceiptGiverPopup(BuildContext context, TaskInfo taskInfo, Function() onFinished) { KumiPopupWindow showReceiptGiverPopup(BuildContext context, TaskInfo taskInfo, Function(String) onFinished) {
return showPopupWindow( return showPopupWindow(
context, context,
//childSize:Size(240, MediaQuery.of(context).size.width * 0.8), //childSize:Size(240, MediaQuery.of(context).size.width * 0.8),
@@ -56,7 +56,7 @@ KumiPopupWindow showReceiptGiverPopup(BuildContext context, TaskInfo taskInfo, F
type: TextInputType.text, formatter: [FilteringTextInputFormatter.singleLineFormatter], controller: textEditingController, autofocus: true), type: TextInputType.text, formatter: [FilteringTextInputFormatter.singleLineFormatter], controller: textEditingController, autofocus: true),
const SizedBox(height: 20), const SizedBox(height: 20),
getDefaultButton('Übernehmen', () => { getDefaultButton('Übernehmen', () => {
onFinished() onFinished(textEditingController.text)
}) })
], ],
), ),
@@ -5,7 +5,7 @@ import 'package:kumi_popup_window/kumi_popup_window.dart';
import 'package:stadtbote/model/task_info.dart'; import 'package:stadtbote/model/task_info.dart';
import 'package:stadtbote/tools/util.dart'; import 'package:stadtbote/tools/util.dart';
KumiPopupWindow showScanBarcodesPopup(BuildContext context, TaskInfo taskInfo, Function() onFinished) { KumiPopupWindow showScanBarcodesPopup(BuildContext context, TaskInfo taskInfo, Function(List<String> barcodes) onFinished) {
return showPopupWindow( return showPopupWindow(
context, context,
//childSize:Size(240, MediaQuery.of(context).size.width * 0.8), //childSize:Size(240, MediaQuery.of(context).size.width * 0.8),
@@ -108,7 +108,7 @@ KumiPopupWindow showScanBarcodesPopup(BuildContext context, TaskInfo taskInfo, F
scanBarcode() scanBarcode()
}), }),
getDefaultButton('Übernehmen', buttonHeight: 50, () => { getDefaultButton('Übernehmen', buttonHeight: 50, () => {
onFinished() onFinished(scannedBarcodes)
}) })
], ],
), ),
@@ -4,7 +4,7 @@ import 'package:kumi_popup_window/kumi_popup_window.dart';
import 'package:stadtbote/model/task_info.dart'; import 'package:stadtbote/model/task_info.dart';
import 'package:stadtbote/tools/util.dart'; import 'package:stadtbote/tools/util.dart';
KumiPopupWindow showStationNoticePopup(BuildContext context, TaskInfo taskInfo, Function() onFinished) { KumiPopupWindow showStationNoticePopup(BuildContext context, TaskInfo taskInfo, Function(String) onFinished) {
return showPopupWindow( return showPopupWindow(
context, context,
//childSize:Size(240, MediaQuery.of(context).size.width * 0.8), //childSize:Size(240, MediaQuery.of(context).size.width * 0.8),
@@ -62,7 +62,7 @@ KumiPopupWindow showStationNoticePopup(BuildContext context, TaskInfo taskInfo,
autofocus: true), autofocus: true),
), ),
const SizedBox(height: 20), const SizedBox(height: 20),
getDefaultButton('Übernehmen', buttonHeight: 50, () => {onFinished()}) getDefaultButton('Übernehmen', buttonHeight: 50, () => {onFinished(textEditingController.text)})
], ],
), ),
), ),
-30
View File
@@ -1,30 +0,0 @@
// This is a basic Flutter widget test.
//
// To perform an interaction with a widget in your test, use the WidgetTester
// utility in the flutter_test package. For example, you can send tap and scroll
// gestures. You can also use WidgetTester to find child widgets in the widget
// tree, read text, and verify that the values of widget properties are correct.
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:stadtbote/main.dart';
void main() {
testWidgets('Counter increments smoke test', (WidgetTester tester) async {
// Build our app and trigger a frame.
await tester.pumpWidget(const MyApp());
// Verify that our counter starts at 0.
expect(find.text('0'), findsOneWidget);
expect(find.text('1'), findsNothing);
// Tap the '+' icon and trigger a frame.
await tester.tap(find.byIcon(Icons.add));
await tester.pump();
// Verify that our counter has incremented.
expect(find.text('0'), findsNothing);
expect(find.text('1'), findsOneWidget);
});
}