using YD_Event.Application.AppUser.Dtos; using YD_Event.Application.Auth; using YD_Event.Core.Entities; using AppUserEntity = YD_Event.Core.Entities.AppUser; namespace YD_Event.Application.AppUser; /// /// 普通用户服务 /// public class AppUserService : BaseService, ITransient { private readonly ISqlSugarRepository _appUserRep; private readonly AuthManager _authManager; public AppUserService(ISqlSugarRepository appUserRep, AuthManager authManager) : base(appUserRep) { _appUserRep = appUserRep; _authManager = authManager; } /// /// 分页查询普通用户 /// /// /// [HttpGet("page")] public async Task> Page([FromQuery] AppUserPageInput input) { var query = _appUserRep.AsQueryable() .WhereIF(!string.IsNullOrWhiteSpace(input.Name), u => u.Name.Contains(input.Name)) .WhereIF(input.Gender.HasValue, u => u.Gender == input.Gender) .WhereIF(!string.IsNullOrWhiteSpace(input.Mobile), u => u.Mobile.Contains(input.Mobile)) .WhereIF(input.AuditStatus.HasValue, u => u.AuditStatus == input.AuditStatus) .WhereIF(input.StartTime.HasValue, u => u.CreatedTime >= input.StartTime) .WhereIF(input.EndTime.HasValue, u => u.CreatedTime <= input.EndTime) .OrderByDescending(u => u.CreatedTime); return await query.Select().ToPagedListAsync(input); } /// /// 获取普通用户详情 /// /// /// [HttpGet("{id}")] public async Task Detail([FromRoute] long id) { return await _appUserRep.AsQueryable() .Where(u => u.Id == id) .Select() .FirstAsync(); } /// /// 审核普通用户 /// /// /// [HttpPost("audit")] [UnitOfWork] public async Task Audit([FromBody] AuditInput input) { if (input.Ids == null || !input.Ids.Any()) return; // 更新状态 await _appUserRep.UpdateAsync(u => new AppUserEntity { AuditStatus = input.Status, AuditRemark = input.Remark, UpdatedTime = DateTime.Now, UpdatedUserId = _authManager.UserId }, u => input.Ids.Contains(u.Id)); } }