feat(distribution): 完善分销站与主站业务数据及权益风控隔离,修复历史商品归属

This commit is contained in:
yml2213
2026-09-08 15:25:46 +08:00
parent 0fcb6a513f
commit fd4e490ed3
16 changed files with 221 additions and 35 deletions
+11 -5
View File
@@ -170,12 +170,18 @@ func (r *Repository) FindAdmin(ctx context.Context, listingID uint64) (*ListingD
return r.findDTO(ctx, "l.id = ?", listingID)
}
func (r *Repository) ListMine(ctx context.Context, ownerID uint64) ([]ListingDTO, error) {
func (r *Repository) ListMine(ctx context.Context, ownerID uint64, siteCode ...string) ([]ListingDTO, error) {
var rows []listingRow
err := r.baseQuery(ctx).
Where("l.owner_id = ?", ownerID).
Order("l.id DESC").
Scan(&rows).Error
base := r.baseQuery(ctx).Where("l.owner_id = ?", ownerID)
if len(siteCode) > 0 {
code := strings.TrimSpace(siteCode[0])
if code != "" {
base = base.Joins("INNER JOIN distribution_sites AS my_ds ON my_ds.id = l.distribution_site_id AND my_ds.site_code = ?", code)
} else {
base = base.Where("l.distribution_site_id IS NULL OR l.distribution_site_id = 0")
}
}
err := base.Order("l.id DESC").Scan(&rows).Error
if err != nil {
return nil, err
}