Exemple #1
0
        public async Task <IHttpActionResult> Post(OrderStatisticViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try
            {
                var stf = await _orderStatisticService.InsertAsync(model, GetCurrentUserID());

                _unitOfWorkAsync.Commit();
                var resultObject = new OrderStatisticViewModel()
                {
                    ID                   = stf.Id,
                    OrderDetailId        = stf.OrderDetailId,
                    OrderId              = stf.OrderId,
                    ProductAttributeId   = stf.ProductAttributeId,
                    ProductAttributeName = stf.ProductAttributeName,
                    ProductAttributeNote = stf.ProductAttributeNote,
                    Serial               = stf.Serial,
                    CreatDate            = DateTime.Now,
                    LastModifiedDate     = DateTime.Now
                };
                return(Created(resultObject));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemple #2
0
        public bool Update(OrderStatisticViewModel model, string CurrentId)
        {
            var data = Find(model.ID);

            if (data != null)
            {
                data.ProductAttributeNote = model.ProductAttributeNote;
                data.Serial           = model.Serial;
                data.LastModifiedDate = DateTime.Now;
            }
            return(true);
        }
Exemple #3
0
        public async Task <OrderStatisticViewModel> UpdateAsync(OrderStatisticViewModel model, string CurrentId)
        {
            try
            {
                await Task.Run(() => Update(model, CurrentId));

                return(model);
            }
            catch (Exception e)
            {
                throw (e);
            }
        }
Exemple #4
0
        public OrderStatistic Insert(OrderStatisticViewModel model, string CurrentId)
        {
            var data = new OrderStatistic();

            data.OrderDetailId        = model.OrderDetailId;
            data.OrderId              = model.OrderId;
            data.CreatDate            = DateTime.Now;
            data.LastModifiedDate     = DateTime.Now;
            data.ProductAttributeId   = model.ProductAttributeId;
            data.ProductAttributeName = model.ProductAttributeName;
            data.ProductAttributeNote = model.ProductAttributeNote;
            data.Serial = model.Serial;
            data.Delete = false;
            base.Insert(data);
            return(data);
        }
Exemple #5
0
        public async Task <IHttpActionResult> Put(Guid key, OrderStatisticViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            try
            {
                await _orderStatisticService.UpdateAsync(model, GetCurrentUserID());

                _unitOfWorkAsync.Commit();
                return(Updated(model));
            }
            catch (Exception e)
            {
                throw e;
            }
        }
Exemple #6
0
        public IQueryable <OrderDetailViewModel> GetOrderDetailByOrder(SearchViewModel model)
        {
            var result = Queryable().Where(x => x.Delete == false &&
                                           ((!model.From.HasValue) || (DbFunctions.TruncateTime(x.CreatDate) >= DbFunctions.TruncateTime(model.From))) &&
                                           ((!model.To.HasValue) || (DbFunctions.TruncateTime(x.CreatDate) <= DbFunctions.TruncateTime(model.To)))).
                         Select(x => new OrderDetailViewModel
            {
                ID          = x.Id,
                ProductID   = x.ProductId,
                ProductName = x.ProductName,
                Quantity    = x.Quantity,
                Price       = x.Price,
                Serial      = x.Serial,
                CreatDate   = x.CreatDate,
                IsGift      = x.IsGift,
                UserName    = x.UserAccount.UserName,
                OrderCode   = x.Order.Code,
                OrderID     = x.Order.Id
            }).ToList();

            if (result != null)
            {
                foreach (var item in result)
                {
                    var r = _orderStatisticService.Queryable().Where(x => x.Delete == false &&
                                                                     x.OrderDetailId == item.ID).ToList();
                    if (r != null)
                    {
                        foreach (var item1 in r)
                        {
                            var a = new OrderStatisticViewModel();
                            a.ProductAttributeName = item1.ProductAttributeName;
                            a.ProductAttributeId   = item1.ProductAttributeId;
                            a.ProductAttributeNote = item1.ProductAttributeNote;
                            a.Serial = item1.Serial;
                            a.ID     = item1.Id;
                            item.OrderStatistics.Add(a);
                        }
                    }
                }
            }
            return(result.AsQueryable());
        }
Exemple #7
0
 public async Task <OrderStatistic> InsertAsync(OrderStatisticViewModel model, string CurrentId)
 {
     return(await Task.Run(() => Insert(model, CurrentId)));
 }