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); }
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); }
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); }