====== Especificação Funcional: Cadastro de Produtos ====== ===== Resumo ===== Esta especificação descreve os requisitos utilizados como base para o desenvolvimento do módulo de Cadastro de Produtos do software Tecsystem School e suas principais operações. ===== Descrição ===== O Cadastro de Produtos reúne as informações do produto e constitui um módulo centralizado para a realização de todas as operações relativas as mesmas. Através deste módulo é possível incluir novos produtos, excluir um produto cadastrado, editar e visualizar os dados do produto, além do seu saldo em estoque em cada escola cadastrada. Ao acessar este módulo, o sistema deve exibir uma lista com os produtos já cadastrados para facilitar as operações de exclusão, edição e visualização dos dados, já que para isso é necessário indicar o produto que será utilizado. Esta lista, que deve exibir os dados do produto, também deve permitir a organização e o filtro dos dados por qualquer campo que esteja visível, além de permitir que o usuário oculte/exiba campos, imprima e exporte o conteúdo da lista. ==== Dados do Produto ==== Um produto deve possuir os seguintes campos: |< 100% 19% 60% 7% 7% 7%>| ^ Campo ^ Descrição ^ Tipo ^ Tamanho ^ Obrigatório? ^ |**Dados gerais** ||||| |Nome |Nome do produto | Texto | 60 | Sim | |Grupo |Nome do grupo do qual o produto pertence | Texto | 60 | Não | |Marca |Nome da marca do produto | Texto | 60 | Não | |Unidade de Medida |Unidade de medida do produto | Texto | 06 | Sim | |**Estoque** ||||| |Escola |Nome da escola | Texto | - | - | |N° Documento |Número do documento do lote do produto na entrada no estoque | Texto | - | - | |Data Entrada |Data da entrada do lote do produto na entrada no estoque | Data | - | - | |Saldo |Quantidade do lote do produto no estoque | Número | - | - | ==== Inclusão, alteração e exclusão de produtos==== Todos os produtos poderão ser cadastrados, desde que possuam os dados necessários para inclusão. O sistema também deve permitir que os dados de um produto previamente cadastrado sejam modificados. A exclusão de um produto também deverá ser permitida, desde que este não esteja vinculado a nenhuma movimentação de entrada ou saída. Caso esteja vinculado, o sistema deverá avisar ao usuário que o produto está vinculado e não deve permitir sua exclusão. ===== Configurações e preferências do usuário ===== Não aplicável. ===== Pontos de verificação ===== ==== Na inclusão/alteração de produtos:==== * Após a inclusão de um produto este deverá ser exibido imediatamente na lista de produtos cadastrados; * Após a alteração de um produto este deverá ser exibido imediatamente nos dados do produto na lista de produtos cadastrados; * O sistema não deve permitir que o usuário salve um produto sem que todos os campos obrigatórios estejam preenchidos; * O sistema deve recuperar no campo Escola, a relação de todas as escolas que possuem estoque (positivo/negativo) do produto; * O sistema deve exibir uma listagem dos lotes que possuem estoque (positivo/negativo), do produto para a escola que for selecionada; * O sistema deve exibir no campo 'Saldo em estoque do produto' o valor total em estoque do produto para a escola que for selecionada; ==== Na exclusão de produtos:==== * Só poderá ser feita a exclusão de um produto desde que este não esteja vinculado a nenhuma movimentação de entrada ou saída. Caso esteja vinculado, o sistema deve avisar ao usuário que o produto está vinculado e não deverá permitir sua exclusão. === Nome do produto === * O sistema não deve permitir que o usuário salve um produto com um nome que já esteja cadastrado; === Estoque === * Na inclusão de um produto, o sistema deve exibir desabilitados o campo Escola e o botão “Localizar uma escola”; * Na alteração de um produto, o sistema deve exibir desabilitado o campo Escola (apenas o nome da escola deve ser exibido), permitindo a seleção da escola através do botão “Localizar uma escola”; Na tela “Localizar escola”, o sistema deve exibir todas as escolas cadastradas, que tenham saldo positivo no estoque do determinado produto; * Após selecionada a escola, o sistema deve exibir o total de estoque para cada lote do produto e seu total abaixo da listagem. ===== Observações ===== Nenhuma informação adicional. ~~DISCUSSION|Sugira mudanças, aponte falhas ou contribua de alguma forma aqui:~~