Beispiel #1
0
        public HttpResponseMessage ReceitasPorDespesas()
        {
            var result = new RelReceitasPorDespesas
            {
                Despesas = new List <DadosReceita>(),
                Receitas = new List <DadosReceita>()
            };

            try
            {
                var usuarioLogado = base.GetUsuarioLogado();
                var model         = _Dservice.ReceitasPorDespesas(usuarioLogado.IdClinica, usuarioLogado.IdUnidadeAtendimento);

                //adiciono os meses que não teve faturamento
                for (int i = 0; i <= 11; i++)
                {
                    if (!model.Despesas.Where(p => p.Mes == i).Any())
                    {
                        result.Despesas.Add(new DadosReceita
                        {
                            Ano   = DateTime.Now.Year,
                            Mes   = i,
                            Valor = 0
                        });
                    }
                    if (!model.Receitas.Where(p => p.Mes == i).Any())
                    {
                        model.Receitas.Add(new DadosReceita
                        {
                            Ano   = DateTime.Now.Year,
                            Mes   = i,
                            Valor = 0
                        });
                    }
                }

                //ordena os meses
                result.Despesas.AddRange(model.Despesas);
                result.Receitas.AddRange(model.Receitas);

                result.Despesas.OrderBy(x => x.Mes).ToList();
                result.Receitas.OrderBy(x => x.Mes).ToList();

                return(Request.CreateResponse(HttpStatusCode.OK, result));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message));
            }
        }
Beispiel #2
0
        public RelReceitasPorDespesas ReceitasPorDespesas(int idclinica, int idunidade)
        {
            //somente do ano atual
            var ano = DateTime.Now.Year;

            var    model      = new RelReceitasPorDespesas();
            string sqlReceber = "SELECT month(P.DataAcerto) as Mes, " +
                                "            year(P.DataAcerto) as Ano, " +
                                "            Sum(P.Valor) Valor " +
                                "      from Financeiro F, FinanceiroParcela P " +
                                "      WHERE F.IdFinanceiro = P.IdFinanceiro " +
                                "   and F.IdClinica = " + idclinica + " " +
                                "   and F.IdUnidadeAtendimento = " + idunidade + " " +
                                "   and F.Tipo = 'Contas a Receber' " +
                                "   AND P.Situacao = 'Baixado' " +
                                "   and year(P.DataAcerto) = " + ano + " " +
                                "   GROUP BY ano, mes " +
                                "   ORDER BY ano, mes asc";

            var receber = Context.Database.SqlQuery <DadosReceita>(sqlReceber).ToList();

            model.Receitas = receber;

            string sqlPagar = "SELECT month(P.DataAcerto) as Mes, " +
                              "            year(P.DataAcerto) as Ano, " +
                              "            Sum(P.Valor) Valor " +
                              "      from Financeiro F, FinanceiroParcela P " +
                              "      WHERE F.IdFinanceiro = P.IdFinanceiro " +
                              "   and F.IdClinica = " + idclinica + " " +
                              "   and F.IdUnidadeAtendimento = " + idunidade + " " +
                              "   and F.Tipo = 'Contas a Pagar' " +
                              " AND P.Situacao = 'Baixado' " +
                              "   and year(P.DataAcerto) = " + ano + " " +
                              "   GROUP BY ano, mes " +
                              "   ORDER BY ano, mes asc";

            var pagar = Context.Database.SqlQuery <DadosReceita>(sqlPagar).ToList();

            model.Despesas = pagar;

            return(model);
        }