Example #1
0
        public IEnumerable <POCO.TrnSales> BulkRead(TrnSalesFilter filter = null, FilterMethods filterMethods = null)
        {
            IEnumerable <POCO.TrnSales> result;

            var dynamicFilter = Filterer <TrnSalesFilter> .GetFilter(filter, filterMethods);

            var mappingProfile = new MappingProfileForTrnSales();

            using (var ctx = new posDataContext())
            {
                IEnumerable <TrnSale> data;

                if (filter != null)
                {
                    var enumerable       = dynamicFilter as Filter[] ?? dynamicFilter.ToArray();
                    var filterExpression = ExpressionBuilder
                                           .GetExpression <TrnSale>(enumerable.ToList()).Compile();

                    data = ctx.TrnSales.Where(filterExpression);
                }
                else
                {
                    data = ctx.TrnSales;
                }

                result = mappingProfile.mapper.Map <List <POCO.TrnSales> >(data);

                result.ToList()
                .ForEach(x => x.IsNotTendered = !ctx.TrnCollections.Any(y => y.SalesId == x.Id));
            }

            return(result);
        }
Example #2
0
        public IEnumerable <POCO.TrnSales> GetSalesReport(DateTime date)
        {
            IEnumerable <POCO.TrnSales> result;

            var firstDayOfMonth = new DateTime(date.Year, date.Month, 1);
            var lastDayOfMonth  = firstDayOfMonth.AddMonths(1).AddDays(-1);

            var mappingProfile = new MappingProfileForTrnSales();

            using (var ctx = new posDataContext())
            {
                ctx.DeferredLoadingEnabled = false;

                var trnSalesIncludes = new DataLoadOptions();
                trnSalesIncludes.LoadWith <Data.TrnSale>(x => x.TrnSalesLines);
                trnSalesIncludes.LoadWith <Data.TrnSale>(x => x.MstCustomer);
                trnSalesIncludes.LoadWith <Data.TrnSalesLine>(x => x.MstItem);

                ctx.LoadOptions = trnSalesIncludes;

                result = mappingProfile.mapper.Map <List <POCO.TrnSales> >(ctx.TrnSales
                                                                           .Where(x => x.SalesDate >= firstDayOfMonth && x.SalesDate <= lastDayOfMonth));
            }

            return(result);
        }
Example #3
0
        public POCO.TrnSales Read(long id)
        {
            POCO.TrnSales result;

            var mappingProfile = new MappingProfileForTrnSales();

            using (var ctx = new posDataContext())
            {
                var data = ctx.TrnSales
                           .SingleOrDefault(x => x.Id == id);

                result = mappingProfile.mapper.Map <POCO.TrnSales>(data);

                result.IsNotTendered = !ctx.TrnCollections.Any(x => x.SalesId == data.Id);
            }

            return(result);
        }