package admin import ( "context" "github.com/qianfree/team-api/api/admin/v1" "github.com/qianfree/team-api/internal/logic/task" "github.com/qianfree/team-api/internal/service" ) func (c *ControllerV1) DataGovernanceSettingsGet(ctx context.Context, req *v1.DataGovernanceSettingsGetReq) (res *v1.DataGovernanceSettingsGetRes, err error) { return service.Admin().DataGovernanceSettingsGet(ctx, req) } func (c *ControllerV1) DataGovernanceSettingsUpdate(ctx context.Context, req *v1.DataGovernanceSettingsUpdateReq) (res *v1.DataGovernanceSettingsUpdateRes, err error) { return service.Admin().DataGovernanceSettingsUpdate(ctx, req) } func (c *ControllerV1) DataGovernanceExport(ctx context.Context, req *v1.DataGovernanceExportReq) (res *v1.DataGovernanceExportRes, err error) { res, err = service.Admin().DataGovernanceExport(ctx, req) if err == nil && res != nil && res.TaskID > 0 { // 创建后立即异步执行,无需等待 cron 周期(最长 60s 的轮询延迟对交互式操作不可接受)。 // ExecuteTask 有 CAS 保护(WHERE status='pending'),即使 cron 同时捡起也不会重复执行。 task.ExecuteTaskAfterCreate(res.TaskID) } return } func (c *ControllerV1) DataGovernanceDeletion(ctx context.Context, req *v1.DataGovernanceDeletionReq) (res *v1.DataGovernanceDeletionRes, err error) { return service.Admin().DataGovernanceDeletion(ctx, req) } func (c *ControllerV1) DataGovernanceCleanup(ctx context.Context, req *v1.DataGovernanceCleanupReq) (res *v1.DataGovernanceCleanupRes, err error) { return service.Admin().DataGovernanceCleanup(ctx, req) }