from django.shortcuts import render
from django.db import connections

from .forms import LoteForm


def rows_to_dict_list(cursor):
    columns = [i[0] for i in cursor.description]
    return [dict(zip(columns, row)) for row in cursor]


def index(request):
    context = {}
    return render(request, 'lotes/index.html', context)


def posicao(request):
    context = {}
    if request.method == 'POST':
        form = LoteForm(request.POST)
        if form.is_valid():
            lote = form.cleaned_data['lote']
            periodo = lote[:4]
            ordem_confeccao = lote[-5:]
            cursor = connections['so'].cursor()
            sql = '''
                SELECT
                  l.CODIGO_ESTAGIO
                , e.DESCRICAO DESCRICAO_ESTAGIO
                , l.QTDE_EM_PRODUCAO_PACOTE
                FROM PCPC_040 l
                JOIN MQOP_005 e
                  ON e.CODIGO_ESTAGIO = l.CODIGO_ESTAGIO
                WHERE l.PERIODO_PRODUCAO = %s
                  AND l.ORDEM_CONFECCAO = %s
                  AND l.QTDE_EM_PRODUCAO_PACOTE > 0
            '''
            cursor.execute(sql, [periodo, ordem_confeccao])
            data = rows_to_dict_list(cursor)
            if len(data) == 0:
                context = {
                    'codigo_estagio': 'X',
                    'descricao_estagio': 'Lote não encontrado',
                }
            else:
                row = data[0]
                context = {
                    'codigo_estagio': row['CODIGO_ESTAGIO'],
                    'descricao_estagio': row['DESCRICAO_ESTAGIO'],
                }
    else:
        form = LoteForm()
    context['form'] = form
    print(context)
    return render(request, 'lotes/posicao.html', context)

@@ -1658,27 +1658,8 @@
 orm%0A
-    print(context)%0A
     

clean debug