using New_College.IRepository.Base; using New_College.IServices; using New_College.Model.Models; using New_College.Services.BASE; using System.Linq; using System.Threading.Tasks; namespace New_College.FrameWork.Services { /// /// sysUserInfoServices /// public class SysUserInfoServices : BaseServices, ISysUserInfoServices { IBaseRepository _dal; IUserRoleServices _userRoleServices; IBaseRepository _roleRepository; public SysUserInfoServices(IBaseRepository dal, IUserRoleServices userRoleServices, IBaseRepository roleRepository) { this._dal = dal; this._userRoleServices = userRoleServices; this._roleRepository = roleRepository; base.BaseDal = dal; } /// /// /// /// /// /// public async Task SaveUserInfo(string loginName, string loginPwd) { sysUserInfo sysUserInfo = new sysUserInfo(loginName, loginPwd); sysUserInfo model = new sysUserInfo(); var userList = await base.Query(a => a.uLoginName == sysUserInfo.uLoginName && a.uLoginPWD == sysUserInfo.uLoginPWD); if (userList.Count > 0) { model = userList.FirstOrDefault(); } else { var id = await base.Add(sysUserInfo); model = await base.QueryById(id); } return model; } /// /// /// /// /// /// public async Task GetUserRoleNameStr(string loginName, string loginPwd) { string roleName = ""; var user = (await base.Query(a => a.uLoginName == loginName && a.uLoginPWD == loginPwd)).FirstOrDefault(); var roleList = await _roleRepository.Query(a => a.IsDeleted==false); if (user != null) { var userRoles = await _userRoleServices.Query(ur => ur.UserId == user.uID); if (userRoles.Count > 0) { var arr = userRoles.Select(ur => ur.RoleId.ObjToString()).ToList(); var roles = roleList.Where(d => arr.Contains(d.Id.ObjToString())); roleName = string.Join(',', roles.Select(r => r.Name).ToArray()); } } return roleName; } } } //----------sysUserInfo结束----------