public void stampaProviniTestAbort()
        {
            ParamStampaProvini param = new ParamStampaProvini();

            CodaDiStampe c1 = new CodaDiStampe(param, Costanti.NomeStampantePdf);

            c1.Stop();

            using (new UnitOfWorkScope(false))
            {
                ParamStampaProvini p = ricavaParamStampaProvini();
                p.numeroColonne  = 3;
                p.numeroRighe    = 4;
                p.macchiaProvini = true;

                LumenEntities     dbContext = UnitOfWorkScope.currentDbContext;
                List <Fotografia> fotos     = (from f in dbContext.Fotografie.Include("fotografo")
                                               select f).Take(QUANTE).ToList();

                c1.EnqueueItem(new LavoroDiStampaProvini(fotos, p));
                // Accodo una stampa in modo da testare l'abort

                c1.Stop(Threading.PendingItemAction.AbortPendingItems);
                c1.Dispose();
            }
        }
Exemple #2
0
        private void elimina()
        {
            bool conferma = false;

            dialogProvider.ShowConfirmation("Sei sicuro di voler eliminare questa Azione Automatica? \n\n(" + azioneAutomaticaSelezionata.nome + ")", "Elimina",
                                            (confermato) =>
            {
                conferma = confermato;
            });

            if (!conferma)
            {
                return;
            }

            AzioneAuto azione = azioneAutomaticaSelezionata;

            OrmUtil.forseAttacca <AzioneAuto>(ref azione);
            LumenEntities dbContext = UnitOfWorkScope.currentDbContext;

            dbContext.AzioniAutomatiche.Remove(azione);
            dbContext.SaveChanges();

            rileggereAzioniAutomatiche();
        }
        public void PromoFile6x5Test()
        {
            using (new UnitOfWorkScope(false)) {
                decimal prezzoPromoDesiderato = (decimal)(3.5 * 5);
                _impl.creareNuovoCarrello();

                LumenEntities     dbContext = UnitOfWorkScope.currentDbContext;
                List <Fotografia> fotos     = (from f in dbContext.Fotografie.Include("fotografo")
                                               select f).Take(6).ToList();

                // Controllo che ci siano abbastanza foto nel database
                Assert.IsTrue(fotos.Count == 6);

                _impl.aggiungereMasterizzate(fotos);

                _impl.ricalcolaTotaleCarrello();
                var totPagarePrima = _impl.carrello.totaleAPagare;

                Carrello cart = _impl.CalcolaPromozioni(true);

                var totPagareDopo = cart.totaleAPagare;

                Assert.AreEqual(totPagareDopo, prezzoPromoDesiderato);
            }
        }
        public void soloLinqToEntities()
        {
            using (LumenEntities dbContext = new LumenEntities()) {
                IQueryable <Fotografia> query = from ff in dbContext.Fotografie
                                                select ff;

                var evento = dbContext.Eventi.First();

                int [] numeri = { 1, 2, 3, 4, 6 };

                if (1 == 1)
                {
                    query = query.Where(ff => numeri.Contains(ff.numero));
                }

                if (1 == 1)
                {
                    query = query.Where(ff => evento.id == ff.evento.id);
                }


                var risultato = query.Select(ff => ff);
                //ObjectQuery<Fotografia> oq = (ObjectQuery<Fotografia>)query;
                //string s = oq.ToTraceString();
                var lista = risultato.ToList();
            }
        }
Exemple #5
0
        public void eagerLodingTest()
        {
            using (LumenEntities dbContext = new LumenEntities()) {
                var carrelli = dbContext.Carrelli.Include("righeCarrello").Where(cc => cc.righeCarrello.Count > 1).Take(5);

                foreach (Carrello c in carrelli)
                {
                    Debug.WriteLine("\n\n*** Carrello = " + c.id + " " + c.giornata);

                    foreach (RigaCarrello r in c.righeCarrello)
                    {
                        Debug.WriteLine("\n\t" + r.GetType().Name + " " + r.id + " " + r.descrizione);

                        Debug.WriteLine("\t\tFotografo     = " + r.fotografo);
                        Debug.WriteLine("\t\tFotografia    = " + r.fotografia);
                        if (r.fotografia != null)
                        {
                            Debug.WriteLine("\t\tDataOra = " + r.fotografia.dataOraAcquisizione);
                        }

                        if (r.isTipoStampa)
                        {
                            Debug.WriteLine("\t\tFormato Carta = " + r.prodotto);
                        }
                        if (r.isTipoMasterizzata)
                        {
                            Debug.WriteLine("\t\tTot. foto masterizzate = " + c.totMasterizzate);
                        }
                    }
                }
            }
        }
        public void TestMasterizzaMasterizzatore()
        {
            using (LumenEntities dbContext = new LumenEntities())
            {
                foreach (Fotografia fot in dbContext.Fotografie.ToList <Fotografia>())
                {
                    _impl.addFotografia(fot);
                }
            }
            _impl.impostaDestinazione(MasterizzaTarget.Masterizzatore, @"E:\");
            BurnerSrvImpl burnerSrvImpl = new BurnerSrvImpl();

            if (burnerSrvImpl.testMedia())
            {
                _impl.masterizza();
                while (!_elaborazioneTerminata)
                {
                    Thread.Sleep(10000);
                }
                Assert.IsTrue(_elaborazioneTerminata);
            }
            else
            {
                Assert.IsTrue(true);
            }
        }
        public void listaProdottiESurrogatiTest()
        {
            using (LumenEntities dbContext = new LumenEntities()) {
                int qTutti = dbContext.Prodotti.Count();
                Console.WriteLine("tot prodotti : " + qTutti);
                foreach (Prodotto prod in dbContext.Prodotti)
                {
                    Console.WriteLine("Prodotto: " + prod.descrizione);
                }

// abilito debug di ef6
// dbContext.Database.Log = s => System.Diagnostics.Debug.WriteLine( s );

                int qStampe = dbContext.FormatiCarta.Count();
                Console.WriteLine("tot stampe : " + qStampe);
                foreach (Prodotto prod in dbContext.FormatiCarta)
                {
                    Console.WriteLine("Carta: " + prod.descrizione);
                }

                int qFile = dbContext.ProdottiFile.Count();
                Console.WriteLine("tot file : " + qFile);
                foreach (Prodotto prod in dbContext.ProdottiFile)
                {
                    Console.WriteLine("File: " + prod.descrizione);
                }
            }
        }
        public void TestBurning()
        {
            using (LumenEntities dbContext = new LumenEntities())
            {
                foreach (Fotografia fot in dbContext.Fotografie.ToList <Fotografia>().Take(50))
                {
                    System.Diagnostics.Trace.WriteLine("[Foto Aggiunta per la Masterizzazione]: " + Configurazione.cartellaRepositoryFoto + Path.DirectorySeparatorChar + fot.nomeFile);

                    try {
                        _impl.addFileToBurner(Configurazione.cartellaRepositoryFoto + Path.DirectorySeparatorChar + fot.nomeFile);
                    } catch (Exception) {
                    }
                }
            }
            if (!_impl.testMedia())
            {
                return;
            }
            _impl.etichetta = "Masterizza";
            _impl.burning();
            while (!_elaborazioneTerminata)
            {
                Thread.Sleep(10000);
            }
            _impl.Dispose();
        }
Exemple #9
0
        public void rigaCarrelloStaccaFormatoCarta()
        {
            FormatoCarta formato;

            using (LumenEntities dbContext = new LumenEntities()) {
                formato = dbContext.FormatiCarta.FirstOrDefault();
            }

            Fotografia fotografia;

            using (LumenEntities dbContext = new LumenEntities()) {
                fotografia = dbContext.Fotografie.FirstOrDefault();
            }

            Fotografo fotografo;

            using (LumenEntities dbContext = new LumenEntities()) {
                fotografo = dbContext.Fotografi.FirstOrDefault();
            }

            using (LumenEntities dbContext = new LumenEntities()) {
                dbContext.FormatiCarta.Attach(formato);
                dbContext.Fotografi.Attach(fotografo);
                dbContext.Fotografie.Attach(fotografia);

                RigaCarrello rr = new RigaCarrello();
                rr.discriminator = RigaCarrello.TIPORIGA_STAMPA;
                rr.prodotto      = formato;
                rr.fotografo     = fotografo;
                rr.fotografia    = fotografia;
            }
        }
Exemple #10
0
        /**
         * Recupera le cartelle da eliminare lo utilizzo per confrontare il risultato con quello del metodo getListaCartelleDaEliminare
         */
        private int cartelleDaEliminare()
        {
            int count = 0;

            using (LumenEntities dbContext = new LumenEntities())
            {
                DateTime dataIntervallo = DateTime.Now.AddDays(-giorni);

                string queryString = @"SELECT COUNT(Fot.giornata) AS NumeroFoto, Fot.giornata FROM LumenEntities.Fotografie AS Fot GROUP BY Fot.giornata HAVING (Fot.giornata <= @data)";
                ObjectQuery <DbDataRecord> contactQuery = new ObjectQuery <DbDataRecord>(queryString, ((IObjectContextAdapter)dbContext).ObjectContext);

                contactQuery.Parameters.Add(new ObjectParameter("data", DateTime.Now.AddDays(-giorni)));

                foreach (DbDataRecord rec in contactQuery)
                {
                    Console.WriteLine("NumeroFoto {0}; Giornata {1}", rec[0], rec[1]);
                    if (Convert.ToDateTime(rec[1]).Date <= Convert.ToDateTime(dataIntervallo).Date)
                    {
                        count++;
                    }
                }
            }
            System.Diagnostics.Trace.WriteLine("[Numero Cartelle da Eliminare]: " + count);
            return(count);
        }
Exemple #11
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);
            }
        }
Exemple #12
0
        public void crudFotografia2()
        {
            using (LumenEntities context = new LumenEntities()) {
                Random r = new Random();

                Fotografia f = new Fotografia();

                f.id                  = Guid.NewGuid();
                f.didascalia          = "Test-" + r.Next(1000, 9999);
                f.numero              = r.Next(1, 1000000);
                f.nomeFile            = "Test";
                f.dataOraAcquisizione = DateTime.Now;
                f.giornata            = DateTime.Today;

                f.fotografo = context.Fotografi.First();
                f.evento    = context.Eventi.FirstOrDefault();

                context.Fotografie.Add(f);


                int test = context.SaveChanges();

                Assert.IsTrue(test > 0);
            }
        }
Exemple #13
0
        public void crudFormatiCarta()
        {
            using (LumenEntities context = new LumenEntities()) {
                Random r = new Random();

                FormatoCarta fc = new FormatoCarta();

                fc.id          = Guid.NewGuid();
                fc.descrizione = "Test-" + r.Next(1000, 9999);
                fc.prezzo      = r.Next(1, 50);
                fc.attivo      = true;
                fc.ordinamento = (short)r.Next(1, 100);
                context.FormatiCarta.Add(fc);

                int test = context.SaveChanges();

                Assert.IsTrue(test > 0);

                var trovato = context.FormatiCarta.Any(c => c.descrizione.StartsWith("Test-"));
                Assert.IsTrue(trovato);

                FormatoCarta carta = context.FormatiCarta.First(c => c.descrizione.StartsWith("Test-"));
                Assert.IsNotNull(carta);
            }
        }
        public void vendiFotoStampaDirettaTest()
        {
            using (new UnitOfWorkScope(false))
            {
                // Ho bisogno di una stampante con il formato carta A5
                StampantiAbbinateCollection stampantiAbbinate = StampantiAbbinateUtil.deserializza(Configurazione.UserConfigLumen.stampantiAbbinate);


                // TODO  il test presume che ci sia una stampante abbinata con la carta A5.
                //       se non esiste, creare un abbinamento ad hoc.

                _impl.carrello.intestazione = VenditoreSrvImpl.INTESTAZIONE_STAMPA_RAPIDA;

                ParamStampaFoto p = ricavaParamStampa();

                LumenEntities     dbContext = UnitOfWorkScope.currentDbContext;
                List <Fotografia> fotos     = (from f in dbContext.Fotografie.Include("fotografo")
                                               select f).Take(QUANTE).ToList();

                contaStampate = 0;

                _impl.aggiungereStampe(fotos, p);

                _impl.vendereCarrello();

                Assert.IsTrue(_impl.carrello.venduto);
                Assert.IsTrue(_impl.carrello.totaleAPagare > 0);
            }

            Console.WriteLine("FINITO");
        }
Exemple #15
0
        /// <summary>
        /// Parameterized constructor.
        /// </summary>
        /// <param name="saveAllChangesAtEndOfScope">
        /// A boolean value that indicates whether to automatically save
        /// all object changes at end of the scope.
        /// </param>
        public UnitOfWorkScope(bool saveAllChangesAtEndOfScope, string connectionString)
        {
            if (_currentScope != null && !_currentScope._isDisposed)
            {
                throw new InvalidOperationException("ObjectContextScope instances cannot be nested.");
            }

            _giornale.Debug("+Apro Unit-Of-Work");

            _saveAllChangesAtEndOfScope = saveAllChangesAtEndOfScope;


            /* Create a new ObjectContext instance: uso il proxy */
            if (String.IsNullOrEmpty(connectionString))
            {
                _dbContext = new LumenEntities();
            }
            else
            {
                _dbContext = new LumenEntities(connectionString);
            }

//			_dbContext.Configuration.ProxyCreationEnabled = false;


            _isDisposed = false;
            Thread.BeginThreadAffinity();
            /* Set the current scope to this UnitOfWorkScope object: */
            _currentScope = this;
        }
Exemple #16
0
        public static FormatoCarta ottieniFormatoCarta(LumenEntities dbContext, string formato)
        {
            FormatoCarta fc;

            // Provo a vedere se esiste nelle entita appena aggiunte
            fc = ((IObjectContextAdapter)dbContext).ObjectContext.ObjectStateManager.GetObjectStateEntries(EntityState.Added)
                 .Where(e => !e.IsRelationship)
                 .Select(e => e.Entity)
                 .OfType <FormatoCarta>()
                 .FirstOrDefault(m => m.descrizione.Equals(formato));
            if (fc == null)
            {
                fc = dbContext.FormatiCarta.FirstOrDefault <FormatoCarta>(f => f.descrizione == formato);

                if (fc == null)
                {
                    fc             = new FormatoCarta();
                    fc.id          = Guid.NewGuid();
                    fc.prezzo      = new Decimal(numeroRandom(3, 15));
                    fc.descrizione = formato;
                    dbContext.FormatiCarta.Add(fc);
                }
            }

            return(fc);
        }
        public void TestMasterizzaCartella()
        {
            using (LumenEntities dbContext = new LumenEntities())
            {
                foreach (Fotografia fot in dbContext.Fotografie.ToList <Fotografia>())
                {
                    System.Diagnostics.Trace.WriteLine("[Foto Aggiunta all'Abum per la Copia su Chiavetta]: " + fot.nomeFile);
                    _impl.addFotografia(fot);
                }
            }
            string strPathDesktop = Environment.GetFolderPath(System.Environment.SpecialFolder.DesktopDirectory);

            _impl.impostaDestinazione(MasterizzaTarget.Cartella, strPathDesktop + @"\Chiavetta");
            BurnerSrvImpl burnerSrvImpl = new BurnerSrvImpl();

            if (burnerSrvImpl.testMedia())
            {
                _impl.masterizza();

                while (!_elaborazioneTerminata)
                {
                    Thread.Sleep(10000);
                }
                Assert.IsTrue(_elaborazioneTerminata);
            }
            else
            {
                Assert.IsTrue(true);
            }
        }
        /// <summary>
        /// Restituisce il fotografo a cui appartengono le foto memorizzate nel path
        /// </summary>
        /// <param name="path"></param>
        public Fotografo diChiSonoQuesteFoto(String path)
        {
            //EliminaFotoVecchieMsg eliminaFotoVecchieMsg = new EliminaFotoVecchieMsg();
            String        fotografoID = PathUtil.fotografoIDFromPath(path);
            LumenEntities objContext  = UnitOfWorkScope.currentDbContext;

            return(objContext.Fotografi.SingleOrDefault(f => f.id == fotografoID));
        }
        public void stampaProviniFotoProviniTest()
        {
            using (new UnitOfWorkScope(false))
            {
                LumenEntities     dbContext = UnitOfWorkScope.currentDbContext;
                List <Fotografia> fotos     = (from f in dbContext.Fotografie.Include("fotografo")
                                               select f).Take(QUANTE).ToList();

                //Carico una stampa Provini
                ParamStampaProvini p = ricavaParamStampaProvini();
                p.numeroColonne  = 5;
                p.numeroRighe    = 5;
                p.macchiaProvini = false;

                _impl.aggiungereStampe(fotos, p);

                //Carico una stampa Foto
                ParamStampaFoto p2 = ricavaParamStampaFoto();

                CodaDiStampe c1 = new CodaDiStampe(p2, Costanti.NomeStampantePdf);

                Fotografia foto = (from f in dbContext.Fotografie.Include("fotografo")
                                   select f).Take(QUANTE + 1).ToList().Last();

                c1.EnqueueItem(new LavoroDiStampaFoto(foto, p2));
                c1.Start();

                List <Fotografia> fotos2 = (from f in dbContext.Fotografie.Include("fotografo")
                                            select f).Take(2 * QUANTE + 1).ToList();

                // Carico una stampa Provini
                ParamStampaProvini p3 = ricavaParamStampaProvini();
                p3.numeroColonne  = 3;
                p3.numeroRighe    = 4;
                p3.macchiaProvini = true;

                fotos2.RemoveRange(0, QUANTE + 1);

                _impl.aggiungereStampe(fotos2, p3);

                //Carico una stampa Foto
                ParamStampaFoto p4 = ricavaParamStampaFoto();

                CodaDiStampe c2 = new CodaDiStampe(p4, Costanti.NomeStampantePdf);

                Fotografia foto2 = (from f in dbContext.Fotografie.Include("fotografo")
                                    select f).Take(2 * QUANTE + 2).ToList().Last();

                c2.EnqueueItem(new LavoroDiStampaFoto(foto2, p4));
                c2.Start();
            }

            while (_contaElaborazioniTerminate != 2)
            {
                Thread.Sleep(1000);
            }
            Assert.IsTrue(esitoStampa == EsitoStampa.Ok);
        }
        /// <summary>
        /// The thread that does the burning of the media
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void backgroundWorkerCopia_DoWork(object sender, DoWorkEventArgs e)
        {
            // Pattern Unit-of-work
            using (LumenEntities objContext = UnitOfWorkScope.currentDbContext)
            {
                System.Diagnostics.Trace.WriteLine("INIZIO COPIA SU CARTELLA");
                MasterizzaMsg inizioCopiaMsg = new MasterizzaMsg(this);
                inizioCopiaMsg.fase     = Fase.InizioCopia;
                inizioCopiaMsg.progress = 0;
                inizioCopiaMsg.result   = "Inizio Copia Su Chiavetta";
                pubblicaMessaggio(inizioCopiaMsg);

                this.totFotoCopiate    = 0;
                this.totFotoNonCopiate = 0;
                erroriCopia            = false;
                foreach (Fotografia fot in _fotografie)
                {
                    fotCopia = fot;
                    string nomeFileDest = "";
                    try
                    {
                        if (backgroundWorkerCopia.CancellationPending)
                        {
                            _giornale.Warn("cancellazione richiesta durante copia file su chiavetta. Come mai ? Indagare");
                        }

                        nomeFileDest = Path.Combine(_destinazione, Path.GetFileName(fot.nomeFile));
                        String nomeFileSorgente = PathUtil.nomeCompletoVendita(fot);
                        File.Copy(@nomeFileSorgente, nomeFileDest, false);
                        //Elimino gli attributi solo lettura
                        File.SetAttributes(nomeFileDest, File.GetAttributes(nomeFileDest) & ~(FileAttributes.Archive | FileAttributes.ReadOnly));

                        if (notificareProgressione)
                        {
                            //MasterizzaMsg statoCopiaMsg = new MasterizzaMsg();
                            //statoCopiaMsg.riscontratiErrori = false;
                            //statoCopiaMsg.fotoAggiunta = 1;
                            //statoCopiaMsg.totFotoAggiunte = ++countFotoAggiunte;
                            //statoCopiaMsg.result = "Copia File " + fot.nomeFile;

                            backgroundWorkerCopia.ReportProgress(++this.totFotoCopiate / _fotografie.Count * 100);
                        }
                    }
                    catch (IOException ee)
                    {
                        _giornale.Debug("errore copia foto: " + fot, ee);
                        //MasterizzaMsg statoCopiaErroreMsg = new MasterizzaMsg();
                        //statoCopiaErroreMsg.riscontratiErrori = true;
                        erroriCopia = true;
                        //statoCopiaErroreMsg.totFotoNonAggiunte = ++countFotoNonAggiunte;
                        //statoCopiaErroreMsg.result = "Il file " + @configurazione.getCartellaRepositoryFoto() + Path.DirectorySeparatorChar + fot.nomeFile + " non è statoScarica copiato il file sulla chiavetta " + nomeFileDest;
                        //_giornale.Error("Il file " + @configurazione.getCartellaRepositoryFoto() + Path.DirectorySeparatorChar + fot.nomeFile + " non è statoScarica copiato il file sulla chiavetta " + nomeFileDest, ee);
                        backgroundWorkerCopia.ReportProgress(++totFotoNonCopiate / _fotografie.Count * 100);
                    }
                }
            }
        }
Exemple #21
0
        public void applicaBarCodeDidascalia()
        {
            using (new UnitOfWorkScope(false))
            {
                LumenEntities     dbContext = UnitOfWorkScope.currentDbContext;
                List <Fotografia> fotos     = dbContext.Fotografie.ToList <Fotografia>();

                _barCodeimpl.scan(fotos);
            }
        }
Exemple #22
0
 /**
  * Provo a leggere tutte le righe di tutti i carrelli ma solo quelle di tipo
  * foto stampata.
  */
 private void queryPolimorfica()
 {
     using (LumenEntities dbContext = new LumenEntities()) {
         foreach (RigaCarrello riCaFotoStampata in
                  dbContext.RigheCarrelli.Include("fotografo").Include("fotografia").Where(r => r.discriminator == RigaCarrello.TIPORIGA_STAMPA))
         {
             Trace.WriteLine("Riga Carrello foto stampata: " + riCaFotoStampata.fotografo.id + " totFoto=" + riCaFotoStampata.totFogliStampati);
         }
     }
 }
Exemple #23
0
        public void applicaCorrezioneLogo()
        {
            using (LumenEntities dbContext = new LumenEntities()) {
                Random      rnd = new Random();
                ImmagineWic iw;
                Fotografia  foto;

                do
                {
                    int num = rnd.Next(1, 1000);
                    iw = null;

                    // Scelgo una foto qualsiasi e prendo l'immagine originale (cosi non rischio di avere già dei loghi)
                    foto = dbContext.Fotografie.FirstOrDefault(f => f.numero == num);
                    if (foto != null)
                    {
                        AiutanteFoto.idrataImmaginiFoto(foto, IdrataTarget.Originale);
                        iw = (ImmagineWic)foto.imgOrig;
                    }
                } while(iw == null);

                _correttore = new LogoCorrettore();
                Logo logo = LogoCorrettore.creaLogoDefault();



                /*
                 * logo.zoom = new Zoom {
                 *      fattore = 3
                 * };
                 *
                 * logo.rotazione = new Ruota( 45 );
                 *
                 * logo.traslazione = new Trasla {
                 *      offsetX = 100,
                 *      offsetY = 300,
                 *      rifW = iw.ww,
                 *      rifH = iw.hh
                 * };
                 */

                //
                logo.posiz = Logo.PosizLogo.NordEst;
                vediLogo(foto.imgOrig, logo);
                //
                logo.posiz = Logo.PosizLogo.NordOvest;
                vediLogo(foto.imgOrig, logo);
                //
                logo.posiz = Logo.PosizLogo.SudEst;
                vediLogo(foto.imgOrig, logo);
                //
                logo.posiz = Logo.PosizLogo.SudOvest;
                vediLogo(foto.imgOrig, logo);
            }
        }
        public void CarrelloTest3EliminaRiga()
        {
#if COSI_FUNZIONA_BENE
            Guid guid = new Guid("625a1ed1-6e22-4de7-b8c9-2420de1bcb5e");
            using (LumenEntities ctx = new LumenEntities()) {
                Carrello carrello = ctx.Carrelli
                                    .Include("righeCarrello")
                                    .Single(r => r.id == guid);

                int          conta      = 0;
                RigaCarrello rigaDacanc = null;
                foreach (var riga in carrello.righeCarrello)
                {
                    if (++conta == 2)
                    {
                        rigaDacanc = riga;
                    }
                }

                if (rigaDacanc != null)
                {
                    carrello.righeCarrello.Remove(rigaDacanc);
                    ctx.RigheCarrelli.Remove(rigaDacanc);
                }

                ctx.SaveChanges();
            }
#endif
            // Cerco un carrello che non sia venduto, con almeno due righe
            Guid guid = Guid.Empty;

            using (LumenEntities ctx = new LumenEntities()) {
                Carrello carrello = ctx.Carrelli
                                    .Include("righeCarrello")
                                    .Where(c => c.venduto == false && c.righeCarrello.Count > 1)
                                    .FirstOrDefault();

                if (carrello != null)
                {
                    guid = carrello.id;
                }
            }

            if (guid != Guid.Empty)
            {
                // Carrello carrelloTest = recuperaCarrelloPerTest();
                using (GestoreCarrello ges = new GestoreCarrello()) {
                    ges.caricaCarrello(guid);

                    RigaCarrello rigaDacanc = ges.carrello.righeCarrello.AsEnumerable().ElementAt(1);
                    ges.removeRiga(rigaDacanc);
                    ges.salvare();
                }
            }
        }
Exemple #25
0
        public void Init()
        {
            LumenApplication             app        = LumenApplication.Instance;
            IObservable <ScaricoFotoMsg> observable = app.bus.Observe <ScaricoFotoMsg>();

            observable.Subscribe(this);

            this._scaricatoreImpl = new ScaricatoreFotoSrvImpl();
            _scaricatoreImpl.start();

            // -------
            using (LumenEntities dbContext = new LumenEntities())
            {
                InfoFissa i = dbContext.InfosFisse.Single <InfoFissa>(f => f.id == "K");

                // Se hai fatto bene la configurazione, il fotografo artista deve sempre esistere
                _artista = dbContext.Fotografi.Single(f => f.id == Configurazione.ID_FOTOGRAFO_DEFAULT);
            }

            String doveSono = Assembly.GetExecutingAssembly().Location;

            string appPath  = Path.GetDirectoryName(doveSono);
            string cartella = Path.Combine(appPath, "images");
            string nomeSrc  = Directory.GetFiles(cartella, "barCode.jpg").ElementAt(0);

            FileInfo fiInfo = new FileInfo(nomeSrc);

            ParamScarica param = new ParamScarica();

            param.nomeFileSingolo      = nomeSrc;
            param.cartellaSorgente     = null;
            param.eliminaFilesSorgenti = false;

            param.flashCardConfig = new Config.FlashCardConfig(_artista);
            _scaricatoreImpl.scarica(param);

            while (!_puoiTogliereLaFlashCard)
            {
                Thread.Sleep(10000);
            }

            Console.Write("ok puoi togliere la flash card. Attendere elaborazione in corso ...");

            while (!_elaborazioneTerminata)
            {
                Thread.Sleep(10000);
            }

            Console.WriteLine("Ecco finito");


            this._barCodeimpl = new BarCodeSrvImpl();

            IRicercatoreSrv srv2 = app.creaServizio <IRicercatoreSrv>();
        }
Exemple #26
0
        public void paginazioneDirettaSql()
        {
            int sizePag = 20;                   // foto per pagina

            using (LumenEntities context = new LumenEntities()) {
                SqlParameter p1 = new SqlParameter("giornata", System.Data.SqlDbType.Date);
                p1.Value = DateTime.Parse("2017-02-27");

                SqlParameter p2 = new SqlParameter("numero", System.Data.SqlDbType.Int);
                p2.Value = 74;

//				object[] parametri = { p1, p2 };
//				object[] parametri = { DateTime.Parse( "2017-02-27" ), (int)74 };
                object[] sqlParams = { "6f588174-3768-49d7-a096-2a537cc3b5e6" };


                context.Database.BeginTransaction();

                string sql1   = "SELECT count( f.id ) FROM Fotografie f  where 1=1 AND f.evento_id = {0} ";
                var    query1 = context.Database.SqlQuery <int>(sql1, sqlParams);
                var    quanti = query1.Single();


                //				var isCompatibile = context.Database.CompatibleWithModel( true );
                //				Console.Out.WriteLine( isCompatibile );

                for (int pagina = 1; pagina < 10; pagina++)
                {
// where f.giornata = @giornata and f.numero = @numero

                    string sql = @"SELECT f.id
				             FROM `fotografie` as f 
                             INNER JOIN `Fotografi` AS f2 ON f.`fotografo_id` = `f2`.`id` 
                             LEFT OUTER JOIN `Eventi` AS `ev` 
							              ON `f`.`evento_id` = `ev`.`id` 
							 where f.evento_id = {0}
                             order by `dataOraAcquisizione` desc, `numero` DESC 
                             LIMIT " + ((pagina - 1) * sizePag) + ", " + sizePag;

                    System.Diagnostics.Debug.WriteLine("\n------\nTempo1: " + DateTime.Now.ToString("mm:ss:fff"));

                    var ris = context.Database.SqlQuery <Guid>(sql, sqlParams);

                    System.Diagnostics.Debug.WriteLine("Tempo2: " + DateTime.Now.ToString("mm:ss:fff"));

                    var lista = ris.ToList();

                    System.Diagnostics.Debug.WriteLine("Tempo3: " + DateTime.Now.ToString("mm:ss:fff"));

                    System.Diagnostics.Debug.WriteLine(lista.Count);
                }

                System.Diagnostics.Debug.WriteLine("finito");
            }
        }
Exemple #27
0
        public void eliminaUnaFotoTest()
        {
            using (new UnitOfWorkScope()) {
                UnitOfWorkScope.currentObjectContext.Connection.Open();
                LumenEntities entities = UnitOfWorkScope.currentDbContext;

                // ----- Ora provo in eSql
                string esql = @"SELECT  f.id
                              FROM LumenEntities.Fotografie as f
                              left join LumenEntities.RigheCarrelli as rc on rc.fotografia = f";

                DbCommand comando = UnitOfWorkScope.currentObjectContext.Connection.CreateCommand();
                comando.CommandText = esql;

                // Devo scegliere una foto che non sia dentro un carrello, altrimenti mi si spacca
                Guid idFoto = Guid.Empty;

                using (DbDataReader rdr = comando.ExecuteReader(CommandBehavior.SequentialAccess)) {
                    if (rdr.Read())
                    {
                        var oo = rdr.GetValue(0);
                        idFoto = (Guid)oo;
                    }

                    if (idFoto == Guid.Empty)
                    {
                        return;
                    }

                    Fotografia fDacanc = entities.Fotografie.Single(f => f.id == idFoto);

                    string nomeFileOrig = PathUtil.nomeCompletoOrig(fDacanc);

                    Object[] parametri = new Object[] { fDacanc.id };

                    Assert.IsTrue(File.Exists(nomeFileOrig));
                    ObjectResult <int> test1 = ((IObjectContextAdapter)entities).ObjectContext.ExecuteStoreQuery <int>(@"select count(*) from Fotografie where id = {0}", parametri);
                    Assert.IsTrue(test1.ElementAt(0) == 1);

                    using (IEliminaFotoVecchieSrv srv = LumenApplication.Instance.creaServizio <IEliminaFotoVecchieSrv>()) {
                        Fotografia [] listaDacanc = { fDacanc };
                        int           quante      = srv.elimina(listaDacanc);
                        Assert.IsTrue(quante == 1);
                    }

                    Assert.IsFalse(File.Exists(nomeFileOrig));
                    ObjectResult <int> test2 = ((IObjectContextAdapter)entities).ObjectContext.ExecuteStoreQuery <int>(@"select count(*) from Fotografie where id = {0}", parametri);
                    Assert.IsTrue(test2.ElementAt(0) == 0);

                    //
                    // Siccome non mi fido, provo a fare una query per vedere che la foto in questione sia davvero sparita.
                }
            }
        }
 public void TestAddFileToBurn()
 {
     using (LumenEntities dbContext = new LumenEntities())
     {
         foreach (Fotografia fot in dbContext.Fotografie.ToList <Fotografia>().Take(10))
         {
             System.Diagnostics.Trace.WriteLine("[Foto Aggiunta per la Masterizzazione]: " + Configurazione.cartellaRepositoryFoto + Path.DirectorySeparatorChar + fot.nomeFile);
             _impl.addFileToBurner(Configurazione.cartellaRepositoryFoto + Path.DirectorySeparatorChar + fot.nomeFile);
         }
     }
 }
Exemple #29
0
        private void creaMioDbContext()
        {
            // Rilascio eventuale context precedente
            if (mioDbContext != null)
            {
                mioDbContext.Dispose();
                mioDbContext = null;
            }

            mioDbContext = new LumenEntities();
        }
Exemple #30
0
        public void modificaConProgrammaEsterno()
        {
            // Carico una foto a caso
            using (LumenEntities entities = new LumenEntities()) {
                Fotografia[] fotos = new Fotografia[2];
                fotos[0] = Costanti.findUnaFotografiaRandom(entities);
                fotos[1] = Costanti.findUnaFotografiaRandom(entities);

                Fotografia [] modificate = _impl.modificaConProgrammaEsterno(fotos.ToArray());

                Assert.IsTrue(modificate.Length > 0);
            }
        }