UC00097 - Abertura de Cotação
Conteúdo |
[editar] Objetivo
- Enviar e receber cotações de fornecedores.
[editar] Atores
- Usuário
[editar] Pré-requisitos
- Considerar documento Padrões de desenvolvimento.
- No projeto da rotina, em confsrc > META-INF > messages > view.properties definir o nome como Cotação de Compras. Este nome será utilizado para criar a página no Wiki.
[editar] Resultado esperado
- Criar uma cotação de compras, e enviar aos possíveis fornecedores uma mensagem (e-mail ou SMS) com uma URL para digitação dos preços.
[editar] Diagrama de classes
[editar] Fluxo de eventos
[editar] Fluxos principais
Fluxo 1: Usuário acessa a rotina Menu -> Movimentos -> Compras -> Cotação de Compras.
- Sistema exibe a tela inicial da rotina em questão, conforme regra de negócio RN01.
Fluxo 2: Usuário preenche os campos e clica em salvar. Sistema valida os campos conforme regra de negócio RN02.
Com a cotação validada e salva, usuário tem a opção de enviar uma URL para o representante do fornecedor digitar os preços, conforme Fluxo 3, dos fluxos alternativos. Esta URL é gerada clicando no botão "E-mail".
[editar] Fluxos Alternativos
Fluxo 1: Importação de cotação padrão.
Usuário clica no botão "Importa Cotação Padrão". Sistema abre uma janela popup e solicita, em um combobox, as cotações padrões, exibindo na lista a descrição da cotação padrão. Em seguida importa o comprador e os itens para a cotação que esta sendo aberta, mas, permite alterar a vontade.
Fluxo 2: Importação de produtos no estoque mínimo
Fluxo 3 Sistema localiza os fornecedores dos produtos que estão sendo cotados, e em seguida procura um contato do tipo "Representante". O sistema prepara uma tela inicial, a ser usada para enviar uma URL para estes representante, onde os mesmos deverão informar os seus preços.
Esta tela deve ter as seguintes colunas:
- Selecionado: com opção de marcar ou desmarcar todos.
- Fornecedor (código e nome)
- Representante (contato do tipo representante comercial)
- Celular
- Produtos: um link onde o usuário poderá ver os itens selecionados para cotação, para um determinado fornecedor. Os campos que serão exibidos: código do produto, referência, descrição.
O usuário poderá desativar (com um checkbox) o envio da URL para o SMS ou E-mail (um é obrigatório, para quem esta marcado para receber a cotação).
Ao clicar em enviar o sistema deverá:
- gerar um link com as seguintes nomenclatura:
wwwwwwww/nnnnnnn/cotacao/99999999999999999999999999999999, onde:
- wwwwwwww/nnnnnn é a URL do nosso cliente. Exemplo: resulthweb.com/treinamento
- cotacao: padrão da rotina, a ser inserido na URL
- 99999999999999999999999999999999: número randômico, com 32 bytes.
Para acessar esta página, usar um usuário e senha especiais. A página gerada, com layout responsivo, que roda em qualquer browse, deverá conter o seguinte layout:
No corpo da mensagem, deverá aparecer:
- Cidade da empresa, e data
- Empresa destinatária e o contato (representante)
- Os dizeres, "Favor nos enviar preços e condições de pagamento para os seguintes produtos"
- A relação dos produtos
- Ao final o nome da empresa compradora, endereço, comprador e o seu celular.
- o referido link
Observação: fazer de forma que posso trocar o template da página e aparecer os dados da empresa, de forma mais personalizada.
Ao clicar no link, aparecer a página com os seguintes campos:
(em um grid)
- Código do produto
- Referência do produto
- Descrição
- Grade
- Unidade (usada ao abrir a cotação)
- Quantidade
- Preço
Logo após o grid.
- Condições de pagamento: campo texto, com 60 posições, obrigatório
- Valor frete:
- Prazo de entrega (dias): campo onde o fornecedor deverá, obrigatoriamente, informar o prazo de entrega dos itens da cotação(em dias). O campo deverá aceitar somente números com no máximo 3 dígitos.
Apenas o preço é editável. O vendedor poderá clicar no link quantas vezes quiser, até a data da validade da cotação.
Observação: avisar ao usuário, através de um label, que só enviado pedido de preços para fornecedores que possuem um contato do tipo representante.
[editar] Regras de negócio
[editar] RN01 - Tela de abertura de cotação
Usuário deverá informar os seguintes campos, afim de abrir uma cotação:
Cabeçalho:
- Código da cotação: número inteiro e sequencial, gerado pelo sistema. Não é passível de alteração, e é gerado ao final.
- Filial: trazer a filial logada como default, permitindo alterar.
- Data da cotação: trazer a data do sistema, e não permitir alterar.
- Validade: data em que será permitido receber preços.
- Comprador:
- Observação para o fornecedor: campo estilo memo. Lembrar com um texto simples, que o que for escrito aqui será enviado ao fornecedor.
Itens:
- Código do item: ao informar o item exibir a descrição do produto e a referência.
- Grade: caso o produto a possua.
- Unidade: trazer as unidades de entrada + unidade padrão do item.
- Quantidade: com duas decimais.
[editar] RN02 - Validação dos campos da cotação
As seguintes validações devem ser feitas:
- Código da cotação: maior que zero. Este campo é gerado automaticamente, ao final da transação.
- Filial: deve ser uma filial existente e ativa.
- Data da cotação: diferente de vazio.
- Validade: diferente de vazio e pelo menos um dia a mais da data da cotação.
- Comprador: existente e ativo.
- Observação: não há validação para este campo, podendo inclusive ser vazio.
Itens:
- Código do item: só não pode ser serviço, podendo ser produto acabado para revenda, matéria-prima, itens de consumo etc.
- Grade: se o item possuir grade, campo obrigatório e vinculado ao produto em questão.
- Unidade: diferente de vazio.
- Quantidade: com duas decimais, e maior que zero.