diff --git a/AccountManagement.Application.Contracts/Account/IAccountApplication.cs b/AccountManagement.Application.Contracts/Account/IAccountApplication.cs
index 89f9693a..3c31d726 100644
--- a/AccountManagement.Application.Contracts/Account/IAccountApplication.cs
+++ b/AccountManagement.Application.Contracts/Account/IAccountApplication.cs
@@ -64,4 +64,6 @@ public interface IAccountApplication
///
///
public bool CheckExistClientAccount(string userName);
+ List GetAdminAccountsNew();
+
}
\ No newline at end of file
diff --git a/AccountManagement.Application/AccountApplication.cs b/AccountManagement.Application/AccountApplication.cs
index ff4e5a25..4204be40 100644
--- a/AccountManagement.Application/AccountApplication.cs
+++ b/AccountManagement.Application/AccountApplication.cs
@@ -799,4 +799,8 @@ public class AccountApplication : IAccountApplication
return _accountRepository.CheckExistClientAccount(userName);
}
+ public List GetAdminAccountsNew()
+ {
+ return _accountRepository.GetAdminAccountsNew();
+ }
}
\ No newline at end of file
diff --git a/ServiceHost/Areas/Admin/Controllers/AccountController.cs b/ServiceHost/Areas/Admin/Controllers/AccountController.cs
index 314b8de5..ddf16f83 100644
--- a/ServiceHost/Areas/Admin/Controllers/AccountController.cs
+++ b/ServiceHost/Areas/Admin/Controllers/AccountController.cs
@@ -8,6 +8,7 @@ public class AccountController:AdminBaseController
{
private readonly IAccountApplication _accountApplication;
+
public AccountController(IAccountApplication accountApplication)
{
_accountApplication = accountApplication;
@@ -22,4 +23,28 @@ public class AccountController:AdminBaseController
var res = await _accountApplication.GetAdminSelectList();
return res;
}
-}
\ No newline at end of file
+
+ [HttpGet("admins-by-role")]
+ public ActionResult GetAdminAccountsByRole()
+ {
+ var adminAccounts = _accountApplication.GetAdminAccountsNew().Select(x=> new AccountSelectListViewModel()
+ {
+ Id = x.Id,
+ Name = x.Fullname,
+ RoleId = x.RoleId
+ }).ToList();
+
+ var seniorContractAccountsList = adminAccounts.Where(x => x.RoleId == 3).ToList();
+ var juniorContractAccountsList = adminAccounts.Where(x => x.RoleId == 5).ToList();
+ var seniorInsuranceAccountList = adminAccounts.Where(x => x.RoleId == 7).ToList();
+ var juniorInsuranceAccountsList = adminAccounts.Where(x => x.RoleId == 8).ToList();
+ return new AdminAccountByRoleResponse(seniorContractAccountsList, juniorContractAccountsList,
+ seniorInsuranceAccountList, juniorInsuranceAccountsList);
+ }
+}
+
+public record AdminAccountByRoleResponse(
+ List SeniorContractAccountsList,
+ List JuniorContractAccountsList,
+ List SeniorInsuranceAccountList,
+ List JuniorInsuranceAccountsList);
\ No newline at end of file