using FlexJobApi.Core; using Furion.DatabaseAccessor; using Furion.FriendlyException; using Mapster; using MediatR; using Microsoft.EntityFrameworkCore; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FlexJobApi.UserServer.Application { /// /// 个人实名查询处理器 /// public class PersonalUserRealQueryHandler( IRepository repUser, IRepository repUserAuth ) : IRequestHandler { private readonly IRepository repUser = repUser; private readonly IRepository repUserAuth = repUserAuth; /// /// 查询个人实名结果 /// /// /// /// public async Task Handle(GetPersonalUserRealResultQuery request, CancellationToken cancellationToken) { var logier = JwtUtils.GetCurrentLogier(); var model = await repUser.AsQueryable().AsNoTracking() .Where(it => it.Id == logier.Id) .ProjectToType() .FirstOrDefaultAsync(); if (model == null) throw Oops.Oh(EnumErrorCodeType.s404, "用户"); var modelAuth = await repUserAuth.AsQueryable().AsNoTracking() .Where(it => it.Id == logier.Id) .ProjectToType() .FirstOrDefaultAsync(); if (modelAuth != null) { modelAuth.Adapt(model); } return model; } } }