<commit_before>from pprint import pprint

from utils.functions.models.dictlist import dictlist


def ped_op(cursor, pedido):
    # OPs
    sql = """
        SELECT
          o.PEDIDO_VENDA
        , o.ORDEM_PRODUCAO
        , CASE
          when o.REFERENCIA_PECA <= '99999' then 'PA'
          when o.REFERENCIA_PECA <= 'B9999' then 'PG'
          when o.REFERENCIA_PECA >= 'Z0000' then 'MP'
          else 'MD'
          END TIPO
        , o.REFERENCIA_PECA
        , o.ORDEM_PRINCIPAL
        , ( SELECT
              SUM( l.QTDE_PECAS_PROG )
            FROM pcpc_040 l
            WHERE l.ORDEM_PRODUCAO = o.ORDEM_PRODUCAO
              AND l.SEQ_OPERACAO = (
                SELECT
                  MAX( ls.SEQ_OPERACAO )
                FROM pcpc_040 ls
                WHERE ls.ORDEM_PRODUCAO = l.ORDEM_PRODUCAO
              )
          ) QTD
        , o.DATA_PROGRAMACAO DT_DIGITACAO
        , o.DATA_ENTRADA_CORTE DT_CORTE
        , o.SITUACAO
        , CASE
            WHEN EXISTS (
              SELECT
                l.ORDEM_PRODUCAO
              FROM pcpc_040 l
              WHERE l.ORDEM_PRODUCAO = o.ORDEM_PRODUCAO
                AND l.CODIGO_ESTAGIO = 15
            )
            THEN 1
            ELSE 0
          END TEM_15
        FROM PCPC_020 o -- OP
        WHERE o.PEDIDO_VENDA = %s
        ORDER BY
          o.ORDEM_PRINCIPAL
        , o.ORDEM_PRODUCAO
    """
    cursor.execute(sql, [pedido])
    return dictlist(cursor)<commit_msg>calcula qtd_rolos_aloc<commit_after>from pprint import pprint

from utils.functions.queries import debug_cursor_execute
from utils.functions.models.dictlist import dictlist


def ped_op(cursor, pedido):
    # OPs
    sql = f"""
        SELECT
          o.PEDIDO_VENDA
        , o.ORDEM_PRODUCAO
        , CASE
          when o.REFERENCIA_PECA <= '99999' then 'PA'
          when o.REFERENCIA_PECA <= 'B9999' then 'PG'
          when o.REFERENCIA_PECA >= 'Z0000' then 'MP'
          else 'MD'
          END TIPO
        , o.REFERENCIA_PECA
        , o.ORDEM_PRINCIPAL
        , ( SELECT
              SUM( l.QTDE_PECAS_PROG )
            FROM pcpc_040 l
            WHERE l.ORDEM_PRODUCAO = o.ORDEM_PRODUCAO
              AND l.SEQ_OPERACAO = (
                SELECT
                  MAX( ls.SEQ_OPERACAO )
                FROM pcpc_040 ls
                WHERE ls.ORDEM_PRODUCAO = l.ORDEM_PRODUCAO
              )
          ) QTD
        , o.DATA_PROGRAMACAO DT_DIGITACAO
        , o.DATA_ENTRADA_CORTE DT_CORTE
        , o.SITUACAO
        , CASE
            WHEN EXISTS (
              SELECT
                l.ORDEM_PRODUCAO
              FROM pcpc_040 l
              WHERE l.ORDEM_PRODUCAO = o.ORDEM_PRODUCAO
                AND l.CODIGO_ESTAGIO = 15
            )
            THEN 1
            ELSE 0
          END TEM_15
        , ( SELECT
              count(*)
            FROM PCPT_020 ro -- cadastro de rolos
            LEFT JOIN PCPT_025 rc -- alocação de rolo para OP
              ON rc.CODIGO_ROLO = ro.CODIGO_ROLO
            where rc.ORDEM_PRODUCAO = o.ORDEM_PRODUCAO
          ) qtd_rolos_aloc
        FROM PCPC_020 o -- OP
        WHERE o.PEDIDO_VENDA = {pedido}
        ORDER BY
          o.ORDEM_PRINCIPAL
        , o.ORDEM_PRODUCAO
    """
    debug_cursor_execute(cursor, sql)
    return dictlist(cursor)
{'fraction_non_alphanumeric': 0.06484848484848485, 'fraction_numerical': 0.020606060606060607, 'mean_word_length': 1.3477951635846372, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6065654', 'n_tokens_mistral': 1292, 'n_tokens_neox': 1154, 'n_words': 227}