tycg_carviolation_BE/Traffic.Repository/Interfaces/IAccountRepository.cs

36 lines
1.7 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Traffic.Data.Models;
using Traffic.Data.ViewModels;
namespace Traffic.Repository.Interfaces
{
public interface IAccountRepository
{
public IEnumerable<AccountUser> GetAccountUsers();
public AccountUser GetAccountUserById(int id);
public AccountUser GetAccountUserByAccount(string account);
public IEnumerable<AccountRole> GetAccountRoles();
public IEnumerable<AccountUserSite> GetAccountUserSite(int id);
public IEnumerable<AccountUserSite> GetAccountUserSites();
public AccountUser GetAccountUserByAccount(string account, string password);
public int InsertAccountUser(AccountUser accountUser);
public int InsertAccountRole(AccountRole accountRole);
public bool InsertAccountUserSite(List<AccountUserSite> userSite);
public bool UpdateAccountUserbyAdmin(AccountUser accountUser);
public bool UpdateAccountUserPasswordByAdmin(int id, string newPassword, int byWho, DateTime updateOn);
public bool UpdateAccountUserbyUser(AccountUser accountUser);
public bool UpdateAccountUserPasswordByUser(int id, string oldPassword, string newPassword, DateTime updatedOn);
public bool InsertUserLoginLog(UserLoginLog userLogin);
public bool UpdateUserErrorCount(int id, int errorCount);
public bool DeleteUser(int id);
public bool DeleteUserSite(int userId);
public bool DisableUser(int byWho, int id, int status);
public IEnumerable<AccountPwd> GetAccountPwdTop3(string account);
public bool InsertAccountPwd(AccountPwd accountUser);
}
}