UC00090 - Reajuste de preços por custo alterado

De Wiki Java - Interno
Edição feita às 17h20min de 26 de fevereiro de 2014 por Daniel (disc | contribs)

Ir para: navegação, pesquisa

Conteúdo

Objetivo

  • Permitir ao usuário do sistema reajustar o preço de venda de seus produtos a partir das alterações de custo ocorridas nos mesmos.

Atores

  • Usuário do sistema

Pré-requisitos

  • Considerar documento Padrões de desenvolvimento.
  • No projeto da rotina, em confsrc > META-INF > messages > view.properties definir o nome como Reajuste de preço por custo alterado. Este nome será utilizado para criar a página no Wiki.

Resultado esperado

  • Atualizar preço de venda dos produtos.

Diagrama de classes

Fluxo de eventos

Fluxos principais

Fluxo 1: Usuário acessa a rotina Menu > Movimentos > Faturamento > Reajuste de preços > Por custo alterado.

  • Sistema exibe a tela principal da rotina em questão com a aba de filtragem aberta, conforme layout sugerido Filtros.


Fluxo 2: Usuário informa os filtros desejados e aciona o botão <Consultar>.

  • Sistema lista resultados encontrados em um grid conforme descreve a regra de negócio RN01.


Fluxo 3: No grid o usuário marca para reajuste os produtos desejados, reajusta preço dos produtos selecionado uma das três opções de reajuste disponíveis, e aciona o botão <Salvar>.

  • Sistema procede, de acordo com a opção de reajuste utilizada, conforme descrito na regra de negócio RN02.

Fluxos alternativos

Fluxo 1: Usuário seleciona no grid os produtos cujo preço de venda deseja reajustar e opta pelo tipo de reajuste Manual acionando o botão <OK> logo em seguida.

  • Sistema habilita, para os registros selecionados, as colunas NOVO % MARKUP e NOVO PREÇO DE VENDA.


Fluxo 2: No reajuste manual usuário informa no grid novo markup e/ou preço de venda somente para algumas tabelas de preço ou somente para alguns produtos, deixando alguns registros inalterados e acionando o botão <Salvar> em seguida.

  • Ao exibir o grid, inicialmente o sistema exibe a coluna NOVO PREÇO DE VENDA já calculada com base no % MARKUP ATUAL e no CUSTO ALTERADO por padrão.
  • Para registros que usuário não alterou manualmente o NOVO PREÇO DE VENDA ou NOVO % MARKUP o preço de venda será o preço de cada tabela calculado conforme tópico acima.
  • Ao salvar o reajuste, serão considerados somente os novos preços de venda de produtos selecionados. Produtos que não foram selecionados não sofrerão nenhuma alteração no preço, apesar do mesmo ser calculado/exibido no grid.
  • Caso usuário altere o novo markup o sistema calculará automaticamente o novo preço de venda com base no custo alterado. Caso usuário altere o novo preço de venda, o sistema calculará automaticamente o novo markup com base no custo alterado.


Fluxo 3: Em qualquer um dos 3 tipos de reajuste, os novos preços de venda dos produtos selecionados ficaram iguais ou abaixo do seu respectivo CUSTO ALTERADO.

  • Quando botão <Salvar> for acionado o sistema procederá com o reajuste normalmente, mas exibirá ao usuário a seguinte mensagem de confirmação: Atenção! Após o reajuste o preço de venda dos produtos abaixo, em algumas tabelas de preço, ficará igual ou MENOR que seus respectivos preços de custo. Deseja realmente prosseguir?
CÓDIGO DESCRIÇÃO
0000012701 PLAYSTATION 4
0000008701 XBOX 360
0000078901 JACK DANIEL´S

Fluxos de exceções

Fluxo 1: Na aba de consulta usuário informa filtros para os quais não existem produtos cujo preço de custo foi alterado acionando o botão <Consultar> logo em seguida.

  • Após constatar que não existem resultados a serem exibidos sistema emite ao usuário a seguinte mensagem de alerta: Não há produtos com alteração no preço de custo que correspondam aos filtros utilizados.


Fluxo 2: Na rotina em questão usuário seleciona um dos 3 tipos de reajuste disponíveis e aciona o botão <OK> sem que nenhum registro esteja selecionado no grid.

  • Sistema aborta a operação e emite ao usuário a seguinte mensagem de alerta: Antes de selecionar o tipo de reajuste desejado é necessário selecionar no grid quais produtos terão o preço reajustado.


Fluxo 3: Na tela de reajuste de preços, após filtrar/listar produtos no grid usuário aciona o botão <Salvar> sem selecionar nenhum produto no grid.

  • Sistema aborta a operação e emite ao usuário a seguinte mensagem de alerta: Nenhum produto foi selecionado para reajuste.

Regras de negócio

RN01 - Filtragem

  1. Período: Neste campo o usuário poderá filtrar produtos cujo preço de custo foi alterado via entrada de nota ou manualmente no período informado. Ao lado do campo em questão o usuário deverá informar o tipo de período que deseja utilizar escolhendo as opções Alteração manual ou Notas de entrada.
  2. Fornecedor: Neste campo o usuário poderá filtrar por um fornecedor específico produtos que tiveram seu custo alterado no período informado.
  3. Botão <Consultar>: Quando acionado buscará produtos cujo preço de custo foi alterado com base nos filtros informados listando os resultados encontrados no grid.
  4. Botão <Limpar>: Limpa todos os campos da aba de filtragem.


Os resultados encontrados serão listados no grid da seguinte maneira:

  • SELECIONAR: Coluna que permite ao usuário selecionar um ou mais produtos ou todos os produtos, seguindo modelo da respectiva coluna no grid da liquidação em lote. Somente terão preço reajustado os produtos que estiverem selecionados no grid.
  • ORIGEM ALTERAÇÃO: Nesta coluna será identificado o movimento que fez a alteração no custo do produto. Se a alteração no custo foi feita manualmente esta coluna exibirá o texto "MANUAL". Caso custo do produto tenha sido alterado em função de uma nota de entrada será exibido o ícone NF e a palavra "ENTRADA" à sua direita. O ícone será um link que quando acionado, exibirá em uma janela pop-up o a nota de entrada em questão. Se o custo foi alterado através da rotina de entrada/saídas, será exibido "ENTRADA/SAÍDA".
  • DATA: Data em que ocorreu alteração no custo.
  • PRODUTO: Coluna que exibe o código e descrição do produto cujo custo sofreu alteração.
  • GRADE: Coluna que exibe a grade do produto que sofreu/originou alteração no custo. Para produtos sem grade será exibido GRADE PADRÃO.
  • UNIDADE: No caso de alteração manual, exibe a unidade padrão do produto. No caso de nota de entrada e entrada/saída, exibe a unidade em que o produto foi movimentado.
  • CUSTO ALTERADO: Exibe o preço de custo do produto que foi alterado na movimentação em questão.
  • CUSTO ANTERIOR: Exibe o preço de custo do produto anterior à alteração em questão.
    • TABELA DE PREÇO: Nome das tabelas de preço relacionadas ao produto. Serão consideradas somente as tabelas de preço que em seu cadastro possuem marcada a filial logada e que foram relacionadas no cadastro de produtos.
    • MARKUP ATUAL: Percentual de markup configurado para as tabelas de preço no cadastro do produto.
    • PREÇO DE VENDA ATUAL: Preço de venda configurado para as tabelas de preço no cadastro do produto.
    • NOVO MARKUP: Nesta célula do grid, para cada tabela de preço, poderá ser digitado pelo usuário um novo percentual de markup para o produto. Assim que o markup for digitado, quando o foco for posicionado sobre a próxima célula o sistema calculará automaticamente o novo preço com base no novo markup e no custo alterado.
    • NOVO PREÇO: Nesta célula do grid, para cada tabela de preço, poderá ser digitado pelo usuário um novo preço de venda para o produto. Assim que o preço for digitado, quando o foco for posicionado sobre o próximo campo o sistema calculará o novo markup com base no novo preço e no custo alterado.

RN02 - Tipos de reajuste no preço de venda

O usuário poderá optar por reajustar o preço de venda dos produtos com base na alteração feita no custo dos mesmos de diferentes formas. Cada forma de reajuste terá suas particularidades e quando selecionada, habilitará ao usuário diferentes opções conforme tópicos abaixo.

    Antes de selecionar o tipo de reajuste de preço desejado o usuário deverá selecionar no grid os produtos cujo
    preço de venda deseja reajustar.

Uma vez que o usuário selecionar um tipo de reajuste de preço e acionar o botão <OK> logo à direita do mesmo, o sistema desabilitará para seleção os demais tipos de reajuste. Caso usuário deseje utilizar outro tipo de reajuste ele deverá acionar o botão <Limpar> na parte inferior da rotina. O botão limpar irá descartar todos os dados alterados no grid voltando a rotina a seu estado inicial, mas mantendo no grid a última consulta realizada.

Reajuste manual

Com esta opção ativada o usuário poderá alterar manualmente no grid, para cada produto selecionado, as colunas NOVO % MARKUP e NOVO PREÇO DE VENDA. Sempre que uma destas colunas for alterada, o sistema calculará o valor da outra automaticamente com base no novo valor e no CUSTO ALTERADO do produto.

Reajuste com base na fórmula de preço de venda

Com esta opção selecionada, ao acionar o botão <OK> o sistema irá reajustar o preço de venda de todas as tabelas de preço de todos os produtos selecionados no grid com base na fórmula de preço de venda configurada para a filial logada. Neste tipo de reajuste o markup já configurado nas tabelas de preço para cada produto será mantido.

Reajuste com base em uma tabela de preço

Com esta opção selecionada ao acionaro o botão <OK> o sistema exibirá uma tela pop-up com os seguintes dados:

  1. Tabela de preço padrão: Lista a tabela de preço preço cadastrada como padrão no sistema. Este campo é somente leitura.
  2. Grid: Lista as demais tabelas de preço cadastradas no sistema (com exceção da padrão) com as seguintes colunas:
    • TABELA DE PREÇO: Nome da tabela de preço. Serão listadas somente tabelas de preço configuradas para a filial logada e inclusas nos parâmetros do cadastro de produtos.
    • % DE REAJUSTE: Coluna onde o usuário poderá informar um percentual de reajuste para a tabela em questão com base na tabela padrão.
    • TIPO DE REAJUSTE: Coluna onde o usuário deverá selecionar, caso tenha reajuste informado, se o mesmo será acima ou abaixo com base na tabela padrão.
  3. Botão <Limpar>: Limpa todos os dados informados voltando a tela a seu estado inicial.
  4. Botão <Salvar>: Salva as alterações feitas fechando a tela pop-up e transferindo-as para a tela anterior.
  5. Botão <Cancelar> : Fecha a tela e descarta todos as alterações feitas diante mensagem de confirmação.

RN03 - Regras gerais

  1. Se desejar, o usuário poderá utilizar em um mesmo movimento de reajuste de preço, os 3 diferentes tipos de reajuste em sequências diferentes.
  2. Os reajustes realizados nos preços de venda dos itens deverão ser registrados na estrutura de histórico de preços citada na regra de negócio RN14 do caso de uso UC00078 - Cadastro de produto acabado.

RN04 - Etiquetas

Será possível emitir etiquetas de preço para os produtos que tiveram seu preço de custo/venda alterados através da rotina de emissão de etiquetas filtrando por período de alteração no preço (UC00079 - Impressão de Etiquetas).

Layout sugerido

Ferramentas pessoais
Espaços nominais

Variantes
Visualizações
Ações
Navegação
Ferramentas