UC00066 - Abertura de caixa
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:
1. Usuário acessa a rotina “Menu > Movimentos > Tesouraria> Caixa > Abertura de caixa”.
a. O controle de acesso do sistema verifica se o usuário pode acessar arotina e quais funcionalidades estarão disponíveis para o mesmo.
b. Sistema exibe a tela inicial da rotina de abertura de caixa conformeregra de negócio RN04.
2. Usuário aciona o botão <Abrir caixa>.
a. Sistema exibe tela principal da rotina conforme layout01 em anexo.
3. Usuário preenche os dados referentes à abertura decaixa e aciona o botão <Salvar>. Se de acordo com a regra denegócio RN05, os dados da abertura são salvos.
Fluxos alternativos
Fluxo 1:
1. Usuário acessa a rotina em questão e entra em modode alteração em uma abertura de caixa.
a. Se para o usuário para qual o caixa em questão foi aberto ainda nãorealizou nenhuma movimentação de venda, o sistema permitirá que as alteraçõessejam gravadas normalmente.
b. Se qualquer tipo de movimentação foi realizada no caixa, o sistema nãopermitirá sua alteração e emitirá ao usuário a seguinte mensagem de alerta: Este caixa já foi movimentado apóssua abertura, portanto não será permitido alterar este registro.
2. Usuário acessa a rotina em questão e entra tentaexcluir uma determinada abertura de caixa.
a. Sistema verifica se o usuário que está tentando excluir possui permissãopara excluir.
i. Se o usuário possuir permissão para excluir, será verificado se o caixaem questão já foi movimentado após a sua abertura. Se não houve movimentação aexclusão ocorrerá normalmente mediante a uma mensagem de confirmação.
Se houve movimentação no caixa, o sistema nãopermitirá a sua exclusão e emitirá ao usuário a seguinte mensagem: Este caixa já foi movimentado apósa sua abertura, portanto não será permitido excluir este registro.
ii. Se o usuário não possuir permissão de exclusão esta funcionalidade nãoserá visível/accessível para o mesmo.
3. Usuário faz a abertura do caixa com o parâmetro“Imprimir recibo” ativado na tela. Sistema envia recibo paraimpressora imediatamente após a gravação dos dados sem opção de seleção deformato.
Fluxos de exceção
Fluxo 1:
1. Usuário acessa a rotina em questão e tenta fazer aabertura de um caixa para determinado usuário.
a. Assim que o usuário for informado, o sistema verifica se para o mesmoexiste algum caixa em aberto. Se sim, 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 caixaspendentes de fechamento. Faça o fechamento do(s) caixa(s) em aberto e tentenovamente.
b. Assim que o usuário for informado, será verificado se nos parâmetros doPDV o sistema está configurado para gerar caixa para as vendas do usuário. Sesim, para o usuário/operador em questão deverá ser informado um subcaixa.
Neste caso, assim que o usuário forinformado será verificado se o mesmo é um operador de caixa em seu cadastro ese ele está vinculado a mais de um subcaixa no cadastro de subcaixa. Se sim, osistema não permitirá a abertura de caixa para este usuário e exibirá aseguinte mensagem: Não serápossível abrir um caixa para este usuário/operador pois o mesmo vinculado amais de um subcaixa.
Assim que o usuário forinformado, será verificado se no cadastro do mesmo ele está marcado comooperador de caixa. Se não, o caixa não será aberto e a seguinte mensagem seráexibida: Não será possível abrir caixa para o usuárioinformado, pois o mesmo não está marcado como operador de caixa em seu cadastro
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 foiselecionado.
Na abertura de umcaixa o sistema deverá, se o usuário assim desejar, imprimir um recibo destamovimentação no seguinte formato: