示例#1
0
        public int Crt(decimal _valor, string _documentoVinculado = "", string _operador = "", int _funcao = 0, bool _confirmarCnf = true)
        {
            string parametrosAdicionais = ""; // "[10]"; //Cheques
            int    sts = FazerRequisicao(_funcao, "CRT", _valor, _documentoVinculado, parametrosAdicionais, _operador);

            if (sts == 10000)
            {
                #region Retornos TEF

                mTefTransacao = new TefTransacao
                {
                    DocumentoVinculado = _documentoVinculado,
                    ValorTransacao     = _valor
                };
                gCupomVenda.Transacoes.Add(mTefTransacao);

                TefRetorno obj0 = new TefRetorno(0, 0, "CRT");
                TefRetornoAdicionar(obj0, mTefTransacao);

                TefRetorno obj2 = new TefRetorno(2, 0, _documentoVinculado);
                TefRetornoAdicionar(obj2, mTefTransacao);

                TefRetorno obj2_1 = new TefRetorno(2, 1, mTefTransacao.IdentificadorTransacao.ToString());
                TefRetornoAdicionar(obj2_1, mTefTransacao);

                TefRetorno obj3 = new TefRetorno(3, 0, _valor.ToString("N2"));
                TefRetornoAdicionar(obj3, mTefTransacao);

                TefRetorno obj4 = new TefRetorno(4, 0, "0");
                TefRetornoAdicionar(obj4, mTefTransacao);

                TefRetorno obj718 = new TefRetorno(718, 0, "IP" + mTefConfig.Tef_Terminal);
                TefRetornoAdicionar(obj718, mTefTransacao);

                TefRetorno obj719 = new TefRetorno(719, 0, mTefConfig.Tef_Empresa);
                TefRetornoAdicionar(obj719, mTefTransacao);

                #endregion

                sts = ContinuarRequisicao();
            }
            if (sts == 0)
            {
                #region Retornos TEF

                TefRetorno obj9 = new TefRetorno(9, 0, "0");
                TefRetornoAdicionar(obj9, mTefTransacao);

                #endregion

                if (_confirmarCnf)
                {
                    Cnf(_documentoVinculado: _documentoVinculado);
                }
            }
            return(sts);
        }
示例#2
0
        void TefRetornoAdicionar(TefRetorno _obj, TefTransacao _tefTransacao, bool _substituirValor = true)
        {
            TefRetorno obj = _tefTransacao.Retornos.Find(p => p.Codigo == _obj.Codigo && p.Indice == _obj.Indice);

            if (obj != null)
            {
                if (_substituirValor)
                {
                    obj.Codigo = _obj.Codigo;
                    obj.Indice = _obj.Indice;
                    obj.Valor  = _obj.Valor;
                }
            }
            else
            {
                _tefTransacao.Retornos.Add(_obj);
            }
        }
示例#3
0
        public int Cnc(string _documentoVinculado, string _operador = "", int _funcao = 200)
        {
            string parametrosAdicionais = ""; // "[10]"; //Cheques
            int    sts = FazerRequisicao(_funcao, "CNC", 0M, _documentoVinculado, parametrosAdicionais, _operador);

            if (sts == 10000)
            {
                #region Retornos TEF

                mTefTransacao = new TefTransacao
                {
                    DocumentoVinculado = _documentoVinculado,
                    ValorTransacao     = 0M
                };
                gCupomVenda.Transacoes.Add(mTefTransacao);

                TefRetorno obj0 = new TefRetorno(0, 0, "CNC");
                TefRetornoAdicionar(obj0, mTefTransacao);

                TefRetorno obj2 = new TefRetorno(2, 0, _documentoVinculado);
                TefRetornoAdicionar(obj2, mTefTransacao);

                TefRetorno obj2_1 = new TefRetorno(2, 1, mTefTransacao.IdentificadorTransacao.ToString());
                TefRetornoAdicionar(obj2_1, mTefTransacao);

                TefRetorno obj4 = new TefRetorno(4, 0, "0");
                TefRetornoAdicionar(obj4, mTefTransacao);

                TefRetorno obj718 = new TefRetorno(718, 0, "IP" + mTefConfig.Tef_Terminal);
                TefRetornoAdicionar(obj718, mTefTransacao);

                TefRetorno obj719 = new TefRetorno(719, 0, mTefConfig.Tef_Empresa);
                TefRetornoAdicionar(obj719, mTefTransacao);

                #endregion

                sts = ContinuarRequisicao();
            }
            if (sts == 0)
            {
                Cnf(_documentoVinculado: _documentoVinculado);
            }
            return(sts);
        }
示例#4
0
        public int RecargaCelular(string _documentoVinculado = "")
        {
            int sts = FazerRequisicao(300, "CEL", _documento: _documentoVinculado);

            if (sts == 10000)
            {
                #region Retornos TEF

                mTefTransacao = new TefTransacao
                {
                    DocumentoVinculado = _documentoVinculado,
                    ValorTransacao     = 0M
                };
                gCupomVenda.Transacoes.Add(mTefTransacao);

                TefRetorno obj0 = new TefRetorno(0, 0, "CEL");
                TefRetornoAdicionar(obj0, mTefTransacao);

                TefRetorno obj2 = new TefRetorno(2, 0, _documentoVinculado);
                TefRetornoAdicionar(obj2, mTefTransacao);

                TefRetorno obj2_1 = new TefRetorno(2, 1, mTefTransacao.IdentificadorTransacao.ToString());
                TefRetornoAdicionar(obj2_1, mTefTransacao);

                TefRetorno obj4 = new TefRetorno(4, 0, "0");
                TefRetornoAdicionar(obj4, mTefTransacao);

                TefRetorno obj718 = new TefRetorno(718, 0, "IP" + mTefConfig.Tef_Terminal);
                TefRetornoAdicionar(obj718, mTefTransacao);

                TefRetorno obj719 = new TefRetorno(719, 0, mTefConfig.Tef_Empresa);
                TefRetornoAdicionar(obj719, mTefTransacao);

                #endregion

                sts = ContinuarRequisicao();
            }
            if (sts == 0)
            {
                Cnf(_documentoVinculado: _documentoVinculado);
            }
            return(sts);
        }