예제 #1
0
        public static void ImprimirTicket(string veiculo)
        {
            string Cabecalho, TituloMsg, Mensagem, MsgFinal;

            Cabecalho  = new string('=', 48) + "\n";
            Cabecalho += BancoDados.RetornarParametro("Empresa", "RazaoNome") + "\n";
            Cabecalho += BancoDados.RetornarParametro("Empresa", "Fantasia") + "\n";
            Cabecalho += BancoDados.RetornarParametro("Empresa", "Endereco01") + "\n";
            Cabecalho += BancoDados.RetornarParametro("Empresa", "Endereco02") + "\n";
            Cabecalho += new string('=', 48);
            TituloMsg  = BancoDados.RetornarParametro("Ticket", "TituloMSG");
            Mensagem   = BancoDados.RetornarParametro("Ticket", "Msg01") + "\n";
            Mensagem  += BancoDados.RetornarParametro("Ticket", "Msg02") + "\n";
            Mensagem  += BancoDados.RetornarParametro("Ticket", "Msg03") + "\n";
            Mensagem  += BancoDados.RetornarParametro("Ticket", "Msg04") + "\n";
            MsgFinal   = BancoDados.RetornarParametro("Ticket", "MsgFinal");

            // Impressora Não Fiscal Epson TM e Elgin I9
            // https://github.com/leandrovip/Vip.Printer

            /*
             *  Instancie a classe Printer
             *
             *  Para instanciar a classe é necessário dois parâmetros:
             *  - printerName (Nome da impressora, porta ou o caminho do compartilhamento)
             *  - printerType (Set de comandos que será utilizado. PrinterType.Bematech ou PrinterType.Epson)
             */
            var printer = new Printer(BancoDados.RetornarParametro("Impressora", "NomeImpressoraWindows").ToString(),
                                      PrinterType.Epson);

            printer.Clear();
            printer.AlignCenter();
            printer.Append(Cabecalho);
            printer.Append("VEICULO : " + veiculo);
            printer.Append("DATA : " + DateTime.Now.ToString());
            printer.NewLine();
            printer.Append(TituloMsg);
            printer.Append(Mensagem);
            printer.Append(MsgFinal);
            printer.NewLines(2);
            printer.PartialPaperCut();
            printer.PrintDocument();
        }
예제 #2
0
        /// <summary>
        /// Faz o cálculo de estadia
        /// </summary>
        /// <param name="qtde">Quantidade de horas.</param>
        /// <param name="valorhora">Valor da primeira hora de estadia.</param>
        /// <param name="desc">Desconto se caso há do convenio</param>
        /// <param name="valordemaishora">Valor de demais horas de estadia.</param>
        /// <returns></returns>
        public static decimal calcularValorHora(decimal qtde, decimal valorhora, decimal desc, decimal valordemaishora = 0)
        {
            decimal total         = 0;
            decimal valorQtdeHora = 0;

            /* Calcula a hora e demais hora caso parametro seja para calular
             * -------------------------------------------------------------
             * Caso a quantidade de horas é maior que 1 o sistema irá calular */
            if (BancoDados.RetornarParametro("Sistema", "UtilizaDemaisHora") == "S")
            {
                valorQtdeHora = qtde > 1 ? ((qtde - 1) * valordemaishora) + valorhora : valorhora;
            }
            else
            {
                valorQtdeHora = qtde * valorhora;
            }

            total = valorQtdeHora - desc;

            return(total);
        }