change vendor details from dropdown to free text

design_3.0_demo_module
WaseemAbbasi22 1 week ago
parent 938f5173a4
commit 63efb3fae0

@ -447,48 +447,72 @@ class _CreateDemoRequestPageState extends State<CreateDemoRequestPage> with Tick
return [
'Vendor Details'.addTranslation.bodyText(context).custom(color: AppColor.black10),
8.height,
SingleItemDropDownMenu<SupplierDetails, VendorProvider>(
context: context,
title: 'Vendor Name'.addTranslation,
AppTextFormField(
labelText:'Vendor Name'.addTranslation,
style: Theme.of(context).textTheme.titleMedium,
backgroundColor: AppColor.fieldBgColor(context),
initialValue: _demoFormModel.vendor,
showAsBottomSheet: true,
labelStyle: AppTextStyles.textFieldLabelStyle.copyWith(color: AppColor.textColor(context)),
showShadow: false,
showCancel: true,
onSelect: (person) {
_demoFormModel.vendor = person;
_demoFormModel.supEngineer = null;
vendorPhoneController.text = person?.contact ?? '';
vendorEmailController.text = person?.email ?? '';
setState(() {});
textInputType: TextInputType.text,
textInputAction: TextInputAction.next,
onChange: (value) {
_demoFormModel.vendorName = value;
},
),
8.height,
SingleItemDropDownMenu<SuppPersons, NullableLoadingProvider>(
context: context,
backgroundColor: _demoFormModel.vendor?.suppliername == null
? context.isDark
? AppColor.neutral20
: AppColor.neutral40
: AppColor.fieldBgColor(context),
title: "Representative Name".addTranslation,
AppTextFormField(
labelText:'Representative Name'.addTranslation,
style: Theme.of(context).textTheme.titleMedium,
backgroundColor: AppColor.fieldBgColor(context),
labelStyle: AppTextStyles.textFieldLabelStyle.copyWith(color: AppColor.textColor(context)),
showShadow: false,
enabled: _demoFormModel.vendor?.suppPersons?.isNotEmpty ?? false,
staticData: _demoFormModel.vendor?.suppPersons,
showAsBottomSheet: true,
initialValue: _demoFormModel.supEngineer == null ? null : SuppPersons.fromJson(_demoFormModel.supEngineer?.toJson()),
onSelect: (suppPerson) {
if (suppPerson != null) {
_demoFormModel.supEngineer = SuppEngineerWorkOrders.fromJson(suppPerson.toJson());
setState(() {});
}
textInputType: TextInputType.text,
textInputAction: TextInputAction.next,
onChange: (value) {
_demoFormModel.vendorRepresentativeName = value;
},
),
// SingleItemDropDownMenu<SupplierDetails, VendorProvider>(
// context: context,
// title: 'Vendor Name'.addTranslation,
// backgroundColor: AppColor.fieldBgColor(context),
// initialValue: _demoFormModel.vendor,
// showAsBottomSheet: true,
// showShadow: false,
// showCancel: true,
// onSelect: (person) {
// _demoFormModel.vendor = person;
// _demoFormModel.supEngineer = null;
// vendorPhoneController.text = person?.contact ?? '';
// vendorEmailController.text = person?.email ?? '';
// setState(() {});
// },
// ),
// 8.height,
// SingleItemDropDownMenu<SuppPersons, NullableLoadingProvider>(
// context: context,
// backgroundColor: _demoFormModel.vendor?.suppliername == null
// ? context.isDark
// ? AppColor.neutral20
// : AppColor.neutral40
// : AppColor.fieldBgColor(context),
// title: "Representative Name".addTranslation,
// showShadow: false,
// enabled: _demoFormModel.vendor?.suppPersons?.isNotEmpty ?? false,
// staticData: _demoFormModel.vendor?.suppPersons,
// showAsBottomSheet: true,
// initialValue: _demoFormModel.supEngineer == null ? null : SuppPersons.fromJson(_demoFormModel.supEngineer?.toJson()),
// onSelect: (suppPerson) {
// if (suppPerson != null) {
// _demoFormModel.supEngineer = SuppEngineerWorkOrders.fromJson(suppPerson.toJson());
//
// setState(() {});
// }
// },
// ),
8.height,
AppTextFormField(
controller: vendorPhoneController,
enable: false,
// controller: vendorPhoneController,
labelText: "Contact Number",
style: Theme.of(context).textTheme.titleMedium,
backgroundColor: AppColor.fieldBgColor(context),
@ -497,14 +521,13 @@ class _CreateDemoRequestPageState extends State<CreateDemoRequestPage> with Tick
textInputType: TextInputType.phone,
textInputAction: TextInputAction.next,
onChange: (value) {
_demoFormModel.vendorNumber = value;
_demoFormModel.vendorContactNumber = value;
},
),
8.height,
AppTextFormField(
labelText: "Email",
controller: vendorEmailController,
enable: false,
// controller: vendorEmailController,
style: Theme.of(context).textTheme.titleMedium,
backgroundColor: AppColor.fieldBgColor(context),
labelStyle: AppTextStyles.textFieldLabelStyle.copyWith(color: AppColor.textColor(context)),

@ -22,7 +22,8 @@ class DemoFormModel {
String? manufacturer;
Lookup? demoPeriod;
String? vendorRepresentativeName;
String? vendorNumber;
String? vendorName;
String? vendorContactNumber;
String? vendorEmail;
Site? site;
Building? building; // Now nullable
@ -45,7 +46,8 @@ class DemoFormModel {
this.manufacturer,
this.demoPeriod,
this.vendorRepresentativeName,
this.vendorNumber,
this.vendorName,
this.vendorContactNumber,
this.vendorEmail,
this.demoAttachment,
this.site,
@ -69,10 +71,14 @@ class DemoFormModel {
"itemDescription": itemDescription,
"requestDescription": requestDescription,
"model": model,
"vendorName": vendorName,
"vendorContactNumber": vendorContactNumber,
"vendorEmail": vendorEmail,
"vendorRepresentativeName": vendorRepresentativeName,
"manufacturer": manufacturer,
"demoPeriodId": demoPeriod?.id,
"supplierId": vendor?.id,
"suppPersonId": supEngineer?.id,
"supplierId": 0,
"suppPersonId": 0,
// "vendorEmail": vendorEmail,
"demoAttachments": demoAttachment != null ? demoAttachment!.map((v) => v.toJson()).toList() : [],
};

@ -96,7 +96,7 @@ class _UpdateRequestViewState extends State<UpdateRequestView> with TickerProvid
_demoFormModel.vendor?.suppPersons = selectedVendor.suppPersons;
_demoFormModel.supEngineer = widget.dataModel.suppPerson;
_demoFormModel.vendorEmail = supplier?.email;
_demoFormModel.vendorNumber = supplier?.contact;
_demoFormModel.vendorContactNumber = supplier?.contact;
vendorEmailController.text = supplier?.email ?? '';
vendorPhoneController.text = supplier?.contact ?? '';
@ -214,7 +214,7 @@ class _UpdateRequestViewState extends State<UpdateRequestView> with TickerProvid
textInputType: TextInputType.phone,
textInputAction: TextInputAction.next,
onChange: (value) {
_demoFormModel.vendorNumber = value;
_demoFormModel.vendorContactNumber = value;
},
),
8.height,

Loading…
Cancel
Save