Exemplo n.º 1
0
        // FINALIZAR CAIXA
        //------------------------------------------------------------------------------------------------------------
        private void FinalizarCaixa()
        {
            // Ask USER
            var resp = AbrirDialog($"Você deseja realmente FINALIZAR o caixa da conta: {_caixa.Conta} ?" +
                                   $"\nSaldo Final: {CalculaTotais():c}",
                                   "Finalizar Caixa", DialogType.SIM_NAO, DialogIcon.Question);

            if (resp != DialogResult.Yes)
            {
                return;
            }

            // Ask USER
            resp = AbrirDialog($"Deseja que a data final do caixa seja bloqueada?" +
                               $"\nData Final: {_caixa.DataFinal.ToShortDateString()}",
                               "Bloqueio de Data", DialogType.SIM_NAO_CANCELAR, DialogIcon.Question);

            if (resp == DialogResult.Cancel)
            {
                return;
            }

            try
            {
                // --- Ampulheta ON
                Cursor.Current = Cursors.WaitCursor;

                _caixa.CaixaFinalDoDia = resp == DialogResult.Yes;

                //  Define Values
                _caixa.SaldoFinal     = CalculaTotais();
                _caixa.FechamentoData = DateTime.Today;
                _caixa.IDSituacao     = 2;
                _caixa.Observacao     = txtObservacao.Text;

                // FINALIZE caixa
                _ = cxBLL.FinalizeCaixa(_caixa);

                // change SIT
                propSituacao = 2;

                // CHECK ContaPadrao and change DatePadrao
                //------------------------------------------------------------------------------------------------------------
                DateTime blockDate = _caixa.CaixaFinalDoDia == false ? _caixa.DataFinal : _caixa.DataFinal.AddDays(1);

                if (ContaPadrao().IDConta == _caixa.IDConta)
                {
                    ((frmPrincipal)Application.OpenForms[0]).propDataPadrao = blockDate;
                }
            }
            catch (Exception ex)
            {
                AbrirDialog("Uma exceção ocorreu ao Finalizar o Caixa Atual..." + "\n" +
                            ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation);
            }
            finally
            {
                // --- Ampulheta OFF
                Cursor.Current = Cursors.Default;
            }
        }