public IRemoteObject Handle(AsyncUserToken token, IRemoteObject request)
        {
            CardListRequest cardListRequest = request as CardListRequest;

            if (cardListRequest.Version == null || cardListRequest.Version != m_cardList.Vesion)
            {
                return(m_newListResponse);
            }
            return(m_upToDateResponse);
        }
    private void CardListLoading(GameClient gameClient)
    {
        infoText.text = "Učitavanje liste karata";
        CardList currentCardList = cardListLoader.LoadCardList();

        gameClient.ChangeRequestMapper(new LoadingRequestMapper(
                                           onUpToDate: () => RunInMainThread(() => FinishAddingNewCardList(currentCardList)),
                                           onNotUpToDate: newCardList => RunInMainThread(() => FinishAddingNewCardList(newCardList, true))
                                           ));

        CardListRequest request = new CardListRequest
        {
            Version = (currentCardList == null ?
                       null :
                       currentCardList.Vesion)
        };

        gameClient.Send(request);
    }
Exemple #3
0
 public async Task ListCardsTest()
 {
     var requestTester   = GetRequestTester();
     var customerId      = "1";
     var cardListRequest = new CardListRequest()
     {
         CustomerId = customerId, Limit = 5
     };
     await requestTester.TestMethod <SecurionpayList>(
         async (api) =>
     {
         await api.ListCards(cardListRequest);
     },
         new RequestDescriptor()
     {
         Method    = HttpMethod.Get,
         Action    = string.Format("customers/{0}/cards?limit=5", customerId),
         Parameter = null
     }
         );
 }
Exemple #4
0
 private ExecutionResult GetCardsList(CardListRequest request, ExecutionContext context)
 {
     return(new ExecutionResult <IList <CardListItem> > {
         TypedResult = AdbRepository.CardData.Cards(request.Paging)
     });
 }
Exemple #5
0
 /// <summary>
 /// The list.
 /// </summary>
 /// <param name="owner">
 /// The owner.
 /// </param>
 /// <param name="request">
 /// The request.
 /// </param>
 /// <returns>
 /// The <see cref="Task"/>.
 /// </returns>
 public async Task <CardListResponse> List(Guid owner, CardListRequest request)
 {
     return(await this.plasticRepository.List(owner, request));
 }
Exemple #6
0
        /// <summary>
        /// The list.
        /// </summary>
        /// <param name="owner">
        /// The owner.
        /// </param>
        /// <param name="input">
        /// The input.
        /// </param>
        /// <returns>
        /// The <see cref="Task"/>.
        /// </returns>
        public async Task <CardListResponse> List(Guid owner, CardListRequest input)
        {
            IQueryable <CardEntity> listQuery = this.context.Cards.Where(o => o.Owner == owner &&
                                                                         ((!input.Filter.BringArchived && !o.IsArchived) || input.Filter.BringArchived));

            if (!string.IsNullOrEmpty(input.Filter.Description))
            {
                listQuery = input.Filter.DescriptionExact ?
                            listQuery.Where(x => x.Description == input.Filter.Description) :
                            listQuery.Where(x => x.Description.Contains(input.Filter.Description));
            }

            if (input.Filter.FilterByAccount)
            {
                listQuery = listQuery.Where(x => x.Account == input.Filter.Account);
            }

            if (input.Filter.FilterByBank)
            {
                listQuery = listQuery.Where(x => x.Bank == input.Filter.Bank);
            }

            if (input.Filter.FilterByCurrency && !string.IsNullOrEmpty(input.Filter.Currency))
            {
                listQuery = listQuery.Where(x => x.Currency == input.Filter.Currency);
            }

            if (input.Filter.FilterByHolder && !input.Filter.BringOnlyMine)
            {
                listQuery = listQuery.Where(x => x.Holder == input.Filter.Holder);
            }

            if (input.Filter.BringOnlyMine)
            {
                listQuery = listQuery.Where(x => x.Holder == owner);
            }

            if (!string.IsNullOrEmpty(input.Filter.Number))
            {
                listQuery = listQuery.Where(x => x.CardNumber.Contains(input.Filter.Number));
            }

            listQuery = listQuery.Where(x =>
                                        (input.Filter.Types.Contains(CardType.CreditCard) && x is CreditCardEntity) ||
                                        (input.Filter.Types.Contains(CardType.DebitCard) && x is DebitCardEntity) ||
                                        (input.Filter.Types.Contains(CardType.PrePaidCard) && x is PrePaidCardEntity));

            var queryResult = await listQuery.CountAsync();

            var orderType = input.Order.IsDesc ? SortOrder.Descending : SortOrder.Ascending;

            var list = await listQuery
                       .OrderByFieldCard(orderType, input.Order.Field)
                       .Skip((input.Page - 1) * input.ItemsPerPage)
                       .Take(input.ItemsPerPage)
                       .Select(order => new
            {
                order.Code,
                order.Description,
                order.Currency,
                order.Holder,
                order.Bank,
                order.ChangeAt,
                order.CreatedAt,
                order.IsArchived,
                order.CardProviderString,
                order.CardNumber,
                order.Expire,
                order.Account,
                Type = order is CreditCardEntity ? CardType.CreditCard : order is DebitCardEntity ? CardType.DebitCard : CardType.PrePaidCard
            }).ToListAsync();

            var listOfHolderGuids = list.GroupBy(o => o.Holder).Select(g => g.Key).ToList();
            var listOfHolders     = await this.humanRepository.GetList(owner, listOfHolderGuids);

            var listOfAccountsGuids = list.GroupBy(o => o.Account).Select(g => g.Key).ToList();
            var listOfAccounts      = await this.accountRepository.List(owner, listOfAccountsGuids);

            var result = new CardListResponse
            {
                NumberOfItems = queryResult,
                Data          = list.Select(order => new Card
                {
                    Code         = order.Code,
                    Description  = order.Description,
                    Currency     = this.cacheProvider.Currencies.FirstOrDefault(o => o.Code == order.Currency),
                    Holder       = listOfHolders.FirstOrDefault(i => i.Code == order.Holder),
                    Bank         = this.cacheProvider.Banks.FirstOrDefault(o => o.Code == order.Bank),
                    ChangeAt     = order.ChangeAt,
                    CreatedAt    = order.CreatedAt,
                    IsArchived   = order.IsArchived,
                    Type         = order.Type,
                    CardProvider = (CardProvider)Enum.Parse(typeof(CardProvider), order.CardProviderString),
                    CardNumber   = order.CardNumber,
                    Expire       = order.Expire,
                    Account      = listOfAccounts.FirstOrDefault(i => i.Code == order.Account)
                }).ToList()
            };

            return(result);
        }
        public async Task <ListResponse <Card> > ListCards(CardListRequest request)
        {
            var url = string.Format(CARDS_PATH, request.CustomerId);

            return(await SendListRequest <Card>(HttpMethod.Get, url, request));
        }
Exemple #8
0
 /// <summary>
 /// 卡列表
 /// </summary>
 /// <param name="request"></param>
 /// <returns></returns>
 public Task <CardListResponse> CardListAsync(CardListRequest request)
 {
     return(_hikVisionApiManager.PostAndGetAsync <CardListRequest, CardListResponse>("/api/resource/v1/card/cardList", request, Const.V1_2));
 }
 public async Task <HttpResponseMessage> List(Guid owner, CardListRequest input)
 {
     return(await this.ProcessActionAsync(owner, input, this.plasticService.List));
 }