sitzung luc

This commit is contained in:
Nico
2024-03-15 19:22:46 +01:00
parent 624bb38846
commit d157757893
12 changed files with 158 additions and 82 deletions

View File

@@ -10,6 +10,7 @@ import 'package:geolocator/geolocator.dart';
import 'package:intl/intl.dart';
import 'package:latlong2/latlong.dart';
import 'package:animations/animations.dart';
import 'package:http/http.dart' as http;
class AddCamMain extends StatefulWidget {
final bool isTemplate;
@@ -49,10 +50,10 @@ class _AddCamMainState extends State<AddCamMain> {
TextEditingController intKommC = TextEditingController();
TextEditingController kontSumC = TextEditingController();
String selectedStatus = 'inaktiv';
String selectedStatus = 'aktiv';
String selectedSTTyp = 'opportunistisch';
String selectedFotoFilm = 'foto';
String selectedMEZ = 'mez';
String selectedMEZ = 'sommerzeit';
String selectedPlatzung = 'kirrung';
String selectedBearsafe = 'nein';
@@ -69,11 +70,11 @@ class _AddCamMainState extends State<AddCamMain> {
headingAccuracy: 0.0);
String datumS = DateFormat('yyyy-MM-dd').format(DateTime.now());
String kontDatS = DateFormat('yyyy-mm-dd').format(DateTime.now());
String abbauDatS = DateFormat('yyyy-mm-dd').format(DateTime.now());
String ausVonS = DateFormat('yyyy-mm-dd').format(DateTime(2000));
String ausBisS = DateFormat('yyyy-mm-dd').format(DateTime(2000));
String protoAmS = DateFormat('yyyy-mm-dd').format(DateTime.now());
String kontDatS = DateFormat('yyyy-MM-dd').format(DateTime.now());
String abbauDatS = DateFormat('yyyy-MM-dd').format(DateTime.now());
String ausVonS = DateFormat('yyyy-MM-dd').format(DateTime(2000));
String ausBisS = DateFormat('yyyy-MM-dd').format(DateTime(2000));
String protoAmS = DateFormat('yyyy-MM-dd').format(DateTime.now());
DateTime? ausBis;
DateTime? ausVon;
DateTime abbauDat = DateTime.now();
@@ -207,15 +208,17 @@ class _AddCamMainState extends State<AddCamMain> {
title: Text(AppLocalizations.of(context)!.savemethod),
actions: [
TextButton(
onPressed: () {
Navigator.pushNamedAndRemoveUntil(context, '/home', (route) => false);
onPressed: () async {
_httpRequest();
// Navigator.pushNamedAndRemoveUntil(context, '/home', (route) => false);
},
child: Text(AppLocalizations.of(context)!.sendtoserver)),
TextButton(
onPressed: () async {
await saveFile();
// ignore: use_build_context_synchronously
Navigator.pushNamedAndRemoveUntil(context, '/home', (route) => false);
Navigator.pushNamedAndRemoveUntil(
context, '/home', (route) => false);
},
child: Text(AppLocalizations.of(context)!.saveasfile))
],
@@ -223,9 +226,55 @@ class _AddCamMainState extends State<AddCamMain> {
});
}
void _httpRequest() async {
Map<String, dynamic> place = {
'CID': id.text,
'Rudel': rudelC.text,
'Datum': datumS,
'NameVorname': nameVornameC.text,
'PLZOrt': plzOrtC.text,
'EmailTel': emailTelC.text,
'BLand': bLandC.text,
'Lkr': lkrC.text,
'BeiOrt': beiOrtC.text,
'OrtInfo': ortInfoC.text,
'Status': selectedStatus,
'STTyp': selectedSTTyp,
'FFTyp': ffTypC.text,
'FotoFilm': selectedFotoFilm,
'MEZ': selectedMEZ,
'Platzung': selectedPlatzung,
'KSchloNr': kSchloNrC.text,
'Bearsafe': selectedBearsafe,
'KontDat': kontDatS,
'AbbauDat': abbauDatS,
'Auftrag': auftragC.text,
'Absprachen': absprachenC.text,
'SonstBemerkungen': sonstBemerkungenC.text,
'FKontakt1': fKontakt1C.text,
'FKontakt2': fKontakt2C.text,
'FKontakt3': fKontakt3C.text,
'AltStOrt': altStOrtC.text,
'AusVon': ausVonS,
'AusBis': ausBisS,
'KTage1': kTage1C.text,
'KTage2': kTage2C.text,
'ProtoAm': protoAmS,
'IntKomm': intKommC.text,
'KontSum': kontSumC.text,
};
final response = await http.post(Uri.parse("http://192.168.178.30/www.dbb-wolf.de/data/_nicoapi.php"),
headers: <String, String>{
'Content-Type': 'application/json; charset=UTF-8',
},
body: jsonEncode(place));
print(response);
}
Future<void> saveFile() async {
String? selectedDirectory = await FilePicker.platform.getDirectoryPath();
Map<String, dynamic> place = {
'CID': id.text,
'Rudel': rudelC.text,
@@ -270,8 +319,7 @@ class _AddCamMainState extends State<AddCamMain> {
File file = File('$selectedDirectory/cam-${id.text}.txt');
await file
.writeAsString(jsonPlace);
await file.writeAsString(jsonPlace);
// ignore: use_build_context_synchronously
ScaffoldMessenger.of(context).showSnackBar(
@@ -287,7 +335,6 @@ class _AddCamMainState extends State<AddCamMain> {
'BLand': bLandC,
'Lkr': lkrC,
'BeiOrt': beiOrtC,
'OrtInfo': ortInfoC,
'Status': TextEditingController(text: selectedStatus),
'STTyp': TextEditingController(text: selectedSTTyp),
'FFTyp': ffTypC,
@@ -572,7 +619,7 @@ class _AddCamMainState extends State<AddCamMain> {
alignment: Alignment.bottomLeft,
child: Row(
children: [
Text(AppLocalizations.of(context)!.sommerzeit),
Text(AppLocalizations.of(context)!.zeiteinstellung),
const Text(
'*',
style: TextStyle(color: Colors.red),
@@ -685,7 +732,7 @@ class _AddCamMainState extends State<AddCamMain> {
],
)),
Step(
title: Text(AppLocalizations.of(context)!.secondStep),
title: Text(AppLocalizations.of(context)!.kontakt),
content: Column(
children: [
const SizedBox(
@@ -764,6 +811,7 @@ class _AddCamMainState extends State<AddCamMain> {
final isLastStep = currentStep == getSteps().length - 1;
if (!isLastStep) {
// ! saveTemplate();
setState(() {
currentStep += 1;
});
@@ -774,11 +822,14 @@ class _AddCamMainState extends State<AddCamMain> {
();
return;
} else if (empty == false) {
// throw const FormatException(("Speichert"));
saveData();
await showSaveOptionsDialog();
Navigator.pushNamedAndRemoveUntil(
// ignore: use_build_context_synchronously
context, '/home', (route) => false);
context,
'/home',
(route) => false);
}
}
},