Exemplo n.º 1
0
        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);
        }