Beispiel #1
0
        public DTO performOperation(DTO dto)
        {
            DTO answer = null;

            if (dto is MoneyDTO)
            {
                MoneyDTO moneyDTO = dto as MoneyDTO;

                switch (dto.getOperationType())
                {
                case 2:
                    answer = Deposit(moneyDTO);
                    break;

                case 3:
                    answer = Withdraw(moneyDTO);
                    break;

                case 4:
                    answer = GetBalance(moneyDTO);
                    break;

                default:
                    throw new Exception("Incorrect operation type");
                }
            }
            else
            {
                throw new Exception("Incorrect DTO");
            }
            return(answer);
        }
Beispiel #2
0
        private DTO GetBalance(MoneyDTO moneyDTO)
        {
            double     amount     = account.GetBalance();
            MessageDTO messageDTO = new MessageDTO(moneyDTO.getOperationType(), amount + "$", true);

            return(messageDTO);
        }
Beispiel #3
0
        private DTO Withdraw(MoneyDTO moneyDTO)
        {
            MessageDTO messageDTO = null;
            double     amount     = moneyDTO.getAount();

            try
            {
                account.Deposit(amount);
                messageDTO = new MessageDTO(moneyDTO.getOperationType(), "Succesfully deposited " + amount + "$", true);
            }
            catch (ArgumentException ex)
            {
                messageDTO = new MessageDTO(moneyDTO.getOperationType(), ex.Message, true);
            }
            return(messageDTO);
        }
Beispiel #4
0
        private DTO Deposit(MoneyDTO moneyDTO)
        {
            MessageDTO messageDTO = null;
            double     amount     = moneyDTO.getAount();

            try
            {
                if (account.GetBalance() >= amount)
                {
                    account.Withdraw(amount);
                    messageDTO = new MessageDTO(moneyDTO.getOperationType(), "Succesfully withdrawn " + amount + "$", true);
                }
                else
                {
                    messageDTO = new MessageDTO(moneyDTO.getOperationType(), "Brak wybranej ilosci srodkow na koncie ", true);
                }
            }
            catch (ArgumentException ex)
            {
                messageDTO = new MessageDTO(moneyDTO.getOperationType(), ex.Message, true);
            }
            return(messageDTO);
        }