Exemple #1
0
        internal bool DeleteAccount(Account conta)
        {
            try
            {
                _transaction = TransacaoDAL.GetTransaction();

                EntityState entityState = EntityState.Deleted;

                AccountDAL.persistAccount(conta, entityState, _transaction);

                CommitTransaction();

                return(true);
            }
            catch (System.Data.Entity.Validation.DbEntityValidationException ex)
            {
                RollBackTransaction();
                throw new OperacaoException(Helper.ViewEntityException(ex));
            }
            catch (Exception ex)
            {
                RollBackTransaction();
                throw ex;
            }
        }
Exemple #2
0
        internal bool PersistAccount(Account conta)
        {
            try
            {
                _transaction = TransacaoDAL.GetTransaction();

                EntityState entityState = EntityState.Modified;

                Account contaDB = AccountDAL.getAccountByID(conta.ID);

                if (contaDB == null)
                {
                    entityState = EntityState.Added;
                }

                AccountDAL.persistAccount(conta, entityState, _transaction);

                CommitTransaction();

                return(true);
            }
            catch (System.Data.Entity.Validation.DbEntityValidationException ex)
            {
                RollBackTransaction();
                throw new OperacaoException(Helper.ViewEntityException(ex));
            }
            catch (Exception ex)
            {
                RollBackTransaction();
                throw ex;
            }
        }
Exemple #3
0
 /// <summary>
 /// Método que Aplica o rollback na transacao
 /// </summary>
 /// <param name="rec">Requisição a ser alterada</param>
 internal static void RollBackTransaction(ref ZeusDataSource ctx)
 {
     try
     {
         if (ctx != null)
         {
             ctx.Database.CurrentTransaction.Rollback();
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
     finally
     {
         try
         {
             ctx.Dispose();
         }
         catch { }
         finally
         {
             ctx = null;
         }
     }
 }
Exemple #4
0
        /// <summary>
        /// Método que inicia uma Transacao
        /// </summary>
        /// <param name="rec">Requisição a ser alterada</param>
        internal static ZeusDataSource GetTransaction()
        {
            var ctx         = new ZeusDataSource();
            var transaction = ctx.Database.BeginTransaction(System.Data.IsolationLevel.ReadCommitted);

            return(ctx);
        }
Exemple #5
0
        internal static void persistAccount(Account conta, EntityState entityState, ZeusDataSource _transaction)
        {
            accounts obj = new accounts
            {
                BLOKED   = conta.BLOKED,
                EMAIL    = conta.EMAIL,
                GROUPID  = conta.GROUPID,
                ID       = conta.ID,
                KEY      = conta.KEY,
                LASTDAY  = conta.LASTDAY,
                NAME     = conta.NAME,
                PASSWORD = conta.PASSWORD,
                PREMDAYS = conta.PREMDAYS,
                WARNINGS = conta.WARNINGS
            };

            _transaction.Entry <accounts>(obj).State = entityState;
        }
Exemple #6
0
 internal static List <Account> getAllAccounts()
 {
     using (var ctx = new ZeusDataSource())
     {
         return(ctx.accounts
                .Select(conta => new Account
         {
             BLOKED = conta.BLOKED,
             EMAIL = conta.EMAIL,
             GROUPID = conta.GROUPID,
             ID = conta.ID,
             KEY = conta.KEY,
             LASTDAY = conta.LASTDAY,
             NAME = conta.NAME,
             PASSWORD = conta.PASSWORD,
             PREMDAYS = conta.PREMDAYS,
             WARNINGS = conta.WARNINGS
         }).ToList());
     }
 }
Exemple #7
0
 internal static Account getAccountByID(int contaID)
 {
     using (var ctx = new ZeusDataSource())
     {
         return(ctx.accounts
                .Where(conta => conta.ID.Equals(contaID))
                .Select(conta => new Account
         {
             BLOKED = conta.BLOKED,
             EMAIL = conta.EMAIL,
             GROUPID = conta.GROUPID,
             ID = conta.ID,
             KEY = conta.KEY,
             LASTDAY = conta.LASTDAY,
             NAME = conta.NAME,
             PASSWORD = conta.PASSWORD,
             PREMDAYS = conta.PREMDAYS,
             WARNINGS = conta.WARNINGS
         }).FirstOrDefault());
     }
 }