コード例 #1
0
        public async Task <IActionResult> ChangePassword([FromBody] ChangePasswordViewModel changePasswordViewModel)
        {
            var simpleMessageresponse = new SimpleMessageResponse();

            if (!ModelState.IsValid)
            {
                simpleMessageresponse.Message = "لطفا ورودی های خود را کنترل فرمایید";
                return(BadRequest(simpleMessageresponse));
            }
            var passwordValidationError = _passwordValidator.ValidatePassword(changePasswordViewModel.NewPassword);

            if (passwordValidationError.HasError)
            {
                return(BadRequest(passwordValidationError.Error));
            }
            var username = GetMyUsername();
            var user     = await _userService.FindUserAsync(username, changePasswordViewModel.CurrentPassword);

            if (user == null)
            {
                simpleMessageresponse.Message = "پسوورد قبلی را اشتباه وارد نموده اید";
                return(BadRequest(simpleMessageresponse));
            }
            _userService.ChangeMyPassword(user, changePasswordViewModel.NewPassword);
            await _uow.SaveChangesAsync();

            simpleMessageresponse.Message = "پسوورد با موفقیت تغییر یافت";
            return(Ok(simpleMessageresponse));
        }
コード例 #2
0
        public async Task <IActionResult> UpdateDeviceIdAnanymous([FromBody]  LoginInfo loginUser)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("لطفا داده های ورودی خود را کنترل فرمایید"));
            }
            var user = await _usersService.FindUserAsync(loginUser.Username, loginUser.Password).ConfigureAwait(false);

            if (user == null)
            {
                return(Unauthorized());
            }
            var policy = await _policyService.FindActiveAsync();

            var simpleMessage = new SimpleMessageResponse();

            if (!policy.CanUpdateDeviceId)
            {
                simpleMessage.Message = "امکان به روز رسانی سریال دستگاه وجود ندارد";
                return(BadRequest(simpleMessage));
            }
            await _usersService.UpdateDeviceSerialAsync(user.Id, loginUser.DeviceId)
            .ConfigureAwait(false);

            await _uow.SaveChangesAsync().ConfigureAwait(false);

            simpleMessage.Message = "تغییر یا ثبت سریال دستگاه با موفقیت انجام شد";
            return(Ok(simpleMessage));
        }
コード例 #3
0
        public async Task <SimpleMessageResponse> CreateSimpleMessageResponse(SimpleMessageParam request)
        {
            _logger.LogInformation($"Сообщение получено из очереди в { DateTimeOffset.Now }");
            var response = new SimpleMessageResponse
            {
                ResponseText = "Responding to " + request.Text,
                Timespam     = DateTimeOffset.Now - request.CreateTimestamp
            };

            return(await Task.FromResult(response));
        }
コード例 #4
0
 public Task <TResponse> Send <TResponse>(IRequest <TResponse> request, CancellationToken cancellationToken = default)
 {
     if (request is SimpleMessageParam simpleMessageParam)
     {
         var res = new SimpleMessageResponse {
             ResponseText = simpleMessageParam.Text, Timespam = DateTime.Now - simpleMessageParam.CreateTimestamp
         };
         if (res is TResponse response)
         {
             return(Task.FromResult(response));
         }
     }
     return(Task.FromResult <TResponse>(default));
コード例 #5
0
        public async Task <IActionResult> UpdateDeviceId(string deviceId)
        {
            var policy = await _policyService.FindFirstAsync();

            var simpleMessage = new SimpleMessageResponse();

            if (!policy.CanUpdateDeviceId)
            {
                simpleMessage.Message = "امکان به روز رسانی سریال دستگاه وجود ندارد";
                return(BadRequest(simpleMessage));
            }
            var userId = GetMyUserId();
            await _usersService.UpdateDeviceSerialAsync(userId, deviceId)
            .ConfigureAwait(false);

            await _uow.SaveChangesAsync().ConfigureAwait(false);

            simpleMessage.Message = "تغییر یا ثبت سریال دستگاه با موفقیت انجام شد";
            return(Ok(simpleMessage));
        }
コード例 #6
0
        public async Task ReturnsNotFoundGivenNoRemainingItems()
        {
            //Arrange
            var request      = new SimpleMessageParam("test");
            var mockResponse = new SimpleMessageResponse
            {
                Timespam     = new TimeSpan(1000),
                ResponseText = "test"
            };

            _rpc.RequestAsync <SimpleMessageParam, SimpleMessageResponse>(Arg.Any <SimpleMessageParam>(), Arg.Any <CancellationToken>()).Returns(mockResponse);
            var service = new RequestService(_rpc, _logger);

            //Act
            var result = await service.SimpleMessageRequest(request, CancellationToken.None);

            //Assert
            Assert.Equal("test", result.ResponseText);
            Assert.Equal(new TimeSpan(1000), result.Timespam);
        }
コード例 #7
0
 protected override void OnMessageReceived(object sender, SimpleMessageResponse <Messages.EmailDeliveryRequest> message)
 {
     base.OnMessageReceived(sender, message);
     _response = (Messages.EmailDeliveryResponse)message;
 }