OnlineSalesAutoCrop/Api/OnlineSalesAutoCrop.CoreAPI.Services/Contracts/Systems/IUserService.cs

53 lines
3.0 KiB
C#

using OnlineSalesAutoCrop.CoreAPI.Models.Objects.Setups;
using OnlineSalesAutoCrop.CoreAPI.Models.Objects.Systems;
using OnlineSalesAutoCrop.CoreAPI.Models.Requests.Integrations;
using OnlineSalesAutoCrop.CoreAPI.Models.Requests.Systems;
using OnlineSalesAutoCrop.CoreAPI.Models.Responses.Systems;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace OnlineSalesAutoCrop.CoreAPI.Services.Contracts.Systems
{
public interface IUserService
{
Task<bool> ValidateAuthValueAsync(string authValue, int userId);
Task<User> LoginAsync(LoginRequest request, string ipAddress, bool checkPwd);
Task<User> IntegrationLoginAsync(IntegrationLoginRequest request, string ipAddress, bool checkPwd);
Task<bool> LogoutAsync(string ipAddress, int userId, int logId, bool attendanceLogout, string loginId, string localIp, string macAddress, string hostName, string logoutRemarks);
Task<bool> DeleteUserAsync(int userId, int deletedBy);
Task<bool> ForceLogoutNowAsync(List<int> userIds, string ipAddress);
Task<bool> UnlockUserAsync(int userId, string loginId, int unlockedBy);
Task<bool> DeleteAttributesAsync(int userId, int clientType, int deletedBy);
Task<bool> EditUserAsync(UserRequest user, string ipAddress, int modifiedBy);
Task<bool> AddUserAsync(NewUserRequest user, string ipAddress, int createdBy);
Task<bool> UpdateMyInfoAsync(string address, string contactNo, int modifiedBy, int emplyeeId);
Task<bool> ResetPasswordAsync(int userId, string newPassword, string ipAddress, int changedBy);
Task<bool> UpdateMyThemeAsync(int userId, string menuLayout, string themeName, string schemeName);
Task<bool> SaveAuthorizeLimitAsync(decimal maxAuthLimit, int userId, string ipAddress, string savedBy);
Task<bool> UploadDocumentAsync(int userId, int id, int documentOf, string orgFileName, string fileName);
Task<bool> ChangePasswordAsync(int userId, string oldPassword, string newPassword, string ipAddress, int changedBy);
Task<bool> SaveAttributesAsync(int userId, int clientType, string ipAddress, int attributeSetBy, List<string> ukIds);
Task<UserGetResponse> GetUserAsync(int userId);
Task<MenuResponse> GetUserPermissionsAsync(int userId);
Task<UserProfileResponse> GetUserProfileAsync(int userId);
Task<FindAccountResponse> FindAccountAsync(string accountId);
Task<UserAuthorizeLimitResponse> GetAuthorizeLimitAsync(int userId);
Task<UserAttributesResponse> GetAttributesAsync(int userId, int clientType);
Task<int> LoadNotificationCountAsync(int userId);
Task<UserBasicInfoResponse> GetAttendanceUsersAsync(int userId);
Task<UserForceLogoutResponse> GetForceLogoutUsersAsync(int createdBy);
Task<bool> SendPasswordAsync(int userId, string newPassword, string ipAddress);
Task<UserBasicInfoResponse> GetUsersByTeamSpaceAsync(string teamSpaceIds, int projectId, int userId);
Task<UserBasicInfoResponse> GetUsersBasicAsync(bool applyFilter, string teamSpaceIds, int projectId);
Task<AccessLogResponse> GetAccessLogAsync(int accessType, string loginId, DateTime startDate, DateTime endDate);
}
}