/// <summary> /// Add new laundry order /// </summary> /// <param name="order"></param> /// <returns></returns> public async Task <int> AddLaundryOrderAsync(LaundryOrder order) { if (order.NoOfCloths == 0 || order.PickUpDate == null || order.PickUpTimeSlot == null || order.PickUpAddress == null || order.OrderStatus == null) { return((int)StatusCode.ExpectationFailed); } order.CreatedAt = DateTime.UtcNow; await _laundryRepository.AddAsync(order); await _laundryRepository.Uow.SaveChangesAsync(); var agentAssignmentCountList = (await _ironingRepository.GetAgentOrdersAssignmentCountAsync()).ToList(); var addedOrder = await GetLaundryOrderAsync(order.Id); if (agentAssignmentCountList.Count() > 0 && addedOrder != null) { var orderMapping = new OrderAgentMapping(); orderMapping.OrderMappingId = Guid.NewGuid(); orderMapping.AgentId = agentAssignmentCountList[0].AgentId; orderMapping.OrderId = addedOrder.OrderId; await _orderAgentMappingRepository.AddAsync(orderMapping); await _orderAgentMappingRepository.Uow.SaveChangesAsync(); } return(order.Id); }
public async Task <IActionResult> LaundriesOrderCreate(LaundriesOrderViewModel laundriesorder) { var laundrie = _context.Laundrys.Single(x => x.Id == laundriesorder.laundriesid); var laundries = new LaundryOrder { Laundry = laundrie, Remarks = laundriesorder.Remarks, State = laundriesorder.LaundriesState }; _context.LaundryOrders.Add(laundries); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> AddLaundryOrderAsync( [FromBody, SwaggerParameter("Model containing the details of the new order to create", Required = true)] LaundryOrder order) { return(Ok(await _iLaundryBusiness.AddLaundryOrderAsync(order))); }