コード例 #1
0
ファイル: Program.cs プロジェクト: daguiarbr/FactoryMethod
        static void Main(string[] args)
        {
            CartaoFactory cartaoFactory = null;

            Console.Write("Digite o tipo de cartão que gostaria de obter:");
            string console = Console.ReadLine();

            switch (console.ToLower())
            {
            case "black":
                cartaoFactory = new BlackFactory(50000, 0);
                break;

            case "titanium":
                cartaoFactory = new TitaniumFactory(100000, 500);
                break;

            case "platinum":
                cartaoFactory = new PlatinumFactory(500000, 1000);
                break;

            default:
                break;
            }

            CartaoCredito cartaoCredito = cartaoFactory.BuscarCartaoCredito();

            Console.WriteLine("\nOs detalhes do seu cartão estão abaixo: \n");
            Console.WriteLine("Tipo do Cartao: {0}\nCrédito limite: {1}\nCobrança Anual: {2}",
                              cartaoCredito.TipoCartao, cartaoCredito.LimiteCredito, cartaoCredito.CobrancaAnual);
            Console.ReadKey();
        }
コード例 #2
0
        public AssinaturaVINDIRequest Salvar(Cliente cliente, Assinatura assinatura, CartaoCredito cartao)
        {
            var clienteVINDI = ObterCliente(cliente.Email);
            var customer     = new ClienteVINDI();

            if (clienteVINDI == null)
            {
                customer = SalvarCliente(cliente, assinatura, cartao);
            }
            else
            {
                customer = clienteVINDI;
            }

            if (customer == null)
            {
                return(null);
            }

            if (assinatura.TipoPagamento == "credit_card")
            {
                var profile           = SalvarProfile(cartao, customer.id);
                var assinaturaRetorno = SalvarAssinatura(assinatura, customer.id, profile.id);

                EnviarDadosCliente(cliente, assinatura);
                return(assinaturaRetorno);
            }
            else
            {
                var assinaturaRetorno = SalvarAssinaturaBoleto(assinatura, customer.id);
                EnviarDadosCliente(cliente, assinatura);
                return(assinaturaRetorno);
            }
        }
コード例 #3
0
        public override void Alterar(EntidadeDominio entidade)
        {
            if (connection.State == ConnectionState.Closed)
            {
                connection.Open();
            }
            CartaoCredito cc = (CartaoCredito)entidade;

            pst.CommandText = "UPDATE tb_cartao_credito SET nome_impresso_cc = :1, numero_cc =:2, bandeira_cc_fk = :3, codigo_seguranca_cc = :4 WHERE id_cc = :5";
            parameters      = new NpgsqlParameter[]
            {
                new NpgsqlParameter("1", cc.NomeImpresso),
                new NpgsqlParameter("2", cc.NumeroCC),
                new NpgsqlParameter("3", cc.Bandeira.ID),
                new NpgsqlParameter("4", cc.CodigoSeguranca),
                new NpgsqlParameter("5", cc.ID)
            };

            pst.Parameters.Clear();
            pst.Parameters.AddRange(parameters);
            pst.Connection  = connection;
            pst.CommandType = CommandType.Text;
            pst.ExecuteNonQuery();
            if (ctrlTransaction == true)
            {
                pst.CommandText = "COMMIT WORK";
                connection.Close();
            }
            return;
        }
コード例 #4
0
        // GET: Pagamento
        public ActionResult Index()
        {
            try
            {
                formaPagamento = new FormaPagamento();
                cartaoCredito  = new CartaoCredito();

                formaPagamento = ps.GetFormaPagamento(Global.Global.Cliente);
                cartaoCredito  = ps.GetCartaoCredito(formaPagamento);

                Dados d1 = new Dados();
                ViewBag.Layout = d1.getLayout();

                if (cartaoCredito == null)
                {
                    ViewBag.CartaoCredito = c;

                    return(View());
                }

                ViewBag.CartaoCredito = cartaoCredito;



                return(View());
            }
            catch
            {
                cartaoCredito         = new CartaoCredito();
                ViewBag.CartaoCredito = cartaoCredito;

                return(View());
            }
        }
コード例 #5
0
        public override void Salvar(EntidadeDominio entidade)
        {
            if (connection.State == ConnectionState.Closed)
            {
                connection.Open();
            }
            CartaoCredito cc = (CartaoCredito)entidade;

            pst.CommandText = "INSERT INTO tb_cartao_credito (nome_impresso_cc, numero_cc, bandeira_cc_fk, codigo_seguranca_cc) VALUES (:1, :2, :3, :4) RETURNING id_cc ";
            parameters      = new NpgsqlParameter[]
            {
                new NpgsqlParameter("1", cc.NomeImpresso),
                new NpgsqlParameter("2", cc.NumeroCC),
                new NpgsqlParameter("3", cc.Bandeira.ID),
                new NpgsqlParameter("4", cc.CodigoSeguranca)
            };

            pst.Parameters.Clear();
            pst.Parameters.AddRange(parameters);
            pst.Connection  = connection;
            pst.CommandType = CommandType.Text;
            cc.ID           = entidade.ID = (int)pst.ExecuteScalar();
            // já executa o comando na linha anterior
            //pst.ExecuteNonQuery();

            if (ctrlTransaction == true)
            {
                pst.CommandText = "COMMIT WORK";
                connection.Close();
            }
            return;
        }
コード例 #6
0
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                CartaoCredito _cartaoCredito = (CartaoCredito)cartaoCreditoBindingSource.Current;

                if (estado.Equals(EstadoFormulario.INSERIR))
                {
                    long codCartao = GerenciadorCartaoCredito.GetInstance().Inserir(_cartaoCredito);
                    codCartaoTextBox.Text = codCartao.ToString();
                }
                else
                {
                    GerenciadorCartaoCredito.GetInstance().Atualizar(_cartaoCredito);
                }
                cartaoCreditoBindingSource.EndEdit();
            }
            catch (DadosException de)
            {
                cartaoCreditoBindingSource.CancelEdit();
                throw de;
            }
            finally
            {
                habilitaBotoes(true);
                btnBuscar.Focus();
            }
        }
コード例 #7
0
        public IActionResult AdicionarNovoCartao(DetalhesCartaoModel novoCartao)
        {
            _vh = new DetalhesCartaoViewHelper
            {
                ViewModel = novoCartao
            };

            CartaoCredito cartao = (CartaoCredito)_vh.Entidades[typeof(Telefone).Name];

            cartao.Bandeira = _facade.GetEntidade(cartao.Bandeira);

            Cliente clienteDb = _facade.GetAllInclude(GetClienteComEmail());

            clienteDb.Cartoes.Add(cartao);

            string msg = _facade.Editar(clienteDb);

            if (msg == "")
            {
                return(RedirectToAction(nameof(Detalhes)));
            }
            TempData["Alert"] = msg;

            return(RedirectToAction(nameof(Detalhes)));
        }
コード例 #8
0
        public IActionResult EditarCartao(DetalhesCartaoModel cartao)
        {
            _vh = new DetalhesCartaoViewHelper
            {
                ViewModel = cartao
            };

            CartaoCredito carNovo = (CartaoCredito)_vh.Entidades[typeof(CartaoCredito).Name];

            Cliente c = _facade.GetAllInclude(GetClienteComEmail());

            var carDb = c.Cartoes.Where(t => t.Id == carNovo.Id).FirstOrDefault();

            carDb.Bandeira     = _facade.GetEntidade(carNovo.Bandeira);
            carDb.Codigo       = carNovo.Codigo;
            carDb.Cvv          = carNovo.Cvv;
            carDb.EFavorito    = carNovo.EFavorito;
            carDb.NomeImpresso = carNovo.NomeImpresso;
            carDb.Vencimento   = carNovo.Vencimento;

            string msg = _facade.Editar(c);

            if (msg != "")
            {
                TempData["Alert"] = msg;
            }

            return(RedirectToAction(nameof(Detalhes)));
        }
コード例 #9
0
        public void ApagarConfirmacao(int id)
        {
            CartaoCredito cartaoCredito = db.CartaoCredito.Find(id);

            db.CartaoCredito.Remove(cartaoCredito);
            db.SaveChanges();
        }
コード例 #10
0
        public CartaoCredito save(CartaoCredito cartaoCredito)
        {
            _context.cartaoCreditos.Add(cartaoCredito);
            _context.SaveChanges();

            return(cartaoCredito);
        }
コード例 #11
0
        public CartaoCredito ObterPeloId(int id)
        {
            SqlCommand comando = Conexao.AbrirConexao();

            comando.CommandText = "SELECT * FROM cartoes_credito WHERE id = @ID";
            comando.Parameters.AddWithValue("@ID", id);

            DataTable table = new DataTable();

            table.Load(comando.ExecuteReader());
            comando.Connection.Close();

            if (table.Rows.Count == 0)
            {
                return(null);
            }

            DataRow       row           = table.Rows[0];
            CartaoCredito cartaoCredito = new CartaoCredito();

            cartaoCredito.Numero         = row["numero"].ToString();
            cartaoCredito.DataVencimento = Convert.ToDateTime(row["data_vencimento"]);
            cartaoCredito.Cvv            = row["cvv"].ToString();
            cartaoCredito.IdCliente      = Convert.ToInt32(row["id_cliente"]);
            cartaoCredito.Id             = Convert.ToInt32(row["id"]);

            return(cartaoCredito);
        }
コード例 #12
0
        public async Task <IActionResult> DadosPagamento()
        {
            var enderecosUsuario = await _enderecoStore.ObterDoUsuario(User.Identity.Name);

            var carrinho = await _carrinhoStore.ObterCarrinho(User.Identity.Name);

            if (carrinho == null)
            {
                TempData["ERRO"] = "Não há itens no carrinho";
                return(RedirectToAction("Index", "Carrinho"));
            }
            if (!carrinho.FreteSelecionado())
            {
                TempData["ERRO"] = "Selecione o frete";
                return(RedirectToAction("Index"));
            }
            var cartao = CartaoCredito.Obter().Generate();

            return(View(new CheckoutViewModel()
            {
                EnderecosUsuario = enderecosUsuario,
                Carrinho = carrinho,
                CartaoCredito = cartao
            }));
        }
コード例 #13
0
        public String validarCartao(CartaoCredito cartaoCredito)
        {
            String StrRetorno = "";

            //Validar Bandeira e Comprimento
            if (!isBandeiraComprimentoValido(cartaoCredito))
            {
                System.Diagnostics.Debug.WriteLine(StrMensagem);
                StrRetorno = StrBandeira + ": " + cartaoCredito.NumeroCartaoCredito + " (inválido)";
                return(StrRetorno);
            }

            //Validar pelo algoritimo Luhn
            if (!isValidoLuhn(cartaoCredito))
            {
                System.Diagnostics.Debug.WriteLine(StrMensagem);
                StrRetorno = StrBandeira + ": " + cartaoCredito.NumeroCartaoCredito + " (inválido)";
            }
            else
            {
                StrRetorno = StrBandeira + ": " + cartaoCredito.NumeroCartaoCredito + " (válido)";
            }


            return(StrRetorno);
        }
コード例 #14
0
        public static DataTable CartaoCreditoDatatable(List <CartaoCredito> input)
        {
            DataTable data = new DataTable();

            data.Columns.Add(new DataColumn("ID", typeof(int)));
            data.Columns.Add(new DataColumn("Name", typeof(string)));

            DataRow dr = data.NewRow();

            dr[0] = 0;
            dr[1] = "Selecione um Cartão de Crédito";
            data.Rows.Add(dr);

            int a = input.Count;

            for (int i = 0; i < a; i++)
            {
                CartaoCredito cc = input.ElementAt(i);
                dr    = data.NewRow();
                dr[0] = cc.ID;
                dr[1] = cc.NomeImpresso + ", " + cc.NumeroCC + ", " + cc.Bandeira.Nome + ", " +
                        cc.CodigoSeguranca;
                data.Rows.Add(dr);
            }
            return(data);
        }
コード例 #15
0
        public override void Salvar(EntidadeDominio entidade)
        {
            if (connection.State == ConnectionState.Closed)
            {
                connection.Open();
            }
            CartaoCredito cc = (CartaoCredito)entidade;

            pst.CommandText = "INSERT INTO cartao_credito (nome_impresso_cc, numero_cc, bandeira_cc_fk, codigo_seguranca_cc, dt_vencimento_cc) VALUES (?1, ?2, ?3, ?4, ?5)";
            parameters      = new MySqlParameter[]
            {
                new MySqlParameter("?1", cc.NomeImpresso),
                new MySqlParameter("?2", cc.NumeroCC),
                new MySqlParameter("?3", cc.Bandeira.ID),
                new MySqlParameter("?4", cc.CodigoSeguranca),
                new MySqlParameter("?5", cc.DataVencimento)
            };

            pst.Parameters.Clear();
            pst.Parameters.AddRange(parameters);
            pst.Connection  = connection;
            pst.CommandType = CommandType.Text;

            pst.ExecuteNonQuery();
            cc.ID = entidade.ID = (int)pst.LastInsertedId;

            if (ctrlTransaction == true)
            {
                pst.CommandText = "COMMIT WORK";
                connection.Close();
            }
            return;
        }
コード例 #16
0
        static void Main(string[] args)
        {
            Cliente oCamila = new Cliente(1232, "Camila", 10000);

            Cliente oCassio = new Cliente(111, "Cassio", 5000);

            CartaoCredito cartao1 = new CartaoCredito("1456987", new DateTime(2019, 12, 31), oCassio);

            CartaoCredito cartao2 = new CartaoCredito("123456", new DateTime(2020, 12, 31), oCamila);


            w($"cartao1:{cartao1.numero} / {cartao1.validadeCartao.ToString("MM-yyyy")}");
            w($"cartao2:{cartao2.numero} / {cartao2.validadeCartao.ToString("MM-yyyy")}");

            Agencia agencia  = new Agencia("1234");
            Agencia agencia2 = new Agencia("4321");

            w($"Agencia 1: {agencia.numero}");
            w($"Agencia 2: {agencia2.numero}");

            Gerente gerente1 = new Gerente("Elias", 10000.00);

            gerente1.atualizarSalario();
            w($"Salario ficou: {gerente1.salario}");
        }
コード例 #17
0
        public HttpResponseMessage PostCartao(CartaoCredito card)
        {
            SqlConnection _conn = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);

            _conn.Open();
            SqlCommand _comandoSQL = new SqlCommand(
                " INSERT INTO APP_CARTAO (idcliente, numero, datavenc, cpf, nome, cvv, idbandeira) " +
                " output INSERTED.IDCARTAO VALUES (@idcliente, @numero, @datavenc, @cpf, @nome, @cvv, @idbandeira) ", _conn);

            _comandoSQL.Parameters.AddWithValue("@idcliente", card.IdCliente);
            _comandoSQL.Parameters.AddWithValue("@numero", card.Numero);
            _comandoSQL.Parameters.AddWithValue("@datavenc", card.Validade);
            _comandoSQL.Parameters.AddWithValue("@cpf", card.CPF);
            _comandoSQL.Parameters.AddWithValue("@nome", card.Titular);
            _comandoSQL.Parameters.AddWithValue("@cvv", card.CVV);
            _comandoSQL.Parameters.AddWithValue("@idbandeira", card.IdBandeira);

            int idCartao = (int)_comandoSQL.ExecuteScalar();

            if (idCartao > 0)
            {
                return(Request.CreateResponse(HttpStatusCode.Created));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }
        }
コード例 #18
0
    public static void Main()
    {
        Agencia araraquara = new Agencia();

        araraquara.numero = 1;

        Conta conta = new Conta();

        conta.agencia = araraquara;
        conta.numero  = 12345;
        conta.saldo   = 100.50;
        conta.limite  = 500;

        Cliente venilton = new Cliente();

        venilton.nome     = "Venilton";
        venilton.cpf      = "123.123.123-12";
        venilton.endereco = "Rua Salvador Bruno";
        venilton.conta    = conta;

        venilton.Sacar(10.50);
        venilton.Depositar(60);
        venilton.ImprimirExtrato();

        CartaoCredito cartao = new CartaoCredito();

        cartao.cliente = venilton;
        cartao.numero  = "1234 1234 1234 1234";
        cartao.Sacar(150);

        venilton.ImprimirExtrato();
    }
コード例 #19
0
        public async Task <ISaida> CadastrarCartaoCredito(CadastrarCartaoCreditoEntrada cadastroEntrada)
        {
            // Verifica se as informações para cadastro foram informadas corretamente
            if (cadastroEntrada.Invalido)
            {
                return(new Saida(false, cadastroEntrada.Mensagens, null));
            }

            // Verifica se o usuário já possui algum cartão com o nome informado
            this.NotificarSeVerdadeiro(await _cartaoCreditoRepositorio.VerificarExistenciaPorNome(cadastroEntrada.IdUsuario, cadastroEntrada.Nome), CartaoCreditoMensagem.Cartao_Com_Mesmo_Nome);

            if (this.Invalido)
            {
                return(new Saida(false, this.Mensagens, null));
            }

            var cartao = new CartaoCredito(cadastroEntrada);

            await _cartaoCreditoRepositorio.Inserir(cartao);

            await _uow.Commit();

            return(_uow.Invalido
                ? new Saida(false, _uow.Mensagens, null)
                : new Saida(true, new[] { CartaoCreditoMensagem.Cartao_Cadastrado_Com_Sucesso }, new CartaoCreditoSaida(cartao)));
        }
コード例 #20
0
        public string processar(EntidadeDominio entidade)
        {
            StringBuilder sb = new StringBuilder();

            if (entidade.GetType() == typeof(CartaoCredito))
            {
                CartaoCredito cartao = (CartaoCredito)entidade;

                if (cartao.ID == 0)
                {
                    return("PARÂMETRO PARA EXCLUSÃO DA ENTIDADE INCORRETO(ID)! <br />");
                }
                else
                {
                    // necessário para excluir na tabela n-n antes de fazer a exclusão na tabela dos cartões
                    ClienteCartaoDAO clienteXCartaoDAO = new ClienteCartaoDAO("id_cartao");
                    clienteXCartaoDAO.Excluir(cartao);
                }
            }
            else
            {
                sb.Append("CLIENTE PESSOA FÍSICA NÃO PODE SER VALIDADA, POIS ENTIDADE NÃO É CLIENTE PESSOA FÍSICA! <br />");
            }

            if (sb.Length != 0)
            {
                return(sb.ToString());
            }

            return(null);
        }
コード例 #21
0
        public IHttpActionResult Put([FromBody] CartaoCredito objeto)
        {
            var entity = db.Cartao.FirstOrDefault(l => l.IdCartao == objeto.IdCartao);

            if (entity != null)
            {
                entity.IdCartao           = objeto.IdCartao;
                entity.IdCliente          = objeto.IdCliente;
                entity.Ccpf               = objeto.Ccpf;
                entity.CNumeroCartao      = objeto.CNumeroCartao;
                entity.IdBandeira         = objeto.IdBandeira;
                entity.CDataValidade      = objeto.CDataValidade;
                entity.CCodigoSeg         = objeto.CCodigoSeg;
                entity.IdStatus           = objeto.IdStatus;
                entity.CDataInativacao    = objeto.CDataInativacao;
                entity.CUltimaAtualizacao = objeto.CUltimaAtualizacao;

                db.SaveChanges();
                return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK, entity)));
            }
            else
            {
                return(ResponseMessage(Request.CreateResponse <string>(HttpStatusCode.NotFound,
                                                                       "Teste não localizado para alteração.")));
            }
        }
コード例 #22
0
        private void codClienteComboBox_Leave(object sender, EventArgs e)
        {
            pessoa = ComponentesLeave.PessoaComboBox_Leave(sender, e, codClienteComboBox, estado, pessoaBindingSource, true, true);


            CartaoCredito cartao = GerenciadorCartaoCredito.GetInstance().ObterTodos().Where(c => c.CodPessoa == pessoa.CodPessoa).ElementAtOrDefault(0);

            OrganizarTelaAdministradoraCartoes();
            if (cartao != null)
            {
                formaPagamentoBindingSource.Position = formaPagamentoBindingSource.IndexOf(new FormaPagamento()
                {
                    CodFormaPagamento = FormaPagamento.DEPOSITO
                });
                contaBancoBindingSource.Position = contaBancoBindingSource.IndexOf(new ContaBanco()
                {
                    CodContaBanco = cartao.CodContaBanco
                });
                codFormaPagamentoComboBox.Enabled = false;
                codContaBancoComboBox.Enabled     = false;
            }
            else
            {
                formaPagamentoBindingSource.Position = 0;
            }
            if ((pessoa != null) && (!pessoa.CodPessoa.Equals(Global.CLIENTE_PADRAO)))
            {
                // Obter todas as contas da pessoa em aberto
                ObterTodasContasAbertas(pessoa);
            }

            alterouDesconto = false;
        }
        private static void Main(string[] args)
        {
            Pagamento meioDePagamentoCartao = new CartaoCredito();

            meioDePagamentoCartao.EfetuarPagamento(100);

            Console.ReadKey();
        }
コード例 #24
0
        public void Numero_Do_Cartao_Deve_Ser_Invalido_Para_Tipo_Visa()
        {
            var cartaoDeCredito = new CartaoCredito("4417 1234 5678 9112");

            var resultado = cartaoDeCredito.EhValido();

            Assert.IsFalse(resultado);
        }
コード例 #25
0
        public void Numero_Do_Cartao_Deve_Ser_Valido_Para_Tipo_Visa()
        {
            var cartaoDeCredito = new CartaoCredito("4408 0412 3456 7893");

            var resultado = cartaoDeCredito.EhValido();

            Assert.IsTrue(resultado);
        }
コード例 #26
0
        public ActionResult Store(int idCliente)
        {
            CartaoCredito cartaoCredito = new CartaoCredito();

            cartaoCredito.Id = idCliente;
            repositorio.Inserir(cartaoCredito);
            return(RedirectToAction("Index"));
        }
コード例 #27
0
        public async Task IncluiPagamentoCartaoCreditoAsync(CartaoCredito pagamentoCartaoCredito)
        {
            await ValidaPagamento(pagamentoCartaoCredito);

            ValidationHelper.ThrowValidationExceptionIfNotValid(pagamentoCartaoCredito);

            await pagamentoWriteOnlyRepository.IncluiPagamentoCartaoCreditoAsync(pagamentoCartaoCredito);
        }
コード例 #28
0
        static void Main(string[] args)
        {
            string        console = null;
            string        x;
            CartaoFactory cartaoFactory = null;

            do
            {
                Console.WriteLine("\nISTO É APENAS UM TESTE\n");
                Console.WriteLine("Digite o tipo de cartão que deseja");
                Console.WriteLine("Opção 1 - Cartão Black");
                Console.WriteLine("Opção 2 - Cartão Platinum");
                Console.WriteLine("Opção 3 - Cartão Titanium");
                console = Console.ReadLine();


                if (console == "1" || console == "2" || console == "3" +
                    "")
                {
                    switch (console)
                    {
                    case "1":
                        cartaoFactory = new BlackFactory(50000, 0);
                        break;

                    case "2":
                        cartaoFactory = new PlatinumFactory(10000, 100);
                        break;

                    case "3":
                        cartaoFactory = new TitaniumFactory(150000, 150);
                        break;

                    default:
                        break;
                    }

                    CartaoCredito cartaoCredito = cartaoFactory.BuscarCartaoCredito();
                    Console.WriteLine("\nISTO É APENAS UM TESTE\n");
                    Console.WriteLine("\nObrigado por escolher o seu cartão");
                    Console.WriteLine("\nSegue a baixo os detalhes do seu cartão:\n");
                    Console.WriteLine("Tipo do cartão:{0}\nCrédito Limite:{1}\nCobrança Anual:{2}",
                                      cartaoCredito.TipoCartao, cartaoCredito.LimiteCredito, cartaoCredito.CobrancaAnual);
                    Console.WriteLine("\nDeseja continuar? S/N\n");
                    x = Console.ReadLine().ToUpper();
                }
                else
                {
                    Console.WriteLine("\nISTO É APENAS UM TESTE\n");
                    Console.WriteLine("\nNúmero inválido\n");
                    Console.WriteLine("\nDeseja continuar? S/N\n");
                    x = Console.ReadLine().ToUpper();
                    Console.WriteLine("\nISTO É APENAS UM TESTE\n");
                }
            }while (x == "S" || x == "SIM");

            Console.ReadKey();
        }
コード例 #29
0
        protected override void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                dropIdBandeira.DataSource     = BandeiraDatatable(commands["CONSULTAR"].execute(new Bandeira()).Entidades.Cast <Bandeira>().ToList());
                dropIdBandeira.DataValueField = "ID";
                dropIdBandeira.DataTextField  = "Name";
                dropIdBandeira.DataBind();


                if (!string.IsNullOrEmpty(Request.QueryString["idClientePF"]))
                {
                    clientePFXCC.ID        = Convert.ToInt32(Request.QueryString["idClientePF"]);
                    txtIdClientePF.Text    = clientePFXCC.ID.ToString();
                    txtIdClientePF.Enabled = false;
                }
                else if (!string.IsNullOrEmpty(Request.QueryString["idCC"]))
                {
                    btnCadastrar.Visible           = false;
                    btnAlterar.Visible             = true;
                    idLinhaCodigoClientePF.Visible = false;
                    txtIdClientePF.Visible         = false;
                    idLinhaCodigo.Visible          = true;
                    txtIdCC.Visible        = true;
                    txtIdCC.Enabled        = false;
                    idTitle.InnerText      = "Alterar Cartão de Crédito";
                    idBreadCrumb.InnerText = "Alterar Cartão de Crédito";
                    cc.ID        = Convert.ToInt32(Request.QueryString["idCC"]);
                    entidades    = commands["CONSULTAR"].execute(cc).Entidades;
                    cc           = (CartaoCredito)entidades.ElementAt(0);
                    txtIdCC.Text = cc.ID.ToString();

                    // ------------------------ Dados CC - COMEÇO ------------------------------
                    txtNomeImpresso.Text         = cc.NomeImpresso;
                    txtNumeroCC.Text             = cc.NumeroCC;
                    txtCodigoSeguranca.Text      = cc.CodigoSeguranca;
                    dropIdBandeira.SelectedValue = cc.Bandeira.ID.ToString();
                    // ------------------------ Dados CC - FIM ------------------------------
                }
                else if (!string.IsNullOrEmpty(Request.QueryString["delIdCC"]))
                {
                    cc.ID     = Convert.ToInt32(Request.QueryString["delIdCC"]);
                    resultado = commands["EXCLUIR"].execute(cc);

                    // verifica se deu erro de validação
                    if (!string.IsNullOrEmpty(resultado.Msg))
                    {
                        lblResultado.Visible = true;
                        lblResultado.Text    = resultado.Msg;
                    }
                    // caso tudo OK delera e redireciona o usuário para ListaCliente.aspx
                    else
                    {
                        Response.Redirect("./ListaCliente.aspx");
                    }
                }
            }
        }
コード例 #30
0
        /// <summary>
        /// Registers a new order on the database
        /// </summary>
        /// <param name="idCliente">Unique identifier of the client</param>
        /// <param name="fornecedor"></param>
        /// <param name="morada">Destination of the order</param>
        /// <param name="dia">Day of delivery</param>
        /// <param name="hora">Time of delivery</param>
        /// <param name="numCartCredito">Credit card number for payment</param>
        /// <param name="mes">Month of expiration of the credit card</param>
        /// <param name="ano">Year of expiration of the credit card</param>
        /// <param name="cvv">Security code of credit card</param>
        /// <param name="pais">Country of credit card</param>
        public void SetEncomenda(int idCliente, string fornecedor, string morada, Date dia, Time hora, long numCartCredito, int mes, int ano, int cvv, string pais)
        {
            Encomenda     nEncomenda     = _context.newEncomenda(1, morada, dia, hora, _fController.IdForn(fornecedor), idCliente, 1, numCartCredito);
            CartaoCredito nCartaoCredito = _context.newCartaoCredito(numCartCredito, mes, ano, cvv, pais);

            _context.Cartoes.Add(nCartaoCredito);
            _context.Encomendas.Add(nEncomenda);
            _context.SaveChanges();
        }