This commit is contained in:
venbaittech 2025-06-10 11:36:13 +05:30
parent 4887c69950
commit e0cd77fbd5
7 changed files with 125 additions and 47 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@ -398,14 +398,32 @@ class _FlightListWidgetState extends State<FlightListWidget> {
), ),
Expanded( Expanded(
flex: 4, flex: 4,
child: Text( child: Column(
"$fromPlaceCountry (From) - (To) $toPlaceCountry", crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"$fromPlaceCountry",
// "${trip["from_place"]?.toString()} - ${trip["to_place"]?.toString()}", // "${trip["from_place"]?.toString()} - ${trip["to_place"]?.toString()}",
style: GoogleFonts.poppins( style: GoogleFonts.poppins(
fontSize: 12, fontSize: 12,
fontWeight: FontWeight.w700, fontWeight: FontWeight.w700,
), ),
), ),
Image.asset(
'assets/images/IconsImg/alternate.png',
width: 25,
height: 25,
),
Text(
"$toPlaceCountry",
// "${trip["from_place"]?.toString()} - ${trip["to_place"]?.toString()}",
style: GoogleFonts.poppins(
fontSize: 12,
fontWeight: FontWeight.w700,
),
),
],
),
), ),
Expanded( Expanded(
flex: 2, flex: 2,

View File

@ -582,7 +582,6 @@ class _CreateUserFormDetialsState extends State<CreateUserFormDetials> {
travelDetailsData = travellerDetailsKey.currentState?.travel_Detials; travelDetailsData = travellerDetailsKey.currentState?.travel_Detials;
// errorMessagesTravel = travellerDetailsKey.currentState!.errorMessages; // errorMessagesTravel = travellerDetailsKey.currentState!.errorMessages;
print("TRAVEL DETAILS FROM CHILD: $travelDetailsData"); print("TRAVEL DETAILS FROM CHILD: $travelDetailsData");
Map<String, dynamic> data = userDetials; Map<String, dynamic> data = userDetials;
@ -657,7 +656,25 @@ class _CreateUserFormDetialsState extends State<CreateUserFormDetials> {
// printFormData(); // printFormData();
bool isValid = travellerDetailsKey.currentState?.boolValidation() ?? false; bool isValid = travellerDetailsKey.currentState?.boolValidation() ?? false;
if (selectedTab == "travel" ||
selectedRole == "5" ||
setSelectesUserType == true) {
print("NO validation");
Map<String, dynamic> data = userDetials;
if (!isValidData(data)) {
print("USERDETAILS : $userDetials");
print("Validation Failed: Required fields are missing.");
setState(() {});
return; // Stop execution if validation fails
} else {
print("USERDETAILS : $userDetials");
orgId = await getOrgId();
createUserData(userDetials);
}
} else {
print("isValid- $isValid"); print("isValid- $isValid");
if (!isValid) { if (!isValid) {
print("Validation failed. Please check the inputs."); print("Validation failed. Please check the inputs.");
@ -667,8 +684,6 @@ class _CreateUserFormDetialsState extends State<CreateUserFormDetials> {
travelDetailsData = travellerDetailsKey.currentState?.travel_Detials; travelDetailsData = travellerDetailsKey.currentState?.travel_Detials;
print("travelDetailsData - $travelDetailsData"); print("travelDetailsData - $travelDetailsData");
print("travelDetailsData - $travelDetailsData"); print("travelDetailsData - $travelDetailsData");
@ -687,8 +702,7 @@ class _CreateUserFormDetialsState extends State<CreateUserFormDetials> {
// Map<String, dynamic> data = userDetials; // Map<String, dynamic> data = userDetials;
if (!isValidData(data) && if (!isValidData(data) && isValidDataTwo(data)) {
isValidDataTwo(data) ) {
print("USERDETAILS : $userDetials"); print("USERDETAILS : $userDetials");
print("Validation Failed: Required fields are missing."); print("Validation Failed: Required fields are missing.");
setState(() {}); setState(() {});
@ -700,6 +714,7 @@ class _CreateUserFormDetialsState extends State<CreateUserFormDetials> {
createUserData(userDetials); createUserData(userDetials);
} }
} }
}
bool isValidData(Map<String, dynamic> data) { bool isValidData(Map<String, dynamic> data) {
errorMessages.clear(); // Reset errors errorMessages.clear(); // Reset errors

View File

@ -1588,6 +1588,7 @@ class PersonalDetailsState extends State<PersonalDetails> {
widget.isViewMode widget.isViewMode
? null ? null
: (String? newValue) { : (String? newValue) {
widget.errorMessages.remove("role_id");
if (newValue == null) return; if (newValue == null) return;
final selectedKey = final selectedKey =
roleMap.entries roleMap.entries

View File

@ -2769,8 +2769,11 @@ class TravellerDetailsState extends State<TravellerDetails> {
countryMap = { countryMap = {
for (var country in countryList) for (var country in countryList)
country['airline'] as String: '${country['airline_name']}', country['airline'] as String:
'${country['airline_name']} (${country['airline']})',
// country['airline'] as String: '${country['airline_name']}',
}; };
// airline
countryCodes = countryMap.keys.toList(); countryCodes = countryMap.keys.toList();
@ -2850,17 +2853,56 @@ class TravellerDetailsState extends State<TravellerDetails> {
backgroundColor: Colors.white, backgroundColor: Colors.white,
), ),
constraints: BoxConstraints(maxHeight: 250), constraints: BoxConstraints(maxHeight: 250),
itemBuilder: itemBuilder: (context, item, isSelected) {
(context, item, isSelected) => Padding( // Extract airline name and code from "AirlineName (CODE)"
final match = RegExp(
r'^(.*)\s+\(([^)]+)\)$',
).firstMatch(item);
final name = match?.group(1) ?? '';
final code = match?.group(2) ?? '';
return Padding(
padding: const EdgeInsets.symmetric( padding: const EdgeInsets.symmetric(
horizontal: 8.0, horizontal: 8.0,
vertical: 6.0, vertical: 6.0,
), ),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Expanded(
child: Text( child: Text(
item, name,
style: GoogleFonts.poppins(fontSize: 11.5), style: const TextStyle(
fontSize: 12,
fontWeight: FontWeight.w500,
),
overflow: TextOverflow.ellipsis,
), ),
), ),
Text(
code,
style: const TextStyle(
fontSize: 12,
fontWeight: FontWeight.w500,
color: Colors.grey,
),
),
],
),
);
},
// itemBuilder:
// (context, item, isSelected) => Padding(
// padding: const EdgeInsets.symmetric(
// horizontal: 8.0,
// vertical: 6.0,
// ),
// child: Text(
// item,
// style: GoogleFonts.poppins(fontSize: 11.5),
// ),
// ),
searchFieldProps: TextFieldProps( searchFieldProps: TextFieldProps(
decoration: InputDecoration( decoration: InputDecoration(
hintText: "Search Airline...", hintText: "Search Airline...",

View File

@ -99,6 +99,8 @@ flutter:
- assets/images/login/VectorG.png - assets/images/login/VectorG.png
- assets/images/login/logoNew.jpg - assets/images/login/logoNew.jpg
- assets/images/login/microsoft.png - assets/images/login/microsoft.png
- assets/images/IconsImg/path.png
- assets/images/IconsImg/alternate.png
- assets/images/IconsImg/delete.png - assets/images/IconsImg/delete.png
- assets/images/IconsImg/edit.png - assets/images/IconsImg/edit.png
- assets/images/IconsImg/planPdf_icon.png - assets/images/IconsImg/planPdf_icon.png