示例#1
0
        /// <summary>
        ///     Manipula todos os eventos do form
        /// </summary>
        private void Eventos()
        {
            Shown += (s, e) =>
            {
                KeyDown   += KeyDowns;
                KeyPreview = true;

                if (IdProduto > 0)
                {
                    _mItem = _mItem.FindById(IdProduto).FirstOrDefault <Item>();
                }
                else
                {
                    return;
                }

                Combos.DataSource    = _mItemCombo.GetCombos(_mItem.Combos);
                Combos.DisplayMember = "Nome";
                Combos.ValueMember   = "Id";

                SetHeadersTableItens(GridListaItens);
                SetHeadersTableItensCategoria(GridListaSelectItens);
            };

            btnCombo.Click += (s, e) =>
            {
                if (Combos.SelectedValue.ToString() == "0")
                {
                    Alert.Message("Opps", "Selecione um combo válido.", Alert.AlertType.error);
                    return;
                }

                listProdutos.Clear();
                listProdutosSelecionados.Clear();
                GridListaItens.Rows.Clear();
                GridListaSelectItens.Rows.Clear();
                SepareIds();
                LoadDataTableItens();
            };

            btnInserir.Click += (s, e) =>
            {
                if (GridListaItens.Rows.Count < 0)
                {
                    return;
                }

                var count = GridListaItens.Rows.Cast <DataGridViewRow>().Count(row => (bool)row.Cells["Incluir"].Value) - 1;

                listProdutosIncluir.Clear();
                foreach (DataGridViewRow row in GridListaItens.Rows)
                {
                    if (!(bool)row.Cells["Incluir"].Value)
                    {
                        continue;
                    }

                    var idItem   = Validation.ConvertToInt32(row.Cells["ID"].Value.ToString());
                    var dataItem = _mItem.FindById(idItem).FirstOrDefault <Item>();

                    var valorVenda = dataItem.ValorVenda - 1.00;

                    var pedidoItem = new PedidoItem();
                    pedidoItem.SetId(0)
                    .SetTipo(dataItem.Tipo)
                    .SetPedidoId(IdPedido)
                    .SetItem(dataItem)
                    .SetQuantidade(1)
                    .SetMedida(dataItem.Medida);
                    pedidoItem.Adicional = row.Cells["AddonSelected"].Value.ToString();

                    if (IdProduto == dataItem.Id)
                    {
                        var valorCombo = Validation.ConvertToDouble(txtComboValor.Text.Replace("Valor do Combo: R$ ", ""));

                        pedidoItem.ValorVenda = valorCombo - count;
                        pedidoItem.Total      = valorCombo - count;
                        pedidoItem.TotalVenda = valorCombo - count;
                    }
                    else
                    {
                        pedidoItem.ValorVenda = dataItem.ValorVenda - valorVenda;
                        pedidoItem.Total      = dataItem.ValorVenda - valorVenda;
                        pedidoItem.TotalVenda = dataItem.ValorVenda - valorVenda;
                    }

                    switch (Home.pedidoPage)
                    {
                    case "Remessas":
                        pedidoItem.Status = "Remessa";
                        break;

                    case "Delivery":
                    case "Balcao":
                        pedidoItem.Status = "FAZENDO";
                        break;
                    }

                    pedidoItem.Save(pedidoItem);

                    listProdutosIncluir.Add(pedidoItem);

                    new Controller.Estoque(pedidoItem.GetLastId(), Home.pedidoPage, "Adicionar Produto").Remove().Item();
                }

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

            btnContinuar.Click += (s, e) =>
            {
                DialogResult = DialogResult.Ignore;
                Close();
            };

            GridListaSelectItens.CellClick += (s, e) =>
            {
                if (GridListaSelectItens.Columns[e.ColumnIndex].Name == "Incluir")
                {
                    GridListaItens.Rows.Add(
                        true,
                        GridListaSelectItens.SelectedRows[0].Cells["Photo"].Value,
                        GridListaSelectItens.SelectedRows[0].Cells["ID"].Value,
                        GridListaSelectItens.SelectedRows[0].Cells["Item"].Value,
                        GridListaSelectItens.SelectedRows[0].Cells["Valor"].Value,
                        $"{Validation.FormatPrice(0, true)}",
                        GridListaSelectItens.SelectedRows[0].Cells["Estoque Atual"].Value,
                        "",
                        GridListaSelectItens.SelectedRows[0].Cells["Valor"].Value,
                        Resources.menu20x
                        );

                    GridListaSelectItens.Rows.Clear();
                    LoadDataTableItens();

                    Alert.Message("Pronto", "Item adicionado.", Alert.AlertType.success);
                }
            };

            GridListaSelectItens.CellMouseEnter += (s, e) =>
            {
                if (e.ColumnIndex < 0 || e.RowIndex < 0)
                {
                    return;
                }

                var dataGridView = s as DataGridView;
                if (GridListaSelectItens.Columns[e.ColumnIndex].Name == "Incluir")
                {
                    dataGridView.Cursor = Cursors.Hand;
                }
            };

            GridListaSelectItens.CellMouseLeave += (s, e) =>
            {
                if (e.ColumnIndex < 0 || e.RowIndex < 0)
                {
                    return;
                }

                var dataGridView = s as DataGridView;
                if (GridListaSelectItens.Columns[e.ColumnIndex].Name == "Incluir")
                {
                    dataGridView.Cursor = Cursors.Default;
                }
            };

            GridListaItens.CellClick += (s, e) =>
            {
                if (GridListaItens.Columns[e.ColumnIndex].Name == "Incluir")
                {
                    GridListaItens.SelectedRows[0].Cells["Incluir"].Value = (bool)GridListaItens.SelectedRows[0].Cells["Incluir"].Value == false;
                }

                if (GridListaItens.Columns[e.ColumnIndex].Name == "Adicional")
                {
                    AdicionaisDispon.ValorAddon    = 0;
                    AdicionaisDispon.AddonSelected = GridListaItens.SelectedRows[0].Cells["AddonSelected"].Value != null
                        ? GridListaItens.SelectedRows[0].Cells["AddonSelected"].Value.ToString()
                        : "";
                    AdicionaisDispon.IdPedidoItem = 0;
                    AdicionaisDispon.IdItem       = Validation.ConvertToInt32(GridListaItens.SelectedRows[0].Cells["ID"].Value);
                    var form = new AdicionaisDispon {
                        TopMost = true
                    };
                    if (form.ShowDialog() == DialogResult.OK)
                    {
                        var getValor = Validation.ConvertToDouble(GridListaItens.SelectedRows[0].Cells["Unitario"].Value
                                                                  .ToString().Replace("R$ ", ""));
                        GridListaItens.SelectedRows[0].Cells["Valor Adicional"].Value = Validation.FormatPrice(AdicionaisDispon.ValorAddon, true);
                        GridListaItens.SelectedRows[0].Cells["AddonSelected"].Value   = AdicionaisDispon.AddonSelected;

                        txtComboValor.Text = $"Valor do Combo: {Validation.FormatPrice(ValorCombo + AdicionaisDispon.ValorAddon, true)}";
                    }
                }
            };

            GridListaItens.CellMouseEnter += (s, e) =>
            {
                if (e.ColumnIndex < 0 || e.RowIndex < 0)
                {
                    return;
                }

                var dataGridView = s as DataGridView;
                if (GridListaItens.Columns[e.ColumnIndex].Name == "Incluir" ||
                    GridListaItens.Columns[e.ColumnIndex].Name == "Adicional")
                {
                    dataGridView.Cursor = Cursors.Hand;
                }
            };

            GridListaItens.CellMouseLeave += (s, e) =>
            {
                if (e.ColumnIndex < 0 || e.RowIndex < 0)
                {
                    return;
                }

                var dataGridView = s as DataGridView;
                if (GridListaItens.Columns[e.ColumnIndex].Name == "Incluir" ||
                    GridListaItens.Columns[e.ColumnIndex].Name == "Adicional")
                {
                    dataGridView.Cursor = Cursors.Default;
                }
            };
        }