// SERVIÇO DESABILITADO - MIGRADO PARA BFF
// Este serviço não é mais usado após migração para BFF

export interface ProdutoData {
  "preco-original"?: number;
  "preco-atual"?: number;
  "catalogo-produtos": string;
  empresas: string;
  quantidade?: number;
  "principio-ativo"?: string;
  concentracao?: string;
  "forma-farmaceutica"?: string;
  "registro-anvisa"?: string;
  prescricao?: string;
  observacoes?: string;
  "codigo-ean"?: string;
  laboratorio?: string;
  categoria?: string;
  "data-vencimento"?: string;
  lote?: string;
  [key: string]: any;
}

export interface ApiResponse<T = any> {
  success: boolean;
  data?: T;
  error?: string;
  details?: any;
}

export interface PaginatedResponse<T> extends ApiResponse<T> {
  documents: T[];
  total: number;
}

// Serviço desabilitado - todas as funções retornam erro ou dados vazios
class ProdutoService {
  async listar(): Promise<PaginatedResponse<any>> {
    console.warn('ProdutoService.listar DESABILITADO - use BFF');
    return {
      success: true,
      documents: [],
      total: 0
    };
  }

  async criar(dados: ProdutoData): Promise<ApiResponse> {
    console.warn('ProdutoService.criar DESABILITADO - use BFF');
    return {
      success: false,
      error: 'Serviço desabilitado - use BFF'
    };
  }

  async atualizar(id: string, dados: Partial<ProdutoData>): Promise<ApiResponse> {
    console.warn('ProdutoService.atualizar DESABILITADO - use BFF');
    return {
      success: false,
      error: 'Serviço desabilitado - use BFF'
    };
  }

  async deletar(id: string): Promise<ApiResponse> {
    console.warn('ProdutoService.deletar DESABILITADO - use BFF');
    return {
      success: false,
      error: 'Serviço desabilitado - use BFF'
    };
  }

  async buscarPorId(id: string): Promise<ApiResponse> {
    console.warn('ProdutoService.buscarPorId DESABILITADO - use BFF');
    return {
      success: false,
      error: 'Serviço desabilitado - use BFF'
    };
  }

  // Métodos adicionais desabilitados
  async gerarProdutosTeste(): Promise<ApiResponse> {
    console.warn('ProdutoService.gerarProdutosTeste DESABILITADO - use BFF');
    return { success: false, error: 'Serviço desabilitado' };
  }

  async listarProdutosCompletos(): Promise<PaginatedResponse<any>> {
    console.warn('ProdutoService.listarProdutosCompletos DESABILITADO - use BFF');
    return { success: true, documents: [], total: 0 };
  }

  async buscarProdutoCompleto(id: string): Promise<ApiResponse> {
    console.warn('ProdutoService.buscarProdutoCompleto DESABILITADO - use BFF');
    return { success: false, error: 'Serviço desabilitado' };
  }
}

export const produtoService = new ProdutoService();