You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mohemm-flutter-app/lib/models/privilege_list_model.dart

42 lines
1.5 KiB
Dart

import 'dart:convert';
import 'package:mohem_flutter_app/classes/consts.dart';
import 'package:shared_preferences/shared_preferences.dart';
class PrivilegeListModel {
int? iD;
String? serviceName;
bool? previlege;
2 weeks ago
bool? previlegeHMG;
2 weeks ago
PrivilegeListModel({this.iD, this.serviceName, this.previlege, this.previlegeHMG});
PrivilegeListModel.fromJson(Map<String, dynamic> json) {
iD = json['ID'];
serviceName = json['ServiceName'];
2 weeks ago
previlege = json['Previlege'] ?? json['previlege'] ?? json['Privilege'] ?? json['privilege'];
previlegeHMG = json['Previlege_HMG'] ?? json['PrevilegeHMG'] ?? json['previlege_HMG'] ?? json['previlegeHMG'] ?? json['Privilege_HMG'] ?? json['PrivilegeHMG'];
}
Map<String, dynamic> toJson() {
2 weeks ago
Map<String, dynamic> data = <String, dynamic>{};
data['ID'] = iD;
data['ServiceName'] = serviceName;
data['Previlege'] = previlege;
data['Previlege_HMG'] = previlegeHMG;
return data;
}
static Future<List<PrivilegeListModel>> getFromPrefs() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
List encodedList = prefs.getStringList(SharedPrefsConsts.privilegeList) ?? [];
return encodedList.map((e) => PrivilegeListModel.fromJson(jsonDecode(e))).toList();
}
static void saveToPrefs(List<PrivilegeListModel> list) async {
SharedPreferences prefs = await SharedPreferences.getInstance();
List<String> encodedList = list.map((e) => jsonEncode(e.toJson())).toList();
await prefs.setStringList(SharedPrefsConsts.privilegeList, encodedList);
}
}