Example #1
0
        public string DeleteAuthor(AUTOR autor)
        {
            var message = "";

            try
            {
                var toDelete = new AUTOR();
                toDelete = autor.AutorId == 0 ? context.AUTORs.FirstOrDefault(t => t.AutorId == autor.AutorId) : context.AUTORs.FirstOrDefault(t => t.AutorId == autor.AutorId);

                if (toDelete != null)
                {
                    context.AUTORs.Remove(toDelete);
                    context.SaveChanges();
                }
                else
                {
                    message = "This author does not exist or has already been deleted!";
                }
            }
            catch (Exception e)
            {
                message = e.Message;
            }

            return(message);
        }
Example #2
0
        ///BOTÃO PROCURAR
        ///



        private void btnProcurar_Click(object sender, EventArgs e)
        {
            if (cmbPesquisa.SelectedIndex == 0)
            {
                int var = Convert.ToInt32(txtPesquisa.Text);
                CAutor.CAutorClient oProxy = new CAutor.CAutorClient();
                oProxy.Open();

                if (oProxy.Selecionar(var) != null)
                {
                    AUTOR oAutor = oProxy.Selecionar(var);

                    txtNome.Text      = oAutor.NOME;
                    txtSobreNome.Text = oAutor.SOBRENOME;
                    txtBiografia.Text = oAutor.BIOGRAFIA;
                    txtSite.Text      = oAutor.SITE;
                    txtID.Text        = oAutor.ID_AUTOR.ToString();

                    DesabilitaCampos();

                    btnAlterar.Enabled = true;

                    btnDeletar.Enabled = true;

                    btnInserir.Enabled = false;
                }
                else
                {
                    MessageBox.Show("Autor não encontrado!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                CAutor.CAutorClient oProxy = new CAutor.CAutorClient();
                oProxy.Open();

                if (oProxy.SelecionarNome(txtPesquisa.Text) != null)
                {
                    AUTOR oAutor = oProxy.SelecionarNome(txtPesquisa.Text);

                    txtNome.Text      = oAutor.NOME;
                    txtSobreNome.Text = oAutor.SOBRENOME;
                    txtBiografia.Text = oAutor.BIOGRAFIA;
                    txtSite.Text      = oAutor.SITE;
                    txtID.Text        = oAutor.ID_AUTOR.ToString();

                    DesabilitaCampos();

                    btnAlterar.Enabled = true;

                    btnDeletar.Enabled = true;

                    btnInserir.Enabled = false;
                }
                else
                {
                    MessageBox.Show("Autor não encontrado!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
 public void Alterar(AUTOR oAutor, bool attach = true)
 {
     if (attach)
     {
         odb.Entry(oAutor).State = System.Data.Entity.EntityState.Modified;
     }
     odb.SaveChanges();
 }
Example #4
0
 public AUTOR UpdateAuthor(AUTOR autor)
 {
     using (var context = new ModelDatabaseFirst())
     {
         context.AUTORs.AddOrUpdate(autor);
         context.SaveChanges();
         return(autor);
     }
 }
Example #5
0
 internal AutorDTO getAutorDTO(AUTOR a)
 {
     return(new AutorDTO()
     {
         AutorId = a.AutorId,
         Nume = a.Nume,
         Prenume = a.Prenume
     });
 }
Example #6
0
        internal void delete(int id)
        {
            var db    = new bibliotecaEntities();
            var autor = new AUTOR();

            autor.id = id;
            db.Entry(autor).State = System.Data.Entity.EntityState.Deleted;
            db.SaveChanges();
        }
Example #7
0
        public AUTORDTO S_get_autor_by_name(string name)
        {
            AUTOR a = ClassLibrary1.Program.get_autor_by_name(name);

            if (a != null)
            {
                return(S_autor_dto(a));
            }
            return(null);
        }
Example #8
0
 public bool Alterar(AUTOR oAutor)
 {
     if (AutorMetod.Alterar(oAutor))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Example #9
0
 public bool Cadastrar(AUTOR oAutor)
 {
     if (AutorMetod.Cadastrar(oAutor))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Example #10
0
        private void pbSalvar_Click(object sender, EventArgs e)
        {
            var autor = new AUTOR();

            if (!txtId.Text.Equals(string.Empty))
            {
                autor.id = int.Parse(txtId.Text);
            }

            autor.nome = txtNome.Text;
            autorControl.persist(autor);
            this.Close();
        }
Example #11
0
 public string InsertAuthor(AUTOR autor)
 {
     try
     {
         context.AUTORs.Add(autor);
         context.SaveChanges();
     }
     catch (Exception e)
     {
         return(e.Message);
     }
     return("");
 }
Example #12
0
        public string UpdateAuthor(AUTOR autor)
        {
            var message = "";

            try
            {
                context.AUTORs.AddOrUpdate(autor);
                context.SaveChanges();
            }
            catch (Exception e)
            {
                message = e.Message;
            }
            return(message);
        }
Example #13
0
        public void persist(AUTOR autor)
        {
            var db = new bibliotecaEntities();

            if (autor.id != 0)
            {
                db.Entry(autor).State = System.Data.Entity.EntityState.Modified;
            }
            else
            {
                db.AUTOR.Add(autor);
            }

            db.SaveChanges();
        }
        private void btnInserir_Click(object sender, EventArgs e)
        {
            AUTOR oAutor = new AUTOR();

            oAutor.BIOGRAFIA = txtBiografia.Text;
            oAutor.NOME      = txtNome.Text;
            oAutor.SITE      = txtSite.Text;
            oAutor.SOBRENOME = txtSobreNome.Text;


            CAutor.CAutorClient oProxy = new CAutor.CAutorClient();
            oProxy.Open();

            try
            {
                if (oProxy.Cadastrar(oAutor))
                {
                    MessageBox.Show("Cadastro realizado com sucesso!", "Confirmação", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    LimpaCampos();
                }
                else
                {
                    if (MessageBox.Show("Autor existente! Deseja carregar os dados do Autor?", "Atenção", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                    {
                        txtNome.Text      = oAutor.NOME;
                        txtSobreNome.Text = oAutor.SOBRENOME;
                        txtBiografia.Text = oAutor.BIOGRAFIA;
                        txtID.Text        = Convert.ToString(oAutor.ID_AUTOR);
                        txtSite.Text      = oAutor.SITE;


                        txtNome.Enabled      = false;
                        txtSobreNome.Enabled = false;
                        txtBiografia.Enabled = false;
                        txtSite.Enabled      = false;
                        txtID.Enabled        = false;
                    }
                    else
                    {
                        LimpaCampos();
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #15
0
 public void DeleteAuthor(AUTOR autor)
 {
     try
     {
         using (var context = new ModelDatabaseFirst())
         {
             context.AUTORs.Remove(autor);
             context.SaveChanges();
             return;
         }
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex.Message);
     }
 }
Example #16
0
        public AUTORDTO S_autor_dto(AUTOR a)
        {
            //var lista = new List<CARTEDTO>();
            if (a.CARTE != null)
            {
                //  lista = a.CARTE.Select(x => S_carte_dto(x)).ToList();
            }
            AUTORDTO a1 = new AUTORDTO()
            {
                AutorId = a.AutorId,
                Nume    = a.Nume,
                Prenume = a.Prenume
                          //    CARTE = lista
            };

            return(a1);
        }
Example #17
0
        public Response InsertAuthor(AUTOR autor)
        {
            var response = new Response();
            var mapped   = Mapper.Map <AUTOR, Data.Entities.AUTOR>(autor);
            var reply    = _bookRepository.InsertAuthor(mapped);

            if (reply == "")
            {
                response.Messages.Add("The author has been successfully added!");
            }
            else
            {
                response.Error = true;
                response.Messages.Add(reply);
            }

            return(response);
        }
        public int checkauthor(AUTOR autor)
        {
            List <AUTOR> autores = new List <AUTOR>();

            autores = db.AUTORs.ToList();
            var id = 0;


            foreach (AUTOR variable in autores)
            {
                if (autor.NOMBRE.ToUpper() == variable.NOMBRE.ToUpper())
                {
                    id = (int)variable.IDAUTOR;
                    break;
                }
            }

            return(id);
        }
Example #19
0
        private void InsertCarte_Click(object sender, EventArgs e)
        {
            var genre = new GenreRepository();
            var author = new AuthorRepository();
            var book = new BookRepository();
            int genId = 0; int autorId = 0;

            var queryGen = genre.VerifyGenreByDescription(boxNumeGenInsertCarte.Text.Trim());

            if (queryGen.LongCount() > 0)
            {
                genId = queryGen[0].GenId;
            }
            else if (queryGen.LongCount() == 0)
            {
                GEN gen = new GEN()
                {
                    Descriere = boxNumeGenInsertCarte.Text.Trim(),
                };
                genId = genre.InsertGenre(gen).GenId;
            }

            var queryAutor = author.VerifyAuthorByName(boxNumeAutorInsertCarte.Text.Trim());

            if (queryAutor.LongCount() > 0)
            {
                autorId = queryAutor[0].AutorId;
            }
            else if (queryAutor.LongCount() == 0)
            {
                string[] splited = boxNumeAutorInsertCarte.Text.Trim().Split(' ');

                AUTOR autor = new AUTOR()
                {
                    Nume    = splited[0].Trim(),
                    Prenume = splited[1].Trim(),
                };
                autorId = author.InsertAuthor(autor).AutorId;
            }

            int nrExemplare     = Convert.ToInt32(Math.Round(boxNrExemplareInsertCarte.Value, 0));
            int count_introduse = 0;

            while (count_introduse < nrExemplare)
            {
                CARTE carte = new CARTE()
                {
                    AutorId = autorId,
                    Titlu   = boxTitluCarteInsertCarte.Text.Trim(),
                    GenId   = genId,
                };

                book.InsertBook(carte);
                count_introduse += 1;
            }

            MessageBox((IntPtr)0, "\nInsert Operation Completed", "Message Box", 0);

            boxNumeGenInsertCarte.Text      = "";
            boxTitluCarteInsertCarte.Text   = "";
            boxNumeAutorInsertCarte.Text    = "";
            boxNrExemplareInsertCarte.Value = 0;
        }
Example #20
0
        ///BOTÃO SALVAR
        ///


        private void btnInserir_Click(object sender, EventArgs e)
        {
            if (VerificaControles())
            {
                AUTOR oAutor = new AUTOR();

                oAutor.BIOGRAFIA = txtBiografia.Text;
                oAutor.NOME      = txtNome.Text;
                oAutor.SITE      = txtSite.Text;
                oAutor.SOBRENOME = txtSobreNome.Text;


                CAutor.CAutorClient oProxy = new CAutor.CAutorClient();
                oProxy.Open();


                if (var == 0)
                {
                    try
                    {
                        if (oProxy.Cadastrar(oAutor))
                        {
                            MessageBox.Show("Cadastro realizado com sucesso!", "Confirmação", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            LimpaCampos();
                        }
                        else
                        {
                            if (MessageBox.Show("Autor existente! Deseja carregar os dados do Autor?", "Atenção", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                            {
                                btnInserir.Enabled = false;

                                btnDeletar.Enabled = true;

                                btnAlterar.Enabled = true;

                                AUTOR xAutor = oProxy.SelecionarNome(oAutor.NOME);


                                txtNome.Text      = xAutor.NOME;
                                txtSobreNome.Text = xAutor.SOBRENOME;
                                txtBiografia.Text = xAutor.BIOGRAFIA;
                                txtID.Text        = Convert.ToString(xAutor.ID_AUTOR);
                                txtSite.Text      = xAutor.SITE;

                                DesabilitaCampos();
                            }
                            else
                            {
                                LimpaCampos();
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message, ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }

                else
                {
                    try
                    {
                        if (oProxy.Alterar(oAutor))
                        {
                            MessageBox.Show("Alteração realizada com sucesso!", "Confirmação", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            LimpaCampos();

                            btnAlterar.Enabled = false;

                            HabilitaCampos();

                            var = 0;
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
            else
            {
                MessageBox.Show("Preencha todos os campos!", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
 public void Excluir(AUTOR oAutor)
 {
     odb.AUTOR.Attach(oAutor);
     odb.AUTOR.Remove(oAutor);
     odb.SaveChanges();
 }
Example #22
0
 public Response InsertAuthor(AUTOR autor)
 {
     return(_bookServices.InsertAuthor(autor));
 }
 public void Incluir(AUTOR oAutor)
 {
     odb.AUTOR.Add(oAutor);
     odb.SaveChanges();
 }
Example #24
0
        public ActionResult CriarLivro(vw_LIVRO oLivro, HttpPostedFileBase upload)
        {
            if (ModelState.IsValid)
            {
                List <EDITORA> Editoras     = _repositoryE.ListarEditoras();
                List <AUTOR>   Autores      = _repositoryA.ListarAutores();
                List <GENERO>  Generos      = _repositoryG.ListarGeneros();
                LIVRO          LivroGravar  = new LIVRO();
                GENERO         GeneroAtual  = new GENERO();
                EDITORA        EditoraAtual = new EDITORA();
                AUTOR          AutorAtual   = new AUTOR();

                #region UploadArquivo
                int ups = Request.Files.Count;
                if (ups > 0)
                {
                    upload = Request.Files[0];
                    if (upload.ContentLength > 0)
                    {
                        string path = Server.MapPath("~/Uploads/");
                        if (!Directory.Exists(path))
                        {
                            Directory.CreateDirectory(path);
                        }
                        LivroGravar.ImagemCaminho = "~/Uploads/" + upload.FileName;
                        upload.SaveAs(path + Path.GetFileName(upload.FileName));
                    }
                }
                #endregion


                LivroGravar.ISBN           = oLivro.ISBN;
                LivroGravar.Sinopse        = oLivro.Sinopse;
                LivroGravar.Titulo         = oLivro.Titulo;
                LivroGravar.DataPublicacao = oLivro.DataPublicacao;
                #region GENERO
                GeneroAtual = Generos.Where(x => x.NomeGenero.ToLower() == oLivro.NomeGenero.ToLower()).Select(x => x).FirstOrDefault();
                if (GeneroAtual != null)
                {
                    LivroGravar.IDGenero = GeneroAtual.ID;
                }
                else
                {
                    GENERO novogenero = new GENERO()
                    {
                        NomeGenero = oLivro.NomeGenero
                    };
                    _repositoryG.Incluir(novogenero);
                    GeneroAtual          = novogenero;
                    LivroGravar.IDGenero = novogenero.ID;
                }

                #endregion
                #region Autor
                AutorAtual = Autores.Where(x => x.NomeAutor.ToLower() == oLivro.NomeAutor.ToLower()).Select(x => x).FirstOrDefault();
                if (AutorAtual != null)
                {
                    LivroGravar.IDAutor = AutorAtual.ID;
                }
                else
                {
                    AUTOR novoautor = new AUTOR()
                    {
                        NomeAutor = oLivro.NomeAutor
                    };
                    _repositoryA.Incluir(novoautor);
                    AutorAtual          = novoautor;
                    LivroGravar.IDAutor = novoautor.ID;
                }

                #endregion
                #region Editora
                EditoraAtual = Editoras.Where(x => x.Editora.ToLower() == oLivro.Editora.ToLower()).Select(x => x).FirstOrDefault();
                if (EditoraAtual != null)
                {
                    LivroGravar.IDEditora = EditoraAtual.ID;
                }
                else
                {
                    EDITORA novaeditora = new EDITORA()
                    {
                        Editora = oLivro.Editora
                    };
                    _repositoryE.Incluir(novaeditora);
                    EditoraAtual          = novaeditora;
                    LivroGravar.IDEditora = novaeditora.ID;
                }

                #endregion

                _repository.Incluir(LivroGravar);

                return(RedirectToAction("Estante"));
            }

            return(View(oLivro));
        }
Example #25
0
 public Response UpdateAuthor(AUTOR autor)
 {
     return(_bookServices.UpdateAuthor(autor));
 }
Example #26
0
 public Response DeleteAuthor(AUTOR autor)
 {
     return(_bookServices.DeleteAuthor(autor));
 }
        public ActionResult Edit(decimal id)
        {
            MaterialViewModel Materialvm = new MaterialViewModel();

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            MATERIALBIBLIOGRAFICO mATERIALBIBLIOGRAFICO = db.MATERIALBIBLIOGRAFICOes.Find(id);

            ViewBag.Biblioteca = new SelectList(db.BIBLIOTECAs, "IDBIBLIOTECA", "NOMBRE");

            Materialvm.MaterialBibliografico1 = mATERIALBIBLIOGRAFICO;

            Materialvm.foto = mATERIALBIBLIOGRAFICO.FOTO;//added
            if (mATERIALBIBLIOGRAFICO.IDSUBCATEGORIA != null)
            {
                Materialvm.subcategory = mATERIALBIBLIOGRAFICO.IDSUBCATEGORIA;
            }



            if (mATERIALBIBLIOGRAFICO.IDLOCALIDAD != null)
            {
                Materialvm.idlocalidad = (int)mATERIALBIBLIOGRAFICO.IDLOCALIDAD;
            }


            if (Materialvm.MaterialBibliografico1.IDAUTOR != null)
            {
                AUTOR autor = db.AUTORs.Find(Materialvm.MaterialBibliografico1.IDAUTOR);
                Materialvm.Autor1 = autor;
            }

            ViewBag.CountryList = new SelectList(GetCategoriaList(), "IDCATEGORIA", "IDCATEGORIA");

            if (Materialvm.MaterialBibliografico1.IDCATEGORIA != null)
            {
                CATERGORIA categoria = db.CATERGORIAs.Find(Materialvm.MaterialBibliografico1.IDCATEGORIA);
                Materialvm.Categoria1  = categoria;
                Materialvm.IDCATEGORIA = Materialvm.MaterialBibliografico1.IDCATEGORIA;
            }

            if (Materialvm.MaterialBibliografico1.IDLOCALIDAD != null)
            {
                DOCUMENTOLOCALIDAD doc = db.DOCUMENTOLOCALIDADs.Find(Materialvm.MaterialBibliografico1.IDLOCALIDAD);
                Materialvm.DocumentoLocalidad1 = doc;
            }



            ViewBag.Tipo = new SelectList(db.TIPODOCUMENTOes, "IDTIPO", "TIPODOCUMENTO1");



            //WELL PROBABLY HAVE BUGS CAUSE MANY ATRIBUTES ARE NULL.


            if (mATERIALBIBLIOGRAFICO == null)
            {
                return(HttpNotFound());
            }


            ViewBag.ID             = new SelectList(db.AspNetUsers, "Id", "Email", mATERIALBIBLIOGRAFICO.ID);
            ViewBag.IDAUTOR        = new SelectList(db.AUTORs, "IDAUTOR", "NOMBRE", mATERIALBIBLIOGRAFICO.IDAUTOR);
            ViewBag.IDCATEGORIA    = new SelectList(db.CATERGORIAs, "IDCATEGORIA", "ID", mATERIALBIBLIOGRAFICO.IDCATEGORIA);
            ViewBag.IDLOCALIDAD    = new SelectList(db.DOCUMENTOLOCALIDADs, "IDLOCALIDAD", "LOCACIONOURL", mATERIALBIBLIOGRAFICO.IDLOCALIDAD);
            ViewBag.IDTIPO         = new SelectList(db.TIPODOCUMENTOes, "IDTIPO", "TIPODOCUMENTO1", mATERIALBIBLIOGRAFICO.IDTIPO);
            ViewBag.IDSUBCATEGORIA = new SelectList(db.SUBCATEGORIAs, "IDSUBCATEGORIA", "NOMBRE", mATERIALBIBLIOGRAFICO.IDSUBCATEGORIA);
            return(View(Materialvm));
        }
Example #28
0
        private void btnProcurarLivro_Click(object sender, EventArgs e)
        {
            if (cmbPesquisaLivro.SelectedIndex == 0)
            {
                int var2 = Convert.ToInt32(txtProcurarLivro.Text);

                CLivro.CLivroClient oProxy2 = new CLivro.CLivroClient();
                oProxy2.Open();

                if (oProxy2.SelecionarID(var2) != null)
                {
                    LIVRO oLivro = oProxy2.SelecionarID(var2);

                    txtIDLivro.Text = Convert.ToString(oLivro.ID_LIVRO);
                    txtTitulo.Text  = oLivro.TITULO;
                    txtVolume.Text  = Convert.ToString(oLivro.VOLUME);


                    AUTOR oAutor1 = new AUTOR();

                    oAutor1 = oLivro.AUTOR.First();

                    txtAutor1.Text = oAutor1.NOME;

                    /*
                     * try
                     * {
                     *  AUTOR oAutor2 = new AUTOR();
                     *
                     *  oAutor2 = oLivro.AUTOR.ElementAtOrDefault<AUTOR>(1);
                     *
                     *  txtAutor1.Text = oAutor2.NOME;
                     * }
                     * catch
                     * {
                     *
                     * }*/

                    dtp_Publicacao.Value = oLivro.DATA_PUBLIC;


                    /*GENERO oGenero = new GENERO();
                     *
                     * oGenero = oLivro.GENERO.ElementAtOrDefault<GENERO>(0);
                     *
                     * txtGenero.Text = oGenero.DESCRICAO;*/

                    try
                    {
                        txtEditora.Text = oLivro.EDITORA.NOME;
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message, ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    MessageBox.Show("Livro não encontrado!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else if (cmbPesquisa.SelectedIndex == 1)
            {
                CLivro.CLivroClient oProxy2 = new CLivro.CLivroClient();
                oProxy2.Open();

                if (oProxy2.SelecionarTitulo(txtProcurarLivro.Text) != null)
                {
                    LIVRO oLivro = oProxy2.SelecionarTitulo(txtProcurarLivro.Text);

                    txtIDLivro.Text = Convert.ToString(oLivro.ID_LIVRO);
                    txtTitulo.Text  = oLivro.TITULO;
                    txtVolume.Text  = Convert.ToString(oLivro.VOLUME);

                    AUTOR oAutor1 = new AUTOR();

                    oAutor1 = oLivro.AUTOR.ElementAtOrDefault <AUTOR>(0);

                    txtAutor1.Text = oAutor1.NOME;

                    /*
                     * try
                     * {
                     *  AUTOR oAutor2 = new AUTOR();
                     *
                     *  oAutor2 = oLivro.AUTOR.ElementAtOrDefault<AUTOR>(1);
                     *
                     *  txtAutor1.Text = oAutor2.NOME;
                     * }
                     * catch
                     * {
                     *
                     * }*/

                    dtp_Publicacao.Value = oLivro.DATA_PUBLIC;


                    GENERO oGenero = new GENERO();

                    oGenero = oLivro.GENERO.ElementAtOrDefault <GENERO>(0);

                    txtGenero.Text = oGenero.DESCRICAO;

                    txtEditora.Text = oLivro.EDITORA.NOME;
                }
                else
                {
                    MessageBox.Show("Livro não encontrado!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Example #29
0
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            if (VerificaControles())
            {
                LIVRO oLivro = new LIVRO();

                oLivro.TITULO        = txtTitulo.Text;
                oLivro.VOLUME        = Convert.ToInt32(txtVolume.Text);
                oLivro.DATA_PUBLIC   = dtp_Publicacao.Value;
                oLivro.QTD_EXMPLARES = Convert.ToInt32(txtQuantidade.Text);
                oLivro.SUMARIO       = txtSumario.Text;
                oLivro.QTD_DISP_EMPR = Convert.ToInt32(txtQuantidade.Text);
                oLivro.ID_EDITORA    = cmbEditora.SelectedIndex;


                CAutor.CAutorClient oProxy = new CAutor.CAutorClient();
                oProxy.Open();

                AUTOR xAutor  = oProxy.SelecionarNome(cmbAutor1.Text);
                AUTOR xAutor2 = oProxy.SelecionarNome(cmbAutor2.Text);

                oLivro.AUTOR.Add(xAutor);
                oLivro.AUTOR.Add(xAutor2);

                oProxy.Close();



                CEditora.CEditoraClient oProxy2 = new CEditora.CEditoraClient();
                oProxy2.Open();

                EDITORA xEditora = oProxy2.SelecionarNome(cmbEditora.Text);
                oLivro.EDITORA = xEditora;

                oProxy2.Close();



                CGenero.CGeneroClient oProxy3 = new CGenero.CGeneroClient();
                oProxy3.Open();

                GENERO xGenero = oProxy3.SelecionarDescricao(cmbGenero1.Text);
                oLivro.GENERO.Add(xGenero);

                oProxy3.Close();



                //oLivro.QTD_DISP_EMPR = ??????????
                //oLivro.ID_EDITORA = cmbEditora.SelectedIndex;
                //oLivro.GENERO =
                //oLivro.Emprestimo = ???????????
                //oLivro.RESERVA = ???????


                CLivro.CLivroClient oProxy4 = new CLivro.CLivroClient();
                oProxy4.Open();

                if (var == 0)
                {
                    try
                    {
                        if (oProxy4.Cadastrar(oLivro))
                        {
                            MessageBox.Show("Cadastro realizado com sucesso!", "Confirmação", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            LimpaCampos();
                        }
                        else
                        {
                            if (MessageBox.Show("Livro existente! Deseja carregar os dados do livro?", "Atenção", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                            {
                                string var = oLivro.TITULO;

                                btnSalvar.Enabled = false;

                                btnDeletar.Enabled = true;

                                btnAlterar.Enabled = true;



                                LIVRO xLivro = oProxy4.SelecionarTitulo(var);

                                int var2 = xLivro.ID_LIVRO;

                                txtTitulo.Text = xLivro.TITULO;
                                //???????? = oLivro.QTD_DISP_EMPR;
                                txtQuantidade.Text   = xLivro.QTD_EXMPLARES.ToString();
                                txtSumario.Text      = xLivro.SUMARIO;
                                dtp_Publicacao.Value = xLivro.DATA_PUBLIC;
                                cmbEditora.Text      = xLivro.EDITORA.NOME;
                                cmbAutor1.Text       = xLivro.AUTOR.ElementAt(0).NOME;
                                cmbAutor2.Text       = xLivro.AUTOR.ElementAt(1).NOME;
                                cmbGenero1.Text      = xLivro.GENERO.ElementAt(0).DESCRICAO;
                                //???????? = .GENERO;
                                //???????? = oLivro.Emprestimo;
                                //???????? = oLivro.RESERVA;
                                txtID.Text = Convert.ToString(var2);


                                DesabilitaCampos();
                            }
                            else
                            {
                                LimpaCampos();
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message, ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    try
                    {
                        if (oProxy4.Alterar(oLivro))
                        {
                            MessageBox.Show("Alteração realizada com sucesso!", "Confirmação", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            LimpaCampos();

                            btnAlterar.Enabled = false;

                            HabilitaCampos();

                            var = 0;
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
            else
            {
                MessageBox.Show("Preencha todos os campos!", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }