Esempio n. 1
0
        public void ricercaTest()
        {
            ParamCercaFoto param = new ParamCercaFoto();

            param.giornataIniz = new DateTime(2000, 1, 1);
            param.giornataFine = new DateTime(2299, 12, 31);

            using (LumenEntities dbContext = new LumenEntities()) {
                Evento    ev = dbContext.Eventi.First();
                Fotografo op = dbContext.Fotografi.First();

                Fotografia f = dbContext.Fotografie.First();
                f.evento        = ev;
                f.fotografo     = op;
                f.faseDelGiorno = (short)FaseDelGiorno.Mattino;
                f.didascalia    = "W IL POLLO ARROSTO";

                dbContext.SaveChanges();


                param.numeriFotogrammi = "3, 5, 7," + f.numero;
                param.eventi           = new Evento[] { ev };
                param.fotografi        = new Fotografo [] { op };
                param.fasiDelGiorno    = new FaseDelGiorno [] { FaseDelGiorno.Mattino, FaseDelGiorno.Sera };
                param.didascalia       = "%POLLO%";            // Ricerca like


                IList <Fotografia> ris = _impl.cerca(param);
                Assert.IsTrue(ris.Count > 0);
                Console.WriteLine(ris.Count);
            }
        }
Esempio n. 2
0
        public List <FotografiaDto> getListaFotografieDelFotografo(RicercaFotoParam ricercaFotoParam)
        {
            List <FotografiaDto> listaDto = new List <FotografiaDto>();

            _giornale.Debug("param = " + ricercaFotoParam.ToString());

            using (new UnitOfWorkScope()) {
                // uso apposito servizio di ricerca foto
                IRicercatoreSrv ricercaSrv = LumenApplication.Instance.getServizioAvviato <IRicercatoreSrv>();

                // preparo parametri
                ParamCercaFoto param = new ParamCercaFoto();

                Fotografo fotografo = null;
                if (ricercaFotoParam.fotografoId != null)
                {
                    fotografo       = UnitOfWorkScope.currentDbContext.Fotografi.Single(f => f.id == ricercaFotoParam.fotografoId);
                    param.fotografi = new Fotografo[] { fotografo };
                }
                param.evitareJoinEvento = true;
                param.paginazione       = new Paginazione {
                    skip = ricercaFotoParam.skip, take = ricercaFotoParam.take
                };
                param.idratareImmagini = false;

                // Se viene indicata una giornata nei parametri, prendo quella.
                // Altrimenti imposto fisso la giornata corrente
                DateTime giornata = ricercaFotoParam.giorno > DateTime.MinValue ? ricercaFotoParam.giorno : StartupUtil.calcolaGiornataLavorativa();
                param.giornataIniz = giornata;
                param.giornataFine = giornata;

                // La fase del giorno è un parametro opzionale
                if (ricercaFotoParam.faseDelGiorno != null)
                {
                    FaseDelGiorno faseDelGiorno;
                    if (Enum.TryParse <FaseDelGiorno>(ricercaFotoParam.faseDelGiorno, out faseDelGiorno))
                    {
                        param.setFaseGiorno(faseDelGiorno, true);
                    }
                }

                param.ordinamento = Ordinamento.Asc;

                _giornale.Debug("ricerca con skip = " + ricercaFotoParam.skip);
                var fotografie = ricercaSrv.cerca(param);
                foreach (var foto in fotografie)
                {
                    FotografiaDto dto = new FotografiaDto();
                    dto.etichetta = foto.etichetta;
                    dto.id        = foto.id;

                    // da vedere se conviene
                    // dto.imgProvino = ....

                    listaDto.Add(dto);
                }
            }

            return(listaDto);
        }
Esempio n. 3
0
        public void prepareToScan(ParamCercaFoto param, ProgressChangedEventHandler progressChanged, RunWorkerCompletedEventHandler runWorkerCompleted)
        {
            var ricercatoreSrv = LumenApplication.Instance.getServizioAvviato <IRicercatoreSrv>();

            fotografie = ricercatoreSrv.cerca(param);

            prepareToScan(fotografie, progressChanged, runWorkerCompleted);
        }
Esempio n. 4
0
        public void creaShow(ParamCercaFoto paramCercaFoto)
        {
            // Quindi devo eseguire la ricerca nuovamente (appunto perché nella gallery ho un sottoinsieme paginato)
            IRicercatoreSrv ricercaSrv = LumenApplication.Instance.getServizioAvviato <IRicercatoreSrv>();
            var             fotografie = ricercaSrv.cerca(paramCercaFoto);

            this.slideShow = new SlideShow(fotografie);

            creaShow();
        }
Esempio n. 5
0
        /** Eseguo il caricamento delle foto richieste */
        public void cercaFoto(ParamCercaFoto param)
        {
            svuotaGalleryCorrente();

            IRicercatoreSrv ricercaSrv = LumenApplication.Instance.getServizioAvviato <IRicercatoreSrv>();

            fotografie = ricercaSrv.cerca(param);

            if (param.idratareImmagini)
            {
                idratareImmaginiGallery();
            }
        }
Esempio n. 6
0
        public void ricercaPaginataTest()
        {
            ParamCercaFoto param = new ParamCercaFoto();

            param.giornataIniz = new DateTime(2000, 1, 1);
            param.giornataFine = new DateTime(2299, 12, 31);

            using (new UnitOfWorkScope()) {
                LumenEntities      dbContext = UnitOfWorkScope.currentDbContext;
                IList <Fotografia> ris       = _impl.cerca(param);

                int       totRecord = ris.Count;
                const int max       = 17;            // Ampiezza della pagina uso un numero primo

                // Ora faccio dei cicli di paginazione da 5 alla volta
                ParamCercaFoto param2 = param.deepCopy();
                param2.paginazione = new Lumen.Util.Paginazione {
                    take = max
                };

                for (int pag = 1; pag < 29; pag++)
                {
                    param2.paginazione.skip = (pag - 1) * max;
                    IList <Fotografia> ris2 = _impl.cerca(param2);

                    Assert.IsTrue(ris2.Count <= max);

                    // Ora controllo che le liste corrispondano.
                    for (int ii = 0; ii < ris2.Count; ii++)
                    {
                        Fotografia fAttesa  = ris.ElementAt(((pag - 1) * max) + ii);
                        Fotografia fTrovata = ris2.ElementAt(ii);
                        Assert.AreEqual(fAttesa, fTrovata);
                    }
                }
                // Ora faccio un giro alla rovescio
                for (int pag = 31; pag > 0; pag--)
                {
                    param2.paginazione.skip = (pag - 1) * param2.paginazione.take;
                    IList <Fotografia> ris2 = _impl.cerca(param2);

                    // Ora controllo che le liste corrispondano.
                    for (int ii = 0; ii < ris2.Count; ii++)
                    {
                        Fotografia fAttesa  = ris.ElementAt(((pag - 1) * max) + ii);
                        Fotografia fTrovata = ris2.ElementAt(ii);
                        Assert.AreEqual(fAttesa, fTrovata);
                    }
                }
            }
        }
Esempio n. 7
0
        public void cercaFotoTest()
        {
            ParamCercaFoto param = new ParamCercaFoto();

            param.giornataIniz = new DateTime(2000, 1, 1);
            _impl.cercaFoto(param);

            Assert.IsTrue(_impl.fotografie.Count > 0);

            while (!_caricateFoto)
            {
                Thread.Sleep(1000);
            }

            // Prendo la prima foto e la setto come corrente
            _impl.fotoCorrente = _impl.fotografie[0];
        }
Esempio n. 8
0
        private Fotografia cercaUnaFotoQuasiasi()
        {
            IFotoExplorerSrv fotoExplorer = LumenApplication.Instance.getServizioAvviato <IFotoExplorerSrv>();
            ParamCercaFoto   p            = new ParamCercaFoto();

            p.paginazione = new Lumen.Util.Paginazione {
                take = 1
            };

            fotoExplorer.cercaFoto(p);
            if (fotoExplorer.fotografie.Capacity == 0)
            {
                return(null);
            }

            return(fotoExplorer.fotografie[0]);
        }
Esempio n. 9
0
        public void testBug494()
        {
            Carrello           c;
            IEnumerable <Guid> tantiIds;
            Fotografia         fotoMod;

            // ---
            Console.Out.WriteLine("1: trovo carrello");
            using (LumenEntities entities = new LumenEntities()) {
                c = entities.Carrelli.First(q => q.intestazione == "prova2");
                Assert.IsTrue(c != null);
            }

            // ---
            using (new UnitOfWorkScope()) {
                // ---
                Console.Out.WriteLine("2: carico carrello nel servizio");
                _venditoreSrv.caricareCarrello(c);
                tantiIds = _explorerSrv.caricaFotoDalCarrello();


                // ---
                ParamCercaFoto param = new ParamCercaFoto {
                    idsFotografie     = tantiIds.ToArray(),
                    evitareJoinEvento = true
                };

                Console.Out.WriteLine("3: carico tutte le foto del carrello nella gallery");
                _explorerSrv.cercaFoto(param);
                fotoMod = _explorerSrv.fotografie.First();
                Assert.IsTrue(fotoMod != null);
            }

            using (new UnitOfWorkScope()) {
                _ritoccoSrv.addCorrezione(fotoMod, new Sepia());

                Console.Out.WriteLine("4: applico correzione sepia");
                _gestoreImmaginiSrv.salvaCorrezioniTransienti(fotoMod);
            }

            Console.Out.WriteLine("5: fine");
        }
        void scansionareStart()
        {
            ParamCercaFoto param = new ParamCercaFoto();

            param.giornataIniz = this.giornataDaElaborare;
            param.giornataFine = param.giornataIniz;
            if (this.dalNumFoto >= 0)
            {
                // Prendo dal numero fotogramma indicato in avanti
                param.numeriFotogrammi = dalNumFoto + "-";
            }
            param.didascalia = "<IsNull>";

            this.messaggio     = "Inizio scansione";
            this.percProgresso = 0;

            barcodeSrv.prepareToScan(param, scansionatore_ProgressChanged, scansionatore_RunWorkerCompleted);
            barcodeSrv.start();

            refreshStato();
        }
Esempio n. 11
0
 public SlideShowAutomatico(ParamCercaFoto param)
 {
     paramCercaFoto = param;
 }
Esempio n. 12
0
        public int contaFoto(ParamCercaFoto paramCercaFoto)
        {
            IRicercatoreSrv ricercaSrv = LumenApplication.Instance.getServizioAvviato <IRicercatoreSrv>();

            return(ricercaSrv.conta(paramCercaFoto));
        }
Esempio n. 13
0
        /// <summary>
        /// Occhio questo metodo non idrata le foto.
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public IList <Fotografia> cercaFotoTutte(ParamCercaFoto param)
        {
            IRicercatoreSrv ricercaSrv = LumenApplication.Instance.getServizioAvviato <IRicercatoreSrv>();

            return(ricercaSrv.cerca(param));
        }