protected override OpResult _Store(RecurringPurchase _obj)
        {
            if (_obj == null)
            {
                return(OpResult.NotifyStoreAction(OpResult.ResultStatus.ObjectIsNull, _obj, "RecurringPurchase object cannot be created as it is null"));
            }

            if (Exists(_obj))
            {
                ExecuteNonQuery(GetQuery_UpdateQuery(_obj));
                DeleteLines(_obj);
                StoreLines(_obj);
                return(OpResult.NotifyStoreAction(OpResult.ResultStatus.Updated, _obj));
            }

            ExecuteNonQuery(GetQuery_InsertQuery(_obj));
            if (_obj.RecurringPurchaseID == null)
            {
                _obj.RecurringPurchaseID = DbMgr.GetLastInsertID();
            }

            DeleteLines(_obj);
            StoreLines(_obj);

            _obj.FromDb = true;
            return(OpResult.NotifyStoreAction(OpResult.ResultStatus.Created, _obj));
        }
        private DbDeleteStatement GetQuery_DeleteQuery(RecurringPurchase _obj)
        {
            DbDeleteStatement clause = DbMgr.CreateDeleteClause();

            clause.DeleteFrom("RecurringPurchases").Criteria.IsEqual("RecurringPurchases", "RecurringPurchaseID", _obj.RecurringPurchaseID);

            return(clause);
        }
        protected override OpResult _Store(RecurringPurchase _obj)
        {
            if (_obj == null)
            {
                return(OpResult.NotifyStoreAction(OpResult.ResultStatus.ObjectIsNull, _obj, "RecurringPurchase object cannot be created as it is null"));
            }

            return(OpResult.NotifyStoreAction(OpResult.ResultStatus.NoActionTaken, _obj, "No implementation available for storing persistent RecurringPurchase object"));
        }
        protected override OpResult _Delete(RecurringPurchase _obj)
        {
            if (Exists(_obj))
            {
                ExecuteNonQuery(GetQuery_DeleteQuery(_obj));
                DeleteLines(_obj);

                //RepositoryMgr.ConfigMgr.DeleteInvoiceNumber(_obj.InvoiceNumber);
                return(OpResult.NotifyDeleteAction(OpResult.ResultStatus.ExistsAndDeleted, _obj));
            }
            return(OpResult.NotifyDeleteAction(OpResult.ResultStatus.NotExists, _obj, "RecurringPurchase object cannot be deleted as it does not exist"));
        }
 private DbUpdateStatement GetQuery_UpdateQuery(RecurringPurchase _obj)
 {
     return(DbMgr.CreateUpdateClause("RecurringPurchases", GetFields(_obj), "RecurringPurchaseID", _obj.RecurringPurchaseID));
 }
        private DbInsertStatement GetQuery_InsertQuery(RecurringPurchase _obj)
        {
            Dictionary <string, DbFieldEntry> fields = GetFields(_obj);

            return(DbMgr.CreateInsertClause("RecurringPurchases", fields));
        }
 private void DeleteLines(RecurringPurchase _obj)
 {
 }
 private void StoreLines(RecurringPurchase _obj)
 {
 }