using FlexJobApi.Core; using Furion.DatabaseAccessor; using MediatR; using Microsoft.EntityFrameworkCore; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FlexJobApi.User.Application.UserInfos.Commands { /// /// 用户信息命令处理器 /// public class UserInfoCommandHandler( IRepository rep ) : IRequestHandler { private readonly IRepository rep = rep; /// /// 设置用户信息状态 /// /// /// /// public async Task Handle(SetUserInfoStatusCommand request, CancellationToken cancellationToken) { var entities = await rep.AsQueryable() .Where(it => request.Ids.Contains(it.Id) && it.Status != request.Status) .ToListAsync(cancellationToken); foreach (var entity in entities) { entity.Status = request.Status; } return entities.Count; } } }