//method called by USATech if sale successful //creates a record in MSKData.transact public USASettleResponse Settle( int transactionID, DateTime transactionDateTime, string terminalName, string cardNumber, string currency, int amount, string approvalCode ) { USASettleResponse response = new USASettleResponse(); string payType = SQL.findPayType(cardNumber, Parse.readSchool(terminalName))[0]; if (payType == "") { response.ResponseMessage = "Invalid Pay Type."; return(response); } double dollarAmount = amount / 100.0; try { SQL.createVendingTransaction(cardNumber, terminalName, transactionDateTime, "Vending Item", dollarAmount, payType, transactionID.ToString()); response.StatusCode = 0; } catch { response.StatusCode = 1; } response.TransactionID = transactionID; response.ResponseMessage = "Settled: $" + dollarAmount; return(response); }
//method called by USATech to refund a transaction //we currently do not allow this feature. public USASettleResponse Refund( int transactionID, DateTime transactionDateTime, string terminalName, string cardNumber, string currency, int amount ) { USASettleResponse response = new USASettleResponse(); response.ResponseMessage = "Please see cafeteria manager for refunds."; response.StatusCode = 1; response.TransactionID = transactionID; return(response); }