public virtual void DevolverMidia(Guid midiaEmprestadaID)
        {
            MidiaEmprestada midia = this.Emprestimos.Where(e => e.ID == midiaEmprestadaID).FirstOrDefault();

            if (midia != null)
            {
                midia.Status         = MidiaStatus.Devolvido;
                midia.DataEmprestimo = DateTime.Now;
                this.NumerodeCopiasEmprestadas--;
                this.NumerodeCopiasDisponíveis++;
            }
        }
        public virtual bool EmprestarMidia(Pessoa pessoa)
        {
            bool retVal = false;
            if (this.NumerodeCopiasDisponíveis > 0
                && !VerificaSeAlunoJaTemUmaCopia(pessoa))
            {
                MidiaEmprestada midiaEmprestada = new MidiaEmprestada()
                {
                    Pessoa = pessoa,
                    DataEmprestimo = DateTime.Now,
                    Status = MidiaStatus.Emprestado,
                };

                this.Emprestimos.Add(midiaEmprestada);
                this.NumerodeCopiasEmprestadas++;
                this.NumerodeCopiasDisponíveis--;
                retVal = true;
            }
            return retVal;
        }
        public virtual bool EmprestarMidia(Pessoa pessoa)
        {
            bool retVal = false;

            if (this.NumerodeCopiasDisponíveis > 0 &&
                !VerificaSeAlunoJaTemUmaCopia(pessoa))
            {
                MidiaEmprestada midiaEmprestada = new MidiaEmprestada()
                {
                    Pessoa         = pessoa,
                    DataEmprestimo = DateTime.Now,
                    Status         = MidiaStatus.Emprestado,
                };

                this.Emprestimos.Add(midiaEmprestada);
                this.NumerodeCopiasEmprestadas++;
                this.NumerodeCopiasDisponíveis--;
                retVal = true;
            }
            return(retVal);
        }
        public ActionResult ConfirmarDevolucao(MidiaEmprestada midiaEmprestada)
        {
            Midia midia = (Midia)Session["Midia"];

            midia.DevolverMidia(midiaEmprestada.ID);

            repositorioMidia.Salvar(midia);

            return RedirectToAction("Index");
        }