Esempio n. 1
0
        public override string ToString()
        {
            StringBuilder dato = new StringBuilder("");

            if (TipoRigaScontrino == TipoRigaScontrino.Vendita)
            {
                dato.Append(Descrizione.Replace(";", ",") + ";" + IvaPerc + ";" + Qta.ToString("0.00") + ";" + PrezzoIvato.ToString("0.00") + ";" + TotaleRiga.ToString("0.00") + ";");
            }
            else if (TipoRigaScontrino == TipoRigaScontrino.Sconto)
            {
                dato.Append(Descrizione.Replace(";", ",") + ";" + 0 + ";" + 0.ToString("0.00") + ";" + PrezzoIvato.ToString("0.00") + ";" + TotaleRiga.ToString("0.00") + ";");
            }
            else if (TipoRigaScontrino == TipoRigaScontrino.Totale)
            {
                dato.Append("TOTALE" + ";" + "" + ";" + "" + ";" + ";" + TotaleComplessivo.ToString("0.00") + ";");
            }
            if (TipoRigaScontrino == TipoRigaScontrino.Vendita)
            {
                dato.Append("V;");
            }
            else if (TipoRigaScontrino == TipoRigaScontrino.Sconto)
            {
                dato.Append("S;");
            }
            else if (TipoRigaScontrino == TipoRigaScontrino.Totale)
            {
                dato.Append("T;" + Pagamento);
                if (CodiceLotteria != "")
                {
                    dato.Append("|" + CodiceLotteria);
                }
            }
            return(dato.ToString());
        }
        public static async Task <SezioneProfilo[]> getDescrizione(int id, string uri)
        {
            Descrizione descrizione = null;
            var         json        = "{\"id\":" + JsonConvert.SerializeObject(id) + "}";
            var         sendContent = new StringContent(json, Encoding.UTF8, "application/json");

            Console.WriteLine(json);
            try
            {
                HttpResponseMessage response = await _client.PostAsync(uri, sendContent);

                if (response.IsSuccessStatusCode)
                {
                    string content = await response.Content.ReadAsStringAsync();

                    Console.WriteLine(content);
                    descrizione = JsonConvert.DeserializeObject <Descrizione>(content);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine("\tERROR {0}", ex.Message);
            }
            if (descrizione != null)
            {
                return(descrizione.Risultati);
            }
            return(null);
        }
Esempio n. 3
0
        public override string ToString()
        {
            const int max = 15;

            if (Descrizione.Length <= max)
            {
                return(Descrizione);
            }
            return(Descrizione.Substring(0, max) + "...");
        }
Esempio n. 4
0
        async Task ExecuteAggiungiAnnuncioCommand()
        {
            IsBusy = true;

            if (EmptyFields())
            {
                await App.Current.MainPage.DisplayAlert("Errore", "Non hai riempito uno o più campi", "Ok");

                return;
            }

            var annuncioRequest = new Ad
            {
                nomeOggetto  = NomeOggetto.Trim(),
                descrizione  = Descrizione.Trim(),
                prezzo       = Prezzo,
                data         = DateTime.Now,
                anteprimaImg = listaImmaginiInBase64[0]
            };
            var response = await _annuncioService.AddAnnuncioAsync(annuncioRequest);

            if (response.hasSucceded)
            {
                // Per ogni stringa immagine in base 64 caricata...
                foreach (var imgB64 in listaImmaginiInBase64)
                {
                    // La invio al db con l'id del nuovo annuncio appena generato!!
                    await _fotoService.UploadAdImagesAsync(response.id, imgB64);
                }

                StringBuilder successo = new StringBuilder();
                successo.AppendLine("Annuncio aggiunto con successo!");
                successo.AppendLine("Puoi trovarlo nella sezione 'I MIEI ANNUNCI' sul tuo profilo");
                await App.Current.MainPage.DisplayAlert("RentIT", successo.ToString(), "Ok");

                await NavService.NavigateToMainPage();
            }
            else
            {
                await App.Current.MainPage.DisplayAlert("Errore", response.responseMessage, "Ok");
            }

            IsBusy = false;
        }
        public string EstraiDescrizioneTitolo()
        {
            /*  Div.su 370,000 PIMCO DYNAMIC CREDIT
             *  Rit.div.su 370,000 PIMCO DYNAMIC CREDIT
             */

            var result = "";
            var div    = Descrizione.StartsWith("Div.su");
            var rit    = Descrizione.StartsWith("Rit.div.su");

            if (div)
            {
                result = Descrizione.Remove(0, 7);
            }
            if (rit)
            {
                result = Descrizione.Remove(0, 11);
            }

            return(result);
        }
Esempio n. 6
0
        private static void SynchProdotti()
        {
            LogHelper.LogData(LogEntry.PrestashopWebJob, string.Format("Creazione CSV per KIJIJI"));
            var stream    = new MemoryStream();
            var csvWriter = new StreamWriter(stream, Encoding.UTF8);

            const string categoriaPnemuaticiCerchiAuto = "587399168";
            const string categoriaPneumaticiCerchiMoto = "587595776";
            const string email       = "*****@*****.**";
            const string telefono    = "3928545490";
            const string tipoPrezzo  = "SPECIFIED_AMOUNT";
            const string istatComune = "001308";
            var          url         = string.Empty;

            using (var db = new DBModel()) {
                foreach (var ps in db.PS_Shop.Where(x => x.Disabled == false).ToList())
                {
                    string azione = "inserisci", Titolo, Descrizione, Prezzo, dataPubblicazione;
                    string urlImg1 = string.Empty, urlImg2 = string.Empty, urlImg3 = string.Empty, urlImg4 = string.Empty;
                    string urlImg5 = string.Empty, urlImg6 = string.Empty, urlImg7 = string.Empty, urlImg8 = string.Empty;
                    string gommeUsate, descrizioneBreve;

                    foreach (var shopSync in ps.LstMagazziniSincronizzati.Where(x => x.SincronizzazioneAttiva).ToList())
                    {
                        List <int> lstBrandDaSincronizzare           = new List <int>();
                        List <int> lstCaratteristicheDaSincronizzare = new List <int>();

                        if (shopSync.SincronizzazioneSelettiva)
                        {
                            LogHelper.LogData(LogEntry.KijijiWebJob,
                                              $"Sincronizzazione attivata per il magazzino: {shopSync.refMagazzino.Nome}. Carico le liste di marchi e caratteristiche da sincronizzare");
                            lstBrandDaSincronizzare           = shopSync.LstSelectiveBrandSynch.Select(x => x.FK_Brand).ToList();
                            lstCaratteristicheDaSincronizzare = shopSync.LstSelectiveCarSync.Select(x => x.FK_ValoreCaratteristica).ToList();
                        }

                        foreach (var disp in shopSync.refMagazzino.LstDisponibilitaProdotti.Where(x => (x.Quantita - x.LstVendita.Sum(y => y.Quantita)) > 0))
                        {
                            if (shopSync.SincronizzazioneSelettiva)
                            {
                                if (!lstBrandDaSincronizzare.Contains(disp.refPneumatico.FK_Brand))
                                {
                                    LogHelper.LogData(LogEntry.KijijiWebJob,
                                                      $"Sincronizzazione attivata prodotto {disp.Id} escluso per marchio non da sincronizzare.");

                                    continue;
                                }

                                if (!lstCaratteristicheDaSincronizzare.Contains(disp.refPneumatico.FK_Altezza) ||
                                    !lstCaratteristicheDaSincronizzare.Contains(disp.refPneumatico.FK_Diametro) ||
                                    !lstCaratteristicheDaSincronizzare.Contains(disp.refPneumatico.FK_IndiceCarico) ||
                                    !lstCaratteristicheDaSincronizzare.Contains(disp.refPneumatico.FK_IndiceVelocita) ||
                                    !lstCaratteristicheDaSincronizzare.Contains(disp.refPneumatico.FK_Larghezza) ||
                                    (disp.refPneumatico.FK_MandS.HasValue && !lstCaratteristicheDaSincronizzare.Contains(disp.refPneumatico.FK_MandS.Value)) ||
                                    !lstCaratteristicheDaSincronizzare.Contains(disp.refPneumatico.FK_Stagione))
                                {
                                    LogHelper.LogData(LogEntry.KijijiWebJob,
                                                      $"Sincronizzazione attivata prodotto {disp.Id} escluso per caratteristica non da sincronizzare.");
                                    continue;
                                }
                            }

                            var partnerId = disp.Id.ToString();

                            if (disp.LstSyncPrestashop.Any())
                            {
                                url =
                                    $"https://www.gommeusatestore.com/index.php?controller=product&id_product={disp.LstSyncPrestashop.Last().IdPrestashop}";
                            }
                            else
                            {
                                url = string.Empty;
                            }

                            // Titolo (nome prodotto prestashop)
                            if (disp.refPneumatico.Usato)
                            {
                                gommeUsate       = $"Gomme usate - Batt. {disp.refPneumatico.PercResidua}%";
                                descrizioneBreve = "GLI PNEUMATICI HANNO SUPERATO TUTTI I NOSTRI TEST DI SICUREZZA E SONO STATI TRATTATI CON UNA SPECIALE CERA CHE NE RINNOVA E PROTEGGE L’ELASTICITA’ PREVENENDO LA SCREPOLATURA E L’INVECCHIAMENTO.";
                            }
                            else
                            {
                                gommeUsate       = "Gomme";
                                descrizioneBreve = "GARANZIA: 2 ANNI (SUI DIFETTI DI FABBRICA)";
                            }

                            Titolo = string.Format("{8} {0} {1}/{2}R{3} {4}{5} {6} {7}", disp.refPneumatico.refBrand.Nome, disp.refPneumatico.refLarghezza.Valore, disp.refPneumatico.refAltezza.Valore,
                                                   disp.refPneumatico.refDiametro.Valore, disp.refPneumatico.refIndiceCarico.Valore, disp.refPneumatico.refIndiceVelocita.Valore, disp.refPneumatico.Modello,
                                                   disp.refPneumatico.refStagione.Valore, gommeUsate);

                            Console.WriteLine(Titolo);

                            Descrizione = "MINIMO D'ORDINE: 2 PNEUMATICI<br />";

                            if (disp.refPneumatico.refLarghezza != null)
                            {
                                Descrizione += $"Larghezza: {disp.refPneumatico.refLarghezza.Valore}<br />";
                            }

                            if (disp.refPneumatico.refAltezza != null)
                            {
                                Descrizione += $"Altezza: {disp.refPneumatico.refAltezza.Valore}<br />";
                            }

                            if (disp.refPneumatico.refDiametro != null)
                            {
                                Descrizione += $"Diametro: {disp.refPneumatico.refDiametro.Valore}<br />";
                            }

                            if (disp.refPneumatico.refIndiceCarico != null)
                            {
                                Descrizione += $"Ind. carico: {disp.refPneumatico.refIndiceCarico.Valore}<br />";
                            }

                            if (disp.refPneumatico.refIndiceVelocita != null)
                            {
                                Descrizione += $"Ind. velocita': {disp.refPneumatico.refIndiceVelocita.Valore}<br />";
                            }

                            if (disp.refPneumatico.refBrand != null)
                            {
                                Descrizione += $"Marca: {disp.refPneumatico.refBrand.Nome}<br />";
                            }

                            Descrizione += $"Modello: {disp.refPneumatico.Modello}<br />";

                            Descrizione += $"Condizione: {(disp.refPneumatico.Usato ? "Usato" : "Nuovo")}<br />";

                            if (disp.refPneumatico.Usato)
                            {
                                Descrizione += $"Batt. residuo: {disp.refPneumatico.PercResidua.Value}<br />";
                            }

                            if (disp.refPneumatico.refStagione != null)
                            {
                                Descrizione += $"Stagione: {disp.refPneumatico.refStagione.Valore}<br />";
                            }


                            Descrizione += $"Runflat: {(disp.refPneumatico.Runflat ? "si" : "no")}<br />";

                            if (disp.refPneumatico.refMudAndSnow != null)
                            {
                                Descrizione += $"M+S: {disp.refPneumatico.refMudAndSnow.Valore}<br />";
                            }

                            if (string.IsNullOrEmpty(disp.refPneumatico.DOT))
                            {
                            }
                            else
                            {
                                disp.refPneumatico.DOT = disp.refPneumatico.DOT.PadLeft(4, '0');
                                Descrizione           +=
                                    $"DOT: Settimana {disp.refPneumatico.DOT.Substring(0, 2)} Anno 20{disp.refPneumatico.DOT.Substring(2, 2)}<br />";
                            }

                            Descrizione += $"BSW: {(disp.refPneumatico.Bordino ? "si" : "no")}<br />";
                            Descrizione += $"XL: {(disp.refPneumatico.Bordino ? "si" : "no")}<br /><br />";

                            // Aggiunta descrizione Marca
                            Descrizione += $"{disp.refPneumatico.refBrand.Descrizione}<br /><br />";

                            // Aggiunta Descrizione breve
                            Descrizione += $"{descrizioneBreve}<br />";

                            Descrizione       = Descrizione.Replace(';', ',').Replace(System.Environment.NewLine, "<br />");
                            Prezzo            = Math.Floor(disp.PrezzoIVA * (1 + shopSync.MarkupPercentuale / 100) + shopSync.MarkupValore).ToString();
                            dataPubblicazione = disp.UltimoAggiornamento.ToString("dd-MM-yyyy hh:mm:ss");
                            //dataPubblicazione = DateTime.Now.ToString("dd-MM-yyyy hh:mm:ss");

                            int countImg = 1;
                            foreach (var img in disp.refPneumatico.LstImmagini)
                            {
                                switch (countImg)
                                {
                                case 1:
                                    urlImg1 = img.URLImmagine;
                                    break;

                                case 2:
                                    urlImg2 = img.URLImmagine;
                                    break;

                                case 3:
                                    urlImg3 = img.URLImmagine;
                                    break;

                                case 4:
                                    urlImg4 = img.URLImmagine;
                                    break;

                                case 5:
                                    urlImg5 = img.URLImmagine;
                                    break;

                                case 6:
                                    urlImg6 = img.URLImmagine;
                                    break;

                                case 7:
                                    urlImg7 = img.URLImmagine;
                                    break;

                                case 8:
                                    urlImg8 = img.URLImmagine;
                                    break;

                                default:
                                    break;
                                }
                            }

                            csvWriter.WriteLine("{0};{1};{2};{3};{4};{5};{6};{7};{8};{9};{10};{11};{12};{13};{14};{15};{16};{17};{18};{19}",
                                                partnerId,
                                                azione,
                                                Titolo,
                                                Descrizione,
                                                email,
                                                url,
                                                telefono,
                                                Prezzo,
                                                tipoPrezzo,
                                                istatComune,
                                                categoriaPnemuaticiCerchiAuto,
                                                dataPubblicazione,
                                                urlImg1,
                                                urlImg2,
                                                urlImg3,
                                                urlImg4,
                                                urlImg5,
                                                urlImg6,
                                                urlImg7,
                                                urlImg8);
                        }
                    }
                }
            }

            csvWriter.Flush();

            // Writing to file (for test)
            //string filename = AppDomain.CurrentDomain.BaseDirectory + "\\TestSpares_Kijiji.csv";

            //FileStream fs = File.Create(filename);
            //stream.Position = 0;
            //stream.CopyTo(fs);
            //fs.Flush();

            // Upload to Azure Blob
            BlobAzureHelper myBlobHelper = new BlobAzureHelper();

            if (!myBlobHelper.IsInitialized)
            {
                Console.WriteLine("Errore connessione blob storage");
            }
            else
            {
                string uploadedFileName = "spares-products.csv";

                //Caricamento su Blob Azure
                stream.Position = 0;
                myBlobHelper.UploadStream(stream, BlobAzureHelper.ContainerUploadKijiji, uploadedFileName, "text/csv");
            }

            csvWriter.Close();
            stream.Close();
            //fs.Close();

            //Console.WriteLine(string.Format("File generato: {0}", filename));
            //Console.ReadKey();
        }
Esempio n. 7
0
 public int CompareTo(SoluzioneIngressiItem other)
 {
     return(Descrizione.CompareTo(other.Descrizione));
 }
 public void CaricaSimbolo(Titolo[] titoli)
 {
     Simbolo = titoli.Where(r => Descrizione.Contains(r.Descrizione)).Select(s => s.Simbolo).FirstOrDefault();
 }
 public override int GetHashCode()
 {
     return(3 * Data.GetHashCode() + 5 * Causale.GetHashCode() + 7 * Descrizione.GetHashCode() + 11 * Entrate.GetHashCode() + 13 * ImportoValuta.GetHashCode());
 }
Esempio n. 10
0
 public override int GetHashCode()
 {
     return(3 * Data.GetHashCode() + 5 * Tipologia.GetHashCode() + 7 * Descrizione.GetHashCode() + 11 * Importo.GetHashCode() + 13 * ImportoValuta.GetHashCode());
 }