225 lines
10 KiB
Dart
225 lines
10 KiB
Dart
import 'package:date_time_picker/date_time_picker.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'package:flutter/src/widgets/framework.dart';
|
|
import 'package:flutter/src/widgets/placeholder.dart';
|
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
|
import 'package:intl/intl.dart';
|
|
import 'package:unit2/model/profile/eligibility.dart';
|
|
|
|
import '../../../../theme-data.dart/btn-style.dart';
|
|
import '../../../../theme-data.dart/colors.dart';
|
|
import '../../../../theme-data.dart/form-style.dart';
|
|
import '../../../../utils/global.dart';
|
|
import '../../../../utils/text_container.dart';
|
|
|
|
class EditEligibilityScreen extends StatefulWidget {
|
|
final EligibityCert eligibityCert;
|
|
const EditEligibilityScreen({super.key,required this.eligibityCert});
|
|
|
|
@override
|
|
State<EditEligibilityScreen> createState() => _EditEligibilityScreenState();
|
|
}
|
|
|
|
class _EditEligibilityScreenState extends State<EditEligibilityScreen> {
|
|
final formKey = GlobalKey<FormBuilderState>();
|
|
bool overseas =false;
|
|
DateFormat dteFormat2 = DateFormat.yMMMMd('en_US');
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return Center(
|
|
child: Padding(
|
|
padding: const EdgeInsets.symmetric(vertical: 25, horizontal: 18),
|
|
child: FormBuilder(
|
|
key: formKey,
|
|
child: Column(
|
|
mainAxisAlignment: MainAxisAlignment.center,
|
|
crossAxisAlignment: CrossAxisAlignment.center,
|
|
children: [
|
|
FormBuilderTextField(
|
|
name: "eligibility",
|
|
initialValue: widget.eligibityCert.eligibility!.title!,
|
|
decoration:
|
|
normalTextFieldStyle("Eligibility", "Eligibility"),
|
|
),
|
|
const SizedBox(
|
|
height: 20,
|
|
),
|
|
SizedBox(
|
|
width: screenWidth,
|
|
child: Row(
|
|
children: [
|
|
Flexible(
|
|
flex: 1,
|
|
child: FormBuilderTextField(
|
|
name: 'license number',
|
|
initialValue:
|
|
widget.eligibityCert.licenseNumber,
|
|
decoration: normalTextFieldStyle(
|
|
"license number", "license number"),
|
|
),
|
|
),
|
|
const SizedBox(
|
|
width: 12,
|
|
),
|
|
Flexible(
|
|
flex: 1,
|
|
child: FormBuilderTextField(
|
|
name: 'rating',
|
|
initialValue:
|
|
widget.eligibityCert.rating.toString(),
|
|
decoration:
|
|
normalTextFieldStyle('rating', 'rating'),
|
|
),
|
|
),
|
|
],
|
|
),
|
|
),
|
|
const SizedBox(
|
|
height: 20,
|
|
),
|
|
SizedBox(
|
|
width: screenWidth,
|
|
child: Row(
|
|
children: [
|
|
Flexible(
|
|
flex: 1,
|
|
child: DateTimePicker(
|
|
firstDate: DateTime(2000),
|
|
lastDate: DateTime(2100),
|
|
decoration: normalTextFieldStyle(
|
|
"Exam date", "Exam date"),
|
|
initialValue:
|
|
widget.eligibityCert.examDate == null
|
|
? ''
|
|
: dteFormat2.format(
|
|
widget.eligibityCert.examDate!),
|
|
)),
|
|
const SizedBox(
|
|
width: 12,
|
|
),
|
|
Flexible(
|
|
flex: 1,
|
|
child: DateTimePicker(
|
|
firstDate: DateTime(2000),
|
|
lastDate: DateTime(2100),
|
|
decoration: normalTextFieldStyle(
|
|
"Validity date", "Validity date"),
|
|
initialValue:
|
|
widget.eligibityCert.validityDate == null
|
|
? ''
|
|
: dteFormat2.format(
|
|
widget.eligibityCert.validityDate!),
|
|
),
|
|
),
|
|
],
|
|
),
|
|
),
|
|
const SizedBox(
|
|
height: 20,
|
|
),
|
|
Text(
|
|
"Placement of Examination/Confinement",
|
|
style: Theme.of(context)
|
|
.textTheme
|
|
.displaySmall!
|
|
.copyWith(fontSize: blockSizeVertical * 2),
|
|
),
|
|
const SizedBox(
|
|
height: 12,
|
|
),
|
|
FormBuilderSwitch(
|
|
initialValue: overseas,
|
|
activeColor: second,
|
|
onChanged: (value) {
|
|
setState(() {
|
|
overseas = value!;
|
|
});
|
|
},
|
|
decoration: normalTextFieldStyle("", ''),
|
|
name: 'overseas',
|
|
title: const Text("Overseas Address?"),
|
|
),
|
|
const SizedBox(
|
|
height: 20,
|
|
),
|
|
SizedBox(
|
|
child: overseas == true
|
|
? FormBuilderTextField(
|
|
name: 'country',
|
|
decoration: normalTextFieldStyle(
|
|
"Country", "Country"),
|
|
)
|
|
: Column(
|
|
children: [
|
|
FormBuilderDropdown(
|
|
decoration: normalTextFieldStyle(
|
|
"Region", "Region"),
|
|
name: 'region',
|
|
items: [],
|
|
initialValue: widget
|
|
.eligibityCert
|
|
.examAddress
|
|
?.cityMunicipality
|
|
?.province
|
|
?.region
|
|
?.description ==
|
|
null
|
|
? 'region'
|
|
: 'region',
|
|
),
|
|
const SizedBox(
|
|
height: 20,
|
|
),
|
|
FormBuilderDropdown(
|
|
decoration: normalTextFieldStyle(
|
|
'Province', "Province"),
|
|
name: 'province',
|
|
items: [],
|
|
initialValue: widget
|
|
.eligibityCert
|
|
.examAddress
|
|
?.cityMunicipality
|
|
?.province
|
|
?.description ==
|
|
null
|
|
? 'region'
|
|
: 'pprovince'),
|
|
const SizedBox(
|
|
height: 20,
|
|
),
|
|
FormBuilderDropdown(
|
|
decoration: normalTextFieldStyle(
|
|
"Municipality", "Municipality"),
|
|
name: 'municipality',
|
|
items: [],
|
|
initialValue: widget
|
|
.eligibityCert
|
|
.examAddress
|
|
?.cityMunicipality
|
|
?.description ==
|
|
null
|
|
? 'region'
|
|
: 'municipality',
|
|
),
|
|
],
|
|
)),
|
|
const SizedBox(
|
|
height: 20,
|
|
),
|
|
SizedBox(
|
|
width: screenWidth,
|
|
height: 60,
|
|
child: ElevatedButton(
|
|
style: mainBtnStyle(
|
|
primary, Colors.transparent, second),
|
|
onPressed: () {},
|
|
child: const Text(submit)),
|
|
),
|
|
const SizedBox(height: 20,),
|
|
|
|
]),
|
|
),
|
|
),
|
|
);;
|
|
}
|
|
} |