using HxDbContext;
|
using HxModel;
|
using MySqlX.XDevAPI.Common;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace HxUserManagement.HxDAL
|
{
|
public class UserInfoDAL
|
{
|
#region 获取信息
|
/// <summary>
|
/// 获取用户信息
|
/// </summary>
|
/// <param name="id">ID</param>
|
/// <returns></returns>
|
public UserInfoModel GetUserInfodById(string id)
|
{
|
var result = new MySqlEF<UserInfoModel>().GetModel(x => x.Id == id);
|
if (result != null)
|
{
|
return result;
|
}
|
return null;
|
}
|
|
/// <summary>
|
/// 根据参数获取用户信息
|
/// </summary>
|
/// <param name="username">用户名</param>
|
/// <returns></returns>
|
public UserInfoModel GetInfoByUserName(string username)
|
{
|
var result = new MySqlEF<UserInfoModel>().GetModel(x => x.UserName == username);
|
if (result != null)
|
{
|
return result;
|
}
|
return null;
|
}
|
|
/// <summary>
|
/// 获取所有用户列表
|
/// </summary>
|
/// <returns></returns>
|
public List<UserInfoModel> GetAllUserInfo()
|
{
|
var result = new MySqlEF<UserInfoModel>().GetList(null);
|
var resultB = new MySqlEF<RolesModel>().GetList(null);
|
|
foreach (var user in result)
|
{
|
var role = resultB.Where(s => s.Id == user.Authority).FirstOrDefault();
|
if (role != null)
|
{
|
user.AuthorityName = role.Name;
|
}
|
}
|
|
if (result != null)
|
{
|
return result.ToList();
|
}
|
return null;
|
}
|
|
/// <summary>
|
/// 根据状态获取用户列表
|
/// </summary>
|
/// <param name="deviceconfigId"></param>
|
/// <param name="deviceconfigMethodId"></param>
|
/// <param name="type"></param>
|
/// <param name="parameterName"></param>
|
/// <returns></returns>
|
public List<UserInfoModel> GetInfo(string status)
|
{
|
var result = new MySqlEF<UserInfoModel>().GetList(x => x.Status == status);
|
if (result != null)
|
{
|
return result.ToList();
|
}
|
return null;
|
}
|
|
public List<UserInfoModel> Search(string name, string phone, string state, string authority)
|
{
|
var result = GetAllUserInfo();
|
if (string.IsNullOrEmpty(name) && string.IsNullOrEmpty(phone) && string.IsNullOrEmpty(state) && string.IsNullOrEmpty(authority))
|
{
|
if (result != null)
|
{
|
return result.ToList();
|
}
|
}
|
|
if (!string.IsNullOrEmpty(authority))
|
result = result.Where(s => s.Authority == authority).ToList();
|
if (result == null)
|
return null;
|
|
if (!string.IsNullOrEmpty(state))
|
result = result.Where(s => s.Status == state).ToList();
|
if (result == null)
|
return null;
|
|
if (!string.IsNullOrEmpty(phone))
|
result = result.Where(s => s.Phone != null && s.Phone.Contains(phone)).ToList();
|
if (result == null)
|
return null;
|
|
if (!string.IsNullOrEmpty(name))
|
result = result.Where(s => s.UserName.Contains(name)).ToList();
|
if (result == null)
|
return null;
|
|
return result.ToList();
|
}
|
#endregion
|
|
#region 删除
|
/// <summary>
|
/// 删除
|
/// </summary>
|
/// <param name="id"></param>
|
/// <returns></returns>
|
public bool DelById(string id)
|
{
|
var resultDelModel = new MySqlEF<UserInfoModel>().GetModel(x => x.Id == id);
|
#region AddLog
|
OperateAuditLogDAL logDAL = new OperateAuditLogDAL();
|
logDAL.Add("删除", "删除用户【" + resultDelModel.UserName + "】");
|
#endregion
|
if (resultDelModel != null)
|
{
|
var result = new MySqlEF<UserInfoModel>().Delete(new UserInfoModel { Id = id });
|
return result;
|
}
|
return false;
|
}
|
#endregion
|
|
#region 添加
|
/// <summary>
|
/// 添加
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
public UserInfoModel Add(UserInfoModel model)
|
{
|
try
|
{
|
var result = new MySqlEF<UserInfoModel>().Add(model);
|
|
#region AddLog
|
OperateAuditLogDAL logDAL = new OperateAuditLogDAL();
|
logDAL.Add("添加", "添加用户【" + model.UserName + "】");
|
#endregion
|
|
if (result != null)
|
{
|
return model;
|
}
|
}
|
catch (Exception ex)
|
{
|
}
|
return null;
|
}
|
#endregion
|
|
#region 修改
|
/// <summary>
|
/// 修改
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
public UserInfoModel Update(UserInfoModel model)
|
{
|
var result = new MySqlEF<UserInfoModel>().Update(model);
|
|
#region AddLog
|
OperateAuditLogDAL logDAL = new OperateAuditLogDAL();
|
logDAL.Add("修改", "修改用户【" + model.UserName + "】");
|
#endregion
|
|
if (result != null)
|
{
|
return result;
|
}
|
|
return null;
|
}
|
#endregion
|
}
|
}
|