public void OnManualRefundResponse(ManualRefundResponse response)
{
if (response.Success)
{
uiThread.Send(delegate (object state) {
ListViewItem lvi = new ListViewItem();
POSManualRefund manualRefund = new POSManualRefund(response.Credit.id, response.Credit.orderRef.id, response.Credit.amount);
lvi.Tag = manualRefund;
lvi.SubItems.Add(new ListViewItem.ListViewSubItem());
lvi.SubItems.Add(new ListViewItem.ListViewSubItem());
lvi.SubItems.Add(new ListViewItem.ListViewSubItem());
lvi.SubItems.Add(new ListViewItem.ListViewSubItem());
lvi.SubItems[0].Text = (response.Credit.amount / 100.0).ToString("C2");
lvi.SubItems[1].Text = new DateTime(response.Credit.createdTime).ToLongDateString();
lvi.SubItems[2].Text = response.Credit.cardTransaction.last4;
string msg = "Refund of " + (response.Credit.amount / 100.0).ToString("C2") + " was applied to card ending with " + response.Credit.cardTransaction.last4;
AlertForm.Show(this, "Refund applied", msg);
RefundAmount.Text = "";
ManualRefundButton.Enabled = false;
//ManualRefundReceiptButton.Enabled = false;
TransactionsListView.Items.Add(lvi);
autoResizeColumns(TransactionsListView);
}, null);
}
else if (response.Result.Equals(ResponseCode.FAIL))
{
uiThread.Send(delegate (object state) {
AlertForm.Show(this, response.Reason, response.Message);
PaymentReset();
}, null);
}
else if (response.Result.Equals(ResponseCode.CANCEL))
{
uiThread.Send(delegate (object state) {
AlertForm.Show(this, response.Reason, response.Message);
PaymentReset();
}, null);
}
}