修改User模块

This commit is contained in:
chfei committed 2026-10-23 19:01:28 +08:00
1 parent d6471f97d3
commit bb7162aaf6
21 files changed
+278 -336

No files matched your search

@@ -1,3 +1,4 @@
using Store.Users.Contracts.Enums;
using MAX.Framework.Validation;
using MAX.Framework.Commons;
using Store.Users.Contracts.Dtos;
@@ -10,13 +11,11 @@ public sealed partial class UserManagementService
public async Task<long> AddTopUpMessage(UserTopUpMessageRequest request, CancellationToken ct)
{
RequestValidator.Validate(request);
UserInputChecks.Length(request.Message, 1000, "充值备注");
UserInputChecks.Length(request.UserName, 20, "用户名");
var actor = await Actor(orm, ct);
var name = string.IsNullOrWhiteSpace(request.UserName) ? actor.UserName : request.UserName.Trim();
var target = await orm.Select<UserEntity>().Where(u => u.UserName == name).FirstAsync(ct)
?? throw new AppException("用户不存在");
if (!UserAccessPolicy.CanManage(actor, target) && actor.Id != target.Id)
if (!UserAccessPolicy.CanUseSelfService(actor, target))
throw new AppException("无权为该账户提交充值备注", 403);
return await orm.Insert(new UserTopUpMessageEntity
{
@@ -28,8 +27,6 @@ public sealed partial class UserManagementService
public async Task UpdateTopUpMessage(UserTopUpResultRequest request, CancellationToken ct)
{
RequestValidator.Validate(request);
UserInputChecks.PositiveId(request.Id);
UserInputChecks.Length(request.Result, 1000, "处理结果");
var actor = await Actor(orm, ct);
var message = await orm.Select<UserTopUpMessageEntity>().Where(m => m.Id == request.Id).FirstAsync(ct)
?? throw new AppException("充值备注不存在");
@@ -47,14 +44,13 @@ public sealed partial class UserManagementService
public async Task<UserPage<UserTopUpMessageEntity>> TopUpMessages(UserSearchRequest request, CancellationToken ct)
{
RequestValidator.Validate(request);
UserInputChecks.Search(request);
var actor = await Actor(orm, ct);
var select = orm.Select<UserTopUpMessageEntity>();
if (!IsAdmin(actor))
{
if (actor.IsMainUser)
select = select.Where(m => m.UserName == actor.UserName || orm.Select<UserEntity>()
.Where(u => u.UserName == m.UserName && u.ParentUserName == actor.UserName).Any());
.Where(u => u.UserName == m.UserName && u.ParentUserName == actor.UserName && (u.SaLevel == null || u.SaLevel != UserAdminLevel.SuperAdmin)).Any());
else select = select.Where(m => m.UserName == actor.UserName);
}
var total = await select.CountAsync(ct);
@@ -66,7 +62,6 @@ public sealed partial class UserManagementService
public async Task UpdateTopUpQrcode(UserTopUpQrcodeRequest request, CancellationToken ct)
{
RequestValidator.Validate(request);
UserInputChecks.Qrcode(request);
var actor = await Actor(orm, ct);
if (!IsAdmin(actor)) throw new AppException("仅管理员可以维护充值二维码", 403);
await orm.InsertOrUpdate<UserTopUpQrcodeEntity>().SetSource(new UserTopUpQrcodeEntity
@@ -79,7 +74,6 @@ public sealed partial class UserManagementService
public async Task<string?> GetTopUpQrcode(string agentCode, CancellationToken ct)
{
RequestValidator.Validate(new UserTopUpQrcodeQuery { AgentCode = agentCode?.Trim()! });
UserInputChecks.Length(agentCode.Trim(), 50, "代理编码");
await Actor(orm, ct);
var code = agentCode.Trim();
var item = await orm.Select<UserTopUpQrcodeEntity>().Where(q => q.AgentCode == code).FirstAsync(ct);