Tela principal17
G1-01Contrato SAP e código do produto4▼
- Adicionados os campos sap (10 dígitos, começando em 45) e codProduto a todos os 12 registros do dataset SEARCH_RESULTS, um SAP por número Q- (Q-20303→4500123456, Q-20385→4500123871, Q-20392→4500124019, Q-38542→4500125533, Q-85721→4500126104, Q-39742→4500126742) e um código por produto (EXCLN 24 05 24 UR→105241, MPANITRO 20 05 20 UR→102052, FFALM 04 30 10→104301, STRAF 04 30 10 STR + 50 BMI2→143011, EXCLN 18 09 27 UR→118093). — const SEARCH_RESULTS = [ … ]
- Exibição do Contrato SAP como informação secundária na coluna "Contrato / Item" da proto-table, em terceira linha da célula com o rótulo uppercase padrão (.v5-meta-label). — renderTable() — <td class="cell-stack"> da coluna Contrato / Item
- Código do produto exibido antes da descrição na coluna "Produto / Embalagem / Origem" (tabela e visão em cards), com nova classe .prod-code (10px, 800, text-3). — renderTable() e renderCardsView() — .stack-primary.cell-strong da célula de produto; CSS .prod-code
- Contrato SAP também exibido no cabeçalho do card de contrato (visão em cards), seguindo o padrão dos demais itens inline do header. — renderCardsView() — headerHTML, após o bloco "Ref."
Levantado porInarae-mail 4.1
G1-02Número do protocolo ao salvar3▼
- Adicionado container da lista de protocolos gerados no modal de sucesso, entre o texto de confirmação e os botões de ação. — #successModal → .confirm-v2-body
- Geração mock dos números de protocolo ao confirmar (sequencial PR-000123 em diante) e renderização de uma linha por protocolo criado no formato "PR-000123 · Q-20303 item 10 · NOME DO COOPERADO". — listener de click de #submitConfirm; nova função nextProtocolNumber() e contador protoSeq
- CSS da lista de protocolos criados (sem border-radius, borda soft, fundo de seção, scroll interno, número em verde 700). — bloco CSS, junto às regras .coop-*
Levantado porInarae-mail 4.2
G1-03Remoção da “Semana desejada”8▼
- Removido o <th> "Semana desejada" da proto-table. — renderTable() — <thead>, após a coluna Preço/Ton
- Removida a <td> com o datepicker de semana na tabela. — renderTable() — última <td> antes de .col-actions
- Removido o campo "Semana desejada" da visão em cards. — renderCardsView() — .v5-item-extra, quarto .field-block
- Removida a validação errs.semana, sua menção no comentário do bloco de validações e o campo "semana" do array de refresh visual de erros. — rowValidationErrors() e refreshRowValidation()
- Removido o ramo blockPast do datepicker (declaração da const e a linha que aplicava disabledReason). blockFuture (Data NF) permanece intacto. — renderDPGrid() — cálculo de dias desabilitados
- Removido "semana" do state inicial das linhas (push no botão Adicionar do drawer e no map do modal de busca avançada) e da checagem anyTouched do protoRowStatus. — elDrawerAddBtn click; elBuscaSel click; protoRowStatus()
- Removido o trecho de semana do resumo do card colapsado. — updateCardCollapsedSummary()
- Redistribuída a largura liberada (~130px da coluna Semana) entre as colunas restantes, com comentário explicando a origem. — CSS .col-volume / .col-emb / .col-roteiro / .col-saldo / .col-coop
Levantado porInarae-mail 4.3
Ok. Aqui não teremos mais a funcionalidade de criar o agendamento automaticamente a partir da criação de protocolos.Marco · PO
G1-04CPF/CNPJ e IE sob o cooperado2▼
- CPF/CNPJ e Inscrição Estadual do cooperado exibidos logo abaixo da caixa de seleção, em texto pequeno secundário, só quando há cooperado selecionado — na tabela e na visão em cards. — renderTable() <td> da coluna Cooperado e renderCardsView() .field-block do Cooperado, após o botão .coop-pick-btn / .v5-coop-pick-btn
- CSS da linha secundária de documento do cooperado (10px/600 em text-3, rótulos uppercase 9px conforme design system). — CSS .coop-sub / .coop-sub-label / .coop-sub-sep
Levantado porInarae-mail 4.4
Modal Selecionar contratos5
G2-01Busca por CNPJ/CPF, SAP e cidade3▼
- Placeholder da busca do modal/drawer "Selecionar contratos" atualizado para citar contrato SAP, CNPJ/CPF e cidade. — #drawerSearch (atributo placeholder)
- Incluídos sap e codProduto no haystack da busca (a cidade já entrava via enviarPara e o documento via cnpj); a mesma alteração foi feita no haystack do "Selecionar todos" para manter os dois filtros idênticos. — renderDrawerList() e listener de #drawerSelectAll — array haystack
- Busca do modal de busca avançada também passa a considerar contrato SAP e código do produto. — renderResults() — filtro de #buscaQuery
Levantado porInarae-mail 2.1
G2-02Contrato SAP no resultado1▼
- Número do Contrato SAP incluído como primeiro item da linha de meta do resultado, e código do produto antes da descrição. O rótulo "Contrato" da linha 1 não foi alterado. — renderDrawerList() — .drawer-item-product e .drawer-item-meta
Levantado porInarae-mail 2.2
G2-03Remoção da IE1▼
- Removida a informação de IE da 2ª linha (meta) do resultado do modal "Selecionar contratos". O campo ie segue no dataset, apenas não é mais exibido nem buscado nessa tela. — renderDrawerList() — .drawer-item-meta
Levantado porInarae-mail 2.3
Favor ajustar no épico/estórias. (@Luiz)Marco · PO
Cooperado8
G4-01IE e endereço no cooperado2▼
- Adicionados numero e bairro a todos os cooperados mock e trocada a coluna "Cidade" do resultado por "Inscrição Estadual", com o endereço completo (logradouro, número, bairro, cidade/UF, CEP) em linha própria abaixo, montado pela nova função coopEnderecoCompleto(). — const COOPERADOS e renderCoopDrawerList() — .drawer-item-coop
- CSS do endereço no resultado: reaproveita a tipografia de .coop-doc/.coop-loc e ocupa a linha inteira do grid do item. — CSS .coop-doc, .coop-loc, .coop-endereco
Levantado porInarae-mail 5.1
G4-02Busca por IE e cidade1▼
- Placeholder do drawer "Selecionar cooperado" atualizado e haystack ampliado (IE e cidade já eram considerados; foram acrescentados uf, bairro, rua e cep, com guarda String(v || "") para não quebrar em campo ausente). — #coopDrawerSearch (placeholder) e renderCoopDrawerList() — filtro
Levantado porInarae-mail 5.2
Favor ajustar no épico/estórias. (@Luiz)Marco · PO
G4-03Campos do cadastro de cooperado3▼
- Adicionados os campos CNPJ/CPF (obrigatório) e Inscrição Estadual no drawer "Cadastrar Cooperado", aproveitando os dois espaçadores vazios do grid — mesma estrutura cad-coop-field / label / cad-coop-input / cad-coop-err dos vizinhos. — #cadCoopDrawer .cad-coop-grid — antigos <div class="cad-coop-field"><!-- spacer --></div> das linhas 2 e 4
- Adicionada nova linha do grid com Nome da Propriedade/Fazenda, Bairro e Número, seguindo o mesmo padrão visual dos campos existentes. — #cadCoopDrawer .cad-coop-grid — nova Row 5, antes do campo full de Instruções de entrega (que virou Row 6)
- Os novos campos passaram a ser lidos e persistidos no objeto do novo cooperado, e CNPJ/CPF entrou no mapa de obrigatórios (usa o mesmo mecanismo is-error por data-field já existente). — listener de #cadCoopSalvar — const required e const newCoop
Levantado porInarae-mail 6.1
Precisamos ver se temos estas informações hoje no cadastro do cooperado no Salesforce. Vamos reutilizar o cadastro de cooperado atual do MD. @Luiz, consegue validar se temos essas infos no SFDC?Marco · PO
Hoje temos esses campos, são os campos básicos para cadastro, mas no protótipo eles não aparecem.Alessandra
B6-premissaSelo “Em cadastro”2▼
- Adicionado cooperado mock com cadastro em andamento (flag emCadastro: true), consistente com os demais registros. — const COOPERADOS — novo item C007
- Cooperado em cadastro passa a exibir selo "Em cadastro", fica desabilitado para seleção e traz dica explicando que ficará disponível ao concluir — via novas funções isCoopEmCadastro() e isCoopBlocked(), reaproveitando o estado visual .is-pending já existente e o selo .coop-pending-tag. O botão Selecionar continua bloqueado para esses registros e o click handler já ignora itens .is-pending. — renderCoopDrawerList() — badge, subHint, classe do .drawer-item-coop, atributo title e elCoopSelectBtn.disabled
OrigemPremissa nossa
Este ponto não veio do e-mail: é uma premissa de UX que assumimos para destravar o protótipo e que ainda depende de validação do PO.aguardando o PO
Transversal4
G6-01Quantidades com 3 casas decimais3▼
- Todos os saldos do dataset passaram a ter 3 casas decimais. — const SEARCH_RESULTS — campo saldo dos 12 registros
- Volume total do rodapé/resumo e do modal de confirmação formatados com 3 casas decimais; valor inicial do stat também ajustado. — updateSummary() (#statVolume), montagem de #submitSummary e HTML inicial de #statVolume
- Placeholders dos campos de quantidade (Volume desejado, tabela e cards) alinhados a 3 casas. Preço/Ton foi mantido com 2 casas por ser valor monetário, não quantidade. — renderTable() e renderCardsView() — input data-field="volumeDesejado"
Levantado porInarae-mail 1.1
Você quer [dizer] em relação a quantidade do protocolo, agendamento de contrato normal e de protocolo? As quantidades que serão informadas pelo usuário na tela? OU o Saldo do contrato?Marco · PO
Sempre deixar 3 casas decimais em todos os campos de quantidades, para termos todos os ambientes no mesmo formato.Alessandra
G6-02Texto do modal de confirmação1▼
- Corrigido o texto do modal "Confirmar criação de protocolos": não afirma mais que os protocolos não poderão ser editados; agora explica que entram em processamento e podem ser editados ou cancelados conforme as regras (cancelamento só sem agendamentos; quantidade editável até o limite do já agendado). — #submitModal .confirm-v2-text
Levantado porInarae-mail 8.1 · 8.2
O cliente também pode editar e cancelar.Marco · PO
Podemos ter cancelamento e edição do protocolo. Cancelamento só se não tiver agendamentos e edição da quantidade até o limite do que já foi agendado. (@Luiz, certo?)Marco · PO