private void qrReader_OnCodeDecoded(object sender, EventArgs e)
 {
     string myCode = qrReader.Code;
     if (!string.IsNullOrEmpty(myCode))
     {
         Guid uniqueCode;
         try
         {
             lblDescrizione.Text = string.Empty;
             uniqueCode = new Guid(myCode);
         }
         catch
         {
             lblDescrizione.Text = "Cartellino non valido"; //Se il codice è un codice ad cazzum, non un GUID, è ovviamente un QR Code sbagliato
             return;
         }
         OggettiManager manager = new OggettiManager(DatabaseContext);
         NewOggetti sostanza = manager.GetItemFromQRCode(uniqueCode);
         if (sostanza == null)
         {
             lblDescrizione.Text = "Non è un cartellino oggetto";
         }
         else
         {
             txtElencoIngredienti.Text += sostanza.Nome + "\r\n";
             hidField.Value += sostanza.Progressivo + ";";
             lblDescrizione.Text = "Componente inserito";
             btnCrea.Enabled = true;
         }
     }
 }
示例#2
0
 private void btnAggiungi_Click(object sender, EventArgs e)
 {
     if (lstComponenti.SelectedItems.Count > 0)
     {
         DialogResult res = MessageBox.Show("Vuoi aggiungere questo elemento alla lista degli ingredienti?", "Sei sicuro?", MessageBoxButtons.YesNo);
         if (res == System.Windows.Forms.DialogResult.Yes)
         {
             using (context = CreateDatabaseContext())
             {
                 long progressivoOggetto = (long)lstComponenti.SelectedValue;
                 OggettiManager manager = new OggettiManager(context);
                 bool res2 = manager.AddComponentToItem(progressivoOggettoPadre, progressivoOggetto);
                 if (res2)
                 {
                     context.SaveChanges();
                     this.Close();
                 }
                 else
                 {
                     MessageBox.Show("C'è stato un errore, chiedi allo Zeno");
                 }
             }
         }
     }
 }
示例#3
0
 private void LoadData()
 {
     using (context = CreateDatabaseContext())
     {
         OggettiManager manager = new OggettiManager(context);
         List<string> types = manager.GetTypesList().ToList();
         lstTipi.DataSource = types;
     }
 }
示例#4
0
 public override void LoadData()
 {
     using (databaseContext = CreateDatabaseContext())
     {
         OggettiManager manager = new OggettiManager(databaseContext);
         //var oggetti = manager.GetPagedItemsList(startPage, pageSize);
         //grdOggetti.DataSource = oggetti;
         cmbTipoOggetto.DataSource = manager.GetItemTypes();
     }
 }
示例#5
0
 private void lstComponenti_SelectedValueChanged(object sender, EventArgs e)
 {
     if (lstComponenti.SelectedItems.Count > 0)
     {
         long progressivoOggetto = (long)lstComponenti.SelectedValue;
         using (context = CreateDatabaseContext())
         {
             OggettiManager manager = new OggettiManager(context);
             txtEffetto.Text = manager.GetEffectOfItem(progressivoOggetto);
         }
     }
 }
示例#6
0
 private void btnSalva_Click(object sender, EventArgs e)
 {
     if (!string.IsNullOrWhiteSpace(txtNuovoTipo.Text))
     {
         using (context = CreateDatabaseContext())
         {
             bool result = false;
             OggettiManager manager = new OggettiManager(context);
             result = manager.SaveNewType(txtNuovoTipo.Text.Trim());
             if (result)
             {
                 context.SaveChanges();
             }
             else
             {
                 MessageBox.Show("Errore durante la creazione del nuovo tipo, verificare che il campo sia compilato e che il nuovo tipo non sia già presente");
             }
         }
         this.Close();
     }
 }
示例#7
0
 public InsertOggetto(long itemToEdit)
     : this()
 {
     originalItem = itemToEdit;
     using (databaseContext = CreateDatabaseContext())
     {
         OggettiManager manager = new OggettiManager(databaseContext);
         NewOggetti original = manager.GetItemFromNumber(itemToEdit);
         txtNome.Text = original.Nome;
         txtDescrizione.Text = original.Descrizione;
         txtEffetto.Text = original.Effetto;
         mstxCosto.Text = original.Costo.ToString();
         if (original.NumeroCariche.HasValue)
         {
             mstxCariche.Text = original.NumeroCariche.ToString();
         }
         cmbDisponibilita.SelectedValue = original.Disponibilita;
         cmbTipo.SelectedValue = original.Tipo;
         calScadenza.SelectionStart = calScadenza.SelectionEnd = original.DataScadenza.HasValue ? original.DataScadenza.Value : DateTime.Today;
     }
 }
示例#8
0
 private void txtSearch_TextChanged(object sender, EventArgs e)
 {
     if (!string.IsNullOrEmpty(txtSearch.Text))
     {
         string text = txtSearch.Text;
         using (databaseContext = CreateDatabaseContext())
         {
             OggettiManager manager = new OggettiManager(databaseContext);
             if (cmbTipoOggetto.SelectedValue == null || (long)cmbTipoOggetto.SelectedValue == -1)
             {
                 grdOggetti.DataSource = manager.GetItemsFromText(text);
             }
             else
             {
                 grdOggetti.DataSource = manager.GetItemsFromText(text, (long)cmbTipoOggetto.SelectedValue);
             }
         }
     }
     else
     {
         LoadItemsGrid();
     }
 }
示例#9
0
        private void LoadItemsGrid()
        {
            using (databaseContext = CreateDatabaseContext())
            {
                OggettiManager manager = new OggettiManager(databaseContext);
                IList<NewOggetti> oggetti;
                if (cmbTipoOggetto.SelectedValue != null && (long)cmbTipoOggetto.SelectedValue != -1)
                {
                    long tipoOggetti = (long)cmbTipoOggetto.SelectedValue;
                    oggetti = manager.GetPagedItemsList(startPage, pageSize, tipoOggetti);
                }
                else
                {
                    oggetti = manager.GetPagedItemsList(startPage, pageSize);

                }
                grdOggetti.DataSource = oggetti;
            }
        }
示例#10
0
 private void LoadComponentsGrid()
 {
     if (grdOggetti.SelectedRows.Count == 1)
     {
         long progressivo = (long)(grdOggetti.SelectedRows[0].Cells["Progressivo"].Value);
         using (databaseContext = CreateDatabaseContext())
         {
             OggettiManager manager = new OggettiManager(databaseContext);
             grdIngredienti.DataSource = manager.GetComponentsByItem(progressivo);
         }
     }
     else
     {
         grdIngredienti.DataSource = null;
     }
 }
示例#11
0
 private void lnkNext_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
 {
     using (databaseContext = CreateDatabaseContext())
     {
         OggettiManager manager = new OggettiManager(databaseContext);
         int max = manager.Count();
         startPage += 50;
         if (startPage >= max)
         {
             startPage = max - 50;
             if (startPage < 0)
             {
                 startPage = 0;
             }
         }
     }
     LoadItemsGrid();
 }
示例#12
0
 private void btnStampa_Click(object sender, EventArgs e)
 {
     Cursor.Current = Cursors.WaitCursor;
     if (grdOggetti.SelectedRows.Count > 0)
     {
         FolderBrowserDialog selectFolder = new FolderBrowserDialog();
         var res = selectFolder.ShowDialog();
         if (res == DialogResult.OK)
         {
             string path = selectFolder.SelectedPath;
             using (databaseContext = CreateDatabaseContext())
             {
                 OggettiManager manager = new OggettiManager(databaseContext);
                 List<long> indexes = new List<long>();
                 for (int i = 0; i < grdOggetti.SelectedRows.Count; i++)
                 {
                     indexes.Add((long)grdOggetti.SelectedRows[i].Cells["Progressivo"].Value);
                 }
                 List<NewOggetti> itemsToPrint = manager.GetItemsFromNumbers(indexes).ToList<NewOggetti>();
                 if (itemsToPrint.Count == 1 && chkMultiplePrint.Checked)
                 {
                     for (int i = 1; i < 10; i++)
                     {
                         itemsToPrint.Add(itemsToPrint[0]);
                     }
                 }
                 CartelliniOggetto cartellini = new CartelliniOggetto(path + @"\" + DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day + "-" +DateTime.Now.Hour + "-" +DateTime.Now.Minute + "-" + DateTime.Now.Second + ".pdf", itemsToPrint);
                 cartellini.Save();
             }
             MessageBox.Show("Stampa avvenuta");
             OpenFolder(path);
         }
     }
     Cursor.Current = Cursors.Default;
 }
示例#13
0
 private void PopulateCombo()
 {
     using (context = CreateDatabaseContext())
     {
         OggettiManager manager = new OggettiManager(context);
         cmbTipoOggetto.DataSource = manager.GetItemTypes();
     }
 }
示例#14
0
        private void btnSalva_Click(object sender, EventArgs e)
        {
            if (validateForm())
            {
                using (databaseContext = CreateDatabaseContext())
                {
                    OggettiManager manager = new OggettiManager(databaseContext);
                    float costo = float.Parse(mstxCosto.Text);
                    int? cariche = null;
                    if (!string.IsNullOrWhiteSpace(mstxCariche.Text))
                    {
                        cariche = int.Parse(mstxCariche.Text);
                    }
                    DateTime? selectedDate = null;
                    if (calScadenza.SelectionStart > DateTime.Today)
                    {
                        selectedDate = calScadenza.SelectionStart;
                    }

                    bool res = false;
                    if (IsCloning)
                    {
                        res = manager.CloneItem(originalItem.Value, txtNome.Text.Trim(), txtDescrizione.Text.Trim(), txtEffetto.Text.Trim(), null, costo, (long)cmbDisponibilita.SelectedValue, selectedDate, cariche, (long)cmbTipo.SelectedValue);
                    }
                    else
                    {
                        res = manager.SaveItem(originalItem, txtNome.Text.Trim(), txtDescrizione.Text.Trim(), txtEffetto.Text.Trim(), null, costo, (long)cmbDisponibilita.SelectedValue, selectedDate, cariche, (long)cmbTipo.SelectedValue);
                    }
                    if (res)
                    {
                        databaseContext.SaveChanges();
                        this.Close();
                    }
                    else
                    {
                        MessageBox.Show("Errore durante il salvataggio, ricontrollare i dati inseriti");
                    }
                }
            }
        }
示例#15
0
 private void btnEliminaComponente_Click(object sender, EventArgs e)
 {
     if (grdIngredienti.SelectedRows.Count == 1)
     {
         long progressivoOggetto = (long)grdOggetti.SelectedRows[0].Cells["Progressivo"].Value;
         long numeroIngrediente = (long)grdIngredienti.SelectedRows[0].Cells["NumeroIngrediente"].Value;
         using (databaseContext = CreateDatabaseContext())
         {
             OggettiManager manager = new OggettiManager(databaseContext);
             bool res = manager.RemoveComponentFromItem(progressivoOggetto, numeroIngrediente);
             if (res)
             {
                 databaseContext.SaveChanges();
                 LoadComponentsGrid();
             }
             else
             {
                 MessageBox.Show("Errore durante l'eliminazione");
             }
         }
     }
 }
示例#16
0
 private void PopulateList()
 {
     if (cmbTipoOggetto.SelectedValue != null)
     {
         long tipoOggetto = (long)cmbTipoOggetto.SelectedValue;
         using (context = CreateDatabaseContext())
         {
             OggettiManager manager = new OggettiManager(context);
             lstComponenti.ValueMember = "Progressivo";
             lstComponenti.DisplayMember = "Nome";
             if (tipoOggetto != -1)
             {
                 lstComponenti.DataSource = manager.GetItemsForCombo(tipoOggetto);
             }
             else
             {
                 lstComponenti.DataSource = manager.GetItemsForCombo();
             }
         }
     }
 }
示例#17
0
 private void LoadSelectedType()
 {
     if (radItem.Checked)
     {
         using (context = CreateDatabaseContext())
         {
             OggettiManager manager = new OggettiManager(context);
             cmbTipo.DisplayMember = "Descrizione";
             cmbTipo.ValueMember = "Progressivo";
             cmbTipo.DataSource = manager.GetItemTypes();
         }
     }
     else
     {
         using (context = CreateDatabaseContext())
         {
             SostanzeManager manager = new SostanzeManager(context);
             cmbTipo.DisplayMember = "Descrizione";
             cmbTipo.ValueMember = "Progressivo";
             cmbTipo.DataSource = manager.GetSubstancesTypes();
         }
     }
 }
示例#18
0
        private void Timer1_Tick(object sender, EventArgs e)
        {
            Timer1.Enabled = false;
            string[] ingredientiLetti = hidField.Value.Split(';');
            List<long?> progressiviIngredienti = new List<long?>();
            for (int i = 0; i < ingredientiLetti.Length; i++)
            {
                if (!string.IsNullOrWhiteSpace(ingredientiLetti[i]))
                {
                    long progressivo = long.Parse(ingredientiLetti[i]);
                    progressiviIngredienti.Add(progressivo);
                }
            }
            OggettiManager manager = new OggettiManager(DatabaseContext);
            NewOggetti oggetto = manager.GetItemFromListOfComponents(progressiviIngredienti);
            ElaborazioneViews.SetActiveView(viewRisultato);
            if (oggetto != null)
            {
                lblNome.Text = oggetto.Nome;
                if (!string.IsNullOrWhiteSpace(oggetto.Descrizione))
                {
                    lblDescrizione.Text = oggetto.Descrizione.Replace("\r", "<br />");
                }
                if (!string.IsNullOrWhiteSpace(oggetto.Effetto))
                {
                    lblEffetto.Text = oggetto.Effetto.Replace("\r", "<br />");
                }

                lblCosto.Text = oggetto.Costo.ToString();
                lblCariche.Text = oggetto.NumeroCariche.HasValue ? oggetto.NumeroCariche.ToString() : string.Empty;
                lblDescrizione.Text = string.IsNullOrWhiteSpace(oggetto.Descrizione) ? string.Empty : oggetto.Descrizione.Replace("\r", "<br />");
                lblTipo.Text = oggetto.TipoOggetti.Descrizione;
                if (!string.IsNullOrWhiteSpace(oggetto.Immagine))
                {
                    imgOggetto.Visible = true;
                    imgOggetto.ImageUrl = oggetto.Immagine;
                }
                btnCrea.Enabled = false;
            }
            else
            {
                resetResults();
                ElaborazioneViews.SetActiveView(viewAttesa);
                lblDescrizione.Text = "I componenti inseriti non possono essere assemblati tra loro";
            }
        }