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(); }
/// <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); } }