Exemple #1
0
        public static IQuickTransaction Convert(IDictionary <string, object> line,
                                                IQuickTransactionFactory quickTransactionFactory, IAccountStorage accountStorage,
                                                ICategoryStorage categoryStorage)
        {
            var id           = (long)line["id"];
            var accountId    = (long)(line["accountId"] is DBNull?0L: line["accountId"]);
            var categoryId   = (long)(line["categoryId"] is DBNull ? 0L : line["categoryId"]);
            var name         = line["name"].ToString();
            var total        = decimal.Parse(line["total"].ToString());
            var account      = accountStorage.GetAllAccounts().FirstOrDefault(x => x?.Id == accountId);
            var category     = categoryStorage.GetAllCategories().FirstOrDefault(x => x?.Id == categoryId);
            var weight       = decimal.Parse(line["weight"].ToString());
            var askForTotal  = (long)line["askForTotal"] > 0;
            var askForWeight = (long)line["askForWeight"] > 0;

            var transaction = quickTransactionFactory.CreateQuickTransaction(account, category, name, total, id, weight, askForTotal, askForWeight);

            transaction.Id = id;

            return(transaction);
        }
Exemple #2
0
        public void Create2CategoriesTest()
        {
            var category1 = _factory.CreateCategory("Category 1", "Description", 5, null);
            var category2 = _factory.CreateCategory("Category 2", "Description 2", 5, null);

            _storage.CreateCategory(category1);
            _storage.CreateCategory(category2);

            var newCategory = _storage.GetAllCategories().FirstOrDefault();

            Assert.IsNotNull(newCategory);
            Assert.AreEqual(1, _storage.GetAllCategories().Count());
            Assert.AreEqual(category2.Name, newCategory.Name);
            Assert.AreEqual(category2.Description, newCategory.Description);
            Assert.AreEqual(5, newCategory.Id);
        }
Exemple #3
0
        public static ITransaction Convert(IDictionary <string, object> line, ITransactionFactory transactionFactory,
                                           IAccountStorage accountStorage, ICategoryStorage categoryStorage)
        {
            var id         = (long)line["id"];
            var timestamp  = DateTime.Parse(line["timestamp"].ToString());
            var accountId  = (long)(line["accountId"]);
            var categoryId = (long)(line["categoryId"]);
            var name       = line["name"].ToString();
            var total      = decimal.Parse(line["total"].ToString());
            var account    = accountStorage.GetAllAccounts().FirstOrDefault(x => x?.Id == accountId);
            var category   = categoryStorage.GetAllCategories().FirstOrDefault(x => x?.Id == categoryId);
            var weight     = decimal.Parse(line["weight"].ToString());
            //var productId = (line["productId"] is System.DBNull)? 0: (long)line["productId"];//Add Product Storage
            //var parentId = (line["parentId"] is System.DBNull) ? 0 : (long)line["parentId"];
            //var isComplexTransaction = (long) line["isComplexTransaction"] > 0;

            var transaction = (Transaction)transactionFactory.CreateTransaction(account, category, name, total, timestamp, id, weight, null, null);

            transaction.Id        = id;
            transaction.Timestamp = timestamp;

            return(transaction);
        }
Exemple #4
0
 private void FillTheCache()
 {
     _cache = _storage.GetAllCategories();
     _flatCategoriesCache = _storage.MakeFlatCategoryTree();
     _isDirty             = false;
 }