import { getResult } from './core/request'
import type {
  MiniFieldConfigItem,
  MiniLocalUnitItem,
  MiniPassAccessAreaTreeItem,
  MiniVisitReasonItem,
  MiniVisitedUserItem,
} from '@/types/lookup'

export function fetchMiniFieldConfigs() {
  return getResult<MiniFieldConfigItem[]>('/api/mini/lookups/field-configs')
}

export function fetchVisitReasons() {
  return getResult<MiniVisitReasonItem[]>('/api/mini/lookups/visit-reasons')
}

export function searchVisitedUsersByExactName(realName: string) {
  return getResult<MiniVisitedUserItem[]>('/api/mini/lookups/visited-users', {
    params: { realName },
  })
}

export function fetchPassAccessAreaTree() {
  return getResult<MiniPassAccessAreaTreeItem[]>('/api/mini/lookups/pass-access-area-tree')
}

export function searchLocalUnits(unitName: string) {
  return getResult<MiniLocalUnitItem[]>('/api/mini/lookups/local-units', {
    params: { unitName },
  })
}
