Greeting Card

greeting_card
aamir-csol 2 weeks ago
parent e3fcc992df
commit ba8908d4eb

@ -17,6 +17,7 @@ import 'package:mohem_flutter_app/models/dashboard/itg_forms_model.dart';
import 'package:mohem_flutter_app/models/dashboard/list_menu.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart';
import 'package:mohem_flutter_app/models/get_employee_parking_details_model.dart';
import 'package:mohem_flutter_app/models/greetings/greeting_card_model.dart';
import 'package:mohem_flutter_app/models/itg/itg_main_response.dart';
import 'package:mohem_flutter_app/models/itg/itg_response_model.dart';
import 'package:mohem_flutter_app/models/sso_auth_model.dart';
@ -429,4 +430,18 @@ class DashboardApiClient {
postParams,
);
}
Future<GetGreetingCardsModelResponse?> getGreetingCards() async {
String url = "${ApiConsts.erpRest}Get_GreetingCards";
Map<String, dynamic> postParams = {};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject(
(json) {
GetGreetingCardsModelResponse responseData = GetGreetingCardsModelResponse.fromJson(json);
return responseData;
},
url,
postParams,
);
}
}

@ -0,0 +1,105 @@
import 'dart:convert';
class GetGreetingCardsModelResponse {
List<GetGreetingCardsModelResponseElement>? getGreetingCardsModelResponse;
GetGreetingCardsModelResponse({
this.getGreetingCardsModelResponse,
});
factory GetGreetingCardsModelResponse.fromRawJson(String str) => GetGreetingCardsModelResponse.fromJson(json.decode(str));
String toRawJson() => json.encode(toJson());
factory GetGreetingCardsModelResponse.fromJson(Map<String, dynamic> json) => GetGreetingCardsModelResponse(
getGreetingCardsModelResponse: json["Get_GreetingCardsModel_Response"] == null ? [] : List<GetGreetingCardsModelResponseElement>.from(json["Get_GreetingCardsModel_Response"]!.map((x) => GetGreetingCardsModelResponseElement.fromJson(x))),
);
Map<String, dynamic> toJson() => {
"Get_GreetingCardsModel_Response": getGreetingCardsModelResponse == null ? [] : List<dynamic>.from(getGreetingCardsModelResponse!.map((x) => x.toJson())),
};
}
class GetGreetingCardsModelResponseElement {
int? id;
dynamic titleEn;
String? titleAr;
String? descriptionEn;
String? descriptionAr;
String? startDate;
String? endDate;
String? urlEn;
String? urlAr;
String? backgroundImageUrlEn;
String? backgroundImageUrlAr;
int? channel;
int? categoryId;
String? categoryNameAr;
String? categoryNameEn;
String? createdOn;
bool? isActive;
GetGreetingCardsModelResponseElement({
this.id,
this.titleEn,
this.titleAr,
this.descriptionEn,
this.descriptionAr,
this.startDate,
this.endDate,
this.urlEn,
this.urlAr,
this.backgroundImageUrlEn,
this.backgroundImageUrlAr,
this.channel,
this.categoryId,
this.categoryNameAr,
this.categoryNameEn,
this.createdOn,
this.isActive,
});
factory GetGreetingCardsModelResponseElement.fromRawJson(String str) => GetGreetingCardsModelResponseElement.fromJson(json.decode(str));
String toRawJson() => json.encode(toJson());
factory GetGreetingCardsModelResponseElement.fromJson(Map<String, dynamic> json) => GetGreetingCardsModelResponseElement(
id: json["ID"],
titleEn: json["TitleEn"],
titleAr: json["TitleAr"],
descriptionEn: json["DescriptionEn"],
descriptionAr: json["DescriptionAr"],
startDate: json["StartDate"],
endDate: json["EndDate"],
urlEn: json["UrlEn"],
urlAr: json["UrlAr"],
backgroundImageUrlEn: json["BackgroundImageUrlEn"],
backgroundImageUrlAr: json["BackgroundImageUrlAr"],
channel: json["Channel"],
categoryId: json["CategoryID"],
categoryNameAr: json["CategoryNameAr"],
categoryNameEn: json["CategoryNameEn"],
createdOn: json["CreatedOn"],
isActive: json["IsActive"],
);
Map<String, dynamic> toJson() => {
"ID": id,
"TitleEn": titleEn,
"TitleAr": titleAr,
"DescriptionEn": descriptionEn,
"DescriptionAr": descriptionAr,
"StartDate": startDate,
"EndDate": endDate,
"UrlEn": urlEn,
"UrlAr": urlAr,
"BackgroundImageUrlEn": backgroundImageUrlEn,
"BackgroundImageUrlAr": backgroundImageUrlAr,
"Channel": channel,
"CategoryID": categoryId,
"CategoryNameAr": categoryNameAr,
"CategoryNameEn": categoryNameEn,
"CreatedOn": createdOn,
"IsActive": isActive,
};
}

@ -21,6 +21,7 @@ import 'package:mohem_flutter_app/models/dashboard/menus.dart';
import 'package:mohem_flutter_app/models/dashboard/mohemm_itg_pending_task_responseitem.dart';
import 'package:mohem_flutter_app/models/eit/get_eit_transaction_model.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart';
import 'package:mohem_flutter_app/models/greetings/greeting_card_model.dart';
import 'package:mohem_flutter_app/models/itg/itg_response_model.dart';
import 'package:mohem_flutter_app/models/offers_and_discounts/get_offers_list.dart';
import 'package:mohem_flutter_app/models/sso_auth_model.dart';
@ -67,6 +68,9 @@ class DashboardProviderModel with ChangeNotifier, DiagnosticableTreeMixin {
bool isOffersLoading = true;
List<OffersListModel> getOffersList = [];
bool isDisplayEidGreetings = false;
List<GetGreetingCardsModelResponseElement>? greetingCardsList;
//Attendance Tracking API's & Methods
Future<bool> fetchAttendanceTracking(context) async {
try {
@ -307,6 +311,27 @@ class DashboardProviderModel with ChangeNotifier, DiagnosticableTreeMixin {
}
}
void fetchGreetingCards() async {
try {
GetGreetingCardsModelResponse? response = await DashboardApiClient().getGreetingCards();
greetingCardsList = response?.getGreetingCardsModelResponse ?? [];
// Check if there are any active greeting cards
if (greetingCardsList != null && greetingCardsList!.isNotEmpty) {
isDisplayEidGreetings = greetingCardsList!.any((card) => card.isActive == true);
} else {
isDisplayEidGreetings = false;
}
notifyListeners();
} catch (ex) {
logger.wtf(ex);
isDisplayEidGreetings = false;
greetingCardsList = [];
notifyListeners();
}
}
Future<void> fetchTicketBooking() async {
try {
GenericResponseModel? genericResponseModel = await DashboardApiClient().getTicketBookingRedirection();

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save