using Kivii.DataAnnotations;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Kivii.Domain.Contents.Entities
{
    [Api(Description = "访客日志")]
    [Alias(Configs.TableNameGuestLog)]
    public class GuestLog : EntityWithMetadata
    {
        [DefaultEmptyGuid]
        [IgnoreUpdate]
        public Guid RedirectKvid { get; set; }

        [IgnoreUpdate]
        [StringLength(20), Default("")]
        public string Ip { get; set; }

        [IgnoreUpdate]
        [StringLength(500)]
        public string UserAgent { get; set; }

        [ApiMember(Description = "访问时间")]
        [IgnoreUpdate]
        public DateTime GuestTime { get; set; }

        [ApiMember(Description = "访问者")]
        [IgnoreUpdate]
        [StringLength(50), Default("")]
        public string UserName { get; set; }

        [DefaultEmptyGuid]
        [IgnoreUpdate]
        public Guid UserKvid { get; set; }

        [DefaultEmptyGuid]
        [IgnoreUpdate]
        public string Email { get; set; }

        [DefaultEmptyGuid]
        [IgnoreUpdate]
        public string LastName { get; set; }

        [DefaultEmptyGuid]
        [IgnoreUpdate]
        public string FirstName { get; set; }

        [DefaultEmptyGuid]
        [IgnoreUpdate]
        public string DisplayName { get; set; }

        [DefaultEmptyGuid]
        [IgnoreUpdate]
        public string Sequence { get; set; }

        [DefaultEmptyGuid]
        [IgnoreUpdate]
        public string UserAuthName { get; set; }

        [DefaultEmptyGuid]
        [IgnoreUpdate]
        public string UserAuthId { get; set; }
    }
}
