コード例 #1
0
        public async ValueTask <GetAccountStatusRs> HandleAsync(GetAccountStatusRq query, CancellationToken cancellationToken = default)
        {
            var session = await _sessionService.GetSessionAsync(query.SessionId);

            if (session is null)
            {
                throw new CoreException(ErrorCode.SessionDoesNotExist, $"Session not created.");
            }

            _sessionHelper.CheckSessionStatus(session);
            _sessionHelper.SessionExpired(session);

            var userAccount = await _customerService.GetCustomerAsync(query.Username);

            return(new GetAccountStatusRs
            {
                Username = userAccount.Username,
                AccountStatus = userAccount.Status.ToString()
            });
        }