UC00066 - Abertura de caixa
(→Fluxos de exceção) |
(→Layouts sugeridos) |
||
| Linha 17: | Linha 17: | ||
= Layouts sugeridos = | = Layouts sugeridos = | ||
| − | |||
| − | |||
| − | |||
= Fluxo de eventos = | = Fluxo de eventos = | ||
Edição das 23h15min de 25 de maio de 2014
Conteúdo |
Objetivo
- Manter abertura de caixa
- Gerar movimento de abertura de caixa.
Atores
- Usuário
Pré-requisitos
- Considerar documento Padrões de desenvolvimento.
- No projeto da rotina, em confsrc > META-INF > messages > view.properties definir o nome como Abertura de caixa. Este nome será utilizado para criar a página no Wiki.
- Gerar log/auditoria para as alterações realizadas na rotina.
Resultado esperado
Diagrama de classes
Layouts sugeridos
Fluxo de eventos
Fluxos principais
Fluxo 1: Usuário acessa a rotina Menu > Movimentos > Tesouraria> Controle de caixa/checkouts > Abertura de caixa.
- O controle de acesso do sistema verifica se o usuário pode acessar arotina e quais funcionalidades estarão disponíveis para o mesmo.
- Sistema exibe a tela inicial da rotina de abertura de caixa conforme regra de negócio RN03.
Fluxo 2: Usuário aciona o botão [Adicionar abertura de caixa].
- Sistema exibe tela de manutenção da rotina conforme RN01.
Fluxo 3: Usuário preenche os dados referentes à abertura de caixa e aciona o botão [Salvar].
- Se de acordo com a regra de negócio RN04, os dados da abertura são salvos.
Fluxos alternativos
Fluxo 1: Usuário acessa a rotina em questão e entra em modo de alteração em uma abertura de caixa.
- Se o usuário para qual o caixa em questão foi aberto ainda não realizou nenhuma movimentação de venda, o sistema permitirá que as alterações sejam gravadas normalmente.
- Se qualquer tipo de movimentação foi realizada no caixa, o sistema não permitirá sua alteração e emitirá ao usuário a seguinte mensagem de alerta: Este caixa já foi movimentado e portanto não será permitido alterar seus dados de abertura..
Fluxo 2: Usuário acessa a rotina em questão e entra tenta excluir uma determinada abertura de caixa.
- Sistema verifica se o usuário que está tentando excluir possui permissão para excluir.
- Se o usuário possuir permissão para excluir, será verificado se o caixa em questão já foi movimentado após a sua abertura. Se não houve movimentação a exclusão ocorrerá normalmente mediante a uma mensagem de confirmação. Se houve movimentação no caixa, o sistema não permitirá a sua exclusão e emitirá ao usuário a seguinte mensagem: Este caixa já foi movimentado e portanto não será permitido excluir o registro de sua abertura.
- Se o usuário não possuir permissão de exclusão esta funcionalidade não será visível/accessível para o mesmo.
Fluxo 3: Usuário faz a abertura do caixa com o parâmetro Imprimir recibo ativado na tela.
- Sistema envia recibo para impressora imediatamente após a gravação dos dados sem opção de seleção de formato.
Fluxos de exceção
Fluxo 1: Usuário informa na abertura de um determinado caixa o mesmo subcaixa do configurado como subcaixa da tesouraria nos parâmetros da rotina em questão.
- O sistema deverá abortar a abertura do caixa e emitir ao usuário a seguinte mensagem de alerta: O subcaixa XXXXX esta sendo utilizado nos parâmetros da rotina em questão como subcaixa de tesouraria e portanto não será possível utiliza-lo na abertura de caixa.
Fluxo 2: Usuário acessa a rotina em questão e tenta fazer a abertura de um caixa para um usuário que já possui um caixa aberto em seu nome.
- A abertura de um novo caixa não será permitida e a seguinte mensagem de alerta será exibida: O usuário informado possui um ou mais caixas pendentes de fechamento. Faça o fechamento do(s) caixa(s) em aberto e tente novamente.
Fluxo 3: Com o PDV configurado para gerar caixa para as vendas de cada usuário, ocorre a tentativa de abertura de caixa para um usuário que está vinculado a mais de um subcaixa (cadastro de subcaixa).
- O sistema não permitirá a abertura de caixa para este usuário e exibirá a seguinte mensagem de alerta: Não será possível abrir um caixa para este usuário/operador pois o mesmo vinculado a mais de um subcaixa (verifique o cadastro de subcaixa).
Regras de negócio
RN01 - Tela de manutenção
Descrição dos campos e funcionalidades da rotina:
- Data: Neste campo deverá ser informada a data em que será feita a abertura de caixa. A informação da data é obrigatória e a mesma não poderá ser menor que a data de movimento (data utilizada no login).
- Valor suprimento: Neste campo deverá ser informado o valor com qual será aberto o caixa. Esta informação é obrigatória e somente serão aceitos valores maiores ou iguais a zero.
- Usuário: Neste campo deverá ser informado o usuário para qual o caixa será aberto. Esta informação é obrigatória. Ao digitar o nome do usuário o sistema fará uma pesquisa dinâmica dentre os usuários cadastrados a exemplo de como ocorre nos campos de descrição de clientes, produtos e etc.
- Subcaixa: Caso o PDV esteja configurado para utilizar fechamento de caixa e também gerar movimento de caixa para cada venda do usuário, a informação de um subcaixa será obrigatória na abertura de caixa, caso contrário este campo ficará desabilitado.
- Turno: Este campo permitirá que um ou mais turnos sejam atribuídos à abertura de caixa do usuário. O sistema permitirá que sejam marcados 4 turnos conforme segue abaixo:
- 1º turno
- 2º turno
- 3º turno
- 4º turno
- Imprimir recibo: Com este parâmetro ativado, após a gravação dos dados o sistema enviará a impressão do recibo diretamente para impressora.
RN02 - Parâmetros
Ao acessar este botão o usuário poderá definir de que forma serão gerados os movimentos de suprimento de caixa conforme segue abaixo.
- Subcaixa da tesouraria: Neste campo deverá ser informado o subcaixa da tesouraria que será utilizado ao para o movimento de débito ou crédito nas contas mais abaixo.
- Conta caixa para débito de suprimento: Neste campo deverá ser informada uma conta caixa de débito para receber um lançamento de débito no valor em que cada caixa foi aberto.
- Conta caixa para crédito de suprimento: Neste campo deverá ser informada uma conta caixa de crédito para receber um lançamento de crédito no valor em que cada caixa foi aberto. Ao gerar o crédito para esta conta será utilizado o subcaixa do usuário.
RN03 - Tela de pesquisa
Na tela inicial da rotina em questão deverá ser utilizado o grid que utiliza o mecanismo de pesquisa lucene. As colunas a serem exibidas no grid serão:
- DATA DA ABERTURA: Data em que foram realizadas as aberturas de caixa.
- VALOR SUPRIMENTO: Valor inicial atribuído para o caixa no momento de sua abertura.
- USUÁRIO: Nome do usuário para qual o caixa foi aberto.
- SUBCAIXA: Nome do subcaixa utilizado na abertura do caixa.
- TURNOS: Turnos marcados na abertura do caixa.
- STATUS: Informará se o caixa está aberto ou fechado.
RN04 - Regras gerais
Integração com o PDV
Quando o PDV estiver configurado para utilizar fechamento de caixa e também gerar movimento de caixa para cada venda do usuário, se nos parâmetros da rotina de abertura de caixa não estiverem definidas as contas de débito e crédito juntamente com o subcaixa da tesouraria, antes de realizar a abertura de um caixa o sistema deverá alertar ao usuário que é necessário acessar os parâmetros e fazer as devidas configurações.
A abertura de caixa só poderá ser gravada se:
- A data informada for maior ou igual à data demovimento.
- Se o valor informado para abertura for maior ou igual a zero.
- Se foi informado um usuário que em seu cadastro esteja marcado como operador de caixa e/ou esteja vinculado ao subcaixa (quando utilizado).
- Se foi informado um subcaixa
- Se pelo menos um turno foi selecionado.