Ejemplo n.º 1
0
        public override DeviceStatusWithCashAmount Cash()
        {
            var(response, status) = Request(CommandReadDailyAvailableAmounts, "0");
            var statusEx    = new DeviceStatusWithCashAmount(status);
            var commaFields = response.Split(';');

            if (commaFields.Length < 3)
            {
                statusEx.AddInfo("Error occured while reading cash amount");
                statusEx.AddError("E409", "Invalid format");
            }
            else
            {
                var amountString = commaFields[1].Trim();
                if (amountString.Contains("."))
                {
                    statusEx.Amount = decimal.Parse(amountString, CultureInfo.InvariantCulture);
                }
                else
                {
                    statusEx.Amount = decimal.Parse(amountString, CultureInfo.InvariantCulture) / 100m;
                }
            }
            return(statusEx);
        }
Ejemplo n.º 2
0
        public override DeviceStatusWithCashAmount Cash(Credentials credentials)
        {
            var(response, status) = Request(CommandMoneyTransfer, "0");
            var statusEx    = new DeviceStatusWithCashAmount(status);
            var commaFields = response.Split(',');

            if (commaFields.Length != 4)
            {
                statusEx.AddInfo("Error occured while reading cash amount");
                statusEx.AddError("E409", "Invalid format");
            }
            else
            {
                var amountString = commaFields[1];
                if (amountString.Contains("."))
                {
                    statusEx.Amount = decimal.Parse(amountString, CultureInfo.InvariantCulture);
                }
                else
                {
                    statusEx.Amount = decimal.Parse(amountString, CultureInfo.InvariantCulture) / 100m;
                }
            }
            return(statusEx);
        }
Ejemplo n.º 3
0
        public override DeviceStatusWithCashAmount Cash()
        {
            var(response, status) = Request("F80D");
            var statusEx   = new DeviceStatusWithCashAmount(status);
            var amountCash = response.Split(new int[] { 10 });

            if (amountCash.Length != 1)
            {
                statusEx.AddInfo("Error occured while parsing current cash amount");
                statusEx.AddError("E409", "Cannot parse current cash amount");
                return(statusEx);
            }

            try
            {
                statusEx.Amount = decimal.Parse(amountCash[0], CultureInfo.InvariantCulture) / 100m;
            }
            catch
            {
                statusEx.AddInfo("Error occured while parsing current cash amount");
                statusEx.AddError("E409", "Cannot parse current cash amount");
            }
            return(statusEx);
        }