Ejemplo n.º 1
0
        async private void populatePage(Cart cart)
        {
            CardListResponse res = await _service.RetreiveCardListData(cart.loginGUID);

            Debug.WriteLine($"CardListResponse Received: {res.Message}");
            listOfCards = res.Result;
            foreach (var card in listOfCards)
            {
                pickerCard.Items.Add(card.Number);
            }
            foreach (var card in GetAcceptedCards())
            {
                pickerCardType.Items.Add(card.Type);
            }

            for (int i = 1; i <= 9; i++)
            {
                pickerCardMonth.Items.Add($"0{i.ToString()}");
            }
            for (int i = 10; i <= 12; i++)
            {
                pickerCardMonth.Items.Add(i.ToString());
            }

            for (int i = 2017; i <= 2037; i++)
            {
                pickerCardYear.Items.Add(i.ToString());
            }
        }
Ejemplo n.º 2
0
        internal static async Task Cards(int i)
        {
            Console.Out.WriteLine("Start Cards " + i.ToString() + " " + DateTime.Now.ToShortTimeString());
            try {
                using (HttpClient http = new HttpClient()) {
                    http.DefaultRequestHeaders.Add("Authorization", token);
                    using (HttpResponseMessage response = await http.GetAsync("http://pc-api.preprod.bank.rfi/cards")) {
                        string json = await response.Content.ReadAsStringAsync();

                        if (response.IsSuccessStatusCode)
                        {
                            CardListResponse cards = JsonConvert.DeserializeObject <CardListResponse>(json);
                            CardsResults.Add(item: new TestResult(cards.Status == "Success"));
                        }
                        else
                        {
                            CardsResults.Add(item: new TestResult(false));
                        }
                    }
                }
            } catch (Exception er) {
                Console.Out.WriteLine("Error: Cards / {0}", er.Message);
                CardsResults.Add(item: new TestResult(false));
            }
            Console.Out.WriteLine("Finich Cards " + i.ToString() + DateTime.Now.ToShortTimeString());
            TestFinish = DateTime.Now;
        }
        private void PrepareSuccessfulAnswer()
        {
            m_cardList = CardListManager.GetCardList();

            m_newListResponse = new CardListResponse
            {
                UpToDate = false,
                CardList = m_cardList
            };
        }
Ejemplo n.º 4
0
        public IRemoteObject Handle(AsyncUserToken token, IRemoteObject request)
        {
            CardListResponse cardListResponse = request as CardListResponse;

            if (cardListResponse.UpToDate)
            {
                Console.WriteLine("Imam najnoviju verziju!");
            }
            else
            {
                CardList cardList = cardListResponse.CardList;
                Console.WriteLine("Stigla nova lista karata, verzija: " + cardList.Vesion);
            }

            return(null);
        }
Ejemplo n.º 5
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);
        }