2015-07-03 21:04:37 +08:00
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
|
|
|
using System.Data.Entity;
|
|
|
|
|
using System.Data.Entity.ModelConfiguration;
|
|
|
|
|
|
|
|
|
|
namespace ChatRoomServer.Db.Entities
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
///
|
|
|
|
|
///</summary>
|
|
|
|
|
public class User
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 用户名
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string UserName { get; set; }
|
|
|
|
|
|
2015-07-08 17:24:45 +08:00
|
|
|
|
public DateTime FirstConnect { get; set; }
|
|
|
|
|
|
|
|
|
|
public DateTime LastConnect { get; set; }
|
|
|
|
|
|
|
|
|
|
public int OnlineTime { get; set; }
|
|
|
|
|
|
2015-07-03 21:04:37 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// 第一次发送信息时间
|
|
|
|
|
/// </summary>
|
2015-07-08 17:24:45 +08:00
|
|
|
|
public DateTime? FirstSend { get; set; }
|
2015-07-03 21:04:37 +08:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 最后一次发送信息时间
|
|
|
|
|
/// </summary>
|
2015-07-08 17:24:45 +08:00
|
|
|
|
public DateTime? LastSend { get; set; }
|
2015-07-03 21:04:37 +08:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 发送信息次数
|
|
|
|
|
/// </summary>
|
|
|
|
|
public int SendTimes { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 状态:0-正常;2-已封禁
|
|
|
|
|
/// </summary>
|
2015-07-08 17:24:45 +08:00
|
|
|
|
public UserStatus Status { get; set; }
|
|
|
|
|
|
|
|
|
|
public string NickName { get; set; }
|
2015-07-03 21:04:37 +08:00
|
|
|
|
|
2015-10-21 12:40:04 +08:00
|
|
|
|
public int AbuseReportCount { get; set; }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public int AbuseReportSuccCount { get; set; }
|
|
|
|
|
|
|
|
|
|
public int AbuseReportFailCount { get; set; }
|
|
|
|
|
|
|
|
|
|
public bool DisableAbuseReport { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 失败率
|
|
|
|
|
/// </summary>
|
|
|
|
|
public double AbuseReportSuccRate
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
if (AbuseReportCount == 0)
|
|
|
|
|
return 1.0;
|
|
|
|
|
|
|
|
|
|
return AbuseReportSuccCount * 1.0 / AbuseReportCount;
|
|
|
|
|
}
|
|
|
|
|
}
|
2015-07-03 21:04:37 +08:00
|
|
|
|
}
|
|
|
|
|
|
2015-07-08 17:24:45 +08:00
|
|
|
|
public enum UserStatus
|
|
|
|
|
{
|
|
|
|
|
Normal = 0,
|
|
|
|
|
Blocked = 2
|
|
|
|
|
}
|
|
|
|
|
|
2015-07-03 21:04:37 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// 实体类 <see cref="User" /> 的配置对象
|
|
|
|
|
/// </summary>
|
|
|
|
|
internal class UserConfiguration : EntityTypeConfiguration<User>
|
|
|
|
|
{
|
|
|
|
|
public UserConfiguration()
|
|
|
|
|
{
|
|
|
|
|
ToTable("Chat_User");
|
|
|
|
|
HasKey(m => m.UserName);
|
|
|
|
|
Property(s => s.UserName).HasMaxLength(100).IsRequired().HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);
|
2015-10-21 12:40:04 +08:00
|
|
|
|
Ignore(s => s.AbuseReportSuccRate);
|
2015-07-03 21:04:37 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|