public async Task <OrderDto> CreateOrder(OrderCreateOrUpdateDto input) { var userId = HttpContext.Current.User.Identity.GetUserId(); var entity = input.MapTo <Eron.Core.Entities.Financial.Order.Order>(); entity.UserId = userId; entity.OrderNumber = GenerateOrderNumber(); entity.OrderStatus = OrderStatusType.NeedInvoice; entity.Id = Guid.NewGuid(); //if (entity.HasDesignOrder) //{ // entity.DesignPrice = entity.Tariff.DesignPrice.HasValue ? // entity.Tariff.DesignPrice.Value : 0; //} UnitOfWork.OrderRepository.Create(entity); await UnitOfWork.SaveAsync(); foreach (var imageId in input.ImageIds) { var eronFile = await _fileHelper.GetFileAsync(imageId); await _fileHelper.TransferToDatabaseAsync(eronFile); eronFile.OrderId = entity.Id; UnitOfWork.FileRepository.Update(eronFile); await UnitOfWork.SaveAsync(); } return(entity.MapTo <OrderDto>()); }
public async Task<IHttpActionResult> Post(OrderCreateOrUpdateDto input) { if (!ModelState.IsValid) return BadRequest(ModelState); var result = await _orderAppService.CreateOrder(input); return Ok(result); }