public async Task <IActionResult> IniciarEdicao(Edicao edicao) { var edicoes = await contexto.Edicoes.ToListAsync(); var possuiEdicaoAberta = edicoes.Any(x => x.Status == StatusDaEdicao.Aberta); if (possuiEdicaoAberta) { return(BadRequest("Já existe uma edição aberta!")); } var ultimaEdicao = edicoes.Count() > 0 ? edicoes.Max(x => x.Numero) : 0; edicao.DefinirNumeroDaEdicao(ultimaEdicao); contexto.Add(edicao); await contexto.SaveChangesAsync(); if (edicao == null) { return(BadRequest()); } else { return(Ok()); } }
public async virtual Task <IHttpActionResult> Post([FromBody] Edicao model) { try { // validate if (model == null) { return(BadRequest("Model can not be null.")); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } // add entity if (await FacadeBO.Edicao.AddAsync(model) == 0) { return(Conflict()); } // registry created return(Created <object>(Request.RequestUri + model.Id.ToString(), model.Id)); } catch (Exception ex) { return(InternalServerError(ex)); } }
public void NotificarAssinantes(Edicao edicao) { foreach (var assinante in _assinantes) { assinante.Notificar(edicao.NumeroEdicao); } }
public Livro() { Titulo = new Titulo(); Autor = new Autor(); Edicao = new Edicao(); Idioma = new Idioma(); Editora = new Editora(); TituloAutor = new TituloAutor(); }
static void Main(string[] args) { var edicaoRepositorio = new EdicaoRepositorio(); var editora = new Editora(edicaoRepositorio); var assinanteA = new AssinanteA(editora); var assinanteB = new AssinanteB(editora); var edicao = new Edicao("Titulo", "Ed 99"); editora.PublicarEdicao(edicao); }
/// <summary> /// Preenche uma edicao com os campos da tela /// </summary> /// <param name="edicoes"></param> /// <returns></returns> private Lista <IEdicao> PreencheEdicao(Lista <IEdicao> edicoes) { if (edicoes != null) { while (edicoes.ContemProximo()) { IEdicao edicao = new Edicao(); edicoes = this.bd.SelecionarEdicaoById(edicao); } } return(edicoes); }
public bool Inserir(TituloAutor tituloAutor, Titulo tituloModel, Edicao edicaoModel) { var deuCerto = false; using (FbConnection conexaoFireBird = Conexao.GetInstancia().GetConexao()) { conexaoFireBird.Open(); var transacao = conexaoFireBird.BeginTransaction(); var cmd = new FbCommand { Connection = conexaoFireBird, Transaction = transacao }; try { var sql = @"INSERT INTO TITULO (CODIGOEDITORA, NOMETITULO, DESCRICAO, DESABILITAR) values (@CODIGOEDITORA, @NOMETITULO, @DESCRICAO, @DESABILITAR) RETURNING CODIGOTITULO"; tituloAutor.CodigoTitulo = cmd.Connection.ExecuteScalar <int>(sql, tituloModel, transacao); sql = @"INSERT INTO EDICAO (CODIGOIDIOMA, ANO, DATA_LANCAMENTO, QTDE_PAGINAS, EDICAO) VALUES (@CODIGOIDIOMA, @ANO, @DATALANCAMENTO, @QTDEPAGINA, @NUMEROEDICAO) RETURNING CODIGOEDICAO"; tituloAutor.CodigoEdicao = cmd.Connection.ExecuteScalar <int>(sql, edicaoModel, transacao); sql = @"INSERT INTO TITULO_AUTOR (CODIGOAUTOR, CODIGOEDICAO, CODIGOTITULO) VALUES (@CODIGOAUTOR, @CODIGOEDICAO, @CODIGOTITULO)"; cmd.Connection.Execute(sql, tituloAutor, transacao); deuCerto = true; } catch (Exception e) { XtraMessageBox.Show(e.Message); } finally { if (deuCerto) { transacao.Commit(); } else { transacao.Rollback(); } conexaoFireBird.Close(); } return(deuCerto); } }
public bool Alterar(Titulo tituloModel, Edicao edicaoModel, TituloAutor tituloAutorModel) { var deuCerto = false; using (FbConnection conexaoFireBird = Conexao.GetInstancia().GetConexao()) { conexaoFireBird.Open(); var transacao = conexaoFireBird.BeginTransaction(); var cmd = new FbCommand { Connection = conexaoFireBird, Transaction = transacao }; try { var sql = @"UPDATE TITULO SET CODIGOEDITORA = @CODIGOEDITORA, NOMETITULO = @NOMETITULO, DESCRICAO = @DESCRICAO, DESABILITAR = @DESABILITAR WHERE CODIGOTITULO = @CODIGOTITULO"; cmd.Connection.Execute(sql, tituloModel, transacao); sql = @"UPDATE EDICAO SET CODIGOIDIOMA = @CODIGOIDIOMA, ANO = @ANO, DATA_LANCAMENTO = @DATALANCAMENTO, QTDE_PAGINAS= @QTDEPAGINA, EDICAO = @NUMEROEDICAO WHERE CODIGOEDICAO = @CODIGOEDICAO"; cmd.Connection.Execute(sql, edicaoModel, transacao); sql = @"UPDATE TITULO_AUTOR SET CODIGOAUTOR = @CODIGOAUTOR where CODIGOTITULO = @CODIGOTITULO"; cmd.Connection.Execute(sql, tituloAutorModel, transacao); deuCerto = true; } catch (Exception e) { XtraMessageBox.Show(e.Message); } finally { if (deuCerto) { transacao.Commit(); } else { transacao.Rollback(); } conexaoFireBird.Close(); } return(deuCerto); } }
/// <summary> /// Retorna os id das edicoes listadas /// </summary> /// <returns></returns> private Lista <IEdicao> GetIdEdicao() { Lista <IEdicao> edicoes = null; if (!this.lvEdicaoPeriodico.Items.Count.Equals(0)) { edicoes = new Lista <IEdicao>(); for (int i = 0; i < this.lvEdicaoPeriodico.Items.Count; i++) { IEdicao edicao = new Edicao(); edicao.Id = Convert.ToInt32(this.lvEdicaoPeriodico.Items[i].SubItems[2].Text); } } return(edicoes); }
public async virtual Task <IHttpActionResult> Put(int id, [FromBody] Edicao model) { try { // validate if (model == null) { return(BadRequest("Model can not be null.")); } if (id == 0) { return(BadRequest("Identifier is required.")); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (await FacadeBO.Edicao.GetByIdAsync(id) == null) { return(NotFound()); } // defines identifier for model change model.Id = id; // modify entity if (await FacadeBO.Edicao.ModifyAsync(model) == 0) { return(NotFound()); } return(Ok()); } catch (Exception ex) { return(InternalServerError(ex)); } }
public async virtual Task <IHttpActionResult> Get([FromUri] PaggingCriteria <Edicao> pagging, [FromUri] Edicao model) { try { if (pagging == null) { pagging = new PaggingCriteria <Edicao>(); } // partial filters var clauseExpr = PredicateBuilder.True <Edicao>(); if (model != null) { ApplyListFilter(model, ref clauseExpr); } // partial pagging ApplyListPagging(pagging); // get by filters var result = await FacadeBO.Edicao.GetByAsync(clauseExpr, pagging); if (result == null || result.Data.Count == 0) { return(NotFound()); } SetLinkPaging("edicao_get", result, pagging); result.Links.Add(GetLinkSelf("edicao_get", result, pagging)); result.Links.Add(GetLinkItem("edicao_get_id")); result.Links.Add(GetLinkItemCreate("edicao_add")); result.Links.Add(GetLinkItemEdit("edicao_modify")); result.Links.Add(GetLinkItemDelete("edicao_delete")); return(Ok(result)); } catch (Exception ex) { return(InternalServerError(ex)); } }
/// <summary> /// Apply filter for listing /// </summary> partial void ApplyListFilter(Edicao model, ref Expression <Func <Edicao, bool> > clause);
public void PublicarEdicao(Edicao edicao) { _repositorio.Add(edicao); NotificarAssinantes(edicao); }
private void btEditar_Click(object sender, RoutedEventArgs e) { Edicao?.Invoke(servico); }