fixed template bugs
This commit is contained in:
2
Todo.txt
2
Todo.txt
@@ -1,6 +1,5 @@
|
|||||||
todo:
|
todo:
|
||||||
maybe auch vorschläge aus templates in dropdown menüs anzeigen
|
maybe auch vorschläge aus templates in dropdown menüs anzeigen
|
||||||
abbaudat leer
|
|
||||||
beim nächsten schritt als template
|
beim nächsten schritt als template
|
||||||
im englischen abändern
|
im englischen abändern
|
||||||
standort automatisch in Karte
|
standort automatisch in Karte
|
||||||
@@ -28,6 +27,7 @@ eintrg in db wenn http response (in sent column)
|
|||||||
|
|
||||||
|
|
||||||
not to do:
|
not to do:
|
||||||
|
abbaudat leer
|
||||||
clean db_helper
|
clean db_helper
|
||||||
In der Karte den save button erst zeigen nachdem marker gesetzt wurde
|
In der Karte den save button erst zeigen nachdem marker gesetzt wurde
|
||||||
json string in csv und exportieren in text datei
|
json string in csv und exportieren in text datei
|
||||||
|
|||||||
@@ -30,9 +30,9 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
|
|
||||||
TextEditingController id = TextEditingController();
|
TextEditingController id = TextEditingController();
|
||||||
TextEditingController rudelC = TextEditingController();
|
TextEditingController rudelC = TextEditingController();
|
||||||
TextEditingController addresse1C = TextEditingController();
|
TextEditingController adresse1C = TextEditingController();
|
||||||
TextEditingController addresse2C = TextEditingController();
|
TextEditingController adresse2C = TextEditingController();
|
||||||
TextEditingController addresse3C = TextEditingController();
|
TextEditingController adresse3C = TextEditingController();
|
||||||
TextEditingController bLandC = TextEditingController();
|
TextEditingController bLandC = TextEditingController();
|
||||||
TextEditingController lkrC = TextEditingController();
|
TextEditingController lkrC = TextEditingController();
|
||||||
TextEditingController beiOrtC = TextEditingController();
|
TextEditingController beiOrtC = TextEditingController();
|
||||||
@@ -40,12 +40,12 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
TextEditingController ffTypC = TextEditingController();
|
TextEditingController ffTypC = TextEditingController();
|
||||||
TextEditingController kSchloNrC = TextEditingController();
|
TextEditingController kSchloNrC = TextEditingController();
|
||||||
TextEditingController auftragC = TextEditingController();
|
TextEditingController auftragC = TextEditingController();
|
||||||
TextEditingController absprachenC = TextEditingController();
|
TextEditingController kontAbspC = TextEditingController();
|
||||||
TextEditingController sonstBemerkungenC = TextEditingController();
|
TextEditingController sonstBemC = TextEditingController();
|
||||||
TextEditingController fKontakt1C = TextEditingController();
|
TextEditingController fKontakt1C = TextEditingController();
|
||||||
TextEditingController fKontakt2C = TextEditingController();
|
TextEditingController fKontakt2C = TextEditingController();
|
||||||
TextEditingController fKontakt3C = TextEditingController();
|
TextEditingController fKontakt3C = TextEditingController();
|
||||||
TextEditingController altStOrtC = TextEditingController();
|
TextEditingController standortC = TextEditingController();
|
||||||
TextEditingController kTage1C = TextEditingController();
|
TextEditingController kTage1C = TextEditingController();
|
||||||
TextEditingController kTage2C = TextEditingController();
|
TextEditingController kTage2C = TextEditingController();
|
||||||
TextEditingController intKommC = TextEditingController();
|
TextEditingController intKommC = TextEditingController();
|
||||||
@@ -88,9 +88,9 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
'CID': id.text,
|
'CID': id.text,
|
||||||
'Rudel': rudelC.text,
|
'Rudel': rudelC.text,
|
||||||
'Datum': datumS,
|
'Datum': datumS,
|
||||||
'Adresse1': addresse1C.text,
|
'Adresse1': adresse1C.text,
|
||||||
'Adresse2': addresse2C.text,
|
'Adresse2': adresse2C.text,
|
||||||
'Adresse3': addresse3C.text,
|
'Adresse3': adresse3C.text,
|
||||||
'BLand': bLandC.text,
|
'BLand': bLandC.text,
|
||||||
'Lkr': lkrC.text,
|
'Lkr': lkrC.text,
|
||||||
'BeiOrt': beiOrtC.text,
|
'BeiOrt': beiOrtC.text,
|
||||||
@@ -106,12 +106,12 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
'KontDat': kontDatS,
|
'KontDat': kontDatS,
|
||||||
'AbbauDat': abbauDatS,
|
'AbbauDat': abbauDatS,
|
||||||
'Auftrag': auftragC.text,
|
'Auftrag': auftragC.text,
|
||||||
'KontAbsp': absprachenC.text,
|
'KontAbsp': kontAbspC.text,
|
||||||
'SonstBem': sonstBemerkungenC.text,
|
'SonstBem': sonstBemC.text,
|
||||||
'FKontakt1': fKontakt1C.text,
|
'FKontakt1': fKontakt1C.text,
|
||||||
'FKontakt2': fKontakt2C.text,
|
'FKontakt2': fKontakt2C.text,
|
||||||
'FKontakt3': fKontakt3C.text,
|
'FKontakt3': fKontakt3C.text,
|
||||||
'Standort': altStOrtC.text,
|
'Standort': standortC.text,
|
||||||
'AusVon': ausVonS,
|
'AusVon': ausVonS,
|
||||||
'AusBis': ausBisS,
|
'AusBis': ausBisS,
|
||||||
'KTage1': kTage1C.text,
|
'KTage1': kTage1C.text,
|
||||||
@@ -180,9 +180,9 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
if (widget.isTemplate && widget.templateData != null) {
|
if (widget.isTemplate && widget.templateData != null) {
|
||||||
id.text = widget.templateData!['CID'];
|
id.text = widget.templateData!['CID'];
|
||||||
rudelC.text = widget.templateData!['Rudel'];
|
rudelC.text = widget.templateData!['Rudel'];
|
||||||
addresse1C.text = widget.templateData!['Addresse1'];
|
adresse1C.text = widget.templateData!['Adresse1'];
|
||||||
addresse2C.text = widget.templateData!['Addresse2'];
|
adresse2C.text = widget.templateData!['Adresse2'];
|
||||||
addresse3C.text = widget.templateData!['Addresse3'];
|
adresse3C.text = widget.templateData!['Adresse3'];
|
||||||
bLandC.text = widget.templateData!['BLand'];
|
bLandC.text = widget.templateData!['BLand'];
|
||||||
lkrC.text = widget.templateData!['Lkr'];
|
lkrC.text = widget.templateData!['Lkr'];
|
||||||
beiOrtC.text = widget.templateData!['BeiOrt'];
|
beiOrtC.text = widget.templateData!['BeiOrt'];
|
||||||
@@ -199,12 +199,12 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
kontDatS = widget.templateData!['KontDat'];
|
kontDatS = widget.templateData!['KontDat'];
|
||||||
abbauDatS = widget.templateData!['AbbauDat'];
|
abbauDatS = widget.templateData!['AbbauDat'];
|
||||||
auftragC.text = widget.templateData!['Auftrag'];
|
auftragC.text = widget.templateData!['Auftrag'];
|
||||||
absprachenC.text = widget.templateData!['Absprachen'];
|
kontAbspC.text = widget.templateData!['KontAbsp'];
|
||||||
sonstBemerkungenC.text = widget.templateData!['SonstBemerkungen'];
|
sonstBemC.text = widget.templateData!['SonstBem'];
|
||||||
fKontakt1C.text = widget.templateData!['FKontakt1'];
|
fKontakt1C.text = widget.templateData!['FKontakt1'];
|
||||||
fKontakt2C.text = widget.templateData!['FKontakt2'];
|
fKontakt2C.text = widget.templateData!['FKontakt2'];
|
||||||
fKontakt3C.text = widget.templateData!['FKontakt3'];
|
fKontakt3C.text = widget.templateData!['FKontakt3'];
|
||||||
altStOrtC.text = widget.templateData!['AltStOrt'];
|
standortC.text = widget.templateData!['Standort'];
|
||||||
ausVonS = widget.templateData!['AusVon'];
|
ausVonS = widget.templateData!['AusVon'];
|
||||||
ausBisS = widget.templateData!['AusBis'];
|
ausBisS = widget.templateData!['AusBis'];
|
||||||
kTage1C.text = widget.templateData!['KTage1'].toString();
|
kTage1C.text = widget.templateData!['KTage1'].toString();
|
||||||
@@ -330,7 +330,7 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
Map<String, TextEditingController> fields = {
|
Map<String, TextEditingController> fields = {
|
||||||
'CID': id,
|
'CID': id,
|
||||||
'Rudel': rudelC,
|
'Rudel': rudelC,
|
||||||
'Addresse1': addresse1C,
|
'Adresse1': adresse1C,
|
||||||
'BLand': bLandC,
|
'BLand': bLandC,
|
||||||
'Lkr': lkrC,
|
'Lkr': lkrC,
|
||||||
'BeiOrt': beiOrtC,
|
'BeiOrt': beiOrtC,
|
||||||
@@ -342,7 +342,7 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
'Platzung': TextEditingController(text: selectedPlatzung),
|
'Platzung': TextEditingController(text: selectedPlatzung),
|
||||||
'KTage1': kTage1C,
|
'KTage1': kTage1C,
|
||||||
'KTage2': kTage2C,
|
'KTage2': kTage2C,
|
||||||
'Standort': altStOrtC,
|
'Standort': standortC,
|
||||||
};
|
};
|
||||||
|
|
||||||
for (var entry in fields.entries) {
|
for (var entry in fields.entries) {
|
||||||
@@ -393,7 +393,7 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
children: [
|
children: [
|
||||||
Align(
|
Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child: AltStOrt(altStOrtC: altStOrtC),
|
child: Standort(standortC: standortC),
|
||||||
),
|
),
|
||||||
const SizedBox(
|
const SizedBox(
|
||||||
height: 1,
|
height: 1,
|
||||||
@@ -509,7 +509,7 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
final result = await Navigator.of(context)
|
final result = await Navigator.of(context)
|
||||||
.push<LatLng>(
|
.push<LatLng>(
|
||||||
MaterialPageRoute(builder: (context) {
|
MaterialPageRoute(builder: (context) {
|
||||||
return Standort(
|
return Karte(
|
||||||
currentPosition: currentPosition,
|
currentPosition: currentPosition,
|
||||||
onPositionChange: (updatedPosition) {
|
onPositionChange: (updatedPosition) {
|
||||||
setState(() {
|
setState(() {
|
||||||
@@ -632,12 +632,12 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
),
|
),
|
||||||
Align(
|
Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child: Absprachen(absprachenC: absprachenC),
|
child: KontAbsp(kontAbspC: kontAbspC),
|
||||||
),
|
),
|
||||||
Align(
|
Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child:
|
child:
|
||||||
SonstBemerkungen(sonstBemerkungenC: sonstBemerkungenC),
|
SonstBem(sonstBemC: sonstBemC),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
)),
|
)),
|
||||||
@@ -650,14 +650,14 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
),
|
),
|
||||||
Align(
|
Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child: Addresse1(addresse1C: addresse1C)),
|
child: Adresse1(adresse1C: adresse1C)),
|
||||||
Align(
|
Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child: Addresse2(addresse2C: addresse2C),
|
child: Adresse2(adresse2C: adresse2C),
|
||||||
),
|
),
|
||||||
Align(
|
Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child: Addresse3(addresse3C: addresse3C),
|
child: Adresse3(adresse3C: adresse3C),
|
||||||
),
|
),
|
||||||
const SizedBox(
|
const SizedBox(
|
||||||
height: 15,
|
height: 15,
|
||||||
@@ -712,7 +712,8 @@ class _AddCamMainState extends State<AddCamMain> {
|
|||||||
final isLastStep = currentStep == getSteps().length - 1;
|
final isLastStep = currentStep == getSteps().length - 1;
|
||||||
|
|
||||||
if (!isLastStep) {
|
if (!isLastStep) {
|
||||||
// ! saveTemplate();
|
saveTemplate();
|
||||||
|
|
||||||
setState(() {
|
setState(() {
|
||||||
currentStep += 1;
|
currentStep += 1;
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -213,23 +213,23 @@ class _RudelState extends State<Rudel> {
|
|||||||
//
|
//
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Standort
|
// Karte
|
||||||
// ! completely new page
|
// ! completely new page
|
||||||
|
|
||||||
class Standort extends StatefulWidget {
|
class Karte extends StatefulWidget {
|
||||||
final Position currentPosition;
|
final Position currentPosition;
|
||||||
final Function(Position) onPositionChange;
|
final Function(Position) onPositionChange;
|
||||||
|
|
||||||
const Standort(
|
const Karte(
|
||||||
{super.key,
|
{super.key,
|
||||||
required this.currentPosition,
|
required this.currentPosition,
|
||||||
required this.onPositionChange});
|
required this.onPositionChange});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
StandortState createState() => StandortState();
|
KarteState createState() => KarteState();
|
||||||
}
|
}
|
||||||
|
|
||||||
class StandortState extends State<Standort> {
|
class KarteState extends State<Karte> {
|
||||||
List<Marker> markers = [];
|
List<Marker> markers = [];
|
||||||
LatLng? selectedPosition;
|
LatLng? selectedPosition;
|
||||||
Position? updatedPosition;
|
Position? updatedPosition;
|
||||||
@@ -387,20 +387,20 @@ class _DatumState extends State<Datum> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Addresse1
|
// Adresse1
|
||||||
|
|
||||||
class Addresse1 extends StatefulWidget {
|
class Adresse1 extends StatefulWidget {
|
||||||
final TextEditingController addresse1C;
|
final TextEditingController adresse1C;
|
||||||
|
|
||||||
const Addresse1({super.key, required this.addresse1C});
|
const Adresse1({super.key, required this.adresse1C});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<Addresse1> createState() => _Addresse1State();
|
State<Adresse1> createState() => _Adresse1State();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _Addresse1State extends State<Addresse1> {
|
class _Adresse1State extends State<Adresse1> {
|
||||||
String? selectedRudel;
|
String? selectedRudel;
|
||||||
late Future<List<Map<String, dynamic>>> Addresse1;
|
late Future<List<Map<String, dynamic>>> Adresse1;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
@@ -408,15 +408,15 @@ class _Addresse1State extends State<Addresse1> {
|
|||||||
|
|
||||||
_loadPref();
|
_loadPref();
|
||||||
|
|
||||||
Addresse1 = DBHelper().getPlace();
|
Adresse1 = DBHelper().getPlace();
|
||||||
}
|
}
|
||||||
|
|
||||||
void _loadPref() {
|
void _loadPref() {
|
||||||
Future.delayed(Duration.zero, () async {
|
Future.delayed(Duration.zero, () async {
|
||||||
SharedPreferences prefs = await SharedPreferences.getInstance();
|
SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||||
String addresse1 = prefs.getString('addresse1') ?? "";
|
String adresse1 = prefs.getString('adresse1') ?? "";
|
||||||
setState(() {
|
setState(() {
|
||||||
widget.addresse1C.text = addresse1;
|
widget.adresse1C.text = adresse1;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -430,20 +430,20 @@ class _Addresse1State extends State<Addresse1> {
|
|||||||
child: TextField(
|
child: TextField(
|
||||||
decoration: InputDecoration(
|
decoration: InputDecoration(
|
||||||
hintText: AppLocalizations.of(context)!.adresse1,
|
hintText: AppLocalizations.of(context)!.adresse1,
|
||||||
enabledBorder: widget.addresse1C.text.isEmpty
|
enabledBorder: widget.adresse1C.text.isEmpty
|
||||||
? const UnderlineInputBorder(
|
? const UnderlineInputBorder(
|
||||||
borderSide: BorderSide(color: Colors.red))
|
borderSide: BorderSide(color: Colors.red))
|
||||||
: const UnderlineInputBorder(
|
: const UnderlineInputBorder(
|
||||||
borderSide: BorderSide(color: Colors.green)),
|
borderSide: BorderSide(color: Colors.green)),
|
||||||
focusedBorder: widget.addresse1C.text.isEmpty
|
focusedBorder: widget.adresse1C.text.isEmpty
|
||||||
? const UnderlineInputBorder(
|
? const UnderlineInputBorder(
|
||||||
borderSide: BorderSide(color: Colors.red))
|
borderSide: BorderSide(color: Colors.red))
|
||||||
: const UnderlineInputBorder(
|
: const UnderlineInputBorder(
|
||||||
borderSide: BorderSide(color: Colors.green)),
|
borderSide: BorderSide(color: Colors.green)),
|
||||||
),
|
),
|
||||||
controller: widget.addresse1C,
|
controller: widget.adresse1C,
|
||||||
onChanged: (value) => setState(() {
|
onChanged: (value) => setState(() {
|
||||||
widget.addresse1C.text = value;
|
widget.adresse1C.text = value;
|
||||||
}),
|
}),
|
||||||
)),
|
)),
|
||||||
Expanded(
|
Expanded(
|
||||||
@@ -451,20 +451,20 @@ class _Addresse1State extends State<Addresse1> {
|
|||||||
child: Align(
|
child: Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child: FutureBuilder<List<Map<String, dynamic>>>(
|
child: FutureBuilder<List<Map<String, dynamic>>>(
|
||||||
future: Addresse1,
|
future: Adresse1,
|
||||||
builder: (BuildContext context,
|
builder: (BuildContext context,
|
||||||
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
||||||
if (snapshot.hasData) {
|
if (snapshot.hasData) {
|
||||||
return DropdownButton<String>(
|
return DropdownButton<String>(
|
||||||
items: snapshot.data!
|
items: snapshot.data!
|
||||||
.map((item) =>
|
.map((item) =>
|
||||||
buildMenuItem(item['Addresse1'].toString()))
|
buildMenuItem(item['Adresse1'].toString()))
|
||||||
.toList(),
|
.toList(),
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
setState(
|
setState(
|
||||||
() {
|
() {
|
||||||
selectedRudel = value;
|
selectedRudel = value;
|
||||||
widget.addresse1C.text = value ?? '';
|
widget.adresse1C.text = value ?? '';
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
@@ -490,25 +490,25 @@ class _Addresse1State extends State<Addresse1> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Addresse2
|
// Adresse2
|
||||||
|
|
||||||
class Addresse2 extends StatefulWidget {
|
class Adresse2 extends StatefulWidget {
|
||||||
final TextEditingController addresse2C;
|
final TextEditingController adresse2C;
|
||||||
|
|
||||||
const Addresse2({super.key, required this.addresse2C});
|
const Adresse2({super.key, required this.adresse2C});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<Addresse2> createState() => _Addresse2State();
|
State<Adresse2> createState() => _Adresse2State();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _Addresse2State extends State<Addresse2> {
|
class _Adresse2State extends State<Adresse2> {
|
||||||
String? selectedRudel;
|
String? selectedRudel;
|
||||||
late Future<List<Map<String, dynamic>>> Addresse2;
|
late Future<List<Map<String, dynamic>>> Adresse2;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
Addresse2 = DBHelper().getPlace();
|
Adresse2 = DBHelper().getPlace();
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -520,9 +520,9 @@ class _Addresse2State extends State<Addresse2> {
|
|||||||
child: TextField(
|
child: TextField(
|
||||||
decoration: InputDecoration(
|
decoration: InputDecoration(
|
||||||
hintText: AppLocalizations.of(context)!.adresse2),
|
hintText: AppLocalizations.of(context)!.adresse2),
|
||||||
controller: widget.addresse2C,
|
controller: widget.adresse2C,
|
||||||
onChanged: (value) => setState(() {
|
onChanged: (value) => setState(() {
|
||||||
widget.addresse2C.text = value;
|
widget.adresse2C.text = value;
|
||||||
}),
|
}),
|
||||||
)),
|
)),
|
||||||
Expanded(
|
Expanded(
|
||||||
@@ -530,19 +530,19 @@ class _Addresse2State extends State<Addresse2> {
|
|||||||
child: Align(
|
child: Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child: FutureBuilder<List<Map<String, dynamic>>>(
|
child: FutureBuilder<List<Map<String, dynamic>>>(
|
||||||
future: Addresse2,
|
future: Adresse2,
|
||||||
builder: (BuildContext context,
|
builder: (BuildContext context,
|
||||||
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
||||||
if (snapshot.hasData) {
|
if (snapshot.hasData) {
|
||||||
return DropdownButton<String>(
|
return DropdownButton<String>(
|
||||||
items: snapshot.data!
|
items: snapshot.data!
|
||||||
.map((item) => buildMenuItem(item['Addresse2'].toString()))
|
.map((item) => buildMenuItem(item['Adresse2'].toString()))
|
||||||
.toList(),
|
.toList(),
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
setState(
|
setState(
|
||||||
() {
|
() {
|
||||||
selectedRudel = value;
|
selectedRudel = value;
|
||||||
widget.addresse2C.text = value ?? '';
|
widget.adresse2C.text = value ?? '';
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
@@ -568,25 +568,25 @@ class _Addresse2State extends State<Addresse2> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Addresse3
|
// Adresse3
|
||||||
|
|
||||||
class Addresse3 extends StatefulWidget {
|
class Adresse3 extends StatefulWidget {
|
||||||
final TextEditingController addresse3C;
|
final TextEditingController adresse3C;
|
||||||
|
|
||||||
const Addresse3({super.key, required this.addresse3C});
|
const Adresse3({super.key, required this.adresse3C});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<Addresse3> createState() => _Addresse3State();
|
State<Adresse3> createState() => _Adresse3State();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _Addresse3State extends State<Addresse3> {
|
class _Adresse3State extends State<Adresse3> {
|
||||||
String? selectedRudel;
|
String? selectedRudel;
|
||||||
late Future<List<Map<String, dynamic>>> Addresse3;
|
late Future<List<Map<String, dynamic>>> Adresse3;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
Addresse3 = DBHelper().getPlace();
|
Adresse3 = DBHelper().getPlace();
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -598,27 +598,27 @@ class _Addresse3State extends State<Addresse3> {
|
|||||||
child: TextField(
|
child: TextField(
|
||||||
decoration: InputDecoration(
|
decoration: InputDecoration(
|
||||||
hintText: AppLocalizations.of(context)!.adresse3),
|
hintText: AppLocalizations.of(context)!.adresse3),
|
||||||
controller: widget.addresse3C,
|
controller: widget.adresse3C,
|
||||||
)),
|
)),
|
||||||
Expanded(
|
Expanded(
|
||||||
flex: 1,
|
flex: 1,
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child: FutureBuilder<List<Map<String, dynamic>>>(
|
child: FutureBuilder<List<Map<String, dynamic>>>(
|
||||||
future: Addresse3,
|
future: Adresse3,
|
||||||
builder: (BuildContext context,
|
builder: (BuildContext context,
|
||||||
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
||||||
if (snapshot.hasData) {
|
if (snapshot.hasData) {
|
||||||
return DropdownButton<String>(
|
return DropdownButton<String>(
|
||||||
items: snapshot.data!
|
items: snapshot.data!
|
||||||
.map((item) =>
|
.map((item) =>
|
||||||
buildMenuItem(item['Addresse3'].toString()))
|
buildMenuItem(item['Adresse3'].toString()))
|
||||||
.toList(),
|
.toList(),
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
setState(
|
setState(
|
||||||
() {
|
() {
|
||||||
selectedRudel = value;
|
selectedRudel = value;
|
||||||
widget.addresse3C.text = value ?? '';
|
widget.adresse3C.text = value ?? '';
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
@@ -1795,25 +1795,25 @@ class _AuftragState extends State<Auftrag> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Absprachen
|
// KontAbsp
|
||||||
|
|
||||||
class Absprachen extends StatefulWidget {
|
class KontAbsp extends StatefulWidget {
|
||||||
final TextEditingController absprachenC;
|
final TextEditingController kontAbspC;
|
||||||
|
|
||||||
const Absprachen({super.key, required this.absprachenC});
|
const KontAbsp({super.key, required this.kontAbspC});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<Absprachen> createState() => _AbsprachenState();
|
State<KontAbsp> createState() => _KontAbspState();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _AbsprachenState extends State<Absprachen> {
|
class _KontAbspState extends State<KontAbsp> {
|
||||||
String? selectedRudel;
|
String? selectedRudel;
|
||||||
late Future<List<Map<String, dynamic>>> Absprachen;
|
late Future<List<Map<String, dynamic>>> KontAbsp;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
Absprachen = DBHelper().getPlace();
|
KontAbsp = DBHelper().getPlace();
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -1824,28 +1824,28 @@ class _AbsprachenState extends State<Absprachen> {
|
|||||||
flex: 2,
|
flex: 2,
|
||||||
child: TextField(
|
child: TextField(
|
||||||
decoration: InputDecoration(
|
decoration: InputDecoration(
|
||||||
hintText: AppLocalizations.of(context)!.absprachen),
|
hintText: AppLocalizations.of(context)!.kontabsp),
|
||||||
controller: widget.absprachenC,
|
controller: widget.kontAbspC,
|
||||||
)),
|
)),
|
||||||
Expanded(
|
Expanded(
|
||||||
flex: 1,
|
flex: 1,
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child: FutureBuilder<List<Map<String, dynamic>>>(
|
child: FutureBuilder<List<Map<String, dynamic>>>(
|
||||||
future: Absprachen,
|
future: KontAbsp,
|
||||||
builder: (BuildContext context,
|
builder: (BuildContext context,
|
||||||
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
||||||
if (snapshot.hasData) {
|
if (snapshot.hasData) {
|
||||||
return DropdownButton<String>(
|
return DropdownButton<String>(
|
||||||
items: snapshot.data!
|
items: snapshot.data!
|
||||||
.map((item) =>
|
.map((item) =>
|
||||||
buildMenuItem(item['Absprachen'].toString()))
|
buildMenuItem(item['KontAbsp'].toString()))
|
||||||
.toList(),
|
.toList(),
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
setState(
|
setState(
|
||||||
() {
|
() {
|
||||||
selectedRudel = value;
|
selectedRudel = value;
|
||||||
widget.absprachenC.text = value ?? '';
|
widget.kontAbspC.text = value ?? '';
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
@@ -1871,25 +1871,25 @@ class _AbsprachenState extends State<Absprachen> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// SonstBemerkungen
|
// SonstBem
|
||||||
|
|
||||||
class SonstBemerkungen extends StatefulWidget {
|
class SonstBem extends StatefulWidget {
|
||||||
final TextEditingController sonstBemerkungenC;
|
final TextEditingController sonstBemC;
|
||||||
|
|
||||||
const SonstBemerkungen({super.key, required this.sonstBemerkungenC});
|
const SonstBem({super.key, required this.sonstBemC});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<SonstBemerkungen> createState() => _SonstBemerkungenState();
|
State<SonstBem> createState() => _SonstBemState();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _SonstBemerkungenState extends State<SonstBemerkungen> {
|
class _SonstBemState extends State<SonstBem> {
|
||||||
String? selectedRudel;
|
String? selectedRudel;
|
||||||
late Future<List<Map<String, dynamic>>> SonstBemerkungen;
|
late Future<List<Map<String, dynamic>>> SonstBem;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
SonstBemerkungen = DBHelper().getPlace();
|
SonstBem = DBHelper().getPlace();
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -1901,27 +1901,27 @@ class _SonstBemerkungenState extends State<SonstBemerkungen> {
|
|||||||
child: TextField(
|
child: TextField(
|
||||||
decoration: InputDecoration(
|
decoration: InputDecoration(
|
||||||
hintText: AppLocalizations.of(context)!.sonstbemerkungen),
|
hintText: AppLocalizations.of(context)!.sonstbemerkungen),
|
||||||
controller: widget.sonstBemerkungenC,
|
controller: widget.sonstBemC,
|
||||||
)),
|
)),
|
||||||
Expanded(
|
Expanded(
|
||||||
flex: 1,
|
flex: 1,
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child: FutureBuilder<List<Map<String, dynamic>>>(
|
child: FutureBuilder<List<Map<String, dynamic>>>(
|
||||||
future: SonstBemerkungen,
|
future: SonstBem,
|
||||||
builder: (BuildContext context,
|
builder: (BuildContext context,
|
||||||
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
||||||
if (snapshot.hasData) {
|
if (snapshot.hasData) {
|
||||||
return DropdownButton<String>(
|
return DropdownButton<String>(
|
||||||
items: snapshot.data!
|
items: snapshot.data!
|
||||||
.map((item) =>
|
.map((item) =>
|
||||||
buildMenuItem(item['SonstBemerkungen'].toString()))
|
buildMenuItem(item['SonstBem'].toString()))
|
||||||
.toList(),
|
.toList(),
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
setState(
|
setState(
|
||||||
() {
|
() {
|
||||||
selectedRudel = value;
|
selectedRudel = value;
|
||||||
widget.sonstBemerkungenC.text = value ?? '';
|
widget.sonstBemC.text = value ?? '';
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
@@ -2175,25 +2175,25 @@ class _FKontakt3State extends State<FKontakt3> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// AltStOrt
|
// Standort
|
||||||
|
|
||||||
class AltStOrt extends StatefulWidget {
|
class Standort extends StatefulWidget {
|
||||||
final TextEditingController altStOrtC;
|
final TextEditingController standortC;
|
||||||
|
|
||||||
const AltStOrt({super.key, required this.altStOrtC});
|
const Standort({super.key, required this.standortC});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<AltStOrt> createState() => _AltStOrtState();
|
State<Standort> createState() => _StandortState();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _AltStOrtState extends State<AltStOrt> {
|
class _StandortState extends State<Standort> {
|
||||||
String? selectedRudel;
|
String? selectedRudel;
|
||||||
late Future<List<Map<String, dynamic>>> AltStOrt;
|
late Future<List<Map<String, dynamic>>> Standort;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
AltStOrt = DBHelper().getPlace();
|
Standort = DBHelper().getPlace();
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -2205,38 +2205,38 @@ class _AltStOrtState extends State<AltStOrt> {
|
|||||||
child: TextField(
|
child: TextField(
|
||||||
decoration: InputDecoration(
|
decoration: InputDecoration(
|
||||||
hintText: AppLocalizations.of(context)!.altstort,
|
hintText: AppLocalizations.of(context)!.altstort,
|
||||||
enabledBorder: widget.altStOrtC.text.isEmpty
|
enabledBorder: widget.standortC.text.isEmpty
|
||||||
? const UnderlineInputBorder(
|
? const UnderlineInputBorder(
|
||||||
borderSide: BorderSide(color: Colors.red))
|
borderSide: BorderSide(color: Colors.red))
|
||||||
: const UnderlineInputBorder(
|
: const UnderlineInputBorder(
|
||||||
borderSide: BorderSide(color: Colors.green)),
|
borderSide: BorderSide(color: Colors.green)),
|
||||||
focusedBorder: widget.altStOrtC.text.isEmpty
|
focusedBorder: widget.standortC.text.isEmpty
|
||||||
? const UnderlineInputBorder(
|
? const UnderlineInputBorder(
|
||||||
borderSide: BorderSide(color: Colors.red))
|
borderSide: BorderSide(color: Colors.red))
|
||||||
: const UnderlineInputBorder(
|
: const UnderlineInputBorder(
|
||||||
borderSide: BorderSide(color: Colors.green)),
|
borderSide: BorderSide(color: Colors.green)),
|
||||||
),
|
),
|
||||||
controller: widget.altStOrtC,
|
controller: widget.standortC,
|
||||||
)),
|
)),
|
||||||
Expanded(
|
Expanded(
|
||||||
flex: 1,
|
flex: 1,
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment: Alignment.bottomLeft,
|
alignment: Alignment.bottomLeft,
|
||||||
child: FutureBuilder<List<Map<String, dynamic>>>(
|
child: FutureBuilder<List<Map<String, dynamic>>>(
|
||||||
future: AltStOrt,
|
future: Standort,
|
||||||
builder: (BuildContext context,
|
builder: (BuildContext context,
|
||||||
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
AsyncSnapshot<List<Map<String, dynamic>>> snapshot) {
|
||||||
if (snapshot.hasData) {
|
if (snapshot.hasData) {
|
||||||
return DropdownButton<String>(
|
return DropdownButton<String>(
|
||||||
items: snapshot.data!
|
items: snapshot.data!
|
||||||
.map((item) =>
|
.map((item) =>
|
||||||
buildMenuItem(item['AltStOrt'].toString()))
|
buildMenuItem(item['Standort'].toString()))
|
||||||
.toList(),
|
.toList(),
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
setState(
|
setState(
|
||||||
() {
|
() {
|
||||||
selectedRudel = value;
|
selectedRudel = value;
|
||||||
widget.altStOrtC.text = value ?? '';
|
widget.standortC.text = value ?? '';
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -43,7 +43,7 @@
|
|||||||
"platzung": "Platzierung",
|
"platzung": "Platzierung",
|
||||||
"zeiteinstellung": "Zeiteinstellung",
|
"zeiteinstellung": "Zeiteinstellung",
|
||||||
"auftrag": "Auftrag",
|
"auftrag": "Auftrag",
|
||||||
"absprachen": "Absprachen",
|
"kontabsp": "Absprachen",
|
||||||
"sonstbemerkungen": "Sonstige Bemerkungen",
|
"sonstbemerkungen": "Sonstige Bemerkungen",
|
||||||
"fkontakt1": "Kontakt für Fläche",
|
"fkontakt1": "Kontakt für Fläche",
|
||||||
"fkontakt2": "Kontakt Eigentümer",
|
"fkontakt2": "Kontakt Eigentümer",
|
||||||
|
|||||||
@@ -212,9 +212,9 @@
|
|||||||
"description": "Auftrag textfield"
|
"description": "Auftrag textfield"
|
||||||
},
|
},
|
||||||
|
|
||||||
"absprachen": "Agreements",
|
"kontabsp": "Agreements",
|
||||||
"@absprachen": {
|
"@kontabsp": {
|
||||||
"description": "absprachen textfield"
|
"description": "kontabsp textfield"
|
||||||
},
|
},
|
||||||
|
|
||||||
"sonstbemerkungen": "Other remarks",
|
"sonstbemerkungen": "Other remarks",
|
||||||
|
|||||||
@@ -205,7 +205,7 @@ class _ViewCamsState extends State<ViewCams> {
|
|||||||
Text(
|
Text(
|
||||||
'${AppLocalizations.of(context)!.locations}: ${place['Standort']}'),
|
'${AppLocalizations.of(context)!.locations}: ${place['Standort']}'),
|
||||||
Text(
|
Text(
|
||||||
'${AppLocalizations.of(context)!.adresse3}: ${place['PLZOrt']}'),
|
'${AppLocalizations.of(context)!.adresse3}: ${place['Adresse3']}'),
|
||||||
Text(
|
Text(
|
||||||
'${AppLocalizations.of(context)!.bland}: ${place['BLand']}'),
|
'${AppLocalizations.of(context)!.bland}: ${place['BLand']}'),
|
||||||
Text(
|
Text(
|
||||||
@@ -217,15 +217,15 @@ class _ViewCamsState extends State<ViewCams> {
|
|||||||
Text(
|
Text(
|
||||||
'${AppLocalizations.of(context)!.altstort}: ${place['AltStOrt']}'),
|
'${AppLocalizations.of(context)!.altstort}: ${place['AltStOrt']}'),
|
||||||
Text(
|
Text(
|
||||||
'${AppLocalizations.of(context)!.adresse1}: ${place['NameVorname']}'),
|
'${AppLocalizations.of(context)!.adresse1}: ${place['Adresse1']}'),
|
||||||
Text(
|
Text(
|
||||||
'${AppLocalizations.of(context)!.adresse2}: ${place['EmailTel']}'),
|
'${AppLocalizations.of(context)!.adresse2}: ${place['Adresse2']}'),
|
||||||
Text(
|
Text(
|
||||||
'${AppLocalizations.of(context)!.auftrag}: ${place['Auftrag']}'),
|
'${AppLocalizations.of(context)!.auftrag}: ${place['Auftrag']}'),
|
||||||
Text(
|
Text(
|
||||||
'${AppLocalizations.of(context)!.absprachen}: ${place['absprachen']}'),
|
'${AppLocalizations.of(context)!.kontabsp}: ${place['KontAbsp']}'),
|
||||||
Text(
|
Text(
|
||||||
'${AppLocalizations.of(context)!.sonstbemerkungen}: ${place['SonstBemerkungen']}'),
|
'${AppLocalizations.of(context)!.sonstbemerkungen}: ${place['SonstBem']}'),
|
||||||
Text(
|
Text(
|
||||||
'${AppLocalizations.of(context)!.fkontakt1}: ${place['FKontakt1']}'),
|
'${AppLocalizations.of(context)!.fkontakt1}: ${place['FKontakt1']}'),
|
||||||
Text(
|
Text(
|
||||||
|
|||||||
Reference in New Issue
Block a user