/// <summary> /// Cria uma impressora com os dados que foram localizados pela configuração da impressota /// </summary> /// <param name="ask">Se true, interage com o usuário e confirma antes de executar cada ação</param> /// <param name="pdv">PDV que será associado à impressora cadastrada.</param> /// <param name="raiseError">Se true, os erros são lançados ao objeto chamador</param> /// <returns>Retorna um impressora cadastrada na aplicação</returns> /// <exception cref="TerminalSemImpressora">Lançada quando não foi encontrada um impressora e não foi permitido cadastrar uma.</exception> public static IImpressora Create(IPDV pdv, bool ask = true, bool raiseError = true) { IImpressora result = null; //------------------------------------------------------------------------- // Validar se existe uma impresssora com este nome de máquina //------------------------------------------------------------------------- IList<IImpressora> impressoras = new Data.ECF.Cadastro.Impressora().Find<IImpressora>(new Where { {"cad_PDV.Nome LIKE @p1", new Parameter { ParameterName = "@p1", Value = Settings.MachineName } }}); if (impressoras.Count > 0) result = impressoras[0]; else { if (ask && MessageBox.AskYesNo("Não foi encontrada impressora conectada a este terminal. Cadastrar impressora?") == DialogResult.No) { if (raiseError) throw new TerminalSemImpressora(); else return null; } } if (result == null) { Wait.Show(); SaveImpressora(pdv); Wait.Close(); } return result; }
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); }
/// <summary> /// Cria uma impressora com os dados que foram localizados pela configuração da impressota /// </summary> /// <param name="ask">Se true, interage com o usuário e confirma antes de executar cada ação</param> /// <param name="pdv">PDV que será associado à impressora cadastrada.</param> /// <param name="raiseError">Se true, os erros são lançados ao objeto chamador</param> /// <returns>Retorna um impressora cadastrada na aplicação</returns> /// <exception cref="TerminalSemImpressora">Lançada quando não foi encontrada um impressora e não foi permitido cadastrar uma.</exception> public static IImpressora Create(IPDV pdv, ModeloECF modelo, string porta = null) { IImpressora result = null; //------------------------------------------------------------------------- // Validar se existe uma impresssora com este nome de máquina //------------------------------------------------------------------------- IList<IImpressora> impressoras = new Data.ECF.Cadastro.Impressora().Find<IImpressora>(new Where { {"cad_PDV.Nome LIKE @p1", new Parameter { ParameterName = "@p1", Value = Settings.MachineName } }}); if (impressoras.Count > 0) result = impressoras[0]; if (result == null) { Wait.Show(); result = SaveImpressora(pdv, modelo, porta); Wait.Close(); } return result; }