Request Module iAP
parent
8a8efa37f2
commit
b9a5429de5
@ -0,0 +1,169 @@
|
||||
class OffersModel {
|
||||
int? id;
|
||||
int? requestID;
|
||||
int? serviceProviderID;
|
||||
ServiceProvider? serviceProvider;
|
||||
int? offerStatus;
|
||||
String? offerStatusText;
|
||||
String? comment;
|
||||
double? price;
|
||||
|
||||
OffersModel(
|
||||
{this.id,
|
||||
this.requestID,
|
||||
this.serviceProviderID,
|
||||
this.serviceProvider,
|
||||
this.offerStatus,
|
||||
this.offerStatusText,
|
||||
this.comment,
|
||||
this.price});
|
||||
|
||||
OffersModel.fromJson(Map<String, dynamic> json) {
|
||||
id = json['id'];
|
||||
requestID = json['requestID'];
|
||||
serviceProviderID = json['serviceProviderID'];
|
||||
serviceProvider = json['serviceProvider'] != null
|
||||
? ServiceProvider.fromJson(json['serviceProvider'])
|
||||
: null;
|
||||
offerStatus = json['offerStatus'];
|
||||
offerStatusText = json['offerStatusText'];
|
||||
comment = json['comment'];
|
||||
price = json['price'];
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['id'] = id;
|
||||
data['requestID'] = requestID;
|
||||
data['serviceProviderID'] = serviceProviderID;
|
||||
if (serviceProvider != null) {
|
||||
data['serviceProvider'] = serviceProvider!.toJson();
|
||||
}
|
||||
data['offerStatus'] = offerStatus;
|
||||
data['offerStatusText'] = offerStatusText;
|
||||
data['comment'] = comment;
|
||||
data['price'] = price;
|
||||
return data;
|
||||
}
|
||||
}
|
||||
|
||||
class ServiceProvider {
|
||||
int? providerId;
|
||||
String? providerGUID;
|
||||
String? firstName;
|
||||
String? lastName;
|
||||
String? name;
|
||||
int? gender;
|
||||
String? genderName;
|
||||
String? mobileNo;
|
||||
String? email;
|
||||
bool? isEmailVerfied;
|
||||
bool? isCompleted;
|
||||
int? city;
|
||||
String? cityName;
|
||||
int? country;
|
||||
String? countryName;
|
||||
int? accountStatus;
|
||||
String? accountStatusText;
|
||||
int? activityStatus;
|
||||
String? activityStatusText;
|
||||
String? bankName;
|
||||
String? iBanNo;
|
||||
bool? isActive;
|
||||
String? subscriptionDate;
|
||||
String? companyName;
|
||||
String? currency;
|
||||
String? branch;
|
||||
dynamic requestOffer;
|
||||
|
||||
ServiceProvider(
|
||||
{this.providerId,
|
||||
this.providerGUID,
|
||||
this.firstName,
|
||||
this.lastName,
|
||||
this.name,
|
||||
this.gender,
|
||||
this.genderName,
|
||||
this.mobileNo,
|
||||
this.email,
|
||||
this.isEmailVerfied,
|
||||
this.isCompleted,
|
||||
this.city,
|
||||
this.cityName,
|
||||
this.country,
|
||||
this.countryName,
|
||||
this.accountStatus,
|
||||
this.accountStatusText,
|
||||
this.activityStatus,
|
||||
this.activityStatusText,
|
||||
this.bankName,
|
||||
this.iBanNo,
|
||||
this.isActive,
|
||||
this.subscriptionDate,
|
||||
this.companyName,
|
||||
this.currency,
|
||||
this.branch,
|
||||
this.requestOffer});
|
||||
|
||||
ServiceProvider.fromJson(Map<String, dynamic> json) {
|
||||
providerId = json['providerId'];
|
||||
providerGUID = json['providerGUID'];
|
||||
firstName = json['firstName'];
|
||||
lastName = json['lastName'];
|
||||
name = json['name'];
|
||||
gender = json['gender'];
|
||||
genderName = json['genderName'];
|
||||
mobileNo = json['mobileNo'];
|
||||
email = json['email'];
|
||||
isEmailVerfied = json['isEmailVerfied'];
|
||||
isCompleted = json['isCompleted'];
|
||||
city = json['city'];
|
||||
cityName = json['cityName'];
|
||||
country = json['country'];
|
||||
countryName = json['countryName'];
|
||||
accountStatus = json['accountStatus'];
|
||||
accountStatusText = json['accountStatusText'];
|
||||
activityStatus = json['activityStatus'];
|
||||
activityStatusText = json['activityStatusText'];
|
||||
bankName = json['bankName'];
|
||||
iBanNo = json['iBanNo'];
|
||||
isActive = json['isActive'];
|
||||
subscriptionDate = json['subscriptionDate'];
|
||||
companyName = json['companyName'];
|
||||
currency = json['currency'];
|
||||
branch = json['branch'];
|
||||
requestOffer = json['requestOffer'];
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['providerId'] = providerId;
|
||||
data['providerGUID'] = providerGUID;
|
||||
data['firstName'] = firstName;
|
||||
data['lastName'] = lastName;
|
||||
data['name'] = name;
|
||||
data['gender'] = gender;
|
||||
data['genderName'] = genderName;
|
||||
data['mobileNo'] = mobileNo;
|
||||
data['email'] = email;
|
||||
data['isEmailVerfied'] = isEmailVerfied;
|
||||
data['isCompleted'] = isCompleted;
|
||||
data['city'] = city;
|
||||
data['cityName'] = cityName;
|
||||
data['country'] = country;
|
||||
data['countryName'] = countryName;
|
||||
data['accountStatus'] = accountStatus;
|
||||
data['accountStatusText'] = accountStatusText;
|
||||
data['activityStatus'] = activityStatus;
|
||||
data['activityStatusText'] = activityStatusText;
|
||||
data['bankName'] = bankName;
|
||||
data['iBanNo'] = iBanNo;
|
||||
data['isActive'] = isActive;
|
||||
data['subscriptionDate'] = subscriptionDate;
|
||||
data['companyName'] = companyName;
|
||||
data['currency'] = currency;
|
||||
data['branch'] = branch;
|
||||
data['requestOffer'] = requestOffer;
|
||||
return data;
|
||||
}
|
||||
}
|
||||
@ -1,272 +1,272 @@
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:mc_common_app/classes/app_state.dart';
|
||||
import 'package:mc_common_app/models/advertisment_models/vehicle_details_models.dart';
|
||||
import 'package:mc_common_app/models/enums.dart';
|
||||
import 'package:mc_common_app/models/generic_resp_model.dart';
|
||||
import 'package:mc_common_app/models/requests/request_model.dart';
|
||||
import 'package:mc_common_app/models/widgets_models.dart';
|
||||
import 'package:mc_common_app/repositories/common_repo.dart';
|
||||
import 'package:mc_common_app/services/common_services.dart';
|
||||
import 'package:mc_common_app/utils/utils.dart';
|
||||
import 'package:mc_common_app/view_models/base_view_model.dart';
|
||||
|
||||
import '../repositories/request_repo.dart';
|
||||
|
||||
class RequestsVM extends BaseVM {
|
||||
final CommonAppServices commonServices;
|
||||
final CommonRepo commonRepo;
|
||||
final RequestRepo requestRepo;
|
||||
|
||||
RequestsVM({required this.commonServices, required this.commonRepo, required this.requestRepo});
|
||||
|
||||
List<FilterListModel> requestsFilterOptions = [];
|
||||
|
||||
populateRequestsFilterList() {
|
||||
requestsFilterOptions.clear();
|
||||
requestsFilterOptions = [
|
||||
FilterListModel(title: "Cars", isSelected: true, id: 1),
|
||||
FilterListModel(title: "Spare Parts", isSelected: false, id: 2),
|
||||
];
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
applyFilterOnRequestsVM({required int index}) {
|
||||
if (requestsFilterOptions.isEmpty) return;
|
||||
for (var value in requestsFilterOptions) {
|
||||
value.isSelected = false;
|
||||
}
|
||||
requestsFilterOptions[index].isSelected = true;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
List<File> pickedVehicleImages = [];
|
||||
String vehicleImageError = "";
|
||||
|
||||
void removeImageFromList(String filePath) {
|
||||
int index = pickedVehicleImages.indexWhere((element) => element.path == filePath);
|
||||
if (index == -1) {
|
||||
return;
|
||||
}
|
||||
pickedVehicleImages.removeAt(index);
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void pickMultipleImages() async {
|
||||
List<File> Images = await commonServices.pickMultipleImages();
|
||||
pickedVehicleImages.addAll(Images);
|
||||
if (pickedVehicleImages.isNotEmpty) vehicleImageError = "";
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
bool isFetchingRequestType = false;
|
||||
bool isFetchingVehicleType = true;
|
||||
bool isFetchingVehicleDetail = false;
|
||||
List<Enums> requestTypes = [];
|
||||
List<VehicleTypeModel> vehicleTypes = [];
|
||||
VehicleDetailsModel? vehicleDetails;
|
||||
List<VehicleBrandsModel> vehicleBrands = [];
|
||||
List<VehicleModel> vehicleModels = [];
|
||||
List<VehicleYearModel> vehicleModelYears = [];
|
||||
List<VehicleCountryModel> vehicleCountries = [];
|
||||
List<VehicleCityModel> vehicleCities = [];
|
||||
|
||||
SelectionModel requestTypeId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
|
||||
getRequestTypes() async {
|
||||
requestTypeId.selectedId = -1;
|
||||
isFetchingRequestType = true;
|
||||
requestTypes = await commonRepo.getEnumTypeValues(enumTypeID: 16); //TODO: 16 is to get Request types
|
||||
isFetchingRequestType = false;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void updateSelectionRequestTypeId(SelectionModel id) async {
|
||||
requestTypeId = id;
|
||||
getVehicleTypes();
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
SelectionModel vehicleTypeId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
|
||||
Future<void> getVehicleTypes() async {
|
||||
reset();
|
||||
isFetchingVehicleType = true;
|
||||
vehicleTypes = await commonRepo.getVehicleTypes();
|
||||
isFetchingVehicleType = false;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
reset() {
|
||||
vehicleTypeId.selectedId = -1;
|
||||
vehicleBrandId.selectedId = -1;
|
||||
vehicleModelId.selectedId = -1;
|
||||
vehicleModelYearId.selectedId = -1;
|
||||
vehicleCountryId.selectedId = -1;
|
||||
vehicleCityId.selectedId = -1;
|
||||
}
|
||||
|
||||
void updateSelectionVehicleTypeId(SelectionModel id) async {
|
||||
vehicleTypeId = id;
|
||||
getVehicleBrandsByVehicleTypeId();
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
Future<void> getVehicleBrandsByVehicleTypeId() async {
|
||||
// if (vehicleBrandId.selectedId == -1) {
|
||||
// return;
|
||||
// }
|
||||
isFetchingVehicleDetail = true;
|
||||
notifyListeners();
|
||||
vehicleDetails = await commonRepo.getVehicleDetails(vehicleTypeId: vehicleTypeId.selectedId);
|
||||
|
||||
if (vehicleDetails != null) {
|
||||
vehicleBrands = vehicleDetails!.vehicleBrands!;
|
||||
vehicleModels = vehicleDetails!.vehicleModels!;
|
||||
vehicleModelYears = vehicleDetails!.vehicleModelYears!;
|
||||
vehicleCountries = vehicleDetails!.vehicleCountries!;
|
||||
}
|
||||
isFetchingVehicleDetail = false;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
SelectionModel vehicleBrandId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
|
||||
void updateSelectionVehicleBrandId(SelectionModel id) {
|
||||
vehicleBrandId = id;
|
||||
vehicleModelId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
vehicleModelYearId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
SelectionModel vehicleModelId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
|
||||
void updateSelectionVehicleModelId(SelectionModel id) {
|
||||
vehicleModelId = id;
|
||||
vehicleModelYearId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
SelectionModel vehicleModelYearId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
|
||||
void updateSelectionVehicleModelYearId(SelectionModel id) {
|
||||
vehicleModelYearId = id;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
bool isShippingDeliveryEnabled = false;
|
||||
|
||||
void updateShippingDeliverEnabled(bool v) {
|
||||
isShippingDeliveryEnabled = v;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
bool isCountryFetching = false;
|
||||
SelectionModel vehicleCountryId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
|
||||
void updateSelectionVehicleCountryId(SelectionModel id) async {
|
||||
vehicleCountryId = id;
|
||||
isCountryFetching = true;
|
||||
notifyListeners();
|
||||
vehicleCities = await commonRepo.getVehicleCities(countryId: vehicleCountryId.selectedId);
|
||||
isCountryFetching = false;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
SelectionModel vehicleCityId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
|
||||
void updateSelectionVehicleCityId(SelectionModel id) {
|
||||
vehicleCityId = id;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
//Request Management
|
||||
String price = "", description = "";
|
||||
|
||||
updatePrice(String v) {
|
||||
price = v;
|
||||
}
|
||||
|
||||
updateDescription(String v) {
|
||||
description = v;
|
||||
}
|
||||
|
||||
Future<GenericRespModel?> createRequest() async {
|
||||
if (validate()) {
|
||||
Map<String, dynamic> m = {
|
||||
"customerID": AppState().getUser.data!.userInfo!.customerId ?? 0,
|
||||
"requestType": requestTypeId.selectedId,
|
||||
"vehicleTypeID": vehicleTypeId.selectedId,
|
||||
"brand": vehicleBrandId.selectedOption,
|
||||
"model": vehicleModelId.selectedOption,
|
||||
"year": vehicleModelYearId.selectedOption,
|
||||
"isNew": true,
|
||||
"countryID": vehicleCountryId.selectedId,
|
||||
"cityID": vehicleCityId.selectedId,
|
||||
"price": price,
|
||||
"description": description,
|
||||
"isSpecialServiceNeeded": false,
|
||||
"requestImages": []
|
||||
};
|
||||
GenericRespModel respModel = await requestRepo.createRequest(m);
|
||||
return respModel;
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
bool validate() {
|
||||
bool isValid = true;
|
||||
if (requestTypeId.selectedId == -1) {
|
||||
Utils.showToast("Please select valid Request Type");
|
||||
isValid = false;
|
||||
} else if (vehicleTypeId.selectedId == -1) {
|
||||
Utils.showToast("Please select valid Vehicle Type");
|
||||
isValid = false;
|
||||
} else if (vehicleBrandId.selectedId == -1) {
|
||||
Utils.showToast("Please select valid Brand");
|
||||
isValid = false;
|
||||
} else if (vehicleModelId.selectedId == -1) {
|
||||
Utils.showToast("Please select valid Model");
|
||||
isValid = false;
|
||||
} else if (vehicleModelYearId.selectedId == -1) {
|
||||
Utils.showToast("Please select valid Year");
|
||||
isValid = false;
|
||||
} else if (vehicleCountryId.selectedId == -1) {
|
||||
Utils.showToast("Please select valid Country");
|
||||
isValid = false;
|
||||
} else if (vehicleCityId.selectedId == -1) {
|
||||
Utils.showToast("Please select valid City");
|
||||
isValid = false;
|
||||
} else if (price.isEmpty) {
|
||||
Utils.showToast("Please add valid Price");
|
||||
isValid = false;
|
||||
} else if (description.isEmpty) {
|
||||
Utils.showToast("Please add valid Description");
|
||||
isValid = false;
|
||||
}
|
||||
return isValid;
|
||||
}
|
||||
|
||||
bool isRequestLoading = true;
|
||||
List<RequestModel> requests = [];
|
||||
|
||||
getRequests() async {
|
||||
isRequestLoading = true;
|
||||
notifyListeners();
|
||||
|
||||
int selectedRequestType;
|
||||
// Find the FilterListModel with isSelected equal to true
|
||||
|
||||
requests = await requestRepo.getRequests(
|
||||
{
|
||||
"customerID": AppState().getUser.data!.userInfo!.customerId,
|
||||
"pageSize": 100,
|
||||
"pageIndex": 0,
|
||||
"requestType": requestsFilterOptions.firstWhere((element) => element.isSelected).id,
|
||||
},
|
||||
);
|
||||
isRequestLoading = false;
|
||||
notifyListeners();
|
||||
}
|
||||
}
|
||||
// import 'dart:io';
|
||||
//
|
||||
// import 'package:mc_common_app/classes/app_state.dart';
|
||||
// import 'package:mc_common_app/models/advertisment_models/vehicle_details_models.dart';
|
||||
// import 'package:mc_common_app/models/enums_model.dart';
|
||||
// import 'package:mc_common_app/models/generic_resp_model.dart';
|
||||
// import 'package:mc_common_app/models/requests/request_model.dart';
|
||||
// import 'package:mc_common_app/models/widgets_models.dart';
|
||||
// import 'package:mc_common_app/repositories/common_repo.dart';
|
||||
// import 'package:mc_common_app/services/common_services.dart';
|
||||
// import 'package:mc_common_app/utils/utils.dart';
|
||||
// import 'package:mc_common_app/view_models/base_view_model.dart';
|
||||
//
|
||||
// import '../repositories/request_repo.dart';
|
||||
//
|
||||
// class RequestsVM extends BaseVM {
|
||||
// final CommonAppServices commonServices;
|
||||
// final CommonRepo commonRepo;
|
||||
// final RequestRepo requestRepo;
|
||||
//
|
||||
// RequestsVM({required this.commonServices, required this.commonRepo, required this.requestRepo});
|
||||
//
|
||||
// List<FilterListModel> requestsFilterOptions = [];
|
||||
//
|
||||
// populateRequestsFilterList() {
|
||||
// requestsFilterOptions.clear();
|
||||
// requestsFilterOptions = [
|
||||
// FilterListModel(title: "Cars", isSelected: true, id: 1),
|
||||
// FilterListModel(title: "Spare Parts", isSelected: false, id: 2),
|
||||
// ];
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// applyFilterOnRequestsVM({required int index}) {
|
||||
// if (requestsFilterOptions.isEmpty) return;
|
||||
// for (var value in requestsFilterOptions) {
|
||||
// value.isSelected = false;
|
||||
// }
|
||||
// requestsFilterOptions[index].isSelected = true;
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// List<File> pickedVehicleImages = [];
|
||||
// String vehicleImageError = "";
|
||||
//
|
||||
// void removeImageFromList(String filePath) {
|
||||
// int index = pickedVehicleImages.indexWhere((element) => element.path == filePath);
|
||||
// if (index == -1) {
|
||||
// return;
|
||||
// }
|
||||
// pickedVehicleImages.removeAt(index);
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// void pickMultipleImages() async {
|
||||
// List<File> Images = await commonServices.pickMultipleImages();
|
||||
// pickedVehicleImages.addAll(Images);
|
||||
// if (pickedVehicleImages.isNotEmpty) vehicleImageError = "";
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// bool isFetchingRequestType = false;
|
||||
// bool isFetchingVehicleType = true;
|
||||
// bool isFetchingVehicleDetail = false;
|
||||
// List<EnumsModel> requestTypes = [];
|
||||
// List<VehicleTypeModel> vehicleTypes = [];
|
||||
// VehicleDetailsModel? vehicleDetails;
|
||||
// List<VehicleBrandsModel> vehicleBrands = [];
|
||||
// List<VehicleModel> vehicleModels = [];
|
||||
// List<VehicleYearModel> vehicleModelYears = [];
|
||||
// List<VehicleCountryModel> vehicleCountries = [];
|
||||
// List<VehicleCityModel> vehicleCities = [];
|
||||
//
|
||||
// SelectionModel requestTypeId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
//
|
||||
// getRequestTypes() async {
|
||||
// requestTypeId.selectedId = -1;
|
||||
// isFetchingRequestType = true;
|
||||
// requestTypes = await commonRepo.getEnumTypeValues(enumTypeID: 16); //TODO: 16 is to get Request types
|
||||
// isFetchingRequestType = false;
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// void updateSelectionRequestTypeId(SelectionModel id) async {
|
||||
// requestTypeId = id;
|
||||
// getVehicleTypes();
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// SelectionModel vehicleTypeId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
//
|
||||
// Future<void> getVehicleTypes() async {
|
||||
// reset();
|
||||
// isFetchingVehicleType = true;
|
||||
// vehicleTypes = await commonRepo.getVehicleTypes();
|
||||
// isFetchingVehicleType = false;
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// reset() {
|
||||
// vehicleTypeId.selectedId = -1;
|
||||
// vehicleBrandId.selectedId = -1;
|
||||
// vehicleModelId.selectedId = -1;
|
||||
// vehicleModelYearId.selectedId = -1;
|
||||
// vehicleCountryId.selectedId = -1;
|
||||
// vehicleCityId.selectedId = -1;
|
||||
// }
|
||||
//
|
||||
// void updateSelectionVehicleTypeId(SelectionModel id) async {
|
||||
// vehicleTypeId = id;
|
||||
// getVehicleBrandsByVehicleTypeId();
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// Future<void> getVehicleBrandsByVehicleTypeId() async {
|
||||
// // if (vehicleBrandId.selectedId == -1) {
|
||||
// // return;
|
||||
// // }
|
||||
// isFetchingVehicleDetail = true;
|
||||
// notifyListeners();
|
||||
// vehicleDetails = await commonRepo.getVehicleDetails(vehicleTypeId: vehicleTypeId.selectedId);
|
||||
//
|
||||
// if (vehicleDetails != null) {
|
||||
// vehicleBrands = vehicleDetails!.vehicleBrands!;
|
||||
// vehicleModels = vehicleDetails!.vehicleModels!;
|
||||
// vehicleModelYears = vehicleDetails!.vehicleModelYears!;
|
||||
// vehicleCountries = vehicleDetails!.vehicleCountries!;
|
||||
// }
|
||||
// isFetchingVehicleDetail = false;
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// SelectionModel vehicleBrandId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
//
|
||||
// void updateSelectionVehicleBrandId(SelectionModel id) {
|
||||
// vehicleBrandId = id;
|
||||
// vehicleModelId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
// vehicleModelYearId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// SelectionModel vehicleModelId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
//
|
||||
// void updateSelectionVehicleModelId(SelectionModel id) {
|
||||
// vehicleModelId = id;
|
||||
// vehicleModelYearId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// SelectionModel vehicleModelYearId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
//
|
||||
// void updateSelectionVehicleModelYearId(SelectionModel id) {
|
||||
// vehicleModelYearId = id;
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// bool isShippingDeliveryEnabled = false;
|
||||
//
|
||||
// void updateShippingDeliverEnabled(bool v) {
|
||||
// isShippingDeliveryEnabled = v;
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// bool isCountryFetching = false;
|
||||
// SelectionModel vehicleCountryId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
//
|
||||
// void updateSelectionVehicleCountryId(SelectionModel id) async {
|
||||
// vehicleCountryId = id;
|
||||
// isCountryFetching = true;
|
||||
// notifyListeners();
|
||||
// vehicleCities = await commonRepo.getVehicleCities(countryId: vehicleCountryId.selectedId);
|
||||
// isCountryFetching = false;
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// SelectionModel vehicleCityId = SelectionModel(selectedOption: "", selectedId: -1, errorValue: "");
|
||||
//
|
||||
// void updateSelectionVehicleCityId(SelectionModel id) {
|
||||
// vehicleCityId = id;
|
||||
// notifyListeners();
|
||||
// }
|
||||
//
|
||||
// //Request Management
|
||||
// String price = "", description = "";
|
||||
//
|
||||
// updatePrice(String v) {
|
||||
// price = v;
|
||||
// }
|
||||
//
|
||||
// updateDescription(String v) {
|
||||
// description = v;
|
||||
// }
|
||||
//
|
||||
// Future<GenericRespModel?> createRequest() async {
|
||||
// if (validate()) {
|
||||
// Map<String, dynamic> m = {
|
||||
// "customerID": AppState().getUser.data!.userInfo!.customerId ?? 0,
|
||||
// "requestType": requestTypeId.selectedId,
|
||||
// "vehicleTypeID": vehicleTypeId.selectedId,
|
||||
// "brand": vehicleBrandId.selectedOption,
|
||||
// "model": vehicleModelId.selectedOption,
|
||||
// "year": vehicleModelYearId.selectedOption,
|
||||
// "isNew": true,
|
||||
// "countryID": vehicleCountryId.selectedId,
|
||||
// "cityID": vehicleCityId.selectedId,
|
||||
// "price": price,
|
||||
// "description": description,
|
||||
// "isSpecialServiceNeeded": false,
|
||||
// "requestImages": []
|
||||
// };
|
||||
// GenericRespModel respModel = await requestRepo.createRequest(m);
|
||||
// return respModel;
|
||||
// } else {
|
||||
// return null;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// bool validate() {
|
||||
// bool isValid = true;
|
||||
// if (requestTypeId.selectedId == -1) {
|
||||
// Utils.showToast("Please select valid Request Type");
|
||||
// isValid = false;
|
||||
// } else if (vehicleTypeId.selectedId == -1) {
|
||||
// Utils.showToast("Please select valid Vehicle Type");
|
||||
// isValid = false;
|
||||
// } else if (vehicleBrandId.selectedId == -1) {
|
||||
// Utils.showToast("Please select valid Brand");
|
||||
// isValid = false;
|
||||
// } else if (vehicleModelId.selectedId == -1) {
|
||||
// Utils.showToast("Please select valid Model");
|
||||
// isValid = false;
|
||||
// } else if (vehicleModelYearId.selectedId == -1) {
|
||||
// Utils.showToast("Please select valid Year");
|
||||
// isValid = false;
|
||||
// } else if (vehicleCountryId.selectedId == -1) {
|
||||
// Utils.showToast("Please select valid Country");
|
||||
// isValid = false;
|
||||
// } else if (vehicleCityId.selectedId == -1) {
|
||||
// Utils.showToast("Please select valid City");
|
||||
// isValid = false;
|
||||
// } else if (price.isEmpty) {
|
||||
// Utils.showToast("Please add valid Price");
|
||||
// isValid = false;
|
||||
// } else if (description.isEmpty) {
|
||||
// Utils.showToast("Please add valid Description");
|
||||
// isValid = false;
|
||||
// }
|
||||
// return isValid;
|
||||
// }
|
||||
//
|
||||
// bool isRequestLoading = true;
|
||||
// List<RequestModel> requests = [];
|
||||
//
|
||||
// getRequests() async {
|
||||
// isRequestLoading = true;
|
||||
// notifyListeners();
|
||||
//
|
||||
// int selectedRequestType;
|
||||
// // Find the FilterListModel with isSelected equal to true
|
||||
//
|
||||
// requests = await requestRepo.getRequests(
|
||||
// {
|
||||
// "customerID": AppState().getUser.data!.userInfo!.customerId,
|
||||
// "pageSize": 100,
|
||||
// "pageIndex": 0,
|
||||
// "requestType": requestsFilterOptions.firstWhere((element) => element.isSelected).id,
|
||||
// },
|
||||
// );
|
||||
// isRequestLoading = false;
|
||||
// notifyListeners();
|
||||
// }
|
||||
// }
|
||||
|
||||
Loading…
Reference in New Issue