Exemplo n.º 1
0
        public async Task <Unit> Handle(RegisterMerchantCommand request, CancellationToken cancellationToken)
        {
            var merchant     = Merchant.Register(request.MerchantName);
            var merchantUser = MerchantUser.CreateRegisteredOnNewRegister(merchant.Code, merchant.Name, request.FirstName, request.LastName, request.Email,
                                                                          request.Phone, request.Password.AsMd5(), new List <string> {
                "account-admin"
            }, _merchantUserUniquenessChecker);

            await _merchantUserRepository.CreateAsync(merchantUser);

            await _merchantRepository.CreateAsync(merchant);

            return(Unit.Task.Result);
        }