feat(pickup): 支持线下提号 CSV 导出

This commit is contained in:
yml
2026-11-12 14:53:36 +08:00
parent a5601eb76c
commit e8a281fce6
8 changed files with 628 additions and 2 deletions
+23 -1
View File
@@ -141,6 +141,29 @@ func (s *Service) ListAdmin(ctx context.Context, query AdminPickupQuery) (*Pagin
return s.repo.ListAdmin(ctx, query)
}
func (s *Service) ExportAdmin(
ctx context.Context,
query AdminPickupQuery,
adminID uint64,
meta auditlog.Meta,
) ([]byte, int, error) {
if s.repo == nil {
return nil, 0, ErrDependencyUnavailable
}
items, err := s.repo.ListAdminForExport(ctx, query)
if err != nil {
return nil, 0, err
}
data, err := buildAdminPickupCSV(items)
if err != nil {
return nil, 0, err
}
if err := s.repo.RecordAdminPickupExport(ctx, adminID, meta, query, len(items)); err != nil {
return nil, 0, err
}
return data, len(items), nil
}
func (s *Service) ListShopNames(ctx context.Context, platform string) ([]string, error) {
if s.repo == nil {
return nil, ErrDependencyUnavailable
@@ -210,4 +233,3 @@ func (s *Service) DeleteShopMapping(ctx context.Context, sourceName string, admi
}
return s.repo.DeleteShopMapping(ctx, sourceName, adminID, meta)
}