from flask import Blueprint, jsonify
from flask_mysqldb import MySQL
from .auth import token_required

servicos = Blueprint('servicos', __name__)

mysql = MySQL()  # Instância do MySQL será configurada no app principal

@servicos.route('/servicos', methods=['GET'])
@token_required
def listar_servicos(data):
    try:
        domain = data.get('domain', '')  # Obtém o domínio do usuário do token
        if not domain:
            return jsonify({"status": "error", "message": "Usuário não autenticado!"}), 401
        
        # Conecta ao banco de dados e consulta os serviços
        cur = mysql.connection.cursor()
        
        query = """
            SELECT servico1, imagem1, servico2, imagem2, servico3, imagem3, 
                   servico4, imagem4, servico5, imagem5, servico6, imagem6, 
                   servico7, imagem7, servico8, imagem8, servico9, imagem9, 
                   servico12, imagem12
            FROM servicos WHERE dominio = %s
        """
        cur.execute(query, (domain,))
        results = cur.fetchall()
        cur.close()

        if results:
            row = results[0]  # Pega a primeira linha retornada
            print(f"Dados retornados: {row}")  # Verifique os dados retornados
            servicos_prestados = {}

            # Mapeando os serviços e suas respectivas imagens
            for i in [1, 2, 3, 4, 5, 6, 9, 12]:
                servico = row[f'servico{i}']
                imagem = row[f'imagem{i}']
                if servico:  # Se o serviço existir, adicionamos ao dicionário
                    servicos_prestados[f"servico{i}"] = {
                        "nome": servico,
                        "imagem":  imagem if imagem else None
                    }
            print(servicos_prestados)  # Verifique o que está sendo retornado
            if servicos_prestados:
                return jsonify(servicos_prestados), 200
            else:
                return jsonify({"erro": "Nenhum serviço disponível"}), 404
        else:
            return jsonify({"erro": "Nenhum serviço encontrado"}), 404
    except Exception as e:
        print(f"Erro interno: {e}")  # Print detalhado do erro
        return jsonify({"status": "error", "message": "Erro interno"}), 500





