Merge branch 'faiz_development_common'

localization_aamir
Faiz Hashmi 2 years ago
commit 7c84037601

@ -111,6 +111,7 @@ class ApiConsts {
static String adsPhotoOfficeAppointmentCreate = "${baseUrlServices}api/Advertisement/PhotoOfficeAppointment_Create";
static String adsMCBankAccountAdGet = "${baseUrlServices}api/Advertisement/MCBankAccountAd_Get";
static String adsReserveCreate = "${baseUrlServices}api/Advertisement/AdsReserve_Create";
static String reserveAdPaymentOnDealDoneCreate = "${baseUrlServices}api/Advertisement/ReserveAdPaymentOnDealDone_Create";
//Subscription
static String getMySubscriptions = "${baseUrlServices}api/ServiceProviders/ProviderSubscription_Get";

@ -372,6 +372,8 @@ extension RequestTypeStatusToInt on RequestsTypeEnum {
}
}
// 290223243016
extension AdPostStatusToInt on AdPostStatus {
int getIdFromAdPostStatusEnum() {
switch (this) {

@ -0,0 +1,7 @@
class PdfReceiptModel {
int? id;
String? pdfName;
String? pdfString;
PdfReceiptModel({this.id, this.pdfName, this.pdfString});
}

@ -8,6 +8,7 @@ import 'package:mc_common_app/extensions/string_extensions.dart';
import 'package:mc_common_app/models/advertisment_models/ad_details_model.dart';
import 'package:mc_common_app/models/advertisment_models/ads_bank_details_model.dart';
import 'package:mc_common_app/models/advertisment_models/ads_duration_model.dart';
import 'package:mc_common_app/models/advertisment_models/pdf_receipt_model.dart';
import 'package:mc_common_app/models/advertisment_models/reserved_ads_models.dart';
import 'package:mc_common_app/models/advertisment_models/special_service_model.dart';
import 'package:mc_common_app/models/advertisment_models/vehicle_details_models.dart';
@ -66,6 +67,8 @@ abstract class AdsRepo {
Future<GenericRespModel> cancelMyAdReservation({required int adId, required int adsReserveStatus, required String reason});
Future<GenericRespModel> createReserveAd({required int adId});
Future<GenericRespModel> uploadBankReceiptsOnReserveDealDone({required int adId, required String detailNote, required List<PdfReceiptModel> pdfReceiptsList});
}
class AdsRepoImp implements AdsRepo {
@ -415,6 +418,8 @@ class AdsRepoImp implements AdsRepo {
for (int i = 0; i < vehicleAdsDetails.length; i++) {
vehicleAdsDetails[i].adReserveStatus = (reservedAds[i].adsReserveStatus ?? 0).toAdRserveStatusEnum();
}
vehicleAdsDetails.removeWhere((element) => element.adReserveStatus != AdReserveStatus.reserved);
return vehicleAdsDetails;
}
@ -559,4 +564,37 @@ class AdsRepoImp implements AdsRepo {
return Future.value(adsGenericModel);
}
@override
Future<GenericRespModel> uploadBankReceiptsOnReserveDealDone({required int adId, required String detailNote, required List<PdfReceiptModel> pdfReceiptsList}) async {
int customerId = AppState().getUser.data!.userInfo!.customerId ?? 0;
List receiptImages = [];
for (var element in pdfReceiptsList) {
var pdfReceiptMap = {
"id": 0,
"imageName": element.pdfName,
"imageStr": element.pdfString,
};
receiptImages.add(pdfReceiptMap);
}
var postParams = {
"adsID": adId,
"customerID": customerId,
"detailNote": detailNote,
"receiptImages": receiptImages,
};
String token = appState.getUser.data!.accessToken ?? "";
GenericRespModel adsGenericModel = await apiClient.postJsonForObject(
(json) => GenericRespModel.fromJson(json),
ApiConsts.adsPhotoOfficeAppointmentCreate,
postParams,
token: token,
);
return Future.value(adsGenericModel);
}
}

@ -137,6 +137,7 @@ class AdVM extends BaseVM {
notifyListeners();
}
}
}

@ -44,7 +44,6 @@ class AdsDetailView extends StatefulWidget {
class _AdsDetailViewState extends State<AdsDetailView> {
@override
void initState() {
log("ad: ${widget.adDetails.adReserveStatus}");
scheduleMicrotask(() {
onAdDetailsLoaded();
});
@ -93,6 +92,7 @@ class _AdsDetailViewState extends State<AdsDetailView> {
@override
Widget build(BuildContext context) {
log("ad: ${widget.adDetails.id}");
return Scaffold(
appBar: CustomAppBar(
title: "Ads",
@ -1190,9 +1190,8 @@ class BuildAdDetailsActionButtonForMyAds extends StatelessWidget {
if (adVM.state == ViewState.busy) {
return const CircularProgressIndicator();
} else {
reservedAdActions(context, adDetailsModel: adDetailsModel, adVM: adVM);
return reservedAdActions(context, adDetailsModel: adDetailsModel, adVM: adVM);
}
break;
case AdPostStatus.buyingService:
case AdPostStatus.reserveCancel:
case AdPostStatus.rejected:

@ -33,6 +33,7 @@ class _LoginWithPasswordState extends State<LoginWithPassword> {
ClassType type = ClassType.EMAIL;
//TODO: ONLY FOR DEVELOPMENT PURPOSE
// String phoneNum = "966504278212", password = "Fa@1234";
// String phoneNum = "966504278213", password = "Fa@1234";
String phoneNum = "966504278214", password = "Fa@1234";
String email = "";

Loading…
Cancel
Save