コード例 #1
0
        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));
        }
コード例 #2
0
        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());
        }