コード例 #1
0
        public async Task <PaginationList <Cover> > GetCoversAsync(CoverParameter coverParameter)
        {
            IQueryable <Cover> result = _myworkContext.Covers;

            if (coverParameter != null && coverParameter.StartTime.Year > 1999)
            {
                if (coverParameter.StartTime.Year > 2000 && coverParameter.EndTime.Year > 2000)
                {
                    result = result.Where(t => t.creatTime >= coverParameter.StartTime && t.creatTime <= coverParameter.EndTime);
                }

                if (!coverParameter.Colour.ToString().Contains("全部"))
                {
                    result = result.Where(c => c.Colour == coverParameter.Colour);
                }
                if (!coverParameter.Sleeve.ToString().Contains("全部"))
                {
                    result = result.Where(c => c.Sleeve == coverParameter.Sleeve);
                }
                if (!coverParameter.Size.ToString().Contains("全部"))
                {
                    result = result.Where(c => c.Size == coverParameter.Size);
                }

                if (!coverParameter.Type.Contains("全部"))
                {
                    result = result.Where(c => c.Type == coverParameter.Type);
                }
            }



            return(await PaginationList <Cover> .CreateAsync(coverParameter.PageNumber, coverParameter.PageSize, result));
        }
コード例 #2
0
        public async Task <IActionResult> Index()
        {
            var coverParameter = new CoverParameter()
            {
                PageNumber = 1, PageSize = 10, StartTime = Convert.ToDateTime("1000-01-01"), EndTime = DateTime.UtcNow
            };
            var covers = await _coverRepository.GetCoversAsync(coverParameter);//查询所有明细

            DateTime time = covers[0].creatTime;
            bool     bo   = time < DateTime.UtcNow;

            var groupcovers = covers.GroupBy(c => new { c.Colour, c.Sleeve, c.Size, c.Type }).Select(g => new { Colour = g.Key.Colour, Sleeve = g.Key.Sleeve, Size = g.Key.Size, Type = g.Key.Type, Number = g.Sum(testc => testc.Number) });//根据条件分组明细

            List <Cover> Coversgroup = new List <Cover>();

            foreach (var item in groupcovers)
            {
                if (item.Type == "入库")
                {
                    Cover cover = new Cover();
                    cover.Colour = item.Colour;
                    cover.Sleeve = item.Sleeve;
                    cover.Size   = item.Size;
                    cover.Number = item.Number;
                    Coversgroup.Add(cover);
                }
            }
            foreach (var item in groupcovers)
            {
                foreach (var i in Coversgroup)
                {
                    if (item.Type == "出库" && i.Colour == item.Colour)
                    {
                        i.Number -= item.Number;
                    }
                }
            } //计算库存
            var coverstockparameter = new CoverStockParameterViewModel()
            {
                coverParameter = new CoverParameter() /*PageNumber = covers.CurrentPage, PageSize = covers.PageSize */ }
                {