Пример #1
0
        public void Desativar()
        {
            //verifica o última transação
            Aluno_MedTV_Transacao ultima_transacao = new Aluno_MedTV_TransacaoDB().Buscar(this, 3);

            if (ultima_transacao != null)
            {
                this.ativoAte = ultima_transacao.data.AddDays(30);
            }
            else
            {
                this.ativo        = false;
                this.desativado   = true;
                this.desativadoEm = DateTime.Now;
            }
            new Aluno_MedTVDB().Alterar(this);
        }
Пример #2
0
        public Aluno_MedTV TratarRetorno(Transaction transaction)
        {
            Aluno_MedTV am = new Aluno_MedTVDB().Buscar(Convert.ToInt32(transaction.Reference));

            int status = transaction.TransactionStatus;

            //if (transaction.TransactionStatus == Uol.PagSeguro.Enums.TransactionStatus.Initiated)
            //    status = 0;
            //if (transaction.TransactionStatus == Uol.PagSeguro.Enums.TransactionStatus.WaitingPayment)
            //    status = 1;
            //if (transaction.TransactionStatus == Uol.PagSeguro.Enums.TransactionStatus.InAnalysis)
            //    status = 2;
            //if (transaction.TransactionStatus == Uol.PagSeguro.Enums.TransactionStatus.Paid)
            //    status = 3;
            //if (transaction.TransactionStatus == Uol.PagSeguro.Enums.TransactionStatus.Available)
            //    status = 4;
            //if (transaction.TransactionStatus == Uol.PagSeguro.Enums.TransactionStatus.InDispute)
            //    status = 5;
            //if (transaction.TransactionStatus == Uol.PagSeguro.Enums.TransactionStatus.Refunded)
            //    status = 6;
            //if (transaction.TransactionStatus == Uol.PagSeguro.Enums.TransactionStatus.Cancelled)
            //    status = 7;

            Aluno_MedTV_Transacao amt = new Aluno_MedTV_TransacaoDB().Buscar(am, transaction.Code, status);

            if (amt == null)
            {
                amt = new Aluno_MedTV_Transacao()
                {
                    aluno_medTV_id = am,
                    code           = transaction.Code,
                    data           = DateTime.Now,
                    status         = status
                };
                amt.Salvar();
            }

            if (am != null)
            {
                am.aluno = new AlunoDB().Buscar(am.aluno.codigo);
                //salva o code no Aluno_MedTV

                //msg do status
                amt.msg = TransacaoMsg(status);

                //3	Paga
                if (transaction.TransactionStatus == 3)
                {
                    //se não estiver ativo, ativa o usuário
                    if (!am.ativo)
                    {
                        am.Ativar();
                    }
                }
                //4 Disponivel
                if (transaction.TransactionStatus == 4)
                {
                    LancaEntrada(am.aluno, amt.data);
                }
                //5   Em disputa
                if (transaction.TransactionStatus == 5)
                {
                    //se estiver ativo, desativa o usuário
                    if (am.ativo)
                    {
                        am.Desativar();
                    }
                    new Envio_emailDB().Salvar(new Envio_email()
                    {
                        data    = DateTime.Now,
                        assunto = "MedTV alterações de pagamento",
                        texto   = "Alterações no pagamento.<BR>Aluno: " + am.aluno.nome + "(" + am.aluno.cpf + ")<BR>Msg: " + amt.msg,
                        para    = emailNotificacaoPagamento
                    });
                }

                amt.data = DateTime.Now;
                amt.Alterar();
            }
            return(am);
        }