O Inventário é o coração do iMportex: é onde cada iPhone individual — identificado pelo IMEI (o número de série de 15 dígitos que identifica um aparelho de celular no mundo inteiro) — existe como um registro rastreável, do momento em que chega no Paraguai (PY) até o momento em que é vendido em São Paulo (SP) ou no próprio Paraguai.
Todo aparelho que passa pelo sistema tem, ao mesmo tempo: um status (uma "fase" — ex: CHEGADO_PY, EM_TRIAGEM, DISPONIVEL_SP, VENDIDO), uma localização física (onde ele está fisicamente agora — ex: ESTOQUE_PY, RECEPCAO_SP), uma grade (a nota de qualidade do aparelho — A, AB, B ou C — que define o preço) e um histórico de movimentações (cada mudança de status/localização vira uma linha imutável, tipo um extrato bancário).
Este capítulo cobre as telas que mostram, corrigem e organizam esse estoque: a lista geral, a ficha de cada aparelho, os pontos de entrada avulsa, as ferramentas de correção/bloqueio, o painel de custódia (a passagem de mão em mão entre estações) e as reservas de venda. As telas de Triagem (onde o aparelho é avaliado fisicamente), Assistência (conserto) e Expedição e Logística (o transporte PY→SP) têm capítulos próprios — aqui o foco é o aparelho como registro de estoque, não o processo que o move.
Fluxo do módulo em 1 olhada
- O aparelho entra no sistema — o caminho mais comum é em lote (ver Recebimento no Paraguai), mas quando é 1 aparelho avulso (comprado na rua, sem planilha de fornecedor), a entrada é pela tela Aparelho avulso (
/inventario/avulso). - A partir daí ele aparece na lista Inventário (
/inventario) — a visão de tudo, com filtro por status/localização/grade/modelo/IMEI. - Cada aparelho tem uma ficha própria (
/inventario/[imei]) com a linha do tempo completa de tudo que já aconteceu com ele, o custo acumulado, o preço de venda e os botões de ação (liberar pro estoque, travar, corrigir grade, corrigir custo). - O painel Estoques (
/estoques) dá a visão "operacional" resumida do lado PY: quantos aparelhos estão recebidos, em conserto ou prontos pra despachar pra SP. - Pendências cadastrais viram telas próprias de "faxina": Cor pendente (
/inventario/sem-cor) resolve aparelhos sem cor cadastrada. - Situações excepcionais passam pela ferramenta de correção: Aparelhos bloqueados (
/inventario/bloqueados) trava/destrava um aparelho fora do fluxo normal (com PIN do dono), e Histórico de correções (/inventario/correcoes) é a auditoria dessas ações. - A passagem física do aparelho de uma estação pra outra (ex: Recebimento → Triagem, Assistência → Reteste) é registrada e conferida em Custódia (
/custodia). - Quando um vendedor quer "segurar" um aparelho disponível pra um cliente decidir, ele usa Reservas (
/reservas) — uma trava de 48h. - Acessórios & SKU (
/produtos) é a tela de estoque por quantidade (capinha, cabo, película) — hoje desativada por decisão do dono (22/08).
Aparelho avulso

Pra que serve: cadastrar 1 aparelho por vez, sem precisar montar um lote de compra inteiro — o caso do funcionário que comprou um iPhone avulso na rua ou recebeu 1 unidade fora do fluxo normal de importação. É a tela desenhada pra ser usada "de pé, do lado da caixa", com uma fila física de aparelhos esperando: bipa o IMEI, o modelo já vem sozinho, confirma grade/bateria/destino e manda pro próximo.
Quem usa: exige a permissão de negócio registrar_entrada_avulsa (não é sobre cargo, é uma capacidade específica — ver Acesso, Perfis e Portais Públicos) → perfis ADMIN, GERENTE, OPERADOR_SP, OPERADOR_PY, TESTADOR. Dentro da tela, só quem tem a permissão declarar_custo_entrada (ADMIN, GERENTE, OPERADOR_SP) teria o custo de compra gravado — mas a tela atual nem oferece campo de custo: todo aparelho avulso entra "aguardando custo", e quem precifica é o dono depois, em lote.
Ações principais:
- Bipar/digitar o IMEI (15 dígitos) — dispara a busca automática por TAC (os 8 primeiros dígitos do IMEI, que identificam o modelo do aparelho no padrão internacional): se a empresa já cadastrou aparelhos com o mesmo TAC, o modelo vem preenchido sozinho e capacidade/cor viram listas curtas do que já existiu.
- Escolher grade (A/AB/B/C — lista fechada, não é mais texto livre), bateria (%), situação inicial (destino) e, opcionalmente, descrever um defeito já conhecido.
- Travar campos (ícone de cadeado): qualquer campo pode ficar "grudado" pro próximo bipe — útil quando uma fila inteira de aparelhos é do mesmo modelo/grade/destino.
- Cadastrar — se o destino é "pra venda" (disponível SP/PY), a etiqueta sai automaticamente na impressora QL-800.
Fluxo correto:
- Escolher o destino (Disponível SP, Disponível PY, Triagem, ou Recepção PY — "acabou de chegar").
- Bipar o IMEI. O sistema avisa na hora se o IMEI já existe no sistema (duplicado) e mostra onde ele está.
- Conferir/ajustar modelo, capacidade, cor.
- Se o destino é "pra venda": grade e bateria são obrigatórias (elas vão pra etiqueta e pro certificado que o comprador lê). Se o destino é triagem/recepção, nenhuma das duas é obrigatória — a bancada mede depois.
- Descrever defeito, se houver.
- Clicar em Cadastrar. A etiqueta imprime sozinha (se aplicável) e o campo de IMEI volta a ficar vazio, pronto pro próximo aparelho da fila.
Se pular ou errar:
- IMEI que não passa no dígito verificador (checagem matemática chamada Luhn, a mesma usada em cartão de crédito) é recusado — não dá pra cadastrar IMEI "inventado".
- Cadastrar como "disponível pra venda" sem escolher grade ou bateria é bloqueado — o formulário recusa antes de enviar.
⚠️ Atenção: até 23/08, escolher "vai ser inspecionado" jogava o aparelho direto pro status
EM_TRIAGEM— mas a Estação de Triagem só lista aparelhos emCHEGADO_PY. Resultado: 79 aparelhos (R$159 mil) ficaram invisíveis na bancada, cadastrados no sistema mas ninguém via na fila de trabalho. Hoje "vai ser inspecionado" entra comoCHEGADO_PY(fila "Avulsos" da Estação) — o estadoEM_TRIAGEMfica reservado pra quem já está sendo processado.
Detalhes e estados:
- Todo aparelho avulso nasce vinculado a um fornecedor e lote sintéticos chamados "Avulso (Individual)" (criados automaticamente na primeira vez, reaproveitados depois) — é só um artifício de organização interna, não aparece pro usuário como algo estranho.
- O bloqueio de acesso acontece antes mesmo de abrir a tela: quem não tem a permissão é redirecionado sem nem ver o formulário (não é "abrir a tela e falhar só na hora de salvar").
Inventário (lista geral)

Pra que serve: a visão de todo o estoque — todos os aparelhos cadastrados na empresa, com filtro, busca, paginação e ações em lote. É o ponto de partida pra achar um aparelho específico ou pra ter uma noção geral de quanto/onde está o estoque.
Quem usa: qualquer usuário autenticado da empresa consegue abrir (só precisa estar logado). O que muda por perfil é o que aparece: o card "Valor em estoque (custo)" e a coluna de custo no CSV exportado só aparecem pra quem tem permissão de ver dinheiro (ADMIN, GERENTE, FINANCEIRO) — outros perfis veem a contagem de aparelhos, mas não o valor em R$.
Ações principais:
- Filtrar por status, localização, grade, modelo (texto livre) ou IMEI (com scanner de câmera pra bipar direto).
- Selecionar vários aparelhos e mover em lote pra um destino comum (ex: "Disponível PY", "Em trânsito") — cada aparelho é validado individualmente; um que falhar (foto obrigatória faltando, aprovação pendente etc.) não trava o lote inteiro.
- Exportar CSV do conjunto filtrado inteiro (não só a página atual).
- Abrir a ficha de um aparelho pelo botão "Ver".
- Cadastrar um aparelho avulso (atalho pra tela acima).
Fluxo correto:
- Aplicar os filtros necessários (ou nenhum, pra ver tudo).
- Ler o resumo: quantidade de aparelhos + valor em estoque (se tiver permissão).
- Pra mover vários aparelhos de uma vez: marcar as caixinhas, escolher o destino na lista suspensa e confirmar — o sistema avisa quantos foram movidos e quantos falharam (com o motivo).
- Pra ver o histórico de 1 aparelho específico: clicar em "Ver".
Se pular ou errar:
- O KPI "Valor em estoque (custo)" só soma pra quem tem permissão de ver dinheiro — se aparecer "—" no lugar do valor, é porque o cálculo falhou (erro não-bloqueante: a tela continua funcionando, só o número some).
- Mover em lote pra um status/localização que a regra de negócio não permite (ex: aparelho já
VENDIDO) falha só naquele item, reportado na mensagem — não precisa refazer o lote inteiro.
Detalhes e estados:
DEVOLVIDOsome da lista por padrão (decisão do dono, 15/08): aparelho devolvido ao fornecedor não conta como "estoque real" — sem essa regra, a lista mostraria centenas de aparelhos a mais do que o estoque de verdade. Mas ele continua achável: filtrar por status = Devolvido, ou buscar pelo IMEI exato, mostra ele de novo. Não é apagado, só sai da visão do dia a dia.- O status
SUCATA(aparelho descartado — write-off) também não entra na soma do "Valor em estoque". - A coluna "Dias" mostra há quanto tempo o aparelho está parado na mesma etapa — vira alerta visual (laranja depois de 15 dias, vermelho depois de 30) exceto pra status terminais (
VENDIDO,CANCELADO,DEVOLVIDO,SUCATA), que já saíram de operação. - A lista é paginada por trás dos panos — o sistema busca só a página que você está vendo, não tudo de uma vez. Isso importa porque uma consulta comum trunca em 1000 linhas por padrão do banco de dados; aqui isso foi tratado direito, então mesmo com milhares de aparelhos a lista aparece completa (só que dividida em páginas).
Detalhe do aparelho

Pra que serve: a ficha completa de 1 aparelho — tudo que já aconteceu com ele desde que entrou no sistema, custo, preço, fotos e as ações que podem ser feitas nele agora. É pra onde qualquer busca por IMEI acaba levando.
Quem usa: aberta pra qualquer usuário autenticado da empresa. O que muda por perfil:
- Card de custo acumulado e coluna de custo na linha do tempo: só quem tem permissão de ver dinheiro (ADMIN, GERENTE, FINANCEIRO).
- Editar preço de venda, corrigir custo de compra, corrigir grade, travar/destravar aparelho: só ADMIN/GERENTE.
- Liberar pro estoque PY: perfis ADMIN, GERENTE, TECNICO_PROPRIO, OPERADOR_PY, TESTADOR, SUPERVISOR_ASSISTENCIA (só aparece se o aparelho estiver no estado certo — ver abaixo).
- Corrigir bateria (09/09): o botão aparece pra qualquer perfil que abra a ficha, mas a ação só é aceita de ADMIN, GERENTE, TESTADOR, OPERADOR_PY ou OPERADOR_SP — VENDEDOR fica de fora de propósito, porque a bateria muda a faixa de preço, e quem negocia não deve poder reescrever o número que sustenta o próprio preço.
Ações principais:
- Ver a linha do tempo cronológica de movimentações: cada mudança de status/localização, custo adicionado, aprovação pendente/concedida, observação — desde 08/09, essa mesma linha também funde as mudanças de grade (de/para, quem alterou, e o motivo escrito quando a grade desceu), tudo em ordem cronológica junto com as movimentações.
- Ver/editar a grade (o lápis fica colado no rótulo da grade) — pede motivo do catálogo + PIN de 6 dígitos do dono.
- Ver/corrigir o custo de compra (o lápis no card de custo) — pede motivo (mín. 10 caracteres), sem PIN.
- Definir/remover um preço de venda individual (que vence a tabela de preços geral) em R$ e/ou US$.
- Liberar para estoque PY — só aparece quando o aparelho está em
RETESTEouEM_TRIAGEM. - Travar/destravar o aparelho (trava administrativa de despacho, sem mudar status/localização).
- Corrigir bateria (09/09) — grava um novo valor (0 a 100) com motivo obrigatório (mín. 10 caracteres, ex.: "bateria trocada na OS 1234, medida 92%"); atualiza ao mesmo tempo o cadastro do aparelho e a pré-grade que a etiqueta lê, pra a próxima etiqueta já sair com o valor novo. Antes desta correção existir, a bateria só era gravada uma vez na Triagem e nunca mais mudava — mesmo depois de um reparo trocar a bateria de verdade.
- Fazer upload de foto do momento atual (recepção, triagem, pré-reparo, pós-reparo etc.) e ver se a foto é obrigatória pra aquele momento.
Fluxo correto (caso típico — liberar um aparelho reparado):
- Buscar o aparelho pelo IMEI (pela lista de Inventário ou digitando a URL).
- Conferir o cabeçalho: grade, status atual, se a triagem e o estoque estão "concordando" (ver detalhe abaixo).
- Se precisar, corrigir a grade (lápis + motivo + PIN do dono).
- Se o aparelho está em
RETESTE/EM_TRIAGEM: clicar em "Liberar para estoque PY". - Conferir se a foto obrigatória do momento (ex: pós-reparo) está presente — se não estiver, o sistema recusa a liberação e explica o quê falta.
- Definir o preço de venda, se ainda não tiver.
Se pular ou errar:
⚠️ Atenção: tentar liberar um aparelho sem grade nem pré-grade é recusado com a mensagem explícita "sem ela o aparelho fica invisível no despacho PY→SP" — essa é a mesma causa-raiz de um incidente em que 131 e depois 192 aparelhos (R$375 mil) ficaram presos sem aparecer na expedição.
- Aparelho
EM_TRIAGEMcuja decisão da triagem não foi "aprovar estoque" é recusado, com a instrução de resolver na tela de Separação primeiro. - Foto obrigatória faltando pro momento-alvo bloqueia a mudança de status inteira, com o nome exato do momento que falta.
- Aparelho
VENDIDOé imutável — só aceita mudança via garantia acionada ou cancelamento, nunca edição livre. - Corrigir bateria sem escrever pelo menos 10 caracteres de motivo, ou tentando salvar o mesmo valor que já está lá, é bloqueado no formulário antes de enviar. Se a etiqueta não puder ser atualizada por qualquer erro depois de já ter gravado no cadastro, a tela avisa explicitamente pra não imprimir antes de resolver — nunca deixa a etiqueta sair silenciosamente com o valor velho.
Detalhes e estados:
- Grade pode DESCER no reteste, com motivo obrigatório e rastro visível (08/09): quando a testadora rebaixa a grade no reteste (ex.: aprovou como B e no reteste virou C), a ficha mostra uma faixa de alerta âmbar no topo da página, antes de qualquer outra coisa — "⚠️ Grade rebaixada de X para Y ... por fulano", com o motivo escrito por quem retestou logo abaixo. É pensada pro vendedor conferir o preço antes de negociar, não depois. Essa faixa é específica do rebaixamento feito pelo reteste: uma correção de grade feita aqui na própria ficha (a que pede PIN, acima) entra na mesma linha do tempo como "Grade alterada", mas não dispara a faixa de alerta.
- A ficha detecta contradição: se a última triagem mandou o aparelho pra "Assistência" ou "Travado", mas ele está fisicamente
DISPONIVEL_PY/DISPONIVEL_SP/RESERVADO, a tela mostra um aviso vermelho explícito ("A triagem e o estoque estão dizendo coisas diferentes") — esse foi o achado de 31/07 em que 275 aparelhos já consertados continuavam imprimindo etiqueta "EM CONSERTO". - O custo acumulado é sempre recalculado ao vivo (nunca lido de um valor guardado que pode estar desatualizado): custo de entrada + soma de todos os custos adicionados nas movimentações. Aparelho sem custo de entrada lançado (achado de 12/08: 984 aparelhos sem custo — 891 vindos de um mesmo lote de compra e 93 cadastrados avulsos) mostra aviso vermelho de que a margem está subestimada.
- Corrigir custo usa uma máscara de centavos (digita "154000", vira R$ 1.540,00) — decisão pra evitar o erro de "1.540" virar R$ 1,54 por causa da diferença entre separador decimal brasileiro e americano.
- Corrigir grade permite também mandar o aparelho pra um novo destino/status na mesma ação (ex: aproveitar a correção pra já mandar pra triagem de novo) — e pergunta, no fim, se quer reimprimir a etiqueta.
Estoques (painel dos 3 baldes)

Pra que serve: dar uma foto rápida de onde está o estoque do lado Paraguai — não uma lista completa, mas 3 "baldes" com contagem exata + amostra: Recebidos (chegou, ainda não triado), Em conserto (a triagem mandou consertar ou ainda não decidiu) e Pronto p/ SP (pode despachar agora).
Quem usa: qualquer usuário autenticado da empresa — não há uma permissão específica nesta tela, só login válido.
Ações principais:
- Ver a contagem exata de cada balde + uma amostra de até 40 aparelhos.
- Ver o balde "Em conserto" dividido em sub-filas (aguardando separação, aguardando técnico, travado, sem decisão) — cada uma com um "dono" diferente no processo.
- Ver o aviso de quantos aparelhos estão "aguardando custo" (entraram pela entrada rápida sem preço definido).
- Clicar em qualquer aparelho da amostra pra ir direto pra ficha dele.
Fluxo correto:
- Abrir a tela pra ter uma visão geral do dia.
- Olhar o balde "Em conserto" — as sub-filas mostram onde está o gargalo (ex: muitos "aguardando separação" = a Separação está atrasada; muitos "travado" = tem bloqueio administrativo acumulando).
- Se aparecer o aviso de "aguardando custo", isso é um lembrete de que a margem desses aparelhos não vai aparecer certa em nenhum relatório até alguém precificar.
Se pular ou errar: esta tela é só leitura — não existe "erro de uso" aqui, mas confiar em um número desatualizado (ex: não recarregar a página depois de uma sessão de triagem) pode levar a decisões com dado velho.
Detalhes e estados:
⚠️ Atenção: até 25/07, este balde se chamava "RMA" e classificava por eliminação — quem não estava claramente em outro lugar caía em "pronto pra despachar" por padrão. Isso escondeu 455 aparelhos (R$897.744,50) no balde errado: eles precisavam de assistência mas apareciam como prontos pra embarcar. Hoje a regra é o oposto (lista positiva): só entra em "Pronto p/ SP" quem tem a decisão de triagem gravada como aprovado pro estoque — estado desconhecido/sem decisão vai sempre pra "Em conserto", nunca pro balde de despachar.
- "Pronto p/ SP" espelha exatamente o filtro que a Expedição e Logística usa pra aceitar um aparelho na remessa (aparelho bloqueado, sem grade completa, ou fora do estoque PY é recusado lá) — pra este painel nunca prometer o que a expedição depois recusa.
- A contagem é exata (uma consulta separada conta os aparelhos de verdade), não deriva do tamanho da amostra — antes um balde com 935 aparelhos mostrava "500" porque a lista estava limitada.
Cor pendente

Pra que serve: resolver o passivo de aparelhos que entraram no sistema sem a cor cadastrada — situação criada quando um fornecedor novo parou de mandar a cor na nota fiscal. A Estação de Triagem já coleta a cor de quem entra a partir de agora; esta tela existe pra corrigir quem já estava no estoque antes disso.
Quem usa: exige a permissão registrar_entrada_legado → ADMIN, GERENTE, OPERADOR_SP, OPERADOR_PY, TESTADOR.
Ações principais:
- Ver a lista de aparelhos sem cor, agrupados por modelo (ex: "iPhone 13 · 128GB").
- Selecionar vários aparelhos do mesmo grupo e aplicar uma cor pra todos de uma vez.
Fluxo correto:
- Abrir a tela — os aparelhos já vêm agrupados por modelo+capacidade.
- Dentro de um grupo, marcar os aparelhos que são da mesma cor (ex: todos "meia-noite").
- Escolher a cor na paleta e clicar em Aplicar.
- Repetir pros outros subgrupos de cor dentro do mesmo modelo, se houver.
Se pular ou errar: aparelho sem cor tem a etiqueta impressa só com a capacidade (sem a cor) — informação incompleta pro cliente que recebe o produto.
Detalhes e estados:
- Não existe uma coluna separada de "cor pendente" — a própria ausência de cor é a definição de pendência. Assim que a cor é preenchida, o aparelho some da lista automaticamente.
- O preenchimento em lote nunca sobrescreve uma cor que já existe (mesmo que um aparelho entre na seleção por engano) — a nota do fornecedor sempre vence.
Aparelhos bloqueados

Pra que serve: listar e gerenciar aparelhos com a trava manual de bloqueio — um jeito de "segurar" um aparelho fora do fluxo normal (ex: suspeita de venda por fora, aparelho sumido aguardando decisão) sem mudar o status/localização dele. É parte da "Ferramenta de Correção", em que ações sensíveis exigem o PIN de 6 dígitos do dono.
Quem usa: exige a permissão acionar_correcao_pin → ADMIN, GERENTE, OPERADOR_PY, SUPERVISOR_ASSISTENCIA. Quem aciona (abre o pedido) pode não ser quem autoriza: o PIN é do dono, então mesmo um perfil autorizado a abrir a tela precisa que o dono digite o próprio PIN pra confirmar bloqueio ou desbloqueio.
Ações principais:
- Ver a lista de aparelhos bloqueados, com o motivo de cada bloqueio.
- Bloquear um aparelho (por IMEI) informando motivo + PIN.
- Desbloquear um aparelho da lista, informando o PIN.
- Filtrar por IMEI, modelo, cor ou motivo.
Fluxo correto:
- Pra bloquear: clicar em "Bloquear aparelho", digitar o IMEI, descrever o motivo, o dono digita o PIN, confirmar.
- Pra desbloquear: encontrar o aparelho na lista, clicar em "Desbloquear", o dono digita o PIN, confirmar.
Se pular ou errar:
- PIN errado é rejeitado com limite de tentativas: passar do limite bloqueia novas tentativas por um tempo — proteção contra chute repetido do PIN.
- Aparelho travado fica fora da elegibilidade de despacho até ser destravado — ele continua existindo e visível no inventário, só não pode ser incluído numa remessa pra SP.
Detalhes e estados:
- A trava é administrativa, não é um status do aparelho — o aparelho pode estar
DISPONIVEL_PYe bloqueado ao mesmo tempo (o bloqueio é uma camada por cima). - Toda ação passa por uma trava protegida no banco de dados — o próprio banco recusa qualquer alteração direta nesse campo por fora desse caminho, então não existe atalho que pule o PIN.
Histórico de correções

Pra que serve: a janela de auditoria de toda ação feita pela Ferramenta de Correção (as que exigem PIN do dono) — bloquear, desbloquear e devolver-pra-triagem. Mostra quem acionou, quem autorizou, quando e por quê.
Quem usa: exige a mesma permissão acionar_correcao_pin → ADMIN, GERENTE, OPERADOR_PY, SUPERVISOR_ASSISTENCIA. É uma tela só de leitura.
Ações principais:
- Filtrar por tipo de ação (Todas / Bloqueios / Desbloqueios / Devoluções).
- Buscar por IMEI, pessoa (quem acionou ou quem autorizou) ou motivo.
- Ver os últimos 300 registros, ordenados do mais recente pro mais antigo.
Fluxo correto: abrir a tela quando precisar investigar "quem mexeu nesse aparelho e por quê" — ex: um aparelho apareceu bloqueado sem explicação óbvia, ou uma auditoria pede o histórico de correções do mês.
Se pular ou errar: não há ação de escrita aqui — o risco é confiar só nesta tela pra tudo: ela cobre só as 3 ações protegidas por PIN, não todas as mudanças de estado do aparelho (essas ficam na linha do tempo da ficha do aparelho, seção acima).
Detalhes e estados:
- A ação "Devolveu pra triagem" aparece nesta lista, mas o botão que a dispara vive na tela de Triagem, fora do escopo deste capítulo.
- Os nomes de "quem acionou"/"quem autorizou" são resolvidos separadamente, pra evitar que o mesmo aparelho apareça 2x por engano na lista.
Custódia

Pra que serve: registrar formalmente a passagem de aparelhos de uma estação pra outra dentro do processo (ex: Recebimento → Triagem, Assistência → Reteste, Estoque PY → Expedição SP) — "assina o canhoto": quem entrega declara quantos aparelhos está passando, quem recebe confere, e o sistema calcula a diferença automaticamente. Não trava a operação — só registra e alerta quando os números não batem.
Quem usa: qualquer usuário autenticado da empresa pode registrar entrega e conferir recebimento — não há permissão específica além do login. Resolver uma divergência, porém, é restrito a ADMIN/GERENTE.
Ações principais:
- Registrar entrega: escolher a estação (lista fechada de 10 estações possíveis), opcionalmente vincular a uma caixa de recebimento já bipada (nesse caso a quantidade vem automaticamente da contagem real, não é digitada), e informar observação.
- Conferir recebimento: informar quantos aparelhos foram de fato recebidos — se bater com o declarado, fecha como "Conferido"; se não bater, vira "Divergente" (fica pendente até alguém resolver).
- Resolver divergência (só ADMIN/GERENTE): registrar a justificativa e fechar a pendência.
Fluxo correto:
- Quem está entregando um lote de aparelhos pra outra estação registra a entrega (a quantidade, de preferência, vindo de uma caixa já bipada).
- Quem recebe confere a quantidade real — se bipou/contou 10 e o declarado era 10, confirma e pronto.
- Se a contagem não bater, o sistema exige uma observação explicando antes de deixar confirmar.
- Se houver divergência, ela fica visível na seção "Divergências pendentes" até um ADMIN/GERENTE resolver com justificativa.
Se pular ou errar:
- Conferir a própria entrega (a mesma pessoa que entregou e recebeu) é permitido, mas exige uma confirmação explícita extra na tela ("Sou eu mesmo, confirmo") e fica marcado como "auto-conferido" no histórico — pra não virar um ponto cego de auditoria.
- Duplo clique ou duas sessões conferindo a mesma entrega ao mesmo tempo: o sistema só grava a primeira — a segunda tentativa recebe o aviso "já foi conferida por outra sessão, recarregue a página" em vez de sobrescrever silenciosamente.
Detalhes e estados:
- Existem repasses "endereçados" — quando a entrega já tem um destinatário nomeado (ex: uma leva pra um técnico específico da assistência) — esses não aparecem nesta tela de custódia genérica: eles têm fluxo próprio de aceite/recusa em outra tela, e confirmá-los aqui por engano deixaria a Ordem de Serviço correspondente presa pra sempre.
- A lista de estações é fechada por design (não é mais texto livre) — inclui pares como "Estoque de Assistência → Retirada" e "Assistência → Distribuição Interna", que fazem parte do fluxo do capítulo de Assistência.
Reservas

Pra que serve: "segurar" um aparelho disponível pra um cliente específico por 48 horas, enquanto ele decide se compra — sem tirar o aparelho do estoque nem mudar o status dele. É uma trava suave: o aparelho continua aparecendo como disponível em outras telas, mas o sistema recusa a venda dele pra outro cliente enquanto a reserva estiver ativa.
Quem usa: qualquer usuário autenticado da empresa — não há permissão específica nesta tela, só login válido.
Ações principais:
- Reservar um aparelho disponível (
DISPONIVEL_PYouDISPONIVEL_SP) pra um cliente cadastrado. - Ver a lista de reservas ativas, com o prazo de expiração.
- Cancelar uma reserva antes do prazo.
- Liberar manualmente as reservas já vencidas (botão "Liberar vencidas").
Fluxo correto:
- Escolher o aparelho (só aparecem os que estão disponíveis e sem reserva ativa) e o cliente.
- Clicar em "Reservar 48h".
- A reserva aparece na lista com o horário exato em que expira.
- Se o cliente decidir comprar, a venda segue o fluxo normal (capítulo de Vendas); se desistir, cancela a reserva manualmente ou deixa expirar.
Se pular ou errar:
- Tentar reservar um aparelho que já está reservado por outra pessoa é recusado — inclusive numa corrida de 2 cliques simultâneos, o banco tem uma trava própria que garante que só existe 1 reserva ativa por aparelho.
- Tentar reservar um aparelho fora de
DISPONIVEL_PY/DISPONIVEL_SP(ex: já vendido) é recusado.
Detalhes e estados:
- Achado de 31/07 ("reserva zumbi"): o prazo de 48h só era aplicado de fato quando alguém clicava manualmente em "Liberar vencidas" nesta tela — como quase ninguém abria a tela, reservas mortas há dias continuavam bloqueando a venda do aparelho pra outro cliente, sem erro visível em lugar nenhum. Duas correções fecharam isso: (1) a trava de venda passou a checar o prazo de verdade na hora de vender, então mesmo sem ninguém clicar a venda não fica travada por uma reserva já vencida; (2) uma rotina automática — roda sozinha, sem depender de clique — confere e marca "Expirada" de verdade, na casa dos :40 de cada hora.
- Esta reserva de 48h (que segura um aparelho específico) é diferente da reserva vinculada a uma venda já em andamento (prazo de validade de 90 dias, ver capítulo de Vendas) — são conceitos parecidos no nome, mas tratados por rotinas de expiração separadas.
Acessórios & SKU (Produtos)

Pra que serve: era o cadastro de estoque por quantidade (não por IMEI individual) — capinha, cabo, fone, peça de revenda — com saldo calculado pela soma de movimentos de entrada/saída/ajuste. Desde 22/08, o módulo está desativado por decisão do dono ("não é o intuito do sistema").
Quem usa: hoje, ninguém consegue criar ou movimentar nada — a tela mostra só um aviso. Antes da desativação, a leitura do custo médio nas telas dependia da permissão de ver dinheiro (ADMIN, GERENTE, FINANCEIRO).
Ações principais (histórico, hoje desligadas): cadastrar SKU, entrada/saída/ajuste de estoque com recálculo de custo médio ponderado.
Fluxo correto: não há fluxo de uso hoje — a tela existe só pra quem tinha o link salvo não cair num erro, mostrando a mensagem "Venda de acessórios/SKU desativada (decisão 22/08). Vendas antigas com acessório permanecem válidas."
Se pular ou errar: tentar chamar as ações de criar/movimentar (via link direto) é recusado antes de qualquer outra checagem, com a mesma mensagem de desativação.
Detalhes e estados:
- Esta é a etapa 1 de uma desativação em 2 etapas: por enquanto só esconde/recusa criação nova. Dados e histórico (venda antiga com item SKU, PDF, relatório, estorno) continuam intactos e acessíveis por fora desta tela. A etapa 2 (apagar de fato) está adiada, e exige backup + relatório de contagem + quarentena de pelo menos 7 dias antes de acontecer.
- Um achado paralelo à desativação: as ações de criar/movimentar SKU nunca tiveram uma trava de permissão de negócio (só checavam login) — só a desativação total fechou essa lacuna, de brinde.
Erros comuns e como evitar
- Cadastrar aparelho avulso "pra venda" sem bateria/grade → o formulário recusa, mas se isso confundir o operador: lembrar que só é obrigatório quando o destino é "disponível" (SP ou PY); em Triagem/Recepção nenhum dos dois é exigido, porque a bancada mede depois.
- Confiar no número do balde "Estoques" sem saber que ele espelha o filtro da Expedição → um aparelho só aparece como "Pronto p/ SP" se tiver grade completa, não estiver bloqueado e estiver no estoque PY. Se sumiu do balde de repente, provavelmente foi bloqueado ou perdeu algum dado obrigatório.
- Procurar um aparelho DEVOLVIDO na lista de Inventário e não achar → ele saiu da visão padrão de propósito (decisão de 15/08). Filtrar por status = Devolvido ou buscar pelo IMEI exato traz ele de volta — não foi apagado.
- Tentar corrigir grade ou custo sem saber o PIN do dono → corrigir grade exige o PIN de 6 dígitos (é uma ação que muda o preço, então tem trava extra); corrigir custo de compra não pede PIN, mas exige um motivo de pelo menos 10 caracteres — os dois ficam no registro de auditoria.
- Achar que "bloquear" um aparelho muda o status dele → não muda. Bloqueio é uma trava por cima, separada do status/localização — um aparelho pode estar
DISPONIVEL_PYe bloqueado ao mesmo tempo. O que o bloqueio faz é tirar ele da elegibilidade de despacho. - Conferir uma entrega de Custódia endereçada (com destinatário nomeado) pela tela genérica → ela não vai aparecer lá de propósito; precisa ser aceita no fluxo próprio (assistência/triagem), senão a Ordem de Serviço correspondente nunca abre.
- Deixar reservas vencidas acumulando achando que elas "somem sozinhas na hora" → a venda já é liberada automaticamente quando a reserva vence (não trava mesmo sem ninguém clicar em nada), mas o registro só vira "Expirada" de fato via rotina automática ou clique manual em "Liberar vencidas" — até lá, a reserva aparece na lista marcada como vencida.
- Esperar cadastrar acessório/SKU pela tela de Produtos → o módulo está desativado desde 22/08; qualquer tentativa de criar ou movimentar é recusada, mesmo que o link seja acessado direto.
