using Syc.Basic.Web.WMS.Entitys;
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Syc.Basic.Web.WMS.Enums;
namespace Syc.Basic.Web.WMS.DO
{
///
/// 用户DO
///
public class UserDO
{
private readonly User _user;
private readonly List _roles;
private readonly List _organizations;
private readonly List _positions;
public UserDO(User user)
{
_user = user;
_roles = user.Roles;
_organizations = user.Organizations;
_positions = user.Positions;
}
///
/// 用户
///
///
public User User() => _user;
///
/// 是否启用
///
public bool IsEnable => _user.IsEnable;
///
/// 部门
///
public string Department => string.Join(';',_organizations?.Where(e => e.Type == OrganizationType.部门)?.OrderBy(e => e.Order)?.Select(e => e.Name).ToList());
///
/// 角色名
///
public string RoleNames => string.Join(';',_roles?.Select(e => e.Name));
///
/// 角色
///
///
public List Roles() => _roles;
///
/// 角色编号
///
public List RoleCodes => _roles.Select(e => e.Code).ToList();
///
/// 组织
///
///
public List Organizations() => _organizations;
///
/// 职位
///
///
public List Positions() => _positions;
///
/// 检查密码
///
///
public bool CheckPassword(string pwd) => pwd == _user.Password;
}
}