コード例 #1
0
 private void Vista_Alumno_OnArrendar(object sender, ArrendarLibroEventArgs e)
 {
     foreach (Libro l in Libros)
     {
         if (l.Titulos == e.titulo && l.Copia > 0)
         {
             l.Copia--;
         }
     }
 }
コード例 #2
0
        private void arrendar_btn_Click(object sender, EventArgs e)
        {
            if (OnArrendar != null)
            {
                List <Arriendo> arriendos = null;
                try
                {
                    using (Stream stream = new FileStream("Arriendos.bin", FileMode.Open, FileAccess.Read, FileShare.Read))
                    {
                        IFormatter formatter = new BinaryFormatter();
                        arriendos = (List <Arriendo>)formatter.Deserialize(stream);
                        stream.Close();
                    }
                }
                catch (IOException)
                {
                }

                foreach (Arriendo a in arriendos)
                {
                    if (a.alumno.sesion == true)
                    {
                        if (a.alumno.Deudas == 0 && copias_txtbox.Text != "0")
                        {
                            ArrendarLibroEventArgs arriendoa = new ArrendarLibroEventArgs();
                            arriendoa.titulo = this.titulo_txtbox.Text;
                            arriendoa.autor  = this.autor_txtbox.Text;
                            arriendoa.copia  = Convert.ToInt32(this.copias_txtbox.Text);
                            OnArrendar(this, arriendoa);
                            MessageBox.Show("Arriendo Exitoso!");
                        }
                        else if (copias_txtbox.Text == "0")
                        {
                            MessageBox.Show("No quedan copias de este libro");
                        }
                        else
                        {
                            MessageBox.Show("No puede arrendar, tiene una deuda pendiente");
                        }
                    }
                }
            }
        }
コード例 #3
0
        private void Vista_Busqueda_OnArrendar(object sender, ArrendarLibroEventArgs e)
        {
            foreach (Libro l in Libros)
            {
                if (l.Titulos == e.titulo && l.Copia > 0 && l.GetAutor() == e.autor)
                {
                    for (int i = 0; i < User.Count(); i++)
                    {
                        if (User[i].sesion == true && User[i].Deudas == 0)
                        {
                            l.Copia--;
                            Arriendos[i].libro.Add(l);
                            Arriendos[i].FechaArriendo.Add(DateTime.Now);

                            using (Stream stream = new FileStream("Arriendos.bin", FileMode.Create, FileAccess.Write, FileShare.None))
                            {
                                IFormatter formatter = new BinaryFormatter();
                                formatter.Serialize(stream, Arriendos);
                                stream.Close();
                            }
                            using (Stream stream = new FileStream("Libros.bin", FileMode.Create, FileAccess.Write, FileShare.None))
                            {
                                IFormatter formatter = new BinaryFormatter();
                                formatter.Serialize(stream, Libros);
                                stream.Close();
                            }
                            using (Stream stream = new FileStream("Alumnos.bin", FileMode.Create, FileAccess.Write, FileShare.None))
                            {
                                IFormatter formatter = new BinaryFormatter();
                                formatter.Serialize(stream, User);
                                stream.Close();
                            }
                            break;
                        }
                    }
                }
            }
        }