public ActionResult SaveOrder(OrderDto orderDto) { if (ModelState.IsValid && orderDto.IsValid) { Order order; if (orderDto.OrderId > 0) { order = OrderRepository.Get(x => x.OrderId == orderDto.OrderId).FirstOrDefault(); Mapper.Map(orderDto, order); OrderRepository.Update(order); } else { order = Mapper.Map <Order>(orderDto); OrderRepository.Insert(order); } OrderRepository.Commit(); //TODO: Avoid looking this up again orderDto.CustomerName = CustromeRepository.Get(x => x.CustomerId == orderDto.CustomerId).First().CustomerName; orderDto.OrderStatusName = LookupDataManager.OrderStatuses.First(x => order != null && x.OrderStatusId == order.OrderStatusId) .StatusName; if (order != null) { orderDto.OrderId = order.OrderId; } return(Json(orderDto)); } ViewBag.CustomerList = CustomerListItems(); ViewBag.OrderStatusList = OrderStatusListItems(); return(PartialView("OrderEditor", orderDto)); }
private IEnumerable <SelectListItem> CustomerListItems() { IEnumerable <SelectListItem> customerList = CustromeRepository.Get(c => c.CustomerId > 0) .OrderBy(cust => cust.CustomerName) .Select(cust => new SelectListItem { Text = cust.CustomerName, Value = cust.CustomerId.ToString(CultureInfo.InvariantCulture) }); return(customerList); }
public ActionResult SaveDeliveryReceipt(DeliveryDto deliveryDto) { if (ModelState.IsValid && deliveryDto.IsValid) { DeliveryReceipt deliveryReceipt; if (deliveryDto.DeliveryReceiptId > 0) { deliveryReceipt = deliveryReceiptService.Get(deliveryDto.DeliveryReceiptId); if (deliveryReceipt != null) { Mapper.Map(deliveryDto, deliveryReceipt); deliveryReceiptService.Update(deliveryReceipt); } } else { deliveryReceipt = Mapper.Map <DeliveryReceipt>(deliveryDto); deliveryReceiptService.Insert(deliveryReceipt); } if (deliveryReceipt != null && deliveryReceipt.OrderId > 0) { UpdateOrderStatus(deliveryDto); } UnitOfWork.Commit(); inventoryLedgerService.PostToLedger(deliveryReceipt); if (deliveryReceipt != null) { deliveryDto.DeliveryReceiptId = deliveryReceipt.DeliveryReceiptId; } //let's get the customer name from the lookup deliveryDto.CustomerName = CustromeRepository.Get(x => x.CustomerId == deliveryDto.CustomerId).First().CustomerName; return(Json(deliveryDto)); } ViewBag.CustomerList = CustomerListItems(); return(PartialView("DeliveryEditor", deliveryDto)); }