コード例 #1
0
 public Despesa(DespesaDTO dto)
 {
     this.Descricao   = dto.Descricao;
     this.Valor       = dto.Valor;
     this.Vencto      = dto.Vencto;
     this.UsuarioId   = dto.UsuarioId;
     this.CategoriaId = dto.CategoriaId;
 }
コード例 #2
0
        public void Exluir(DespesaDTO dto)
        {
            banco = new AcessoBancoDados();
            banco.Conectar();
            string comando = "DELETE FROM despesa WHERE id = '" + dto.Id + "'";

            banco.ExecutarComandoSql(comando);
        }
コード例 #3
0
        public void Excluir(DespesaValidator validator)
        {
            DespesaDTO dto = new DespesaDTO
            {
                Id        = this.Id,
                UsuarioId = this.UsuarioId
            };

            validator.ValidarExclusao(dto);
        }
コード例 #4
0
        public void CadastrarDespesa(DespesaDTO dto)
        {
            Despesa despesa = Despesa.Cadastrar(dto, despesaValidator);

            unitOfWork.BeginTransaction();

            despesaRepository.Add(despesa);

            unitOfWork.Commit();
        }
コード例 #5
0
        // GET: api/Despesas
        public IQueryable <DespesaDTO> GetDespesas()
        {
            List <DespesaDTO> despesas = new List <DespesaDTO>();

            foreach (var despesa in db.cf_despesa)
            {
                despesas.Add(DespesaDTO.GeraDTO(despesa));
            }
            return(despesas.AsQueryable());
        }
コード例 #6
0
        public void Editar(DespesaDTO dto, DespesaValidator validator)
        {
            validator.ValidarEdicao(dto);

            this.Descricao   = dto.Descricao;
            this.Valor       = dto.Valor;
            this.Vencto      = dto.Vencto;
            this.UsuarioId   = dto.UsuarioId;
            this.CategoriaId = dto.CategoriaId;
        }
コード例 #7
0
        public async Task <IHttpActionResult> GetDespesaByIdDocumento(decimal idDocumento)
        {
            cf_despesa despesa = await db.cf_despesa.Where(b => b.id_documento == idDocumento).FirstOrDefaultAsync();

            if (despesa == null)
            {
                return(NotFound());
            }

            return(Ok(DespesaDTO.GeraDTO(despesa)));
        }
コード例 #8
0
        public void EditarDespesa(DespesaDTO dto)
        {
            Despesa despesa = despesaRepository.GetById(dto.Id);

            despesa.Editar(dto, despesaValidator);

            unitOfWork.BeginTransaction();

            despesaRepository.Update(despesa);

            unitOfWork.Commit();
        }
コード例 #9
0
        private void BtnSalvarDespesa_Click(object sender, EventArgs e)
        {
            try
            {
                DespesaBLL bll = new DespesaBLL();

                if (this.dto == null)//cadastrar
                {
                    DespesaDTO dto = new DespesaDTO();
                    dto.Descricao        = txtDescricaoDespesa.Text;
                    dto.Valor            = mskValor.Text;
                    dto.CategoriaDespesa = (int)cboCategoriaDespesa.SelectedValue;
                    dto.Conta            = (int)cboConta.SelectedValue;
                    dto.DataVencimanto   = Convert.ToDateTime(mskVencimento.Text);
                    dto.Observacao       = txtObservacaoDespesa.Text;

                    if (txtDescricaoDespesa.Text == "" || mskValor.Text == "" || (int)cboCategoriaDespesa.SelectedValue <= 0 || mskVencimento.Text == "")
                    {
                        MessageBox.Show("Não é possivel salvar essa despesa, pois campos obrigatorios não foram preencido\n\nPreencha os campos com *.", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                    }
                    else
                    {
                        bll.Inserir(dto);
                        MessageBox.Show("Despesa cadastrada com sucesso! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        LimparCampos();
                        txtDescricaoDespesa.Focus();
                    }
                }
                else//alterar
                {
                    this.dto.Descricao        = txtDescricaoDespesa.Text;
                    this.dto.Valor            = mskValor.Text;
                    this.dto.CategoriaDespesa = (int)cboCategoriaDespesa.SelectedValue;
                    this.dto.Conta            = (int)cboConta.SelectedValue;
                    this.dto.DataVencimanto   = Convert.ToDateTime(mskVencimento.Text);
                    this.dto.Observacao       = txtObservacaoDespesa.Text;
                    bll.Atualizar(this.dto);
                    LimparCampos();
                    this.Close();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Preencha os campos necessário.{ex.Message}", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            finally
            {
                LimparCampos();
            }
        }
コード例 #10
0
        public async Task <IHttpActionResult> GetDespesaByIdDeputado(int idDeputado)
        {
            List <DespesaDTO> despesas = new List <DespesaDTO>();

            foreach (var despesa in await db.cf_despesa.Where(b => b.id_cf_deputado == idDeputado).ToListAsync())
            {
                despesas.Add(DespesaDTO.GeraDTO(despesa));
            }
            if (despesas.Count == 0)
            {
                return(NotFound());
            }
            return(Ok(despesas));
        }
コード例 #11
0
        public async Task <IHttpActionResult> GetDespesaByPeriodo(DateTime dataI, DateTime dataF)
        {
            List <DespesaDTO> despesas = new List <DespesaDTO>();

            foreach (var despesa in await db.cf_despesa.Where(b => b.data_emissao >= dataI && b.data_emissao < dataF).ToListAsync())
            {
                despesas.Add(DespesaDTO.GeraDTO(despesa));
            }
            if (despesas.Count == 0)
            {
                return(NotFound());
            }
            return(Ok(despesas));
        }
コード例 #12
0
        public void Atualizar(DespesaDTO dto)
        {
            dto.Descricao.Trim();
            string descricao = dto.Descricao.Replace("'", "''");

            string valor = dto.Valor.Replace(",", ".");

            dto.Observacao.Trim();
            string observacao = dto.Observacao.Replace("'", "''");

            banco = new AcessoBancoDados();
            banco.Conectar();
            string comando = "UPDATE despesa SET desc_despesa = '" + dto.Descricao + "', valor = '" + valor + "', id_categoria_despesa = '" + dto.CategoriaDespesa + "', id_conta = '" + dto.Conta + "', data_vencimento = '" + dto.DataVencimanto.ToString("yyyy-MM-dd") + "', observacao = '" + observacao + "' WHERE id = '" + dto.Id + "'";

            banco.ExecutarComandoSql(comando);
        }
コード例 #13
0
        public void Inserir(DespesaDTO dto)
        {
            dto.Descricao.Trim();
            string descricao = dto.Descricao.Replace("'", "''");

            string valor = dto.Valor.Replace(",", ".");

            dto.Observacao.Trim();
            string observacao = dto.Observacao.Replace("'", "''");

            banco = new AcessoBancoDados();
            banco.Conectar();
            string comando = "INSERT INTO despesa(desc_despesa, valor, id_categoria_despesa, id_conta, data_vencimento, observacao) VALUES('" + descricao + "', '" + valor + "', '" + dto.CategoriaDespesa + "', '" + dto.Conta + "', '" + dto.DataVencimanto.ToString("yyyy-MM-dd") + "', '" + observacao + "')";

            banco.ExecutarComandoSql(comando);
        }
コード例 #14
0
        public JsonResult SalvarDespesa(FormCollection formCadastro)
        {
            try
            {
                string retornoMensagem;
                string idDespesa        = formCadastro["idDespesa"];
                string descricaoDespesa = formCadastro["descricaoDespesa"];
                string venctoDespesa    = formCadastro["venctoDespesa"];
                string valorDespesa     = formCadastro["valorDespesa"];
                string categoria        = formCadastro["categoriaDespesa"];



                DespesaDTO dto = new DespesaDTO();
                dto.Descricao = descricaoDespesa;
                dto.Valor     = Decimal.Parse(valorDespesa, NumberStyles.Currency, new CultureInfo("pt-BR"));
                dto.Vencto    = int.Parse(venctoDespesa);
                dto.UsuarioId = base.Usuario.Id;
                if (!String.IsNullOrEmpty(idDespesa))
                {
                    dto.Id = int.Parse(idDespesa);
                }
                if (!String.IsNullOrEmpty(categoria))
                {
                    dto.CategoriaId = int.Parse(categoria);
                }


                if (String.IsNullOrEmpty(idDespesa))
                {
                    _despesaAppService.CadastrarDespesa(dto);
                    retornoMensagem = "registro incluído com sucesso!";
                }
                else
                {
                    _despesaAppService.EditarDespesa(dto);
                    retornoMensagem = "registro atualizado com sucesso!";
                }


                return(Json(new { success = true, responseText = retornoMensagem }, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(Json(new { success = false, responseText = ex.Message }, JsonRequestBehavior.AllowGet));
            }
        }
コード例 #15
0
 public FrmCadDespesa(DespesaDTO dto)
 {
     this.dto = dto;
     InitializeComponent();
 }
コード例 #16
0
        public IActionResult Get(int id)
        {
            Despesa despesa = _context.Despesa
                              .Include(q => q.Item)
                              .Include(q => q.Usuario)
                              .SingleOrDefault(q => q.Id == id);

            if (despesa == null)
            {
                return(new NotFoundResult());
            }

            DespesaDTO dto = new DespesaDTO();

            if (despesa.GetType() == typeof(DespesaAssociacao))
            {
                dto.Id            = despesa.Id;
                dto.Descricao     = despesa.Descricao;
                dto.DataDaCompra  = despesa.DataDaCompra;
                dto.ValorUnitario = despesa.ValorUnitario;
                dto.Quantidade    = despesa.Quantidade;
                dto.Tipo          = despesa.Tipo;
                dto.Item          = new ItemDTOR()
                {
                    Id              = despesa.Item.Id,
                    Nome            = despesa.Item.Nome,
                    UnidadeDeMedida = despesa.Item.UnidadeDeMedida
                };
                dto.Usuario = new UsuarioDTOR()
                {
                    Id    = despesa.Usuario.Id,
                    Nome  = despesa.Usuario.Nome,
                    Email = despesa.Usuario.Email
                };
            }
            else if (despesa.GetType() == typeof(DespesaSopa))
            {
                dto.Id            = despesa.Id;
                dto.Descricao     = despesa.Descricao;
                dto.DataDaCompra  = despesa.DataDaCompra;
                dto.ValorUnitario = despesa.ValorUnitario;
                dto.Quantidade    = despesa.Quantidade;
                dto.Tipo          = despesa.Tipo;
                dto.Item          = new ItemDTOR()
                {
                    Id              = despesa.Item.Id,
                    Nome            = despesa.Item.Nome,
                    UnidadeDeMedida = despesa.Item.UnidadeDeMedida
                };
                dto.Usuario = new UsuarioDTOR()
                {
                    Id    = despesa.Usuario.Id,
                    Nome  = despesa.Usuario.Nome,
                    Email = despesa.Usuario.Email
                };
            }
            else if (despesa.GetType() == typeof(DespesaFavorecido))
            {
                dto.Id            = despesa.Id;
                dto.Descricao     = despesa.Descricao;
                dto.DataDaCompra  = despesa.DataDaCompra;
                dto.ValorUnitario = despesa.ValorUnitario;
                dto.Quantidade    = despesa.Quantidade;
                dto.Tipo          = despesa.Tipo;
                dto.Item          = new ItemDTOR()
                {
                    Id              = despesa.Item.Id,
                    Nome            = despesa.Item.Nome,
                    UnidadeDeMedida = despesa.Item.UnidadeDeMedida
                };
                dto.Usuario = new UsuarioDTOR()
                {
                    Id    = despesa.Usuario.Id,
                    Nome  = despesa.Usuario.Nome,
                    Email = despesa.Usuario.Email
                };

                _context.Favorecido.Where(q => q.CodFavorecido == ((DespesaFavorecido)despesa).CodFavorecido).Load();
                dto.Favorecido = new FavorecidoDTOR()
                {
                    Id      = ((DespesaFavorecido)despesa).Favorecido.CodFavorecido,
                    Apelido = ((DespesaFavorecido)despesa).Favorecido.Apelido,
                    Cpf     = ((DespesaFavorecido)despesa).Favorecido.Cpf,
                    Nome    = ((DespesaFavorecido)despesa).Favorecido.Nome
                };
            }



            this.Response.Headers.Add("totalItems", "1");
            return(new ObjectResult(dto));
        }
コード例 #17
0
        public async Task <IActionResult> Post([FromBody] DespesaDTO dto)
        {
            if (ModelState.IsValid && (dto.Tipo.ToUpper() == "ASSOCIACAO" || dto.Tipo.ToUpper() == "FAVORECIDO" || dto.Tipo.ToUpper() == "SOPA"))
            {
                Usuario user = await _userManager.GetUserAsync(HttpContext.User);

                //corrige fuso horario do js
                dto.DataDaCompra = dto.DataDaCompra.AddHours(-dto.DataDaCompra.Hour);
                switch (dto.Tipo)
                {
                case "ASSOCIACAO":
                    try
                    {
                        ItemAssociacao    ia = _context.ItemAssociacao.Single(q => q.Id == dto.Item.Id);
                        DespesaAssociacao da = new DespesaAssociacao
                        {
                            DataDaCompra  = dto.DataDaCompra,
                            Descricao     = dto.Descricao,
                            Quantidade    = dto.Quantidade,
                            ValorUnitario = dto.ValorUnitario,
                            Item          = ia,
                            Usuario       = user
                        };
                        _context.DespesaAssociacao.Add(da);
                        _context.SaveChanges();
                        dto.Id = da.Id;
                    }
                    catch
                    {
                        //ModelState.AddModelError("Item", "Este item já está cadastrado");
                        return(new BadRequestObjectResult(ModelState));
                    }
                    break;

                case "FAVORECIDO":
                    try
                    {
                        ItemFavorecido    ifavorecido = _context.ItemFavorecido.Single(q => q.Id == dto.Item.Id);
                        Favorecido        favorecido  = _context.Favorecido.Single(q => q.CodFavorecido == dto.Favorecido.Id);
                        DespesaFavorecido df          = new DespesaFavorecido
                        {
                            DataDaCompra  = dto.DataDaCompra,
                            Descricao     = dto.Descricao,
                            Quantidade    = dto.Quantidade,
                            ValorUnitario = dto.ValorUnitario,
                            Item          = ifavorecido,
                            Favorecido    = favorecido,
                            Usuario       = user
                        };
                        _context.DespesaFavorecido.Add(df);
                        _context.SaveChanges();
                        dto.Id = df.Id;
                    }
                    catch
                    {
                        ModelState.AddModelError("Favorecido", "Este favorecido não existe mais");
                        return(new BadRequestObjectResult(ModelState));
                    }

                    break;

                case "SOPA":
                    try
                    {
                        ItemSopa    isopa = _context.ItemSopa.Single(q => q.Id == dto.Item.Id);
                        DespesaSopa ds    = new DespesaSopa
                        {
                            DataDaCompra  = dto.DataDaCompra,
                            Descricao     = dto.Descricao,
                            Quantidade    = dto.Quantidade,
                            ValorUnitario = dto.ValorUnitario,
                            Item          = isopa,
                            Usuario       = user
                        };
                        _context.DespesaSopa.Add(ds);
                        _context.SaveChanges();
                        //atualiza o estoque

                        _estoqueManager.DarEntrada(user, isopa, ds.Quantidade);
                        dto.Id = ds.Id;
                    }
                    catch
                    {
                        //ModelState.AddModelError("Item", "Este item já está cadastrado");
                        return(new BadRequestObjectResult(ModelState));
                    }
                    break;
                }
                return(new ObjectResult(dto));
            }
            else
            {
                if (ModelState.IsValid)
                {
                    ModelState.AddModelError("Tipo", "Valores aceitados = ['ASSOCIACAO','FAVORECIDO','SOPA']");
                }
                return(new BadRequestObjectResult(ModelState));
            }
        }
コード例 #18
0
        public async Task <IActionResult> Put(int id, [FromBody] DespesaDTO dto)
        {
            if (id != dto.Id)
            {
                return(new StatusCodeResult(StatusCodes.Status400BadRequest));
            }
            if (ModelState.IsValid)
            {
                //corrige fuso horario do js
                dto.DataDaCompra = dto.DataDaCompra.AddHours(-dto.DataDaCompra.Hour);
                Usuario user = await _userManager.GetUserAsync(HttpContext.User);

                Despesa despesa = _context.Despesa.SingleOrDefault(q => q.Id == id);
                if (despesa == null)
                {
                    return(new BadRequestResult());
                }
                Item item = _context.Item.SingleOrDefault(q => q.Id == dto.Item.Id);
                if (item == null)
                {
                    ModelState.AddModelError("Item", "Item inválido");
                    return(new BadRequestObjectResult(ModelState));
                }
                double diferencaQuantidade = despesa.Quantidade - dto.Quantidade;
                despesa.Item          = item;
                despesa.Quantidade    = dto.Quantidade;
                despesa.ValorUnitario = dto.ValorUnitario;
                despesa.Usuario       = user;


                if (despesa.GetType() == typeof(DespesaAssociacao))
                {
                    DespesaAssociacao desp = (DespesaAssociacao)despesa;
                    //nenhum outro campo para atualizar
                    try
                    {
                        _context.SaveChanges();
                        return(new ObjectResult(dto));
                    }
                    catch
                    {
                        return(new BadRequestObjectResult(ModelState));
                    }
                }
                else if (despesa.GetType() == typeof(DespesaFavorecido))
                {
                    DespesaFavorecido desp = (DespesaFavorecido)despesa;

                    try
                    {
                        Favorecido f = _context.Favorecido.Single(q => q.CodFavorecido == dto.Favorecido.Id);
                        _context.SaveChanges();
                        return(new ObjectResult(dto));
                    }
                    catch
                    {
                        ModelState.AddModelError("Favorecido", "Favorecido incorreto");
                        return(new BadRequestObjectResult(ModelState));
                    }
                }
                else if (despesa.GetType() == typeof(DespesaSopa))
                {
                    DespesaSopa desp = (DespesaSopa)despesa;
                    //nenhum outro campo para atualizar
                    try
                    {
                        _context.SaveChanges();
                        //atualiza o estoque
                        if (diferencaQuantidade > 0)
                        {
                            _estoqueManager.DarSaida(user, item, diferencaQuantidade);
                        }
                        else if (diferencaQuantidade < 0)
                        {
                            _estoqueManager.DarEntrada(user, item, -diferencaQuantidade);
                        }


                        return(new ObjectResult(dto));
                    }
                    catch
                    {
                        return(new BadRequestObjectResult(ModelState));
                    }
                }

                return(new ObjectResult(dto));
            }
            else
            {
                return(new BadRequestObjectResult(ModelState));
            }
        }
コード例 #19
0
 public static Despesa Cadastrar(DespesaDTO dto, DespesaValidator validator)
 {
     validator.ValidarCadastro(dto);
     return(new Despesa(dto));
 }