private void btnBuy_Click(object sender, EventArgs e) { m_iTimeOutReset = 0; if (txtMoney.Text == "0") { SGMHelper.ShowToolTip(txtMoney, SGMText.GAS_BUYING_INPUT_MONEY_INVALID); return; } SaleGasDTO dto = new SaleGasDTO(); dto.CardID = _cardDTO.CardID; dto.GasStationID = _gasStationDTO.GasStationID; dto.SaleGasType = rbGas92.Checked ? SaleGasDTO.GAS_TYPE_92 : rbGas95.Checked ? SaleGasDTO.GAS_TYPE_95 : SaleGasDTO.GAS_TYPE_DO; dto.SaleGasPriceOnCard = Int32.Parse(txtPrice.Text, System.Globalization.NumberStyles.Currency); dto.SaleGasCardMoneyBefore = Int32.Parse(txtMoneyBefore.Text, System.Globalization.NumberStyles.Currency); dto.SaleGasCardMoneyAfter = Int32.Parse(txtMoneyAfter.Text, System.Globalization.NumberStyles.Currency); dto.SaleGasCardMoneySaving = Int32.Parse(txtMoneySaving.Text, System.Globalization.NumberStyles.Currency); dto.SaleGasCurrentPrice = m_iCurrentPrice; dto.NumberBuyLit = float.Parse(txtGasBuying.Text, System.Globalization.NumberStyles.Currency); dto.GasStoreID = _gasStationDTO.GasStoreID; DataTransfer df = new DataTransfer(); df.ResponseDataSaleGasDTO = dto; Task <String> task = SGM_WaitingIdicator.WaitingForm.waitingFrm.progressReporter.RegisterTask( () => { return(service.SGMSaleGas_GasBuying(JSonHelper.ConvertObjectToJSon(df))); }); SGM_WaitingIdicator.WaitingForm.waitingFrm.progressReporter.RegisterContinuation(task, () => { String stResponse = task.Result as String; DataTransfer dataResponse = JSonHelper.ConvertJSonToObject(stResponse); if (dataResponse.ResponseCode == DataTransfer.RESPONSE_CODE_SUCCESS) { m_bBuy = true; //frmMsg.ShowMsg(SGMText.SGM_INFO, SGMText.GAS_BUYING_SUCCESS, SGMMessageType.SGM_MESSAGE_TYPE_INFO); // _cardDTO.CardRemainingMoney = _cardDTO.CardRemainingMoney - _moneyBuying; // txtCardMoney.Text = _cardDTO.CardRemainingMoney.ToString(MONEY_FORMAT); // calculatePay(); EnableTransaction(false, false); grBill.Text = SGMText.SALEGAS_MAIN_BILL + txtCardName.Text; txtCardID.Text = ""; txtCardMoney.Text = ""; txtMoney.Text = "0"; txtCardName.Text = ""; //rbGas92.Enabled = false; //rbGas95.Enabled = false; //rbGasDO.Enabled = false; } else { frmMsg.ShowMsg(SGMText.SGM_ERROR, dataResponse.ResponseErrorMsg + "\n" + dataResponse.ResponseErrorMsgDetail, SGMMessageType.SGM_MESSAGE_TYPE_ERROR); } }, SynchronizationContext.Current); }