using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using SqlSugar;
using WMS.Entity;
using WMS.Entity.Context;
using WMS.IDAL;
using WMS.IDAL.ISysInterface;
namespace WMS.DAL.SysInfrastructure
{
///
/// RBAC仓储实践
///
public class RBACRepository : IRBACRepository
{
private static readonly SqlSugarScope Db = DataContext.Db;
public RBACRepository()
{
}
///
/// 获取rbac信息列表
///
///
public async Task> GetRBACLists(int roleid)
{
string str = "select userinfo.UserNo,userinfo.UserName,userinfo.RealName,userinfo.Status,userinfo.Sex,userinfo.Nationality,userinfo.Paper,userinfo.Phone,userinfo.Email,userinfo.Addres,userinfo.LoginTime,userinfo.SetPasswordTime,role.RoleNo,role.RoleName,menu.MenuNo,menu.MenuName,menu.ParentNo,menu.Ord,menu.Url,menu.level from SysUserInfor userinfo join SysRoles role on userinfo.RoleNo = role.RoleNo join SysRoleRight roleright on roleright.RoleNo = role.RoleNo join SysFunctionMenu menu on roleright.MenuNo = menu.MenuNo";
List rbaclist = new List();
if (roleid != 0)
{
str += " where role.Id = @id";
rbaclist = await Db.Ado.SqlQueryAsync(str, new
{
id = roleid //角色id
});
}
else
{
rbaclist = await Db.Ado.SqlQueryAsync(str);
}
return rbaclist;
}
}
}