コード例 #1
0
        public void AddMovimentoLancamentos(List <LancamentoFinanceiro> lancamentos)
        {
            var msg = new StringBuilder();

            foreach (var l in lancamentos)
            {
                //gera movimento apenas dos lançamento da venda que está sendo paga
                if (l.IdVenda != null)
                {
                    AddMovimentoLancamento(l);
                }
                else
                {
                    //forma de pilha
                    //primeira a entra eh o ultima a sair (visualmente)
                    msg.Append("Nº Lançamento: ").Append(l.IdLancamento).Append("\n").Append(msg);
                }
            }
            if (!string.IsNullOrEmpty(msg.ToString()))
            {
                string msgTitle     = "Lançamentos Avulsos\n";
                string msgSeparador = "===============================================================\n";
                msg.Append(msgTitle).Append(msgSeparador).Append(msg);
                XFrmOptionPane.ShowTextArea("Aviso - Os lançamentos abaixo não geraram movimento de caixa!!!",
                                            msg.ToString());
            }
        }
コード例 #2
0
        private void gridViewUpdates_DoubleClick(object sender, System.EventArgs e)
        {
            var sel = gridViewUpdates.GetFocusedRow <UpdateInfo>();

            if (sel != null)
            {
                XFrmOptionPane.ShowTextArea("LOG:", "Informações da aplicação do pacote", sel.LogAplicacao);
            }
        }
コード例 #3
0
        private void btnDetTarefa_ItemClick(object sender, ItemClickEventArgs e)
        {
            var taskSel = GridViewUtil.GetFocusedRow <TaskIts>(gridViewTasks);

            if (taskSel != null)
            {
                XFrmOptionPane.ShowListTextArea <LogIts>(
                    taskSel.TaskDetails.OrderBy(l => l.DataLog).ToList(),
                    "Detalhes da tarefa:");
            }
        }
コード例 #4
0
ファイル: XFrmAjustarEstoque.cs プロジェクト: gercyc/ITE.ERP
        private async void ajustarEstoque(decimal estoque)
        {
            var m = new ProdutoDaoManager();

            var result = await XFrmWait.StartTask(Task.Run(()
                                                           => m.AjustarEstoque(produtoList, estoque)), "Ajustando estoque");

            if (result)
            {
                var msg = "O estoque do(s) produto(s) selecionado(s) foi atualizado!";
                XFrmOptionPane.ShowListTextArea(produtoList, msg);
                this.Dispose();
            }
        }
コード例 #5
0
ファイル: XFrmAddManutencao.cs プロジェクト: gercyc/ITE.ERP
        private void barBtnAddItem_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            //criar forms para chamar os produtos
            xtabControl.SelectedTabPage = xtabItens;
            try
            {
                using (var ctx = new BalcaoContext())
                {
                    var layoutStream = GridViewUtil.GetLayoutStreamFromResource(Assembly.GetExecutingAssembly(),
                                                                                "ITE.Informatica.GridLayout.produto_basico.xml");

                    var produtosTyped = XFrmFindEntity.ShowDialogFindListEntity <Produto>(ctx, layoutStream);

                    if (produtosTyped != null)
                    {
                        var itensFind = new List <Produto>();

                        //procure e add
                        foreach (var pro in produtosTyped)
                        {
                            Produto p = ctx.ProdutoDao.Find(pro.IdProduto);

                            var o = this.itensManutencao.Find(x => x.Produto.DescricaoProduto.Equals(p.DescricaoProduto));
                            if (o == null)
                            {
                                //se for null eh pq nao esta na lista
                                //add o item
                                this.itensManutencao.Add(new ItemManutencao(p));
                            }
                            else
                            {
                                itensFind.Add(p);//nao entra
                            }
                        }


                        if (itensFind.Count > 0)
                        {
                            XFrmOptionPane.ShowListTextArea <Produto>(itensFind, "Atenção os produtos abaixo não serão adicionados poiss já existem !");
                        }
                        refreshTotal();
                    }
                }
            }
            catch (Exception ex)
            {
                XMessageIts.ExceptionMessage(ex);
            }
        }
コード例 #6
0
ファイル: XtraFormXmlEditor.cs プロジェクト: gercyc/ITE.ERP
        private void simpleButton1_Click(object sender, EventArgs e)
        {
            Assembly _assembly = Assembly.GetExecutingAssembly();;

            var resource = XFrmOptionPane.ShowInputDialog("Path.xml name");

            if (resource != null)
            {
                var stream = GridViewUtil.GetLayoutStreamFromResource(_assembly, resource);

                this.gridControl1.ViewCollection.Clear();

                this.gridView1.Columns.Clear();

                this.gridView1.LayoutChanged();

                this.gridView1.RestoreLayoutFromStream(stream);
            }
        }
コード例 #7
0
        /// <summary>
        /// Verifica se a competencia para salvar/atualizar é valida.
        /// Regra 1: Todos os eventos devem possuir valor > 0
        /// </summary>
        /// <param name="competencia"></param>
        /// <returns></returns>
        public bool IsCompetenciaValid(CompetenciaFolha competencia)
        {
            var funcFichaInvalida = new List <FuncionarioCompetencia>();

            foreach (var funcionario in competencia.FuncionariosCompetencia)
            {
                var r = funcionario.FichaFinanceiraFuncionario.Where(f => f.ValorMovimento <= 0).FirstOrDefault();

                if (r != null)
                {
                    funcFichaInvalida.Add(funcionario);
                }
            }

            if (funcFichaInvalida.Count > 0)
            {
                XFrmOptionPane.ShowListTextArea(funcFichaInvalida, "Funcionários com algum evento de valor zerado. Por favor verifique.");
                return(false);
            }
            return(true);
        }
コード例 #8
0
ファイル: NfeManager.cs プロジェクト: gercyc/ITE.ERP
        public bool ValidarXml(string xml, string schema)
        {
            XmlSchemaSet      schemaSet = new XmlSchemaSet();
            XmlReaderSettings settings  = new XmlReaderSettings()
            {
                ValidationType = ValidationType.Schema,
                Schemas        = schemaSet
            };

            schemaSet.Add(null, schema);
            settings.ValidationEventHandler += Settings_ValidationEventHandler;
            StringReader stringReader = new StringReader(xml);

            XmlReader reader = XmlReader.Create(stringReader, settings);

            try
            {
                while (reader.Read())
                {
                }
            }
            catch (XmlException xmlE)
            {
                Console.WriteLine(xmlE.Message);
            }
            finally
            {
                reader.Close();
            }

            if (listValidacoes.Count > 0)
            {
                XFrmOptionPane.ShowListTextArea(listValidacoes, "Erros encontrados na valicação do XML");
                return(false);
            }
            else
            {
                return(true);
            }
        }
コード例 #9
0
        private void barBtnSalvar_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (creditos.Count > 0)
            {
                var ctx       = new BalcaoContext();
                var validador = new ValidadorDTO();
                int i         = 0;
                foreach (var credito in creditos)
                {
                    if (ValidadorDTO.ValidateWarningAll(credito))
                    {
                        bool flag = ctx.CreditoClienteDao.Save(credito);

                        if (!flag)
                        {
                            XMessageIts.Erro("Falha ao gerar credito valor: " + credito.ValorCredito);
                        }
                        else
                        {
                            i++;
                        }
                    }
                }

                if (i == creditos.Count)
                {
                    var creditoList = ctx.CreditoClienteDao.Where(cd => cd.IdCliFor == cliente.IdCliFor);

                    XFrmOptionPane.ShowListTextArea <CreditoCliente>(creditoList.ToList(), "Crédito(s) gerados com sucesso");
                    this.Dispose();
                }
            }
            else
            {
                XMessageIts.Mensagem("Nenhum crédito lançado");
            }
        }
コード例 #10
0
 private void navBarItemObervacao_LinkClicked(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e)
 {
     this.Observacao = XFrmOptionPane.ShowInputDialog("Observação:",
                                                      "Observação", this.Observacao, 300);
 }
コード例 #11
0
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            if (_materiaisProduzido.Count > 0)
            {
                try
                {
                    using (var ctx = new SlateContext())
                    {
                        var dataProducao = dateEditDtProducao.DateTime.ToDateZerada();
                        //essa tabela possui uma chave composta
                        //Serra
                        //Material
                        //Data

                        var itensDuplicados = new List <ProducaoSerra>();

                        foreach (ProducaoSerra s in _materiaisProduzido)
                        {
                            try
                            {
                                var r = ctx.ProducaoSerraDao
                                        .Where(p => p.IdSerra == _serra.IdSerra &&
                                               p.IdMaterial == s.IdMaterial &&
                                               p.DataProducao == dataProducao)
                                        .First();

                                itensDuplicados.Add(r);
                            }
                            catch (Exception ex)
                            {
                                Console.WriteLine("Nada encontrado" + ex.Message);
                            }
                        }

                        if (itensDuplicados.Count > 0)
                        {
                            //se existe um material
                            XFrmOptionPane.ShowListTextArea(itensDuplicados,
                                                            "Materiais já produzido anteriormente: \n"
                                                            + _serra.NomeSerra + " em " +
                                                            dateEditDtProducao.DateTime.ToShortDateString());
                            //"*** Atenção - Produto já adicionado ***");
                        }
                        else
                        {
                            this._materiaisProduzido.ForEach(delegate(ProducaoSerra i)
                            {
                                //comunicao o relacionamento que nao deve criar outro material
                                i.Material = null;
                                i.Serra    = null;
                                ctx.ProducaoSerraDao.Save(i);
                            });
                            XMessageIts.Mensagem("Produção da \"" +
                                                 _serra.NomeSerra + "\" salva com sucesso!");
                            this.Dispose();
                        }
                    }
                }
                catch (Exception ex)
                {
                    LoggerUtilIts.ShowExceptionLogs(ex);
                    XMessageIts.ExceptionMessageDetails(ex,
                                                        "Falhar ao salvar produçaõ do dia " + dateEditDtProducao.DateTime.ToShortDateString());
                    throw ex;
                }
            }
            else
            {
                XMessageIts.Mensagem("Nada produzido a ser salvo !");
            }
        }
コード例 #12
0
        private async void runEntityFramework()
        {
            //this.Ilustrador = new Thread(runProgress);
            //this.Ilustrador.Start();
            //banco de dados e a conexao utilizada pelo EF
            var dbEf = this.contexto.Database;

            try
            {
                this.Started = true;
                Trace.WriteLine("Iniciando Contexto");

                //Inicia ou cria o banco
                dbEf.CreateIfNotExists();

                //conexao Sql
                await dbEf.Connection.OpenAsync();

                Trace.WriteLine("Connection: " + dbEf.Connection.State);

                try
                {
                    //faz uma consulta no EF
                    var first = await this.contexto.Set <T>().FirstOrDefaultAsync();
                }

                catch (InvalidOperationException ex)
                {
                    LoggerUtilIts.ShowExceptionLogs(ex);
                }
                catch (Exception ex)
                {
                    LoggerUtilIts.ShowExceptionLogs(ex);
                }
            }
            catch (Exception ex)
            {
                LoggerUtilIts.ShowExceptionLogs(ex);
                var lista = new List <String>();

                lista.Add("O contexto atual não corresponde a estrutura do banco de dados.");
                lista.Add("Contate o administrador para que atualização seja feita no banco de dados.\n");

                XFrmOptionPane.ShowListTextArea(lista, "Falha na inicialização do framework");

                this.Failed = true;
                //Environment.Exit(0);
                Application.Exit();
            }
            //seta os flags
            finally
            {
                //se nao deu errado
                if (!Failed)
                {
                    //termine a ilustracao da barra
                    this.Sucess = true;
                }
                Trace.WriteLine("Fechando conexao Sql: " + dbEf.Connection.State);
                dbEf.Connection.Close();
            }

            //a thread terminou
            if (this.progressPanel1.InvokeRequired)
            {
                //Essa laço tem o tempo de espera do Ilustrador do panel de progress
                //Sem ele a barra continuaria sendo pintada
                //preciso invocar outra thread e thread anterior ainda nao terminou
                //while (Ilustrador.ThreadState == System.Threading.ThreadState.WaitSleepJoin)
                //{
                //    Thread.Sleep(150);
                //    Trace.WriteLine("Aguarde...");
                //}

                this.Invoke(new SetTextCallback(setDescriptonProgressPanel), new object[] { "Iniciando aplicação ..." });

                Thread.Sleep(300);

                this.Invoke(new InvokerForm(runFormInvoke));
            }
        }
コード例 #13
0
        /// <summary>
        /// Inicia o entityframework e invoca o form informado se a inicialização foi bem sucedida.
        /// </summary>
        /// <param name="task"></param>
        public static async Task <bool> StartTask <T>(Task <DbContextIts> task) where T : class
        {
            SplashScreenManager.ShowForm(typeof(WaitEntityFramework));

            try
            {
                Console.WriteLine("Wait Entityframework initializate ...");
                await Task.Run(() => task);

                Trace.WriteLine("Iniciando Contexto");
                var dbEf = task.Result.Database;

                //verifica e cria o banco caso ele nao exista
                dbEf.CreateIfNotExists();

                //realiza a conexao com o sql
                await dbEf.Connection.OpenAsync();

                //Flag que foi iniciado com sucesso
                Sucess = true;

                Trace.WriteLine("Connection Status: " + dbEf.Connection.State);
                try
                {
                    //faz uma consulta no EF
                    var list = task.Result.Set <T>().ToList <T>();
                    Console.WriteLine(list.ToString());
                    Thread.Sleep(150);
                }
                catch (Exception ex)
                {
                    //Nao importa
                    LoggerUtilIts.ShowExceptionLogs(ex);

                    XMessageIts.ExceptionMessageDetails(ex, "Falha na inicialização!");
                }
            }
            catch (Exception ex)
            {
                //Flag de erro
                Failed = true;
                LoggerUtilIts.ShowExceptionLogs(ex);
                var lista = new List <string>();

                lista.Add("O contexto atual não corresponde a estrutura do banco de dados.");
                lista.Add("Contate o administrador para que atualização seja feita no banco de dados.\n");

                XFrmOptionPane.ShowListTextArea(lista, "Falha na inicialização do Entity framework");
            }
            //seta os flags
            finally
            {
                Trace.WriteLine("Fechando conexao Sql: " + task.Result.Database.Connection.State);
                task.Result.Database.Connection.Close();
            }

            //termine a barra
            SplashScreenManager.CloseForm();

            if (Failed)
            {
                //Termine a aplicação em caso de erros
                Environment.Exit(0);
                //Application.Exit();
            }
            else
            {
                Console.WriteLine("Entity framework iniciado com sucesso");
            }


            return(Sucess);
        }