public async Task <IHttpActionResult> Post(CreateDiscountPercentCommand command) { command.UserInfoCommand = new UserInfoCommandItem(UserId, FirstName, LastName); var response = await Bus.Send <CreateDiscountPercentCommand, CreateDiscoutPercentCommandResponse>(command); return(Ok(response)); }
public async Task <CreateDiscoutPercentCommandResponse> Handle(CreateDiscountPercentCommand command) { await _percentDiscountDomainService.CheckPercentDiscountDate(command.FromDate.ConvertToDate(), command.ToDate.ConvertToDate()); var userInfo = new UserInfo(command.UserInfoCommand.UserId, command.UserInfoCommand.FirstName, command.UserInfoCommand.LastName); var discount = new PercentDiscount(Guid.NewGuid(), command.Description, userInfo, command.FromDate.ConvertToDate(), command.ToDate.ConvertToDate(), command.Title, command.Percent, command.MaxOrderCount, command.MaxProductCount, command.FromTime, command.ToTime) { ProductDiscounts = new List <ProductDiscount>(), Sells = new List <DiscountSell>() }; _percentRepository.Add(discount); return(new CreateDiscoutPercentCommandResponse()); }