Beispiel #1
0
 public void Sortear(UserControlProd prod)
 {
     using (FormNumSorteio formNumSorteio = new FormNumSorteio(prod, infoSort))
     {
         formNumSorteio.ShowDialog(this);
     }
 }
Beispiel #2
0
        public void PreencherProd(UserControlProd p)
        {
            bool            b  = true;
            UserControlProd p1 = new UserControlProd();

            foreach (var item in this.flowLayoutPanelProd.Controls)
            {
                p1 = (UserControlProd)item;

                if (p1.Produto.produtoid == p.Produto.produtoid)
                {
                    b = false;
                    if (FormMessage.ShowMessegeQuestion("Este Prêmio já foi adicionado a lista! Deseja " + (p.Quant > 0 ? "acrescentar mais " : "REMOVER ") + Environment.NewLine +
                                                        string.Format("{0:00}", Math.Abs(p.Quant)) + (Math.Abs(p.Quant) > 1 ? " UNIDADES" : " UNIDADE") + "?") == DialogResult.Yes)
                    {
                        p1.AlterarQuant(p.Quant);
                        listProdAlt.Add(p1);
                    }

                    break;
                }
            }

            if (b)
            {
                this.flowLayoutPanelProd.Controls.Add(p);
                this.listProdAdd.Add(p);
                this.buttonSalvar.Enabled  = true;
                this.buttonRemover.Enabled = true;
            }

            ContarItens();
        }
        private void UserControlProdDescricao_Click(object sender, EventArgs e)
        {
            using (FormDescricao descricao = new FormDescricao(enumTexto.num, "Quantidade:"))
            {
                if (descricao.ShowDialog(this) == DialogResult.Yes)
                {
                    FlowLayoutPanel panel = (FlowLayoutPanel)this.Parent;
                    SorteioAdd      frm1  = (SorteioAdd)Application.OpenForms["SorteioAdd"];
                    this.BackColor      = Color.GreenYellow;
                    labelDescricao.Font = new Font(labelDescricao.Font, FontStyle.Bold);

                    if (frm1 != null)
                    {
                        foreach (var item in panel.Controls)
                        {
                            var desc = (UserControlProdDescricao)item;
                            if (desc.BackColor == Color.GreenYellow && desc.Enabled)
                            {
                                UserControlProd p = new UserControlProd();
                                p.Produto = desc.Prod;
                                p.Quant   = Convert.ToInt32(descricao.Descricao);
                                frm1.PreencherProd(p);
                                break;
                            }
                        }
                        this.Enabled = false;
                        Balloon();
                    }
                }
            }
        }
Beispiel #4
0
        private void buttonRemover_Click(object sender, EventArgs e)
        {
            int n = 0;
            List <UserControlProd> l = new List <UserControlProd>();

            foreach (var item in flowLayoutPanelProd.Controls)
            {
                UserControlProd prod = (UserControlProd)item;

                if (prod.BackColor == Color.Gray)
                {
                    l.Add(prod);
                    ++n;
                }
            }

            if (n == 0)
            {
                FormMessage.ShowMessegeWarning("Selecione um produto para que seja removido!");
            }
            else
            {
                for (int i = 0; i < l.Count; i++)
                {
                    flowLayoutPanelProd.Controls.Remove(l[i]);
                    listProdRem.Add(l[i]);
                }
            }

            ContarItens();
        }
Beispiel #5
0
 private void LimparFlow(FlowLayoutPanel flow)
 {
     foreach (var item in flow.Controls)
     {
         UserControlProd b = (UserControlProd)item;
         b.BackColor = Color.Maroon;
     }
 }
Beispiel #6
0
        private void ContarItens()
        {
            flowLayoutPanelProd.Controls.Clear();
            SorteioItemInfo i = new SorteioItemInfo {
                Sort = infoSort, Prod = new ProdutoInfo()
            };

            if (Form1.Online)
            {
                colItem = (SorteioItemColecao)negSort.ExecutarSorteioItem(enumCRUD.select, i);
            }
            else
            {
                colItem = Form1.colI;
            }

            if (colItem != null)
            {
                foreach (var item in colItem)
                {
                    UserControlProd prod = new UserControlProd(true)
                    {
                        Produto = item.Prod,
                        Quant   = item.Quant
                    };

                    flowLayoutPanelProd.Controls.Add(prod);
                }
            }

            int     totalQuant     = 0;
            decimal totalValorProd = 0;

            foreach (var item in flowLayoutPanelProd.Controls)
            {
                UserControlProd prod = (UserControlProd)item;

                totalQuant     += prod.Quant;
                totalValorProd += (prod.Produto.produtovalor * prod.Quant);
            }

            labelTotalQuant.Text        = "Total de Prêmios: " + string.Format("{0:000}", totalQuant);
            labelTotalValorProd.Text    = "Valor Total de Prêmios: " + string.Format("{0:C2}", totalValorProd);
            labelTotalValorBilhete.Text = "Valor Total de Bilhetes: " + string.Format("{0:C2}", infoSort != null ? infoSort.sorteiobilhetequant * infoSort.sorteiobilhetevalor : 0);

            ListaBilhete();
        }
Beispiel #7
0
        private void ContarItens()
        {
            int     totalQuant     = 0;
            decimal totalValorProd = 0;

            foreach (var item in flowLayoutPanelProd.Controls)
            {
                UserControlProd prod = (UserControlProd)item;

                totalQuant     += prod.Quant;
                totalValorProd += (prod.Produto.produtovalor * prod.Quant);
            }

            labelTotalQuant.Text        = "Total de Prêmios: " + string.Format("{0:000}", totalQuant);
            labelTotalValorProd.Text    = "Valor Total de Prêmios: " + string.Format("{0:C2}", totalValorProd);
            labelTotalValorBilhete.Text = "Valor Total de Bilhetes: " + string.Format("{0:C2}", infoSort != null ? infoSort.sorteiobilhetequant * infoSort.sorteiobilhetevalor : 0);
        }
Beispiel #8
0
        private void ExProd(List <UserControlProd> l, enumCRUD e)
        {
            if (l.Count > 0)
            {
                foreach (var item in l)
                {
                    UserControlProd uProd = item;
                    SorteioItemInfo it    = new SorteioItemInfo
                    {
                        Prod  = uProd.Produto,
                        Quant = uProd.Quant,
                        Sort  = infoSort
                    };

                    negSort.ExecutarSorteioItem(e, it);
                }

                l.Clear();
            }
        }
Beispiel #9
0
 public FormNumSorteio(UserControlProd user, SorteioInfo sort)
 {
     Inicializar();
     this.UserProd = user;
     infoSort      = sort;
 }
Beispiel #10
0
        private void Salvar()
        {
            this.Cursor = Cursors.WaitCursor;
            if (string.IsNullOrEmpty(textBoxDescricaoSort.Text))
            {
                MessageBox.Show("Defina uma descrição para o sorteio!");
                textBoxDescricaoSort.Select();
                return;
            }

            int id;

            negSort = new SorteioNegocio();

            if (infoSort == null)
            {
                infoSort = new SorteioInfo
                {
                    sorteiodata         = dateTimePicker1.Value,
                    sorteiodescricao    = textBoxDescricaoSort.Text,
                    sorteiobilhetequant = Convert.ToInt32(numericUpDown1.Value),
                    sorteiobilhetevalor = Convert.ToDecimal(textBoxValor.Text)
                };

                id = (int)negSort.ExecutarSorteio(enumCRUD.insert, infoSort);

                if (id > 0)
                {
                    infoSort.sorteioid = id;
                    if (flowLayoutPanelProd.Controls.Count > 0)
                    {
                        foreach (Control item in flowLayoutPanelProd.Controls)
                        {
                            UserControlProd uProd = (UserControlProd)item;
                            SorteioItemInfo it    = new SorteioItemInfo
                            {
                                Prod  = uProd.Produto,
                                Quant = uProd.Quant,
                                Sort  = infoSort
                            };
                            negSort.ExecutarSorteioItem(enumCRUD.insert, it);
                        }

                        FormMessage.ShowMessageSave();

                        if (this.Modal)
                        {
                            this.DialogResult = DialogResult.Yes;
                        }
                        else
                        {
                            this.Close();
                        }
                    }
                    else
                    {
                        MessageBox.Show("Nenhum produto foi lançado!");
                    }
                }
                else
                {
                    FormMessage.ShowMessageFalha();
                }
            }
            else
            {
                id = infoSort.sorteioid;

                infoSort = new SorteioInfo
                {
                    sorteiodata         = dateTimePicker1.Value,
                    sorteiodescricao    = textBoxDescricaoSort.Text,
                    sorteiobilhetequant = Convert.ToInt32(numericUpDown1.Value),
                    sorteiobilhetevalor = Convert.ToDecimal(textBoxValor.Text),
                    sorteioid           = id
                };

                negSort.ExecutarSorteio(enumCRUD.update, infoSort);

                ExProd(listProdRem, enumCRUD.delete);
                ExProd(listProdAdd, enumCRUD.insert);
                ExProd(listProdAlt, enumCRUD.update);


                this.Cursor = Cursors.Default;
                FormMessage.ShowMessageSave();
            }
        }
Beispiel #11
0
        private void buttonSort_Click(object sender, EventArgs e)
        {
            negSort = new SorteioNegocio();
            SorteioColecao colSort = (SorteioColecao)negSort.ExecutarSorteio(enumCRUD.select);

            if (colSort != null)
            {
                var colecao = new Form_ConsultarColecao();
                foreach (var item in colSort)
                {
                    Form_Consultar form = new Form_Consultar
                    {
                        Cod       = string.Format("{0:00000}", item.sorteioid),
                        Descricao = item.sorteiodescricao,
                        Objeto    = item,
                    };

                    colecao.Add(form);
                }

                using (FormConsultar_Cod_Descricao consult = new FormConsultar_Cod_Descricao(colecao, "SORTEIO"))
                {
                    if (consult.ShowDialog(this) == DialogResult.Yes)
                    {
                        this.Cursor = Cursors.WaitCursor;
                        infoSort    = (SorteioInfo)consult.Selecionado.Objeto;
                        textBoxDescricaoSort.Text = consult.Selecionado.Descricao;
                        dateTimePicker1.Value     = infoSort.sorteiodata;
                        numericUpDown1.Value      = infoSort.sorteiobilhetequant;
                        textBoxValor.Text         = Convert.ToString(infoSort.sorteiobilhetevalor);

                        flowLayoutPanelProd.Controls.Clear();
                        SorteioItemInfo i = new SorteioItemInfo {
                            Sort = infoSort, Prod = new ProdutoInfo()
                        };
                        SorteioItemColecao colItem = (SorteioItemColecao)negSort.ExecutarSorteioItem(enumCRUD.select, i);

                        if (colItem != null)
                        {
                            foreach (var item in colItem)
                            {
                                UserControlProd prod = new UserControlProd
                                {
                                    Produto = item.Prod,
                                    Quant   = item.Quant
                                };

                                flowLayoutPanelProd.Controls.Add(prod);
                            }

                            ContarItens();
                        }


                        PreencherTree();
                        buttonSalvar.Enabled  = true;
                        buttonRemover.Enabled = true;
                        this.Cursor           = Cursors.Default;
                    }
                }
            }
        }