feat : role And permission
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
import 'package:rasadyar_chicken/presentation/routes/routes.dart';
|
||||
|
||||
String getFaUserRole(String? role) {
|
||||
switch (role) {
|
||||
case "Admin":
|
||||
@@ -76,3 +78,83 @@ String getFaUserRole(String? role) {
|
||||
return "نامشخص";
|
||||
}
|
||||
}
|
||||
|
||||
Map<String, String?> getFaUserRoleWithOnTap(String? role) {
|
||||
switch (role) {
|
||||
case "Admin":
|
||||
return {"ادمین استان": null};
|
||||
case "CityOperator":
|
||||
return {"تعاونی": null};
|
||||
case "Poultry":
|
||||
return {"مرغدار": null};
|
||||
case "ProvinceOperator":
|
||||
return {"مدیر اجرایی": null};
|
||||
case "ProvinceFinancial":
|
||||
return {"مالی اتحادیه": null};
|
||||
case "KillHouse":
|
||||
return {"کشتارگاه": null};
|
||||
case "KillHouseVet":
|
||||
return {"دامپزشک کشتارگاه": null};
|
||||
case "VetFarm":
|
||||
return {"دامپزشک فارم": null};
|
||||
case "Driver":
|
||||
return {"راننده": null};
|
||||
case "ProvinceInspector":
|
||||
return {"بازرس اتحادیه": null};
|
||||
case "VetSupervisor":
|
||||
return {"دامپزشک کل": null};
|
||||
case "Jahad":
|
||||
return {"جهاد کشاورزی استان": null};
|
||||
case "CityJahad":
|
||||
return {"جهاد کشاورزی شهرستان": null};
|
||||
case "ProvincialGovernment":
|
||||
return {"استانداری": null};
|
||||
case "Guilds":
|
||||
return {"صنف": null};
|
||||
case "Commerce":
|
||||
return {"معاونت بازرگانی استان": null};
|
||||
case "CityCommerce":
|
||||
return {"بازرگانی شهرستان": null};
|
||||
case "UnitWindow":
|
||||
return {"پنجره واحد": null};
|
||||
case "CityVet":
|
||||
return {"دامپزشک شهرستان": null};
|
||||
case "Observatory":
|
||||
return {"رصدخانه": null};
|
||||
case "ProvinceSupervisor":
|
||||
return {"ناظر استان": null};
|
||||
case "GuildRoom":
|
||||
return {"اتاق اصناف": null};
|
||||
case "PosCompany":
|
||||
return {"شرکت psp": null};
|
||||
case "LiveStockSupport":
|
||||
return {"پشتیبانی امور دام": null};
|
||||
case "SuperAdmin":
|
||||
return {"ادمین کل": null};
|
||||
case "ChainCompany":
|
||||
return {"شرکت زنجیره": null};
|
||||
case "AdminX":
|
||||
return {"ادمین ایکس": null};
|
||||
case "Supporter":
|
||||
return {"پشتیبان سامانه": null};
|
||||
case "Dispenser":
|
||||
return {"پخش کننده": null};
|
||||
case "CityPoultry":
|
||||
return {"طیور شهرستان": null};
|
||||
case "ParentCompany":
|
||||
return {"شرکت مادر": null};
|
||||
case "ColdHouseSteward":
|
||||
return {"مباشر سردخانه": null};
|
||||
case "CityGuild":
|
||||
return {"اتحادیه پروتئینی": null};
|
||||
case "LiveStockProvinceJahad":
|
||||
return {"جهاد استان": null};
|
||||
case "Steward":
|
||||
return {"مباشر": ChickenRoutes.initSteward};
|
||||
case "PoultryScience":
|
||||
return {"کارشناس طیور": ChickenRoutes.initPoultryScience
|
||||
};
|
||||
default:
|
||||
return {"نامشخص": null};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,7 +15,11 @@ import 'package:rasadyar_core/core.dart';
|
||||
GetIt diChicken = GetIt.asNewInstance();
|
||||
|
||||
Future<void> setupChickenDI() async {
|
||||
if (diChicken.isRegistered<DioErrorHandler>()) {
|
||||
await diChicken.unregister<DioErrorHandler>();
|
||||
}
|
||||
diChicken.registerSingleton(DioErrorHandler());
|
||||
|
||||
var tokenService = Get.find<TokenStorageService>();
|
||||
|
||||
diChicken.registerLazySingleton<AppInterceptor>(
|
||||
@@ -23,10 +27,10 @@ Future<void> setupChickenDI() async {
|
||||
// سامانه مرغ فعلاً رفرش توکن ندارد
|
||||
refreshTokenCallback: () async => null,
|
||||
saveTokenCallback: (String newToken) async {
|
||||
await tokenService.saveAccessToken(newToken);
|
||||
await tokenService.saveAccessToken(Module.chicken, newToken);
|
||||
},
|
||||
clearTokenCallback: () async {
|
||||
await tokenService.deleteTokens();
|
||||
await tokenService.deleteAllTokens();
|
||||
Get.offAllNamed(ChickenRoutes.auth, arguments: Module.chicken);
|
||||
},
|
||||
),
|
||||
@@ -69,7 +73,7 @@ Future<void> newSetupAuthDI(String newUrl) async {
|
||||
var tokenService = Get.find<TokenStorageService>();
|
||||
|
||||
// همیشه baseUrl جدید رو ذخیره کن
|
||||
await tokenService.saveBaseUrl(newUrl);
|
||||
await tokenService.saveBaseUrl(Module.chicken, newUrl);
|
||||
|
||||
// Re-register AppInterceptor
|
||||
if (diChicken.isRegistered<AppInterceptor>(instanceName: 'chickenInterceptor')) {
|
||||
@@ -79,10 +83,10 @@ Future<void> newSetupAuthDI(String newUrl) async {
|
||||
() => AppInterceptor(
|
||||
refreshTokenCallback: () async => null,
|
||||
saveTokenCallback: (String newToken) async {
|
||||
await tokenService.saveAccessToken(newToken);
|
||||
// await tokenService.saveAccessToken(newToken);
|
||||
},
|
||||
clearTokenCallback: () async {
|
||||
await tokenService.deleteTokens();
|
||||
await tokenService.deleteAllTokens();
|
||||
Get.offAllNamed(ChickenRoutes.auth, arguments: Module.chicken);
|
||||
},
|
||||
),
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
import 'package:rasadyar_core/core.dart';
|
||||
|
||||
class ChickenStorageService extends GetxService {
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user