using Newtonsoft.Json.Serialization;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MTWorkHR.Application.Models
{
    public class ChatUserDto
    {
        public string? UserId { get; set; }
        public string? UserName { get; set; }
        public string? ConnectionId { get; set; } //signalrId
        public string? FirstName { get; set; }
        public string? LastName { get; set; }
        public string? FavoriteName { get; set; }
        public string? PhoneNumber { get; set; }
        public string? Email { get; set; }
        public bool? IsOnline { get; set; }
        public string? ProfileImage { get; set; }
        public string? LastMessage { get; set; }
        public DateTime? LastMessageDate { get; set; }
        public int? UnseenCount { get; set; }
        public ChatUserDto() { }
        public ChatUserDto(string userId, string userName, string ConnId)
        {
            UserId = userId;
            UserName = userName;
            ConnectionId = ConnId;
        }

        public ChatUserDto(string userId, string userName, string ConnId, string email, bool isOnline, string profileImg, int? unseenCount,string lastMessage, DateTime? lastMessageDate,
            string firstName, string lastName)
        {
            UserId = userId;
            UserName = userName;
            FirstName = firstName;
            LastName = lastName;
            ConnectionId = ConnId;
            Email = email;
            IsOnline = isOnline;
            ProfileImage = profileImg;
            UnseenCount = unseenCount;
            LastMessageDate = lastMessageDate;
            LastMessage = lastMessage;
        }
    }
}