Esempio n. 1
0
        public override void Gravar()
        {
            #region PDV
            //Gravar o PDV de acordo com o nome do seu computador, então informe o nome do seu computador no campo Nome do teste
            PDVTest pdvTest = new PDVTest();
            pdvTest.Gravar();

            PDV pdv = new PDV(pdvTest.GUID);
            #endregion

            Impressora t = new Impressora();
            t.Descricao = new Random().NextString();
            t.Serie = "012345678901234567890123456789";
            t.Identificacao = "Daruma FS600";
            t.Tipo = Enuns.ECF.TipoImpressora.Fiscal;
            t.Marca = "DARUMA AUTOMAÇÃO";
            t.ModeloACBR = ACBrFramework.ECF.ModeloECF.Daruma;
            t.ModeloDocumentoFiscal = "2D";
            t.Versao = "Versao";
            t.MFD = true;
            t.MFAdicional = " ";
            t.NumeroUsuario = 1;
            t.PDV = pdv;
            t.Porta = "COM1";

            GUID = t.Save();
        }
Esempio n. 2
0
        public override void Gravar()
        {
            PDV t = new PDV();
            t.Nome = new Random().NextString();
            t.Observacao = "Observação do PDV de teste";
            t.NumeroCaixa = "1";

            GUID = t.Save();
        }
Esempio n. 3
0
        public void HasHashModificationTest()
        {
            Gravar();
            IPDV p1 = new PDV(GUID);
            IPDV p2 = new PDV(GUID);

            //alterar a forma 2, e comparar se houve modificação do HASH
            p2.Nome = "Teste de Modificação do HASH";
            Assert.AreNotEqual(p1.RecordHash, p2.RecordHash);
            Assert.IsTrue(p2.HasHashModification);

            //alterar a descrição, tem que ficar igual
            p2.Nome = p1.Nome;
            Assert.AreEqual(p1.RecordHash, p2.RecordHash);
        }
Esempio n. 4
0
        /// <summary>
        /// Cria um novo PDV com base nas informações coletadas da máquina.
        /// </summary>
        /// <param name="ask">Se true, confirma com o usuário antes de criar o PDV</param>
        /// <param name="raiseError">Se true, em caso de erro, será retornado ao objeto chamador</param>
        /// <returns>Retorna um novo PDV com base nas informações coletadas da máquina</returns>
        /// <example>
        /// <code>IPDV pdv = Create(true);</code>
        /// </example>
        public static IPDV Create(bool ask = true, bool raiseError = true)
        {
            IPDV result = null;

            //verificar se existe um PDV com este nome
            IList<IPDV> pdvs = new PDV().Find<IPDV>(new Where {
                {"Nome = @p1", new Parameter{
                    ParameterName = "@p1",
                    Value = Settings.MachineName
                }}
            });

            if(pdvs.Count > 0)
                result = pdvs[0];
            else
            {
                if(ask && MessageBox.AskYesNo("Não existe PDV cadastrado para este terminal. Deseja cadastrar?") == DialogResult.No)
                {
                    if(raiseError)
                        throw new TerminalSemPDV();
                    else
                        return null;
                }
            }

            if(result.IsNullOrEmpty())
            {
                result = new PDV();
                result.Nome = Settings.MachineName;
                result.Observacao = Settings.MachineName;
                result.Ativo = true;
                result.Save();
            }

            return result;
        }
Esempio n. 5
0
 /// <summary>
 /// Instancia este objeto e apenas inicia as variáveis, não carrega nenhum dado da base de dados
 /// </summary>
 public Impressora()
     : base()
 {
     PDV = new PDV();
 }
Esempio n. 6
0
        /// <summary>
        /// Método utilizado para preencher esta instância com os dados do dataReader
        /// </summary>
        /// <param name="dataReader">DataReader com os dados que deverão ser passados para esta instância</param>
        public override void Populate(DataReader dataReader)
        {
            #region base
            base.Populate(dataReader);
            #endregion

            #region desta classe
            Descricao = dataReader.GetValue<string>("p_Descricao");
            Serie = dataReader.GetValue<string>("p_Serie");
            Identificacao = dataReader.GetValue<string>("p_Identificacao");
            Tipo = dataReader.GetValue<TipoImpressora>("p_Tipo");
            Marca = dataReader.GetValue<string>("p_Marca");
            ModeloACBR = dataReader.GetValue<ModeloECF>("p_ModeloAcbr");
            ModeloDocumentoFiscal = dataReader.GetValue<string>("p_ModeloDocumentoFiscal");
            Versao = dataReader.GetValue<string>("p_Versao");
            MFD = dataReader.GetValue<bool>("p_MFD");
            MFAdicional = dataReader.GetValue<string>("p_MFAdicional");
            NumeroUsuario = dataReader.GetValue<int>("p_NumUsuario");
            PDV = new PDV(dataReader.GetValue<string>("p_GUIDPDV"));
            Porta = dataReader.GetValue<string>("p_Porta");
            #endregion
        }
Esempio n. 7
0
 public override void Popular()
 {
     PDV t = new PDV(GUID);
     DumpElement(t);
 }
Esempio n. 8
0
 public override void Editar()
 {
     PDV t = new PDV(GUID);
     t.Save();
 }
Esempio n. 9
0
 /// <summary>
 /// Retorna true se esta máquina for um PDV
 /// </summary>
 /// <returns></returns>
 public bool IsPDV()
 {
     //Procurar se a maquina na qual está conectando é um PDV
     IList<IPDV> pdvs = new PDV().Find<IPDV>(new Where
                                 {
                                     { "cad_PDV.Nome LIKE '" +  Settings.MachineName  + "'" }
                                 });
     return pdvs.Count > 0;
 }
Esempio n. 10
0
        private static void WhoIs(ServerDataTransfer response)
        {
            //Procurar se a maquina na qual está conectando é um PDV
            IList<IPDV> pdvs = new PDV().Find<IPDV>(new Where
            {
                { "cad_PDV.Nome", Settings.MachineName }
            });

            //Se for PDV, manda as informações do PDV e impressora fiscal
            if(pdvs.Count > 0)
            {
                IList<IImpressora> impressoras = new Data.ECF.Cadastro.Impressora().Find<IImpressora>(new Where
                {
                   {"cad_PDV.Nome LIKE @p1", new Parameter {
                           ParameterName = "@p1",
                           Value =  Settings.MachineName
                   }
                }});

                response["PDV"] = Serializer.Serialize(pdvs[0]);

                if(impressoras.Count > 0)
                {
                    IImpressora impressora = impressoras[0];
                    response["Impressora"] = Serializer.Serialize(impressora);
                }
                response["IsPDV"] = true;
            }
            else
                response["IsPDV"] = false;

            SendText(response);
        }
Esempio n. 11
0
        /// <summary>
        /// Faz a abertura do caixa 
        /// </summary>
        /// <param name="sender">Obejto que disparou o evento</param>
        /// <param name="e">Argumento do evento gerado</param>
        private void btnOK_Click(object sender, System.EventArgs e)
        {
            dataHoraAbertura = Unimake.Convert.ToDateTime(string.Format("{0} {1}", dtpDataAbertura.Text, dtpHoraAbertura.Text));

            IAbreCaixa abreCx = null;

            try
            {
                //sfCaixa.SelectedItem.GUID
                abreCx = new AbreCaixa().PermiteAbrir(Settings.MachineName, DateTime.Now);

                if (abreCx == null)
                {
                    abreCx = new AbreCaixa();
                    IList<Model.IBaseModel> caixas = new Caixa().Find(new Where() { { "cad_PDV.Nome", Settings.MachineName } });
                    if (caixas.Count > 0)
                        abreCx.Caixa = caixas[0] as ICaixa;
                    else
                    {
                        ICaixa c = new Caixa();
                        c.PDV = new PDV().Find(new Where() { { "cad_PDV.Nome", Settings.MachineName } })[0] as PDV;
                        c.Descricao = Settings.MachineName;
                        c.Save();
                        abreCx.Caixa = c;
                    }

                    abreCx.Usuario = new Usuario(Settings.UsuarioAtual.GUID);
                    abreCx.DataHoraAbertura = dataHoraAbertura;
                    abreCx.Save();

                    Settings.PDV.AberturaCaixa = abreCx;

                    MessageBox.ShowWarning("Caixa aberto com sucesso.");
                    this.ClearControls();

                    StatusCaixa = abreCx.Status.ToString();
                }
                else
                    MessageBox.ShowWarning("Não é permitido abrir o caixa, pois se encontra: " + abreCx.Status.ToString());
            }
            catch(PDVObrigatorio)
            {
                if(MessageBox.Show("Não existe PDV cadastrado para este terminal. Deseja cadastrar?", "Aviso",
                        MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
                {
                    PDV pdv = new PDV();
                    pdv.Nome = Settings.MachineName;
                    pdv.Observacao = Settings.MachineName;
                    pdv.Save();
                }
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.Message, "Aviso",
                    MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
Esempio n. 12
0
 /// <summary>
 /// Retorna true se esta máquina for um PDV
 /// </summary>
 /// <returns></returns>
 public static bool IsPDV()
 {
     //Procurar se a maquina na qual está conectando é um PDV
     IList<IPDV> pdvs = new PDV().Find<IPDV>(new Where
                                     {
                                         { "cad_PDV.Nome", Settings.MachineName },
                                         { "cad_PDV.Ativo", true}
                                     });
     return pdvs.Count > 0;
 }
Esempio n. 13
0
 /// <summary>
 /// Instancia este objeto e apenas inicia as variáveis, não carrega nenhum dado da base de dados
 /// </summary>
 public Caixa()
     : base()
 {
     PDV = new PDV();
 }