/* Options:
Date: 2026-02-04 10:26:00
Version: 6.110
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: https://etc-api.vsmlab.vn
//GlobalNamespace:
//MakePartial: True
//MakeVirtual: True
//MakeInternal: False
//MakeDataContractsExtensible: False
//AddNullableAnnotations: False
//AddReturnMarker: True
//AddDescriptionAsComments: True
//AddDataContractAttributes: False
//AddIndexesToDataMembers: False
//AddGeneratedCodeAttributes: False
//AddResponseStatus: False
//AddImplicitVersion:
//InitializeCollections: True
//ExportValueTypes: False
IncludeTypes: LoginHistoryRequest.*
//ExcludeTypes:
//AddNamespaces:
//AddDefaultXmlNamespace: http://schemas.servicestack.net/types
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using ServiceStack.Web;
using System.IO;
using tvpl.api.ServiceModel;
using tvpl.data.Models;
namespace tvpl.api.ServiceModel
{
public partial interface IResponseRequest
{
int Code { get; set; }
string Message { get; set; }
}
///
///Lấy lịch sử đăng nhập
///
[Route("/login-history", "Get")]
public partial class LoginHistoryRequest
: IReturn
{
public virtual int? UserId { get; set; }
public virtual string UserName { get; set; }
public virtual DateTime? StartDate { get; set; }
public virtual DateTime? EndDate { get; set; }
public virtual int Page { get; set; }
public virtual int Limit { get; set; }
}
public partial class LoginHistoryRespnse
: IResponseRequest
{
public LoginHistoryRespnse()
{
Data = new List{};
}
public virtual List Data { get; set; }
public virtual int TotalRecords { get; set; }
public virtual int Code { get; set; }
public virtual string Message { get; set; }
}
}
namespace tvpl.data.Models
{
public partial class UserLoginHistory
{
public virtual int Id { get; set; }
public virtual int UserId { get; set; }
[StringLength(150)]
public virtual string UserName { get; set; }
[StringLength(45)]
public virtual string IPAddress { get; set; }
[StringLength(500)]
public virtual string DeviceInfo { get; set; }
[StringLength(50)]
public virtual string LoginStatus { get; set; }
[StringLength(500)]
public virtual string FailReason { get; set; }
[Required]
public virtual DateTime CreatedAt { get; set; }
public virtual string Provider { get; set; }
}
public partial class UserLoginHistoryDto
: UserLoginHistory
{
public virtual int? FailedLoginCount { get; set; }
}
}