Example #1
0
        private void Eventos()
        {
            KeyDown   += KeyDowns;
            KeyPreview = true;
            Masks.SetToUpper(this);

            Load += (s, e) => { Start(); };

            Tipo1.Click += (s, e) =>
            {
                Categorias.Enabled = true;
                Fornecedor.Enabled = true;
                imprimir.Visible   = false;
                label4.Text        = @"Despesa:";
                LoadCategorias("Despesas");
            };
            Tipo2.Click += (s, e) =>
            {
                Categorias.Enabled = true;
                Fornecedor.Enabled = false;
                imprimir.Visible   = true;
                label4.Text        = @"Despesa:";
                LoadCategorias("Despesas");
            };

            Tipo3.Click += (s, e) =>
            {
                Categorias.Enabled = false;
                Fornecedor.Enabled = false;
                imprimir.Visible   = false;
                label4.Text        = @"Receita:";
                LoadCategorias("Receitas");
            };

            btnAddCategoria.Click += (s, e) =>
            {
                string categoriasdeContas;
                if (Tipo1.Checked || Tipo2.Checked)
                {
                    categoriasdeContas = "Despesas";
                }
                else
                {
                    categoriasdeContas = "Receitas";
                }

                Home.CategoriaPage = categoriasdeContas;
                var f = new AddCategorias
                {
                    FormBorderStyle = FormBorderStyle.FixedSingle,
                    StartPosition   = FormStartPosition.CenterScreen
                };
                if (f.ShowDialog() == DialogResult.OK)
                {
                    LoadCategorias(categoriasdeContas);
                }
            };

            btnAddFornecedor.Click += (s, e) =>
            {
                Home.pessoaPage = "Fornecedores";
                AddClientes.Id  = 0;
                var f = new AddClientes
                {
                    FormBorderStyle = FormBorderStyle.FixedSingle,
                    StartPosition   = FormStartPosition.CenterScreen
                };
                if (f.ShowDialog() == DialogResult.OK)
                {
                    LoadFornecedores();
                }
            };

            btnSalvar.Click += (s, e) =>
            {
                _modelCaixaMov.id_caixa     = idCaixa;
                _modelCaixaMov.id_formapgto = Dinheiro.Checked ? 1 : Cheque.Checked ? 2 : 1;

                _modelCaixaMov.id_categoria = Validation.ConvertToInt32(Categorias.SelectedValue);
                _modelCaixaMov.id_pessoa    = Validation.ConvertToInt32(Fornecedor.SelectedValue);

                _modelCaixaMov.Tipo = Tipo1.Checked ? 1 : Tipo2.Checked ? 2 : Tipo3.Checked ? 3 : 1;

                var tipo = "";
                if (Tipo1.Checked)
                {
                    tipo = "Saída - Lançamento de Despesa";
                }
                else if (Tipo2.Checked)
                {
                    tipo = "Saída - Sangria";
                }
                else if (Tipo3.Checked)
                {
                    tipo = "Entrada - Acréscimo";
                }

                var formaPgto = "";
                if (Dinheiro.Checked)
                {
                    formaPgto = "Dinheiro";
                }
                else if (Cheque.Checked)
                {
                    formaPgto = "Cheque";
                }

                _modelCaixaMov.Descricao = $"{formaPgto} - {tipo}";
                _modelCaixaMov.Valor     = Validation.ConvertToDouble(Valor.Text);
                _modelCaixaMov.Obs       = Obs.Text;
                if (_modelCaixaMov.Save(_modelCaixaMov))
                {
                    if (Tipo1.Checked)
                    {
                        if (_modelCaixaMov.Id != 0)
                        {
                            _modelTitulo = _modelTitulo.Query().Where("id_caixa_mov", _modelCaixaMov.Id)
                                           .Where("excluir", 0).FirstOrDefault <Titulo>();
                        }

                        _modelTitulo.Tipo               = "Pagar";
                        _modelTitulo.Emissao            = Validation.DateNowToSql();
                        _modelTitulo.Id_Categoria       = _modelCaixaMov.id_categoria;
                        _modelTitulo.Id_Pessoa          = _modelCaixaMov.id_pessoa;
                        _modelTitulo.Total              = _modelCaixaMov.Valor;
                        _modelTitulo.Id_FormaPgto       = _modelCaixaMov.id_formapgto;
                        _modelTitulo.Vencimento         = Validation.DateNowToSql();
                        _modelTitulo.Baixa_data         = Validation.DateNowToSql();
                        _modelTitulo.Baixa_id_formapgto = _modelCaixaMov.id_formapgto;
                        _modelTitulo.Baixa_total        = _modelCaixaMov.Valor;
                        _modelTitulo.Id_Caixa           = idCaixa;
                        _modelTitulo.Id_Caixa_Mov       = _modelCaixaMov.GetLastId();
                        _modelTitulo.Obs = $"Pagamento gerado a partir de um lançamento do caixa. {Obs.Text}";
                        _modelTitulo.Save(_modelTitulo, false);
                    }

                    DialogResult = DialogResult.OK;
                    Close();
                }
            };

            Valor.TextChanged += (s, e) =>
            {
                var txt = (TextBox)s;
                Masks.MaskPrice(ref txt);
            };

            btnApagar.Click += (s, e) =>
            {
                if (_modelCaixaMov.Remove(idMov))
                {
                    var titulo = _modelTitulo.Query().Where("ID_CAIXA_MOV", idMov).FirstOrDefault();
                    if (titulo != null)
                    {
                        _modelTitulo.RemoveIdCaixaMov(idMov);
                    }

                    DialogResult = DialogResult.OK;
                    Close();
                }
            };

            imprimir.Click += (s, e) =>
            {
                _modelCaixa = _modelCaixa.FindById(idCaixa).FirstOrDefault <Model.Caixa>();

                var user     = _modelUsuarios.FindByUserId(_modelCaixa.Usuario).FirstOrDefault();
                var userName = "";
                if (user != null)
                {
                    userName = user.NOME;
                }

                var html   = Template.Parse(File.ReadAllText($@"{Program.PATH_BASE}\html\CupomAssinaturaCaixaMov.html"));
                var render = html.Render(Hash.FromAnonymousObject(new
                {
                    INCLUDE_PATH = Program.PATH_BASE,
                    URL_BASE     = Program.PATH_BASE,
                    Emissao      = DateTime.Now.ToString("dd/MM/yyyy HH:mm"),
                    nrTerminal   = _modelCaixa.Terminal,
                    nrCaixa      = _modelCaixa.Id.ToString(),
                    Responsavel  = userName,
                    Valor        = Valor.Text
                }));

                Browser.htmlRender = render;
                var f = new Browser();
                f.ShowDialog();
            };
        }