public RestaurantController()
 {
     _restaurantFacade   = new RestaurantFacade();
     _bookingFacade      = new BookingFacade();
     _imageFacade        = new ImageFacade();
     _menuItemTypeFacade = new MenuItemTypeFacade();
 }
예제 #2
0
 public MenuController()
 {
     _menuFacade         = new MenuFacade();
     _dietInfoFacade     = new DietInfoFacade();
     _menuItemTypeFacade = new MenuItemTypeFacade();
     _imageFacade        = new ImageFacade();
 }
예제 #3
0
 public RestaurantAdminController()
 {
     _restaurantFacade = new RestaurantFacade();
     _companyFacade    = new CompanyFacade();
     _menuFacade       = new MenuFacade();
     _tableFacade      = new TableFacade();
     _imageFacade      = new ImageFacade();
 }
예제 #4
0
        private void CreateTaskToInsertImage(string entryName, string destination, DataOperationUnit dataOpUnit)
        {
            Guid imageID = Guid.NewGuid();

            InsertedImage          = new ImageViewModel(imageID, entryName, destination, Configuration.ApplicationConfiguration);
            InsertedImage.ByteSize = FileLength;
            ImageFacade.Insert(InsertedImage, dataOpUnit);
        }
예제 #5
0
        public void ImageProcess(Image image)
        {
            var imageFacade = new ImageFacade();

            imageFacade.ImageInsert(image);

            WatsonClient watsonClient = new WatsonClient();

            var imageData    = Convert.FromBase64String(image.ImageData);
            var watsonResult = watsonClient.ListarClassificadores(image.Name, imageData);
        }
예제 #6
0
        private void SetFirstPage()
        {
            var page = PageFacade.FindByBookIdTop1(NewBook.ID);

            page.Image = ImageFacade.FindBy(page.ImageID);

            NewBook.FirstPage = page;
            s_logger.Debug($"Set FirstPage : {page.Image}");

            Load.BookLoading.GenerateThumbnailIf(NewBook);
        }
예제 #7
0
        private static void CreateEntities(ILibrary _libraryVM, PageViewModel _page, CoverSegmenting cs, DataOperationUnit dataOpUnit)
        {
            Guid imageID = Guid.NewGuid();
            var  image   = new ImageViewModel(imageID, "cover", cs._masterPath, Configuration.ApplicationConfiguration);

            image.Configuration  = Configuration.ApplicationConfiguration;
            image.ID             = imageID;
            image.UnescapedTitle = "cover";
            if (System.IO.Path.IsPathRooted(cs._masterPath))
            {
                image.RelativeMasterPath = ImageViewModel.MakeRelativeMasterPath(Configuration.ApplicationConfiguration.WorkingDirectory, cs._masterPath);
            }
            else
            {
                image.RelativeMasterPath = cs._masterPath;
            }
            ImageFacade.Insert(image, dataOpUnit);

            var pageID = Guid.NewGuid();
            var page   = new PageViewModel();

            page.Configuration  = Configuration.ApplicationConfiguration;
            page.ID             = pageID;
            page.UnescapedTitle = "cover";
            page.ImageID        = imageID;
            page.BookID         = _page.BookID;
            page.PageIndex      = 1;
            page.Image          = image;
            PageFacade.Insert(page, dataOpUnit);

            var book = _libraryVM.OnStage.Where(b => b.ID.Equals(_page.BookID)).Single();

            book.FirstPage = page;
            if (book.FirstPage.Image.ThumbnailRecorded)
            {
                book.FirstPage.Image.Thumbnail = ThumbnailFacade.FindByImageID(book.FirstPage.ImageID, dataOpUnit);
            }

            if (!book.FirstPage.Image.ThumbnailLoaded || !book.FirstPage.Image.ThumbnailGenerated)
            {
                ThumbnailGenerating.GenerateThumbnail(book.FirstPage.Image, dataOpUnit);
            }

            cs._book = book;
        }
예제 #8
0
        public void ShowBySelectedItems(IMainWindowViewModel mainWindowViewModel)
        {
            var activeViewModel = mainWindowViewModel.ActiveDocumentViewModel;

            var images = ImageFacade.FindAll();
            var pages  = PageFacade.FindAll();
            var books  = activeViewModel.BookCabinet.BookSource.Select(b => b);

            books = (from bk in books
                     join pg in pages on bk.ID equals pg.BookID
                     join img in images on pg.ImageID equals img.ID
                     join ic in Chains on img.ID equals ic.ImageID
                     join tg in SelectedItems on ic.TagID equals tg.ID
                     select bk).Distinct();

            activeViewModel.SearchText = $"{ToSearchText(SelectedItems)}";
            activeViewModel.BookCabinet.SearchedBooks = new ObservableCollection <BookViewModel>(books.ToList());
        }
예제 #9
0
 internal static void DeleteRecordFromStorage(PageViewModel page, DataOperationUnit dataOpUnit = null)
 {
     Debug.Assert(page != null);
     PageFacade.DeleteWhereIDIs(page.ID, dataOpUnit);
     ImageFacade.DeleteWhereIDIs(page.ImageID, dataOpUnit);
     if (page.Image != null)
     {
         var image = page.Image;
         if (image.ThumbnailRecorded)
         {
             if (!image.ThumbnailLoaded)
             {
                 image.Thumbnail = ThumbnailFacade.FindByImageID(image.ID, dataOpUnit);
             }
             ThumbnailFacade.DeleteWhereIDIs(image.Thumbnail.ID, dataOpUnit);
         }
     }
 }
예제 #10
0
        public void Load()
        {
            var id         = Guid.Parse("00000000-0000-0000-0000-000000000000");
            var appDao     = DataAccessManager.AppDao.Build <StatisticsDao>();
            var statistics = appDao.FindBy(new Dictionary <string, object>()
            {
                { "ID", id }
            }).First();

            NumberOfBoots.Value = statistics.NumberOfBoots;

            NumberOfBooks.Value = BookFacade.FindAll().Count();

            TotalFileSize.Value = ImageFacade.SumTotalFileSize();

            NumberOfPages.Value = PageFacade.CountAll();

            NumberOfAuthors.Value = AuthorFacade.CountAll();

            NumberOfTags.Value = TagFacade.CountAll();

            NumberOfBookTags.Value = BookTagFacade.CountAll();

            NumberOfImageTags.Value = ImageTagFacade.CountAll();

            NumberOfBooks5.Value = StarFacade.FindBookByStar(5).Count();

            NumberOfBooks4.Value = StarFacade.FindBookByStar(4).Count();

            NumberOfBooks3.Value = StarFacade.FindBookByStar(3).Count();

            NumberOfBooks2.Value = StarFacade.FindBookByStar(2).Count();

            NumberOfBooks1.Value = StarFacade.FindBookByStar(1).Count();

            NumberOfBooksN.Value = StarFacade.FindBookByStar(null).Count();

            NumberOfDuplicateBooks.Value = BookFacade.FindDuplicateFingerPrint().Count();

            TotalDuplicateBooksSize.Value = BookFacade.FindDuplicateFingerPrint().Where(x => x.ByteSize != null).Select(x => x.ByteSize.Value).Sum();
        }
예제 #11
0
 private IEnumerable <ImageViewModel> GetAllImages(IEnumerable <EntryViewModel> entries)
 {
     return(ImageFacade.GetAllImages(entries));
 }
예제 #12
0
 internal static void SetImageToPage(PageViewModel page)
 {
     page.Image = ImageFacade.FindBy(page.ImageID);
 }
예제 #13
0
 private object LoadBitmap(string path)
 {
     try
     {
         Guid guid;
         if (Guid.TryParse(path, out guid))
         {
             var image = ImageFacade.FindBy(guid);
             if (!image.IsDecrypted)
             {
                 image.DecryptImage();
             }
             var bitmap = OnmemoryImageManager.Instance.PullAsWriteableBitmap(guid);
             return(bitmap);
         }
         else
         {
             using (Mat mat = new Mat(path, ImreadModes.Unchanged))
             {
                 if (mat.Rows == 0 || mat.Cols == 0)
                 {
                     var fileInfo = new FileInfo(path);
                     if (fileInfo.Length == 0)
                     {
                         s_logger.Error($"File is broken:{path}");
                         return(null);
                     }
                     if (Path.GetExtension(path) == ".gif")
                     {
                         return(null);
                     }
                     Thread.Sleep(100);
                     s_logger.Error($"Retry to load bitmap:{path}");
                     return(LoadBitmap(path));
                 }
                 return(ToWriteableBitmap(mat));
             }
         }
     }
     catch (OutOfMemoryException e)
     {
         s_logger.Error(e);
         GC.WaitForPendingFinalizers();
         GC.Collect();
         return(null);
     }
     catch (COMException e)
     {
         s_logger.Error(e);
         GC.WaitForPendingFinalizers();
         GC.Collect();
         return(null);
     }
     catch (OpenCVException e)
     {
         s_logger.Error(e);
         GC.WaitForPendingFinalizers();
         GC.Collect();
         return(null);
     }
     catch (FileNotFoundException e)
     {
         s_logger.Error(e);
         GC.WaitForPendingFinalizers();
         GC.Collect();
         return(LoadBitmap($"{Configuration.ApplicationConfiguration.ExecutingDirectory}\\{Specifications.LOCK_ICON_FILE}"));
     }
 }
예제 #14
0
 private void CreateImage(ImageViewModel img, string destination)
 {
     _newimg = new ImageViewModel(Guid.NewGuid(), img.Title, destination, Configuration.ApplicationConfiguration);
     ImageFacade.Insert(_newimg);
 }
예제 #15
0
 private void UpdateImage(ImageViewModel image)
 {
     image.ByteSize = image.MasterFileSize;
     ImageFacade.Update(image);
 }