示例#1
0
 public void SetDAOs(SourceType source)
 {
     if (source.Equals(SourceType.FILE))
     {
         productsDAO      = fileProductsDAO;
         shoppingListsDAO = fileShoppingListsDAO;
     }
     else
     {
         productsDAO      = sqlProductsDAO;
         shoppingListsDAO = sqlShoppingListsDAO;
     }
 }
示例#2
0
        public ShoppingListsModel(IShoppingListsDAO fileShoppingListsDAO, IProductsDAO fileProductsDAO,
                                  IShoppingListsDAO sqlShoppingListsDAO, IProductsDAO sqlProductsDAO)
        {
            this.fileProductsDAO      = fileProductsDAO;
            this.fileShoppingListsDAO = fileShoppingListsDAO;

            this.sqlShoppingListsDAO = sqlShoppingListsDAO;
            this.sqlProductsDAO      = sqlProductsDAO;

            ReadSettings();
            SetDAOs(SourceType);
            ShoppingLists = new List <ShoppingListModel>();
        }
示例#3
0
        public ShoppingListsViewModel(IShoppingListsDAO fileShoppingListsDAO, IProductsDAO fileProductsDAO,
                                      IShoppingListsDAO sqlShoppingListsDAO, IProductsDAO sqlProductsDAO)
        {
            ShoppingLists = new ObservableCollection <ShoppingListViewModel>();

            shoppingListsModel = new ShoppingListsModel(fileShoppingListsDAO, fileProductsDAO, sqlShoppingListsDAO, sqlProductsDAO);
            if (shoppingListsModel.SourceType.Equals(SourceType.FILE))
            {
                _file = true;
            }
            else
            {
                _database = true;
            }
            LoadData();
            DeleteList  = new CommandHandler(() => DeleteSelectedList());
            Save        = new CommandHandler(() => SaveMethod());
            Synchronize = new CommandHandler(() => SynchronizeMethod());
        }
示例#4
0
        private List <ShoppingListModel> GetData(IShoppingListsDAO shoppingListsDAO, IProductsDAO productsDAO)
        {
            var slists = shoppingListsDAO.Get();

            foreach (var slist in slists)
            {
                var plist = new List <ProductModel>();
                if (slist.Id != null)
                {
                    plist = productsDAO.GetProductsFromList((int)slist.Id);
                }

                foreach (var p in plist)
                {
                    slist.AddItem(p);
                }
                //ShoppingLists.Add(slist);
            }
            return(slists);
        }
示例#5
0
        private void SaveData(IShoppingListsDAO shoppingListsDAO, IProductsDAO productsDAO)
        {
            productsDAO.DeleteAll();
            shoppingListsDAO.DeleteAll();
            foreach (var sl in ShoppingLists)
            {
                if (sl.Id == null)
                {
                    sl.Id = NewListId();
                }
                shoppingListsDAO.Save(sl);

                foreach (var p in sl.Items)
                {
                    p.ShoppingListId = sl.Id;
                    if (p.Id == null)
                    {
                        p.Id = NewProductId();
                    }
                    productsDAO.Save(p);
                }
            }
        }