コード例 #1
0
        private void FPreco_Lancamento_Shown(object sender, EventArgs e)
        {
            try
            {
                Padroes();

                if (Modo == Modo.Cadastrar)
                {
                    preco = new TB_EST_PRECO();
                }
                else if (Modo == Modo.Alterar)
                {
                    if (preco == null)
                    {
                        Excessoes.Alterar();
                    }

                    // Colocado a vericação para que quando não tiver preço no produto lançado no PDV, caia como alteração com os valores pré cadastrados.
                    if (preco.ID_PRECO.TemValor())
                    {
                        teID_PRECO.Text = preco.ID_PRECO.ToString();
                    }

                    beID_PRODUTO.Text = preco.ID_PRODUTO.ToString();
                    beID_PRODUTO_Leave(null, null);
                    rgTP_PRECO.SelectedIndex = preco.TP_PRECO.Validar() == "V" ? 0 : 1;
                    seVL_PRECO.Value         = preco.VL_PRECO.Padrao();
                }
            }
            catch (Exception excessao)
            {
                excessao.Validar();
            }
        }
コード例 #2
0
        public void Gravar(TB_EST_PRECO preco, ref int posicaoTransacao)
        {
            try
            {
                Conexao.Iniciar(ref posicaoTransacao);

                var cancelar = Conexao.BancoDados.TB_EST_PRECOs.Where(a => a.ID_PRODUTO == preco.ID_PRODUTO && a.ID_PRECO != preco.ID_PRECO);
                foreach (var registro in cancelar)
                {
                    Deletar(registro, ref posicaoTransacao);
                }

                preco.ID_PRECO = (Conexao.BancoDados.TB_EST_PRECOs.Where(a => a.ID_PRODUTO == preco.ID_PRODUTO).Any() ? Conexao.BancoDados.TB_EST_PRECOs.Where(a => a.ID_PRODUTO == preco.ID_PRODUTO).Max(a => a.ID_PRECO) : 0) + 1;
                Conexao.BancoDados.TB_EST_PRECOs.InsertOnSubmit(preco);

                Conexao.Enviar();

                Conexao.Finalizar(ref posicaoTransacao);
            }
            catch (Exception excessao)
            {
                Conexao.Voltar(ref posicaoTransacao);
                throw excessao;
            }
        }
コード例 #3
0
        public void Deletar(TB_EST_PRECO preco, ref int posicaoTransacao)
        {
            try
            {
                Conexao.Iniciar(ref posicaoTransacao);

                var existente = Conexao.BancoDados.TB_EST_PRECOs.FirstOrDefault(a => a.ID_PRODUTO == preco.ID_PRODUTO && a.ST_ATIVO == true);
                if (existente != null)
                {
                    existente.ST_ATIVO = false;
                }

                Conexao.Enviar();

                Conexao.Finalizar(ref posicaoTransacao);
            }
            catch (Exception excessao)
            {
                Conexao.Voltar(ref posicaoTransacao);
                throw excessao;
            }
        }
コード例 #4
0
        public override void Gravar()
        {
            try
            {
                Validar();

                preco            = new TB_EST_PRECO();
                preco.ID_PRECO   = beID_PRODUTO.Text.ToInt32().Padrao();
                preco.ID_PRODUTO = beID_PRODUTO.Text.Trim().ToInt32().Padrao();
                preco.TP_PRECO   = rgTP_PRECO.SelectedIndex == 0 ? "V" : "C";
                preco.VL_PRECO   = seVL_PRECO.Value;
                preco.ST_ATIVO   = true;

                var posicaoTransacao = 0;
                new QPreco().Gravar(preco, ref posicaoTransacao);

                base.Gravar();
            }
            catch (Exception excessao)
            {
                excessao.Validar();
            }
        }