/// <summary>
        /// проверка, возможна ли следующая транзакция с картой
        /// </summary>
        /// <param name="transactionsSum">итоговая сумма транзакций(суммарная совершонная + желаемая для совершения)</param>
        /// <param name="cardStatus">вид карты</param>
        /// <param name="transactionForm">вид операции со счетом карты</param>
        /// <returns>false=желаемая транзакция невозможна, true=желаемая транзакция возможна</returns>
        public static bool CheckCardLimit(double transactionsSum, CardsStatuses cardStatus, TransactionForm transactionForm)
        {
            bool        rez = false;
            CardsLimits cl  = new CardsLimits();

            switch (cardStatus)
            {
            case CardsStatuses.GoldCard:
                rez = IsInLimit(cl.GoldCardLimit, transactionsSum);
                break;

            case CardsStatuses.BlackCard:
                rez = IsInLimit(cl.BlackCardLimit, transactionsSum);
                break;

            case CardsStatuses.BlueCard:
                rez = IsInLimit(cl.BlueCardLimit, transactionsSum);
                break;
            }

            return(rez);
        }
示例#2
0
        public GiveOutCardPresenter(BoolEventArgs bea, Clients client, IGiveOutCardView giveOutCardView) : base(bea, giveOutCardView)
        {
            _curClient = client;

            _cardsViewsDict = new Dictionary <string, CardsStatuses>();
            _cardsViewsDict.Add("Черная карта", CardsStatuses.BlackCard);
            _cardsViewsDict.Add("Синяя карта", CardsStatuses.BlueCard);
            _cardsViewsDict.Add("Золотая карта", CardsStatuses.GoldCard);

            BaseCardsLimits bcl;

            try
            {
                bcl = _bankomatLocalService.GetCardsLimits();
            }
            catch
            {
                bcl = null;
                SendMessage("Ошибка. Нет соединения с сервером...");
            }
            if (bcl != null)
            {
                CardsLimits cl = bcl as CardsLimits;
                if (cl != null)
                {
                    _cardsLimitsDict = new Dictionary <CardsStatuses, string>();
                    _cardsLimitsDict.Add(CardsStatuses.BlackCard, GetLimitInString(cl.BlackCardLimit));
                    _cardsLimitsDict.Add(CardsStatuses.BlueCard, GetLimitInString(cl.BlueCardLimit));
                    _cardsLimitsDict.Add(CardsStatuses.GoldCard, GetLimitInString(cl.GoldCardLimit));
                }
                if (giveOutCardView != null)
                {
                    (_basePersonalAreaView as IGiveOutCardView).GetCardClick += _giveOutCardView_GetCardClick;
                    (_basePersonalAreaView as IGiveOutCardView).SetInitialData(_cardsViewsDict, _cardsLimitsDict);
                }
                SetViewLabels("Страница выдачи новой карты", "Выберите вид карты для выдачи");
            }
        }