Exemple #1
0
        /// <summary>
        /// Salva os saldos do item
        /// </summary>
        /// <param name="periodoInicial">data do movimento inicial para recuperar o saldo</param>
        /// <param name="periodoFinal">Data do movimento final para recuperar o saldo</param>
        public static SaldoItem Create(DateTime periodoInicial, DateTime periodoFinal)
        {
            SaldoItem result = new SaldoItem();

            #region Diario
            IList<ISaldoItemDiario> diarios = new SaldoItemDiario().Find<ISaldoItemDiario>(
                 new Where {
                    {
                        "DataMovimentacao BETWEEN @p2 AND @p3",
                        new []
                        {
                            new Parameter{
                                ParameterName = "@p2",
                                GenericDbType = GenericDbType.DateTime,
                                Value = new DateTime(periodoInicial.Year,periodoInicial.Month,periodoInicial.Day),
                            },

                            new Parameter{
                                ParameterName = "@p3",
                                GenericDbType = GenericDbType.DateTime,
                                Value = new DateTime(periodoFinal.Year,periodoFinal.Month,periodoFinal.Day,23,59,59),
                            },
                        }
                    }
                });

            result.Diarios = (from x in diarios
                              select new SaldoItemResult
                              {
                                  Data = x.DataMovimentacao,
                                  Entrada = x.QuantidadeEntrada,
                                  Saida = x.QuantidadeSaida,
                                  Saldo = x.Saldo,
                                  Item = x.Item
                              }).ToList();
            #endregion

            #region Mensal
            IList<ISaldoItemMensal> mensais = new SaldoItemMensal().Find<ISaldoItemMensal>(
                 new Where {
                    {
                        "MesMovimentacao BETWEEN @p2 AND @p3",
                        new []
                        {
                            new Parameter{
                                ParameterName = "@p2",
                                Value = periodoInicial.Month
                            },
                            new Parameter{
                                ParameterName = "@p3",
                                Value = periodoFinal.Month
                            }
                        }
                    }
                });

            result.Mensais = (from x in mensais
                              select new SaldoItemResult
                              {
                                  Data = new DateTime(periodoInicial.Year, x.MesMovimentacao, 1),
                                  Entrada = x.QuantidadeEntrada,
                                  Saida = x.QuantidadeSaida,
                                  Saldo = x.Saldo,
                                  Item = x.Item
                              }).ToList();
            #endregion

            #region Anual
            IList<ISaldoItemAnual> anuais = new SaldoItemAnual().Find<ISaldoItemAnual>(
                 new Where {
                    {
                        "AnoMovimentacao BETWEEN @p2 AND @p3",
                        new []
                        {
                            new Parameter{
                                ParameterName = "@p2",
                                Value = periodoInicial.Year
                            },
                            new Parameter{
                                ParameterName = "@p3",
                                Value = periodoFinal.Year
                            }
                        }
                    }
                });

            result.Anuais = (from x in anuais
                             select new SaldoItemResult
                             {
                                 Data = new DateTime(x.AnoMovimentacao, periodoInicial.Month, periodoInicial.Day),
                                 Entrada = x.QuantidadeEntrada,
                                 Saida = x.QuantidadeSaida,
                                 Saldo = x.Saldo,
                                 Item = x.Item
                             }).ToList();
            #endregion

            return result;
        }
Exemple #2
0
        /// <summary>
        /// Salva os saldos do item
        /// </summary>
        /// <param name="item">Item que terá o saldo atualizado</param>
        /// <param name="dataMovimento">data do movimento para atualização do saldo</param>
        public static SaldoItem Create(IItem item, DateTime dataMovimento)
        {
            SaldoItem result = new SaldoItem();

            #region Diario
            IList<ISaldoItemDiario> diarios = new SaldoItemDiario().Find<ISaldoItemDiario>(
                 new Where {
                    {
                        "GUIDItem = @p1 AND DataMovimentacao BETWEEN @p2 AND @p3",
                        new []
                        {
                            new Parameter{
                                ParameterName = "@p1",
                                Value= item.GUID
                            },
                            new Parameter{
                                ParameterName = "@p2",
                                GenericDbType = GenericDbType.DateTime,
                                Value = new DateTime(dataMovimento.Year,dataMovimento.Month,dataMovimento.Day),
                            },

                            new Parameter{
                                ParameterName = "@p3",
                                GenericDbType = GenericDbType.DateTime,
                                Value = new DateTime(dataMovimento.Year,dataMovimento.Month,dataMovimento.Day,23,59,59),
                            },
                        }
                    }
                });

            result.Diarios = (from x in diarios
                              select new SaldoItemResult
                              {
                                  Data = x.DataMovimentacao,
                                  Entrada = x.QuantidadeEntrada,
                                  Saida = x.QuantidadeSaida,
                                  Saldo = x.Saldo,
                                  Item = x.Item
                              }).ToList();
            #endregion

            #region Mensal
            IList<ISaldoItemMensal> mensais = new SaldoItemMensal().Find<ISaldoItemMensal>(
                 new Where {
                    {
                        "GUIDItem = @p1 AND MesMovimentacao = @p2",
                        new []
                        {
                            new Parameter{
                                ParameterName = "@p1",
                                Value= item.GUID
                            },
                            new Parameter{
                                ParameterName = "@p2",
                                Value = dataMovimento.Month
                            },
                        }
                    }
                });

            result.Mensais = (from x in mensais
                              select new SaldoItemResult
                              {
                                  Data = new DateTime(dataMovimento.Year, x.MesMovimentacao, 1),
                                  Entrada = x.QuantidadeEntrada,
                                  Saida = x.QuantidadeSaida,
                                  Saldo = x.Saldo,
                                  Item = x.Item
                              }).ToList();
            #endregion

            #region Anual
            IList<ISaldoItemAnual> anuais = new SaldoItemAnual().Find<ISaldoItemAnual>(
                 new Where {
                    {
                        "GUIDItem = @p1 AND AnoMovimentacao = @p2",
                        new []
                        {
                            new Parameter{
                                ParameterName = "@p1",
                                Value= item.GUID
                            },
                            new Parameter{
                                ParameterName = "@p2",
                                Value = dataMovimento.Year
                            },
                        }
                    }
                });

            result.Anuais = (from x in anuais
                             select new SaldoItemResult
                             {
                                 Data = new DateTime(x.AnoMovimentacao, dataMovimento.Month, dataMovimento.Day),
                                 Entrada = x.QuantidadeEntrada,
                                 Saida = x.QuantidadeSaida,
                                 Saldo = x.Saldo,
                                 Item = x.Item
                             }).ToList();
            #endregion

            return result;
        }