feat(dev): 增加独立分销前台端口5191、标签页会话隔离与免hosts二级域名支持

This commit is contained in:
yml2213
2026-09-08 13:39:12 +08:00
parent 74ef817c41
commit a61828c6ca
10 changed files with 148 additions and 103 deletions
@@ -1,6 +1,6 @@
import { apiClient } from '@/shared/api/client'
import type { ApiResponse, PaginatedResult } from '@/shared/types/types'
import { getEffectiveSiteCode } from '@/stores/distributionSite'
export interface NotificationItem {
id: number
@@ -16,10 +16,7 @@ export interface NotificationItem {
}
export async function fetchNotifications(page = 1, pageSize = 20, distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const params: Record<string, unknown> = { page, page_size: pageSize }
if (siteCode) {
params.distribution_site_code = siteCode
@@ -34,10 +31,7 @@ export async function fetchNotifications(page = 1, pageSize = 20, distributionSi
}
export async function markNotificationRead(id: number, distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const params: Record<string, unknown> = {}
if (siteCode) {
params.distribution_site_code = siteCode
@@ -51,10 +45,7 @@ export async function markNotificationRead(id: number, distributionSiteCode?: st
}
export async function fetchUnreadNotificationCount(distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const params: Record<string, unknown> = {}
if (siteCode) {
params.distribution_site_code = siteCode
@@ -70,10 +61,7 @@ export async function fetchUnreadNotificationCount(distributionSiteCode?: string
}
export async function markAllNotificationsRead(distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const params: Record<string, unknown> = {}
if (siteCode) {
params.distribution_site_code = siteCode
+4 -12
View File
@@ -1,5 +1,6 @@
import { apiClient } from '@/shared/api/client'
import type { ApiResponse, PaginatedResult } from '@/shared/types/types'
import { getEffectiveSiteCode } from '@/stores/distributionSite'
export interface ChatParticipant {
id: number
@@ -94,10 +95,7 @@ export interface ChatMessage {
}
export async function fetchChats(page = 1, pageSize = 20, distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const params: Record<string, unknown> = { page, page_size: pageSize }
if (siteCode) {
params.distribution_site_code = siteCode
@@ -109,10 +107,7 @@ export async function fetchChats(page = 1, pageSize = 20, distributionSiteCode?:
}
export async function fetchUnreadChatCount(distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const params: Record<string, unknown> = {}
if (siteCode) {
params.distribution_site_code = siteCode
@@ -141,10 +136,7 @@ export async function ensureSupportChat(
scene: SupportScene | string = 'general',
distributionSiteCode?: string
) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const payload: { scene: string; distribution_site_code?: string } = {
scene: scene || 'general',
}
@@ -1,5 +1,6 @@
import { apiClient } from '@/shared/api/client'
import type { ApiResponse } from '@/shared/types/types'
import { getEffectiveSiteCode } from '@/stores/distributionSite'
import type { ListingReviewStatus, ListingStatus } from '@/shared/types/status'
export interface Listing {
@@ -102,10 +103,7 @@ export async function fetchListings(query: PublicListingQuery = {}) {
}
export async function fetchListingsPage(query: PublicListingQuery = {}) {
const siteCode =
query.distribution_site_code ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = query.distribution_site_code || getEffectiveSiteCode() || undefined
const effectiveQuery = siteCode ? { distribution_site_code: siteCode, ...query } : query
const params = Object.fromEntries(
Object.entries(effectiveQuery).filter(
+4 -12
View File
@@ -2,6 +2,7 @@ import { apiClient } from '@/shared/api/client'
import type { ApiResponse, PaginatedResult } from '@/shared/types/types'
import type { HandoffStatus, OrderStatus, SettlementStatus } from '@/shared/types/status'
import { yuanToCent } from '@/shared/utils/money'
import { getEffectiveSiteCode } from '@/stores/distributionSite'
export interface Order {
id: number
@@ -320,10 +321,7 @@ export async function fetchPostRentalNotice() {
}
export async function fetchOrders(page = 1, pageSize = 20, distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const params: Record<string, unknown> = { page, page_size: pageSize }
if (siteCode) {
params.distribution_site_code = siteCode
@@ -352,10 +350,7 @@ export async function fetchSellerHandoffs(
}
export async function fetchOrder(id: string | number, distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const params: Record<string, unknown> = {}
if (siteCode) {
params.distribution_site_code = siteCode
@@ -365,10 +360,7 @@ export async function fetchOrder(id: string | number, distributionSiteCode?: str
}
export async function createOrder(listingId: number, distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const payload: { listing_id: number; distribution_site_code?: string } = { listing_id: listingId }
if (siteCode) {
payload.distribution_site_code = siteCode
+3 -9
View File
@@ -1,6 +1,6 @@
import { apiClient } from '@/shared/api/client'
import type { ApiResponse, PaginatedResult } from '@/shared/types/types'
import { getEffectiveSiteCode } from '@/stores/distributionSite'
import type { BalanceType, LedgerDirection, WalletStatus } from '@/shared/types/status'
export interface WalletAccount {
@@ -28,10 +28,7 @@ export interface WalletLedger {
}
export async function fetchWalletBalance(distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const params: Record<string, unknown> = {}
if (siteCode) {
params.distribution_site_code = siteCode
@@ -41,10 +38,7 @@ export async function fetchWalletBalance(distributionSiteCode?: string) {
}
export async function fetchWalletLedger(page = 1, pageSize = 20, distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const params: Record<string, unknown> = { page, page_size: pageSize }
if (siteCode) {
params.distribution_site_code = siteCode
+3 -10
View File
@@ -1,6 +1,6 @@
import { apiClient } from '@/shared/api/client'
import type { ApiResponse, PaginatedResult } from '@/shared/types/types'
import { getEffectiveSiteCode } from '@/stores/distributionSite'
// 收款账号类型
export type AccountType = 'alipay' | 'wechat' | 'bank'
@@ -116,11 +116,7 @@ export async function createWithdrawal(
req: CreateWithdrawalRequest,
distributionSiteCode?: string
) {
const siteCode =
distributionSiteCode ||
req.distribution_site_code ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || req.distribution_site_code || getEffectiveSiteCode() || undefined
const payload: CreateWithdrawalRequest = { ...req }
if (siteCode) {
payload.distribution_site_code = siteCode
@@ -130,10 +126,7 @@ export async function createWithdrawal(
}
export async function fetchWithdrawals(page = 1, pageSize = 20, distributionSiteCode?: string) {
const siteCode =
distributionSiteCode ||
(typeof window !== 'undefined' ? localStorage.getItem('hfb_site_code') : '') ||
undefined
const siteCode = distributionSiteCode || getEffectiveSiteCode() || undefined
const params: Record<string, unknown> = { page, page_size: pageSize }
if (siteCode) {
params.distribution_site_code = siteCode