Ejemplo n.º 1
0
        public void ShowTransactionByShortcut(string _traShortcut)
        {
            ITSTransaction tra;

            Trace("Creating transaction by shortcut " + _traShortcut);
            try
            {
                using (var ctx = new GenericContextIts <TransactionInfo>(AppConfigManager.Configuration.ConnectionString))
                {
                    TransactionInfo traInfo = ctx.Dao.Where(t => t.TransactionShortcut == _traShortcut).FirstOrDefault();
                    if (traInfo != null)
                    {
                        tra = ((ITSTransaction)Activator.CreateInstance(Type.GetType(traInfo.TransactionType)));
                        tra._transactionInfo = traInfo;

                        InternalShowTransaction(tra, traInfo);
                    }
                }
            }
            catch (Exception ex)
            {
                Trace(string.Format("ITSApplication.ShowTransactionByShortcut: '{0}' StackTrace: '{1}'", ex.Message, ex.StackTrace));
                LoggerUtilIts.WriteOnEventViewer(ex.Message, ex.StackTrace);
                XMessageIts.Mensagem(string.Format("Não foi encontrada uma transação com o atalho '{0}'", _traShortcut));
            }
        }
Ejemplo n.º 2
0
        public static T ShowDialogFindTEntity <T>(DbContextIts ctx, Stream layoutStream) where T : class
        {
            XFrmFindEntity xFrmFindEntity = new XFrmFindEntity();
            var            x = new GenericContextIts <T>(ctx.NameOrConnectionString);

            xFrmFindEntity.gridControlResults.DataSource = x.Dao.FindAll();
            xFrmFindEntity.TEntity = xFrmFindEntity.gridViewResults.GetFocusedRow() as T;

            if (layoutStream != null)
            {
                xFrmFindEntity.gridViewResults.RestoreLayoutFromStream(layoutStream, OptionsLayoutBase.FullLayout);
            }

            xFrmFindEntity.ShowDialog();

            return(xFrmFindEntity.gridViewResults.GetFocusedRow <T>());
        }
Ejemplo n.º 3
0
        private Usuario InternalLogin(string logon, string senha)
        {
            Usuario user = null;

            try
            {
                //codifica a senha pois ela foi criptografa no banco
                //entao nao sabemos qual é a verdadeira senha
                var result = ASCIIEncodingIts.Coded(senha);

                using (var ctx = new GenericContextIts <Usuario>(AppConfigManager.Configuration.ConnectionString))
                {
                    if (logon.IsContainsLetters())

                    {
                        //busca o User com a senha codificada
                        user = ctx.Dao
                               .Where(u => u.NomeUtilizador == logon && u.Senha == result).First();
                    }
                    else
                    {
                        //tente pelo ID
                        var id    = ParseUtil.ToInt(logon);
                        var users = ctx.Dao.FindAll();
                        user = ctx.Dao
                               .Where(u => u.IdUsuario == id).First();
                    }
                }

                //se achou o usuario, registre a sessao no servidor.
                if (user != null)
                {
                    FrameworkServer.RegisterSession(_sessionID);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(user);
        }
Ejemplo n.º 4
0
 public async void FillGridAsync <T>(GenericContextIts <T> ctx) where T : class
 {
     gridControlBase.DataSource = await ctx.Dao.FindAllAsync();
 }
Ejemplo n.º 5
0
 public void FillGrid <T>(GenericContextIts <T> ctx) where T : class
 {
     gridControlBase.DataSource = ctx.Dao.FindAll();
 }
Ejemplo n.º 6
0
        /// <summary>
        /// Inicia o entityframework e invoca o form informado se a inicialização foi bem sucedida.
        /// </summary>
        /// <param name="connectionString"></param>
        /// Form a ser chamado
        public static async Task <bool> Start <T>(string connectionString) where T : class
        {
            SplashScreenManager.ShowForm(typeof(WaitEntityFramework));
            var context = new GenericContextIts <T>(connectionString);

            try
            {
                Trace.WriteLine("Iniciando Contexto");
                var dbEf = context.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 = context.Set <T>().ToList <T>();
                    Console.WriteLine(list.ToString());
                    Thread.Sleep(1000);
                }
                catch (Exception ex)
                {
                    //Nao importa
                    LoggerUtilIts.ShowExceptionLogs(ex);
                }
            }
            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: " + context.Database.Connection.State);
                context.Database.Connection.Close();
            }


            if (Failed)
            {
                //Termine a aplicação em caso de erros
                Environment.Exit(0);
                Application.Exit();
            }
            //termine a barra
            SplashScreenManager.CloseForm();
            return(Sucess);
        }