forked from gongxuegit/tiku-backend.net
feat: complete phase six backoffice operations
This commit is contained in:
@@ -78,6 +78,20 @@ public sealed record TenantAdminFeedbackFilter(
|
||||
string? Keyword = null,
|
||||
int? Limit = null);
|
||||
|
||||
public sealed record TenantAdminOverviewItem(
|
||||
int StudentCount,
|
||||
int ClassCount,
|
||||
int StaffCount,
|
||||
int ActivePracticeCount,
|
||||
int TodayPracticeCount,
|
||||
int PendingFollowupCount,
|
||||
int UnreadNotificationCount,
|
||||
int PaidOrderCount,
|
||||
int RevenueCents,
|
||||
int PendingRefundCount,
|
||||
int OpenReconciliationIssueCount,
|
||||
DateTimeOffset GeneratedAt);
|
||||
|
||||
public sealed record UpsertTenantAdminClassCommand(
|
||||
Guid? Id,
|
||||
Guid? RegionId,
|
||||
@@ -120,6 +134,109 @@ public sealed record UpdateTenantAdminStudentStatusCommand(
|
||||
string? Status,
|
||||
string? Reason);
|
||||
|
||||
public sealed record TenantAdminStudentImportRowCommand(
|
||||
UserLookupCommand User,
|
||||
Guid? RegionId,
|
||||
Guid? ClassId,
|
||||
string? AvatarPreset,
|
||||
JsonElement RawProfile);
|
||||
|
||||
public sealed record TenantAdminStudentImportCommand(
|
||||
IReadOnlyCollection<TenantAdminStudentImportRowCommand> Rows);
|
||||
|
||||
public sealed record TenantAdminStudentImportPreview(
|
||||
int TotalCount,
|
||||
int ValidCount,
|
||||
int InvalidCount,
|
||||
IReadOnlyCollection<TenantAdminStudentImportPreviewItem> Items);
|
||||
|
||||
public sealed record TenantAdminStudentImportPreviewItem(
|
||||
int RowNo,
|
||||
bool Valid,
|
||||
string? Reason,
|
||||
string? Phone,
|
||||
string? Email,
|
||||
string? Name,
|
||||
Guid? RegionId,
|
||||
Guid? ClassId);
|
||||
|
||||
public sealed record TenantAdminStudentImportResult(
|
||||
int TotalCount,
|
||||
int CreatedOrUpdatedCount,
|
||||
int ClassAssignedCount,
|
||||
IReadOnlyCollection<TenantAdminStudentImportPreviewItem> InvalidItems);
|
||||
|
||||
public sealed record TenantAdminBulkAssignClassCommand(
|
||||
Guid ClassId,
|
||||
IReadOnlyCollection<Guid> UserIds);
|
||||
|
||||
public sealed record TenantAdminBulkStatusCommand(
|
||||
IReadOnlyCollection<Guid> UserIds,
|
||||
string? Status,
|
||||
string? Reason);
|
||||
|
||||
public sealed record TenantAdminBulkOperationResult(
|
||||
int RequestedCount,
|
||||
int SucceededCount,
|
||||
int FailedCount,
|
||||
IReadOnlyCollection<Guid> FailedUserIds);
|
||||
|
||||
public sealed record TenantSupervisionRuleItem(
|
||||
string Code,
|
||||
string Title,
|
||||
bool Enabled,
|
||||
int? DaysWithoutCheckIn,
|
||||
int? MaxQuestionsAnsweredToday,
|
||||
string FollowupType,
|
||||
string Priority,
|
||||
JsonElement Metadata);
|
||||
|
||||
public sealed record UpsertTenantSupervisionRuleCommand(
|
||||
string Code,
|
||||
string Title,
|
||||
bool Enabled,
|
||||
int? DaysWithoutCheckIn,
|
||||
int? MaxQuestionsAnsweredToday,
|
||||
string? FollowupType,
|
||||
string? Priority,
|
||||
JsonElement Metadata);
|
||||
|
||||
public sealed record TenantSupervisionPreview(
|
||||
IReadOnlyCollection<TenantSupervisionRiskStudentItem> Items);
|
||||
|
||||
public sealed record TenantSupervisionRiskStudentItem(
|
||||
Guid UserId,
|
||||
string? Name,
|
||||
string? PhoneMasked,
|
||||
Guid? RegionId,
|
||||
IReadOnlyCollection<string> RuleCodes,
|
||||
IReadOnlyCollection<string> Reasons);
|
||||
|
||||
public sealed record TenantSupervisionGenerateCommand(
|
||||
IReadOnlyCollection<Guid>? UserIds,
|
||||
Guid? AssignedToUserId,
|
||||
DateTimeOffset? DueAt);
|
||||
|
||||
public sealed record TenantSupervisionGenerateResult(int CreatedCount);
|
||||
|
||||
public sealed record TenantFollowupReport(
|
||||
int OpenCount,
|
||||
int InProgressCount,
|
||||
int DoneCount,
|
||||
int OverdueCount);
|
||||
|
||||
public sealed record TenantFeedbackReport(
|
||||
int PendingCount,
|
||||
int AcceptedCount,
|
||||
int RejectedCount,
|
||||
int ResolvedCount,
|
||||
int ClosedCount);
|
||||
|
||||
public sealed record TenantPointRiskReport(
|
||||
int NegativeScoreUserCount,
|
||||
int HighPointClaimUserCount,
|
||||
int CancelledExchangeOrderCount);
|
||||
|
||||
public sealed record UpsertTenantAdminStudentNoteCommand(
|
||||
Guid? Id,
|
||||
Guid StudentUserId,
|
||||
|
||||
Reference in New Issue
Block a user