Beispiel #1
0
        public void SaveOrderGrade(OrderGradeDTO orderGradeDTO)
        {
            var orderGrade = new OrderGrade()
            {
                OrderId   = orderGradeDTO.OrderId,
                GradeId   = orderGradeDTO.GradeId,
                TimeStamp = DateTime.Now
            };

            this.UnitOfWork.Get <OrderGrade>().AddNew(orderGrade);
            this.UnitOfWork.SaveChanges();
        }
Beispiel #2
0
        /// <summary>
        /// Saves a new Order or updates an already existing Order.
        /// </summary>
        /// <param name="orderDTO">Order to be saved or updated.</param>
        /// <param name="userId">userId of the Order creating or updating</param>
        /// <returns>orderId</returns>
        public long SaveOrder(OrderDTO orderDTO, string userId)
        {
            long orderId = 0;

            if (orderDTO.OrderId == 0)
            {
                var order = new Order()
                {
                    Name       = orderDTO.Name,
                    Amount     = orderDTO.Amount,
                    ProductId  = orderDTO.ProductId,
                    StatusId   = orderDTO.StatusId,
                    BranchId   = orderDTO.BranchId,
                    CustomerId = orderDTO.CustomerId,
                    CreatedOn  = DateTime.Now,
                    TimeStamp  = DateTime.Now,
                    CreatedBy  = userId,
                    Deleted    = false,
                };

                this.UnitOfWork.Get <Order>().AddNew(order);
                this.UnitOfWork.SaveChanges();
                orderId = order.OrderId;


                if (orderDTO.Grades != null)
                {
                    foreach (var id in orderDTO.Grades)
                    {
                        var orderGrade = new OrderGrade()
                        {
                            OrderId   = orderId,
                            GradeId   = id,
                            TimeStamp = DateTime.Now
                        };
                        this.UnitOfWork.Get <OrderGrade>().AddNew(orderGrade);
                        this.UnitOfWork.SaveChanges();
                    }
                }
                return(orderId);
            }

            else
            {
                var result = this.UnitOfWork.Get <Order>().AsQueryable()
                             .FirstOrDefault(e => e.OrderId == orderDTO.OrderId);
                if (result != null)
                {
                    result.Name       = orderDTO.Name;
                    result.CustomerId = orderDTO.CustomerId;
                    result.Amount     = orderDTO.Amount;
                    result.ProductId  = orderDTO.ProductId;
                    result.BranchId   = orderDTO.BranchId;
                    result.StatusId   = orderDTO.StatusId;
                    result.UpdatedBy  = userId;
                    result.TimeStamp  = DateTime.Now;
                    this.UnitOfWork.Get <Order>().Update(result);
                    this.UnitOfWork.SaveChanges();
                }
                return(orderDTO.OrderId);
            }
        }