Sic.Framework-Nanjing-Baishi/MECF.Framework.Common/Aitex/Core/Account/IAccountService.cs

114 lines
2.7 KiB
C#

using System.Collections.Generic;
using System.ServiceModel;
using System.Threading.Tasks;
using Aitex.Core.Util;
using MECF.Framework.Common.Account.Extends;
namespace Aitex.Core.Account
{
[ServiceKnownType(typeof(CredentialKeepAliveResults))]
[ServiceKnownType(typeof(CredentialState))]
[ServiceKnownType(typeof(LoginRequestResults))]
[ServiceContract]
public interface IAccountService
{
[OperationContract]
LoginResult Login(string accountId, string password);
[OperationContract]
void Logout(string accountId);
[OperationContract]
CreateAccountResult CreateAccount(Account newAccount);
[OperationContract]
DeleteAccountResult DeleteAccount(string accountId);
[OperationContract]
GetAccountInfoResult GetAccountInfo(string accountId);
[OperationContract]
void RegisterViews(List<string> views);
[OperationContract]
UpdateAccountResult UpdateAccount(Account account);
[OperationContract]
GetAccountListResult GetAccountList();
[OperationContract]
ChangePwdResult ChangePassword(string accountId, string newPassword);
[OperationContract]
List<Account> GetLoginUsers();
[OperationContract]
void KickUserOut(string accountId, string reason);
[OperationContract]
SerializableDictionary<string, SerializableDictionary<string, ViewPermission>> GetAllRolesPermission();
[OperationContract]
bool SaveAllRolesPermission(Dictionary<string, Dictionary<string, ViewPermission>> data);
[OperationContract]
SerializableDictionary<string, string> GetAllViewList();
[OperationContract]
string GetProcessViewPermission();
[OperationContract]
bool SaveProcessViewPermission(string viewXML);
[OperationContract]
List<Role> GetAllRoleList();
[OperationContract]
List<AccountEx> GetAllAccountExList();
[OperationContract]
IEnumerable<string> GetAllRoles();
[OperationContract]
List<Role> GetRoles();
[OperationContract]
List<AccountEx> GetAccounts();
[OperationContract]
bool UpdateRole(Role role);
[OperationContract]
bool DeleteRole(string roleId);
[OperationContract]
List<AppMenu> GetAllMenus();
[OperationContract]
List<AppMenu> GetMenusByRole(string roleId);
[OperationContract]
int GetMenuPermission(string roleId, string menuName);
[OperationContract]
bool UpdateAccountEx(AccountEx account);
[OperationContract]
bool DeleteAccountEx(string loginName);
[OperationContract]
Task<LoginRequestResults> LoginEx(string userName, string password, string role,
LoginClientInfo clientInfo);
[OperationContract]
void CancelLoginRequest(string userName);
[OperationContract]
void LogoutEx(string sessionId);
[OperationContract]
CredentialKeepAliveResults KeepAlive(string token);
}
}