Пример #1
0
        ConvertToKeyPairListWithId(IQuickTransaction quickTransaction)
        {
            var list = ConvertToKeyPairList(quickTransaction).ToList();

            list.Add(new KeyValuePair <string, object>("id", quickTransaction.Id));
            return(list);
        }
Пример #2
0
        ConvertToKeyPairList(IQuickTransaction quickTransaction)
        {
            var returnList = new List <KeyValuePair <string, object> >
            {
                /*
                 *"id INTEGER PRIMARY KEY," +
                 *                                   "accountId INTEGER NOT NULL," +
                 *                                   "categoryId INTEGER NOT NULL," +
                 *                                   "name TEXT NOT NULL, " +
                 *                                   "total NUMERIC NOT NULL, " +
                 *                                   "ownerId TEXT NOT NULL, " +
                 *                                   "baseId TEXT NOT NULL, " +
                 *                                   "weight NUMERIC, " +
                 *                                   "askForTotal INTEGER, " +
                 *                                   "askForWeight INTEGER";
                 *
                 */
                new KeyValuePair <string, object>("accountId", quickTransaction.Account?.Id),
                new KeyValuePair <string, object>("categoryId", quickTransaction.Category?.Id),
                new KeyValuePair <string, object>("name", quickTransaction.Name),
                new KeyValuePair <string, object>("total", quickTransaction.Total),
                new KeyValuePair <string, object>("ownerId", quickTransaction.OwnerId),
                new KeyValuePair <string, object>("baseId", quickTransaction.BaseId),
                new KeyValuePair <string, object>("weight", quickTransaction.Weight),
                new KeyValuePair <string, object>("askForTotal", quickTransaction.AskForTotal),
                new KeyValuePair <string, object>("askForWeight", quickTransaction.AskForWeight),
            };

            return(returnList);
        }
Пример #3
0
        public IQuickTransaction CreateQuickTransaction(IQuickTransaction quickTransaction)
        {
            var result = _storage.CreateQuickTransaction(quickTransaction);

            _isDirty = true;
            return(result);
        }
Пример #4
0
 public EditQuickTransactionViewModel(Storages storages, IQuickTransaction quickTransaction)
 {
     _storages         = storages;
     _quickTransaction = quickTransaction;
     Account           = Accounts.FirstOrDefault(x => x.Id == quickTransaction?.Account?.Id);
     Category          = Categories.FirstOrDefault(x => x.Id == quickTransaction?.Category?.Id);
     Name         = quickTransaction.Name;
     Total        = quickTransaction.Total;
     Weight       = quickTransaction.Weight;
     AskForWeight = quickTransaction.AskForWeight;
     AskForTotal  = quickTransaction.AskForTotal;
 }
Пример #5
0
        public void Setup()
        {
            _accountFactory     = new RegularAccountFactory();
            _categoryFactory    = new RegularCategoryFactory();
            _accountStorage     = new CachedAccountStorage(new SqLiteAccountStorage(_accountFactory));
            _categoryStorage    = new CachedCategoryStorage(new SqLiteCategoryStorage(_categoryFactory));
            _transactionFactory = new RegularQuickTransactionFactory();
            _storage            = new CachedQuickTransactionStorage(new SqLiteQuickTransactionStorage(_transactionFactory, _accountStorage, _categoryStorage));
            _storage.DeleteAllData();

            _transaction = CreateTransaction();
        }
Пример #6
0
 public override IQuickTransaction CreateQuickTransaction(IQuickTransaction quickTransaction)
 {
     _table.InitializeDatabase();
     if (quickTransaction.Id == 0)
     {
         quickTransaction.Id = _table.AddData(ObjectToIQuickTransactionConverter.ConvertToKeyPairList(quickTransaction));
     }
     else
     {
         _table.AddData(ObjectToIQuickTransactionConverter.ConvertToKeyPairListWithId(quickTransaction));
     }
     return(quickTransaction);
 }
Пример #7
0
        public static bool IsRequireInteractionForTransaction(IQuickTransaction quickTransaction)
        {
            if (quickTransaction.AskForTotal || quickTransaction.AskForWeight)
            {
                return(true);
            }
            if (quickTransaction.Account == null || quickTransaction.Category == null)
            {
                return(true);
            }
            if (quickTransaction.Total == 0m)
            {
                return(true);
            }

            return(false);
        }
Пример #8
0
 public EditQuickTransaction(IQuickTransaction quickTransaction = null)
 {
     this.InitializeComponent();
     if (quickTransaction == null)
     {
         ViewModel = new EditQuickTransactionViewModel(MainPage.GlobalSettings.Storages);
         _saveQuickTransactionAction = delegate { ViewModel.CreateQuickTransaction(); };
         Title               = "Create Quick Transaction";
         PrimaryButtonText   = "Create";
         SecondaryButtonText = "Cancel";
     }
     else
     {
         ViewModel = new EditQuickTransactionViewModel(MainPage.GlobalSettings.Storages, quickTransaction);
         _saveQuickTransactionAction = delegate { ViewModel.UpdateQuickTransaction(); };
         Title               = "Edit Quick Transaction";
         PrimaryButtonText   = "Save";
         SecondaryButtonText = "Cancel";
     }
 }
Пример #9
0
 public override void UpdateQuickTransaction(IQuickTransaction quickTransaction)
 {
     _table.InitializeDatabase();
     _table.UpdateData(ObjectToIQuickTransactionConverter.ConvertToKeyPairList(quickTransaction), quickTransaction.Id);
 }
Пример #10
0
 public override void DeleteQuickTransaction(IQuickTransaction quickTransaction)
 {
     _table.InitializeDatabase();
     _table.DeleteRecordById(quickTransaction.Id);
 }
Пример #11
0
 public abstract IQuickTransaction CreateQuickTransaction(IQuickTransaction quickTransaction);
Пример #12
0
 public void UpdateQuickTransaction(IQuickTransaction quickTransaction)
 {
     _storage.UpdateQuickTransaction(quickTransaction);
     _isDirty = true;
 }
Пример #13
0
        public static ITransaction ToTransaction(ITransactionFactory transactionFactory, IQuickTransaction quickTransaction)
        {
            var result = transactionFactory.CreateTransaction(quickTransaction.Account, quickTransaction.Category,
                                                              quickTransaction.Name, quickTransaction.Total, DateTime.Now, 0, quickTransaction.Weight, null, null);

            return(result);
        }
Пример #14
0
 public void DeleteQuickTransaction(IQuickTransaction quickTransaction)
 {
     _storage.DeleteQuickTransaction(quickTransaction);
     _isDirty = true;
 }
Пример #15
0
 public override void UpdateQuickTransaction(IQuickTransaction quickTransaction)
 {
 }
Пример #16
0
 public override void DeleteQuickTransaction(IQuickTransaction quickTransaction)
 {
     _storageEngine.Delete(quickTransaction);
 }
Пример #17
0
 public override IQuickTransaction CreateQuickTransaction(IQuickTransaction quickTransaction)
 {
     return(_storageEngine.Create(quickTransaction) as IQuickTransaction);
 }
Пример #18
0
 public abstract void UpdateQuickTransaction(IQuickTransaction quickTransaction);
Пример #19
0
 public abstract void DeleteQuickTransaction(IQuickTransaction quickTransaction);