using iWareCommon.Common.Entity;
|
using iWareCommon.Utils;
|
using iWareDataCore.ORM;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace iWareDataCore.RBAC.Entity
|
{
|
/// <summary>
|
/// 用户
|
/// </summary>
|
public class UserEntity : ICommonEntity<RBACUser>
|
{
|
/// <summary>
|
/// 主键
|
/// </summary>
|
public int Id { get; set; }
|
|
/// <summary>
|
/// 用户名
|
/// </summary>
|
public string Username { get; set; }
|
|
/// <summary>
|
/// 密码
|
/// </summary>
|
public string Password { get; set; }
|
|
/// <summary>
|
/// 姓名
|
/// </summary>
|
public string Name { get; set; }
|
|
/// <summary>
|
/// 工号
|
/// </summary>
|
public string WorkNo { get; set; }
|
|
/// <summary>
|
/// 职位
|
/// </summary>
|
public string Position { get; set; }
|
|
/// <summary>
|
/// 照片
|
/// </summary>
|
public string Photo { get; set; }
|
|
/// <summary>
|
/// 电话
|
/// </summary>
|
public string Tel { get; set; }
|
|
/// <summary>
|
/// 启用、锁定状态
|
/// </summary>
|
public int Status { get; set; }
|
|
/// <summary>
|
/// 删除状态
|
/// </summary>
|
public int label { get; set; }
|
|
/// <summary>
|
/// 角色名显示字段
|
/// </summary>
|
public string DisplayRoleNames { get; set; }
|
/// <summary>
|
/// 角色
|
/// </summary>
|
public List<RoleEntity> Roles { get; set; }
|
|
/// <summary>
|
/// 带权限值的目录(BS端)
|
/// </summary>
|
public List<ContentValueEntity> Contents { get; set; }
|
|
/// <summary>
|
/// 带权限值的目录(CSS端)
|
/// </summary>
|
public List<ContentValueEntity> CsContents { get; set; }
|
|
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
public UserEntity() { }
|
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="user">Orm中的用户实体</param>
|
public UserEntity(RBACUser user)
|
{
|
|
EntityPropHelper<UserEntity, RBACUser>.CopyProp(user, this, GetColumnMap());
|
this.DisplayRoleNames = "";
|
this.Roles = new List<RoleEntity>();
|
this.Contents = new List<ContentValueEntity>();
|
this.CsContents = new List<ContentValueEntity>();
|
}
|
|
/// <summary>
|
/// 将用户实体转成orm中的用户类型
|
/// </summary>
|
/// <returns>orm中的用户类型</returns>
|
public RBACUser ToOrm()
|
{
|
var user = new RBACUser();
|
|
EntityPropHelper<UserEntity, RBACUser>.CopyProp(this, user, GetColumnMap());
|
|
return user;
|
|
}
|
|
/// <summary>
|
/// 获取自定义角色类中的字段名为键,orm中对象的字段名为值的字段
|
/// </summary>
|
/// <returns></returns>
|
public static Dictionary<string, string> GetColumnMap()
|
{
|
return new Dictionary<string, string>()
|
{
|
{"Id", "id"},
|
{"Username", "username"},
|
{"Password", "password"},
|
{"Name", "name"},
|
{"WorkNo", "workno"},
|
{"Position", "position"},
|
{"Photo", "photo"},
|
{"Tel", "tel"},
|
{"Status", "status"}
|
};
|
}
|
|
/// <summary>
|
/// 根据UserEntity的字段转RBAC_User的字段
|
/// </summary>
|
/// <param name="name">UserEntity的字段</param>
|
/// <returns>RBAC_User</returns>
|
public static string GetColumnName(string name)
|
{
|
var columnMap = GetColumnMap();
|
return columnMap.ContainsKey(name) ? columnMap[name] : name;
|
}
|
|
/// <summary>
|
/// 获取UserEntity对于的表名
|
/// </summary>
|
/// <returns>RBAC_User</returns>
|
public static string GetTableName()
|
{
|
return "[dbo].[RBACUser]";
|
}
|
}
|
}
|