public void Edit(PaymentMethodViewModel viewModel)
        {
            var paymentMethod = _paymentMethodRepository.Get(viewModel.Id);

            paymentMethod.Name = viewModel.Name;
            paymentMethod.Cost = viewModel.Cost;

            _paymentMethodRepository.SaveChanges();
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> ExecuteAsync(int paymentMethodId, CancellationToken cancellationToken)
        {
            var paymentMethod = await _paymentMethodRepository.Get(paymentMethodId, cancellationToken);

            if (paymentMethod == null)
            {
                return(new NotFoundResult());
            }

            var httpContext = _actionContextAccessor.ActionContext.HttpContext;

            if (httpContext.Request.Headers.TryGetValue(HeaderNames.IfModifiedSince, out var stringValues))
            {
                if (DateTimeOffset.TryParse(stringValues, out var modifiedSince) &&
                    (modifiedSince >= paymentMethod.ModifiedAt))
                {
                    return(new StatusCodeResult(StatusCodes.Status304NotModified));
                }
            }

            var paymentMethodViewModel = _paymentMethodMapper.Map(paymentMethod);

            httpContext.Response.Headers.Add(HeaderNames.LastModified, paymentMethod.ModifiedAt.ToString());
            return(new OkObjectResult(paymentMethodViewModel));
        }
Ejemplo n.º 3
0
        public PaymentMethod GetBySystemName(string systemName)
        {
            var sbKey = new StringBuilder();

            sbKey.AppendFormat(CachePaymentMethodKey, "GetBySystemName");

            if (systemName.HasValue())
            {
                sbKey.AppendFormat("-{0}", systemName);
            }

            var key           = sbKey.ToString();
            var paymentMethod = _cacheManager.Get <PaymentMethod>(key);

            if (paymentMethod != null)
            {
                return(paymentMethod);
            }

            paymentMethod = _paymentMethodRepository.Get(x => x.PaymentMethodSystemName == systemName);

            _cacheManager.Put(key, paymentMethod);

            return(paymentMethod);
        }
Ejemplo n.º 4
0
        public async Task <IActionResult> ExecuteAsync(int paymentMethodId, SavePaymentMethod savePaymentMethod, CancellationToken cancellationToken)
        {
            var paymentMethod = await _paymentMethodRepository.Get(paymentMethodId, cancellationToken);

            if (paymentMethod == null)
            {
                return(new NotFoundResult());
            }
            _paymentMethodToSavePaymentMethodMapper.Map(savePaymentMethod, paymentMethod);

            //var user = _httpContextAccessor.HttpContext.User;
            //if (user == null)
            //    return new NotFoundResult();

            //var claims = user.Claims.ToList();
            //if (claims.Count < 1)
            //    return new NotFoundResult();
            //// Lấy Id của người dùng
            //var userId = claims.FirstOrDefault(claimRecord => claimRecord.Type == "sub")?.Value;

            //paymentMethod.ModifiedBy = userId;

            paymentMethod = await _paymentMethodRepository.Update(paymentMethod, cancellationToken);

            var paymentMethodViewModel = _paymentMethodToPaymentMethodMapper.Map(paymentMethod);

            return(new OkObjectResult(paymentMethodViewModel));
        }
Ejemplo n.º 5
0
        public async Task <IActionResult> ExecuteAsync(int paymentMethodId, CancellationToken cancellationToken)
        {
            var paymentMethod = await _paymentMethodRepository.Get(paymentMethodId, cancellationToken);

            if (paymentMethod == null)
            {
                return(new NotFoundResult());
            }

            await _paymentMethodRepository.Delete(paymentMethod, cancellationToken);

            return(new NoContentResult());
        }
Ejemplo n.º 6
0
        public async Task <BaseViewModel <PagingResult <PaymentMethodViewModel> > > GetAllPaymentMethods(BasePagingRequestViewModel request)
        {
            var    pageSize      = request.PageSize;
            var    pageIndex     = request.PageIndex;
            var    result        = new BaseViewModel <PagingResult <PaymentMethodViewModel> >();
            var    currentUserId = _repository.GetCurrentUserId();
            var    defaultFilter = $"_.UserId.Equals(new System.Guid(\"{currentUserId}\")) && {Constants.DEAFAULT_DELETE_STATUS_EXPRESSION}";
            string filter        = SearchHelper <PaymentMethod> .GenerateStringExpression(request.Filter, defaultFilter);

            Expression <Func <PaymentMethod, bool> > FilterExpression = await LinqHelper <PaymentMethod> .StringToExpression(filter);

            QueryArgs <PaymentMethod> queryArgs = new QueryArgs <PaymentMethod>
            {
                Offset = pageSize * (pageIndex - 1),
                Limit  = pageSize,
                Filter = FilterExpression,
                Sort   = request.SortBy,
            };


            var data = _repository.Get(queryArgs.Filter, queryArgs.Sort, queryArgs.Offset, queryArgs.Limit).ToList();

            //var sql = data.ToSql();

            if (data == null || data.Count == 0)
            {
                result.Description = MessageHandler.CustomMessage(MessageConstants.NO_RECORD);
                result.Code        = MessageConstants.NO_RECORD;
            }
            else
            {
                var pageSizeReturn = pageSize;
                if (data.Count < pageSize)
                {
                    pageSizeReturn = data.Count;
                }
                result.Data = new PagingResult <PaymentMethodViewModel>
                {
                    Results      = _mapper.Map <IEnumerable <PaymentMethodViewModel> >(data),
                    PageIndex    = pageIndex,
                    PageSize     = pageSizeReturn,
                    TotalRecords = _repository.Count(queryArgs.Filter)
                };
            }

            return(result);
        }