public TVm GetByIdAsNoTracking(string id) { var entity = Repository.AsNoTracking().SingleOrDefault(x => x.Id == id); var entityViewModel = (TVm)Activator.CreateInstance(typeof(TVm), entity); return(entityViewModel); }
/// <summary> /// 寻找静态拉伸数据明细 /// </summary> /// <param name="materialId"></param> /// <param name="trialType"></param> public List <StaticTensionDataDetailDto> GetStaticTensionDataDetails(Guid materialId) { //寻找静态拉伸数据明细 var staticData = _materialTrialDataRepository .AsNoTracking() .Include(x => x.StaticTensionDataDetails) .Where(m => m.MaterialTrial.Material.Id == materialId) .SelectMany(n => n.StaticTensionDataDetails) .ToList(); return(ObjectMapper.Map <List <StaticTensionDataDetail>, List <StaticTensionDataDetailDto> >(staticData)); }
public List <ConversationMessageViewModel> GetMessagesForConversation(int conversationId) { return(_messageRepository.AsNoTracking() .Where(x => x.ConversationId == conversationId) .OrderBy(x => x.CreatedDate) .Select(message => new ConversationMessageViewModel { Id = message.Id, Content = message.Content, CreatedByUser = message.CreatedByUser.LastName + " " + message.CreatedByUser.FirstName, CreatedDate = message.CreatedDate, CreatedByUserId = message.CreatedByUserId }).ToList()); }
/// <summary> /// 根据材料id获取对应实验项目 /// </summary> /// <param name="materialId"></param> /// <returns></returns> public List <TrialDto> GetTrialItemByMaterialId(Guid materialId) { //1.根据材料Id找到这个材料做了哪些试验 var trials = _materialtrialRepository .AsNoTracking() .Include(m => m.Trial) .ThenInclude(y => y.Parent) .Where(m => m.MaterialId == materialId) .Select(n => n.Trial) .ToList(); //2.返回此材料做的所有实验项目 return(ObjectMapper.Map <List <Trial>, List <TrialDto> >(trials)); }
/// <summary> /// 数据过滤演示 同步方法演示 /// </summary> /// <param name="id"></param> public List <TrialDto> GetAllDataExample(Guid id) { //1.根据材料Id找到这个材料做了哪些试验 var trials = _materialtrialRepository .AsNoTracking() .Where(m => m.MaterialId == id) .Select(n => n.Trial) .ToList(); //2、返回此材料做了哪些试验的 试验数据明细信息 return(ObjectMapper.Map <List <Trial>, List <TrialDto> >(trials)); //寻找静态拉伸数据明细 var staticData = _materialTrialDataRepository .AsNoTracking() .Include(x => x.StaticTensionDataDetails) .ThenInclude(y => y.StaticTensionDataDetailStressStrains) .Where(m => m.MaterialTrial.Trial.TrialType == TrialType.静态拉伸 && m.MaterialTrial.Material.Id == id && m.MaterialTrial.Material.Strength < 500 && m.MaterialTrial.Material.Strength > 200) .SelectMany(n => n.StaticTensionDataDetails) .ToList(); //直接取静态拉伸试验数据 var staticData1 = _staticTensionDataDetailRepository.AsNoTracking() .Include(y => y.StaticTensionDataDetailStressStrains) .Where(m => m.MaterialTrialData.MaterialTrial.Material.Name == "DC01") .ToList(); }
public AppPrincipal ValidateRequestCookie(HttpContextBase httpContext) { Guid sesionToken; var authenticationCookie = httpContext.Request.Cookies[COOKIE_NAME]; if ((authenticationCookie != null) && Guid.TryParse(authenticationCookie.Value, out sesionToken)) { var session = _sessionRepository.AsQueryable().FirstOrDefault(x => (x.SesssionId == sesionToken) && x.IsActive); if ((session != null) && (session.Expires >= DateTime.UtcNow)) { session.Expires = DateTime.UtcNow.AddMinutes(15); _sessionRepository.SaveOrUpdate(); httpContext.Response.Cookies.Add(CreateNewCookie(session.SesssionId, session.Expires)); var appIdentityAnonymous = _userRepository.AsNoTracking() .Where(x => x.Id == session.UserId) .Select(x => new { x.Id, x.UserName }).First(); return(new AppPrincipal(new AppIdentity(appIdentityAnonymous.Id, appIdentityAnonymous.UserName))); } } //if (httpContext.Request.IsLocal) //{ // var admin = _userRepository.AsNoTracking().Where(x => x.UserName == "Admin").First(); // AddAuthenticationCookie(admin.Id, httpContext); // return new AppPrincipal(new AppIdentity(admin.Id, admin.UserName)); //} return(null); }
public List <ConversationViewModel> GetConversationForUser(int userId) { var result = _conversationRepository.AsNoTracking(); result = IsMemberOfConversation(result, userId); return(result.OrderByDescending(x => !x.Messages.Any() ? x.CreatedDate : x.Messages .OrderByDescending(m => m.CreatedDate) .Select(s => s.CreatedDate) .FirstOrDefault()) .Select(x => new ConversationViewModel { Id = x.Id, Name = x.Name, UnreadMessages = x.Messages.Count(m => m.UsersWhichDidNotReadMessage.Any(u => u.UserId == userId)) }).ToList()); }
public void GetUsers() { repoUsers = uow.Repository<Users>(); var lst = from r in repoUsers.AsNoTracking() where r.UserName == "sai" select r; }
public override async Task GetProfileDataAsync(ProfileDataRequestContext context) { await base.GetProfileDataAsync(context); //>Processing var claims2 = context.Subject.Claims; var userId = claims2.FirstOrDefault(x => x.Type == "sub")?.Value; if (userId != null) { var guid = new Guid(userId); var user = await _appUserRepository.AsNoTracking().FirstOrDefaultAsync(x => x.Id == guid); if (user != null) { var claims = new List <Claim> { new Claim("picture", user.HeadImgUrl ?? ""), }; context.IssuedClaims.AddRange(claims); } } }
public async Task <bool> IsPassAuthorize(string apiUrl) { var userId = _identityInfo.Identity.UId; var userRole = _identityInfo.Identity.Role; if (userRole.Any() && userId.IsNotNull())// 是否拥有角色信息 { var userRoleStr = userRole.AsToAll <Guid, string>(); if (await _redisCaChe.HIsExistAsync(AllStaticHelper.HRedisRoleAPI, userRoleStr)) { var roleAPIResult = (await _redisCaChe.HGetAsync <RoleAPIManagement>(AllStaticHelper.HRedisRoleAPI, userRoleStr)).Select(x => x.APIId).ToList(); var APIResult = (await _redisCaChe.HGetAsync <APIManagement>(AllStaticHelper.HRedisAPI)).FirstOrDefault(op => op.Value.ApiUrl == apiUrl); if (roleAPIResult.Any()) { return(roleAPIResult.Any(op => op == APIResult.Key.ToGuid())); } } else { var roleModels = await _roleAPIManagementRepository.AsNoTracking().Where(op => userRole.Contains(op.RoleId)).Select(x => x.APIId).ToListAsync(); // 查询所有角色接口权限 var apiModels = await _apiManagementRepository.AsNoTracking().Where(op => op.ApiUrl == apiUrl).FirstOrDefaultAsync(); // 查询当前访问的接口地址是否存在 return(roleModels.Any(op => op == apiModels.Id)); // 是否存在该接口权限 } } return(false); }
/// <summary> /// 获取所有零部件 /// </summary> /// <param name="input"></param> /// <returns></returns> public Task <IPagedResult <TypicalPartDto> > GetTypicalParts(GetTypicalPartListInputDto input) { return(_typicalpartRepository .AsNoTracking() .WhereIf(!string.IsNullOrEmpty(input.Name), x => x.Name.Contains(input.Name)) .OrderBy(input.Sorting) .ProjectTo <TypicalPartDto>(Configuration) .ToPageResultAsync(input)); }
/// <summary> /// 获取所有生产厂家 /// </summary> /// <param name="input"></param> /// <returns></returns> public Task <IPagedResult <ManufactoryDto> > GetManufactories(GetManufactoryListInputDto input) { return(_manufactoryRepository .AsNoTracking() .WhereIf(!string.IsNullOrEmpty(input.Name), x => x.Name.Contains(input.Name)) .OrderBy(input.Sorting) .ProjectTo <ManufactoryDto>(Configuration) .ToPageResultAsync(input)); }
/// <summary> /// 获取项目 /// </summary> /// <param name="input"></param> /// <returns></returns> public Task <IPagedResult <DemoProjectItemDto> > GetProjects(GetMyProjectsInputDto input) { return(_demoProjectRepository .AsNoTracking() .WhereIf(!string.IsNullOrEmpty(input.Name), x => x.Name.Contains(input.Name)) .OrderBy(input.Sorting) .ProjectTo <DemoProjectItemDto>(Configuration) //需在ProjectDtoMapper中进行映射配置 .ToPageResultAsync(input)); }
/// <summary> /// 获取Role /// </summary> /// <param name="input"></param> /// <returns></returns> public List <RoleDto> GetRoles(RoleDto input) { return(_roleRepository .AsNoTracking() .WhereIf(!string.IsNullOrEmpty(input.RoleName), x => x.RoleName == input.RoleName) .WhereIf(input.Id.HasValue, x => x.Id == input.Id) .OrderBy(p => p.CreationTime) .ProjectTo <RoleDto>(Configuration) .ToList()); }
public IEnumerable <SelectListItem> GetAllUsersExceptAsSelectListItems(int userId) { return(_userRepository.AsNoTracking() .Where(x => x.Id != userId) .ToList() .Select(x => new SelectListItem { Text = x.UserName, Value = x.Id.ToString() })); }
/// <summary> /// 获取TrialCategory /// </summary> /// <param name="input"></param> /// <returns></returns> public List <TrialCategoryDto> GetTrialCategorys(TrialCategoryDto input) { return(_trialCategoryRepository .AsNoTracking() .WhereIf(input.Id.HasValue, x => x.Id == input.Id) .WhereIf(!string.IsNullOrEmpty(input.Name), x => x.Name == input.Name) .WhereIf(input.Trial.HasValue, x => x.Trial == input.Trial) .OrderBy(p => p.CreationTime) .ProjectTo <TrialCategoryDto>(Configuration) .ToList()); }
/// <summary> /// 获取UserRole /// </summary> /// <param name="input"></param> /// <returns></returns> public List <UserRoleDto> GetUserRoles(UserRoleDto input) { return(_userRoleRepository .AsNoTracking() .WhereIf(input.Id.HasValue, x => x.Id == input.Id) .WhereIf(input.RoleId.HasValue, x => x.RoleId == input.RoleId) .WhereIf(input.UserId.HasValue, x => x.UserId == input.UserId) .OrderBy(p => p.CreationTime) .ProjectTo <UserRoleDto>(Configuration) .ToList()); }
/// <summary> /// 获取User /// </summary> /// <param name="input"></param> /// <returns></returns> public List <UserDto> GetUsers(UserDto input) { return(_userRepository .AsNoTracking() .WhereIf(input.Id.HasValue, x => x.Id == input.Id) .WhereIf(!string.IsNullOrEmpty(input.UserName), x => x.UserName == input.UserName) .WhereIf(!string.IsNullOrEmpty(input.PassWord), x => x.PassWord == input.PassWord) .OrderBy(p => p.CreationTime) .ProjectTo <UserDto>(Configuration) .ToList()); }
protected void Page_Load(object sender, EventArgs e) { uow = new UnitOfWork(context); repoUsers = uow.Repository<Users>(); IQueryable<Users> lst = from r in repoUsers.AsNoTracking() where r.UserName == "sai" select r; foreach (Users user in lst) { } }
/// <summary> /// 获取RoleResources /// </summary> /// <param name="input"></param> /// <returns></returns> public List <RoleResourceDto> GetRoleResources(RoleResourceDto input) { return(_roleResourceRepository .AsNoTracking() .WhereIf(input.Id.HasValue, x => x.Id == input.Id) .WhereIf(input.RoleId.HasValue, x => x.Id == input.RoleId) .WhereIf(input.TrialCategoryId.HasValue, x => x.Id == input.TrialCategoryId) .WhereIf(input.ResourceTypeId.HasValue, x => x.Id == input.ResourceTypeId) .WhereIf(input.ResourceGroupId.HasValue, x => x.Id == input.ResourceGroupId) .OrderBy(p => p.CreationTime) .ProjectTo <RoleResourceDto>(Configuration) .ToList()); }
/// <summary> /// 获取TrialDetailGroup /// </summary> /// <param name="input"></param> /// <returns></returns> public List <TrialDetailGroupDto> GetTrialDetailGroups(TrialDetailGroupDto input) { return(_trialDetailGroupRepository .AsNoTracking() .WhereIf(input.Id.HasValue, x => x.Id == input.Id) //.WhereIf(!string.IsNullOrEmpty(input.Name), x => x.Name == input.Name) .WhereIf(input.TrialId.HasValue, x => x.TrialId == input.TrialId) .WhereIf(input.GroupOrder.HasValue, x => x.GroupOrder == input.GroupOrder) .WhereIf(input.BaseInfo.HasValue, x => x.BaseInfo == input.BaseInfo) .WhereIf(input.TrialParam.HasValue, x => x.TrialParam == input.TrialParam) .WhereIf(input.TrialResultOne.HasValue, x => x.TrialResultOne == input.TrialResultOne) .WhereIf(input.TrialResultTwo.HasValue, x => x.TrialResultTwo == input.TrialResultTwo) .OrderBy(p => p.CreationTime) .ProjectTo <TrialDetailGroupDto>(Configuration) .ToList()); }
/// <summary> /// 获取TrialDetailGroup /// </summary> /// <param name="input"></param> /// <returns></returns> public List <TrialDetailShowTypeDto> GetTrialDetailShowTypes(TrialDetailShowTypeDto input) { return(_trialDetailShowTypeRepository .AsNoTracking() .WhereIf(input.Id.HasValue, x => x.Id == input.Id) .WhereIf(!string.IsNullOrEmpty(input.TrialName), x => x.TrialName == input.TrialName) .WhereIf(input.TrialId.HasValue, x => x.TrialId == input.TrialId) .WhereIf(input.TypeOrder.HasValue, x => x.TypeOrder == input.TypeOrder) .WhereIf(input.Table.HasValue, x => x.Table == input.Table) .WhereIf(input.Picture.HasValue, x => x.Picture == input.Picture) .WhereIf(input.Report.HasValue, x => x.Report == input.Report) .WhereIf(input.TypicalPart.HasValue, x => x.TypicalPart == input.TypicalPart) .OrderBy(p => p.CreationTime) .ProjectTo <TrialDetailShowTypeDto>(Configuration) .ToList()); }
/// <summary> /// 管理员登陆 /// </summary> /// <param name="account">账户名</param> /// <param name="passWord">密码</param> /// <returns></returns> public async Task <UserViewDto> LoginAsync(string account, string passWord) { account.NotEmptyOrNull(nameof(account)); passWord.NotEmptyOrNull(nameof(passWord)); var userDto = (await _userRepository.AsNoTracking() .Where(op => op.Account == account && op.PassWord == MD5Helper.MD5Encrypt32(passWord)) .FirstOrDefaultAsync()).ToMap <UserViewDto>(); if (userDto.IsNotNull()) { return(userDto); } else { throw new BusinessException("当前账户名或密码输入错误!!!"); } }
/// <summary> /// 获取所有材料 /// </summary> /// <param name="input"></param> /// <returns></returns> public Task <IPagedResult <MaterialDto> > GetMaterials(GetMaterialListInputDto input) { return(_materialRepository .AsNoTracking() .WhereIf(!string.IsNullOrEmpty(input.Name), x => x.Name.Contains(input.Name)) //按材料名称筛选 .WhereIf(input.MaterialType.HasValue, x => x.MaterialType == input.MaterialType) //增加按材料类型筛选 .WhereIf(input.Model.HasValue, x => x.Model == input.Model) //增加按型号规格型筛选 .WhereIf(input.MinModel.HasValue, m => m.Model >= input.MinModel) //按最小型号规格筛选 .WhereIf(input.MaxModel.HasValue, m => m.Model <= input.MaxModel) //按最大型号规格筛选 .WhereIf(input.Strength.HasValue, x => x.Strength == input.Strength) //按屈服强度筛选 .WhereIf(input.MinStrenth.HasValue, m => m.Strength >= input.MinStrenth) //按最小材料强度筛选 .WhereIf(input.MaxStrenth.HasValue, m => m.Strength <= input.MaxStrenth) //按最大材料强度筛选 .WhereIf(input.ManufactoryId.HasValue, x => x.ManufactoryId == input.ManufactoryId) //按厂家Id度筛选 .WhereIf(input.Id.HasValue, x => x.Id == input.Id) //按厂家Id度筛选 .OrderBy(input.Sorting) .ProjectTo <MaterialDto>(Configuration) .ToPageResultAsync(input)); }
/// <summary> /// 数据过滤演示 /// </summary> /// <param name="id"></param> public void GetAllDataExample(Guid id) { //寻找静态拉伸数据明细 var staticData = _materialTrialDataRepository .AsNoTracking() .Include(x => x.StaticTensionDataDetails) .ThenInclude(y => y.StaticTensionDataDetailStressStrains) .Where(m => m.MaterialTrial.Trial.TrialType == TrialType.静态拉伸 && m.MaterialTrial.Material.Id == id && m.MaterialTrial.Material.Strength < 500 && m.MaterialTrial.Material.Strength > 200) .SelectMany(n => n.StaticTensionDataDetails) .ToList(); //直接取静态拉伸试验数据 var staticData1 = _staticTensionDataDetailRepository .AsNoTracking() .Include(y => y.StaticTensionDataDetailStressStrains) .Where(m => m.MaterialTrialData.MaterialTrial.Material.Name == "DC01") .ToList(); }
/// <summary> /// 获取所有数据存储在Redis中 /// </summary> /// <returns></returns> public List <Menu> GetRedis() => _menuRepository.AsNoTracking().ToList();
/// <summary> /// 获取所有数据存储在Redis中 /// </summary> /// <returns></returns> public List <APIManagement> GetRedis() => _apiManagementRepository.AsNoTracking().ToList();
/// <summary> /// 根据管理员编号获取所有所属角色 /// </summary> /// <param name="userId">管理员编号</param> /// <returns></returns> public async Task <IEnumerable <UserRoleViewDto> > GetListAsync(Guid userId) { userId.NotEmpty(nameof(userId)); return((await _userRoleRepository.AsNoTracking().Where(x => x.UserId == userId).ToListAsync()).ToMap <UserRoleViewDto>()); }
/// <summary> /// 获取所有数据存储在Redis中 /// </summary> /// <returns></returns> public List <Role> GetRedis() => _roleRepository.AsNoTracking().ToList();
public void SignIn(string userName, HttpContextBase httpContextBase) { var user = _userRepository.AsNoTracking().First(x => x.UserName == userName); _cookieManager.AddAuthenticationCookie(user.Id, httpContextBase); }