コード例 #1
0
    public void Excluir(Aplicativo app)
    {
        int i = Array.IndexOf(la, app);

        if (i != -1)
        {
            for (int m = i; m <= k; m++)
            {
                la[m] = la[m + 1];
                k--;
            }
        }
    }
        public async Task <Resultado> Alterar(Aplicativo aplicativo)
        {
            _context.Entry(aplicativo).State = EntityState.Modified;

            try
            {
                return((Resultado)await _context.SaveChangesAsync());
            }
            catch (DbUpdateConcurrencyException)
            {
                return(Resultado.Falha);
            }
        }
        public async Task <Resultado> Excluir(Aplicativo aplicativo)
        {
            _context.Aplicativos.Remove(aplicativo);

            try
            {
                return((Resultado)await _context.SaveChangesAsync());
            }
            catch (DbUpdateConcurrencyException)
            {
                return(Resultado.Falha);
            }
        }
コード例 #4
0
        protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "Del")
            {
                try
                {
                    int rowIndex = Convert.ToInt32(e.CommandArgument);
                    int id       = Convert.ToInt32(gvAplicativos.Rows[rowIndex].Cells[0].Text);

                    using (proyecto_finalEntities entidades = new proyecto_finalEntities())
                    {
                        Aplicativo aplicativos = entidades.Aplicativos.SingleOrDefault(c => c.Id == id);
                        entidades.Aplicativos.Remove(aplicativos);
                        entidades.SaveChanges();
                        cargarAplicativos();
                    }
                }
                catch (Exception sqlEx)
                {
                    LblMessage.Text = "Error al eliminar datos." + sqlEx.Message;
                }
            }

            if (e.CommandName == "Upd")
            {
                try
                {
                    int rowIndex = Convert.ToInt32(e.CommandArgument);
                    int id       = Convert.ToInt32(gvAplicativos.Rows[rowIndex].Cells[0].Text);

                    using (proyecto_finalEntities entidades = new proyecto_finalEntities())
                    {
                        Aplicativo aplicativos = entidades.Aplicativos.SingleOrDefault(c => c.Id == id);

                        txtId.Text                   = Convert.ToString(aplicativos.Id);
                        txtNombre.Text               = aplicativos.Nombre;
                        txtDescripcion.Text          = aplicativos.Descrpcion;
                        ddlEstado.SelectedItem.Value = Convert.ToString(aplicativos.Id_estado);
                        ddlTipo.SelectedItem.Value   = Convert.ToString(aplicativos.Id_tipo);
                        this.tabla.Visible           = false;
                        this.formulario.Visible      = true;
                        this.btnNuevo.Visible        = false;
                        entidades.SaveChanges();
                    }
                }
                catch (Exception sqlEx)
                {
                    LblMessage.Text = "Error al eliminar datos." + sqlEx.Message;
                }
            }
        }
コード例 #5
0
        public async Task <IActionResult> Deshabilitar([FromBody] Aplicativo value)
        {
            try
            {
                await _repository.Deshabilitar(value);
            }
            catch (Exception ex)
            {
                // Guardar Excepción
                return(BadRequest(ex.Message.ToString()));
            }

            return(Ok(value));
        }
コード例 #6
0
    public Aplicativo[] Pesquisar(string cat)
    {
        int y = 0;

        Aplicativo[] newLa = new Aplicativo[20];
        foreach (Aplicativo p in la)
        {
            if (p != null && p.Categoria == cat)
            {
                newLa[y++] = p;
            }
        }
        return(newLa);
    }
コード例 #7
0
    public void Excluir(Aplicativo a)
    {
        int indi = Indice(a);

        if (indi == -1)
        {
            return;
        }
        for (int i = indi; i < apps.Length; i++)
        {
            apps[i] = apps[i + 1];
        }
        k--;
    }
コード例 #8
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            try
            {
                LblMessage.Text = "";
                using (proyecto_finalEntities entidades = new proyecto_finalEntities())
                {
                    id = Convert.ToInt32(txtId.Text);

                    if (id == 0)
                    {
                        entidades.Aplicativos.Add(new Aplicativo
                        {
                            Nombre     = txtNombre.Text,
                            Descrpcion = txtDescripcion.Text,
                            Id_estado  = Convert.ToInt32(ddlEstado.SelectedItem.Value),
                            Id_tipo    = Convert.ToInt32(ddlTipo.SelectedItem.Value)
                        });
                        entidades.SaveChanges();
                        LblMessage.Text = "Registro Insertado Satisfactoriamente.";
                        cargarAplicativos();
                        this.tabla.Visible      = true;
                        this.formulario.Visible = false;
                        this.btnNuevo.Visible   = true;
                    }
                    else
                    {
                        Aplicativo aplicativos = entidades.Aplicativos.SingleOrDefault(c => c.Id == id);


                        aplicativos.Nombre     = txtNombre.Text;
                        aplicativos.Descrpcion = txtDescripcion.Text;
                        aplicativos.Id_tipo    = Convert.ToInt32(ddlTipo.SelectedItem.Value);
                        aplicativos.Id_estado  = Convert.ToInt32(ddlEstado.SelectedItem.Value);

                        entidades.SaveChanges();
                        LblMessage.Text = "Registro Actualizado Satisfactoriamente.";
                        cargarAplicativos();
                        this.tabla.Visible      = true;
                        this.formulario.Visible = false;
                        this.btnNuevo.Visible   = true;
                    }
                }
            }
            catch (Exception sqlEx)
            {
                LblMessage.Text = "Error insertando datos." + sqlEx.Message;
            }
        }
コード例 #9
0
ファイル: q4.cs プロジェクト: mariana-raquel/PEOO_2020
    public Aplicativo[] Pesquisar(string cat)
    {
        int y = 0;

        Aplicativo[] newLa = new Aplicativo[10];
        foreach (Aplicativo p in la)
        {
            if (p != null && p.Categoria == cat)
            {
                newLa[y++] = p;
            }
        }
        Array.Resize(ref newLa, y);
        return(newLa);
    }
コード例 #10
0
    public void Inserir(Aplicativo app)
    {
        if (this.k == 0)
        {
            this.apps = new Aplicativo[10];
        }

        if (this.k >= this.apps.Length)
        {
            Array.Resize(ref this.apps, this.apps.Length * 2);
        }

        apps[this.k++] = app;
        return;
    }
コード例 #11
0
        /// <summary>
        /// Executa o Posto
        /// </summary>
        private void Executar(Aplicativo executavel)
        {
            var processo = new Process();

            try
            {
                switch (executavel)
                {
                case Aplicativo.Retaguarda:
                    processo.StartInfo.FileName = "uGsw002.exe";
                    break;

                case Aplicativo.PreVenda:
                    processo.StartInfo.FileName = "aPreVend.exe";
                    break;

                case Aplicativo.FrenteCaixa:
                    processo.StartInfo.FileName = "uSGM.exe";
                    break;

                case Aplicativo.Estoque:
                    processo.StartInfo.FileName = "uMenuEst.exe";
                    break;

                case Aplicativo.TrocaOleo:
                    processo.StartInfo.FileName = "uTroOleo.exe";
                    break;
                }
                processo.StartInfo.WorkingDirectory = fLocal;
                processo.StartInfo.Arguments        = "1";
                processo.StartInfo.WindowStyle      = ProcessWindowStyle.Maximized;
                processo.Start();
            }
            catch (Exception e)
            {
                while (e.InnerException != null)
                {
                    e = e.InnerException;
                }
                throw new Exception(String.Format("Não foi possível executar o Posto.exe: \n{0}", e.Message));
            }
            finally
            {
                processo.Close();
                processo.Dispose();
                processo = null;
            }
        }
コード例 #12
0
        /// <summary>
        /// Carrega as configurações
        /// </summary>
        private void LoadConfiguracoes(Aplicativo aplicativo)
        {
            try
            {
                UpdateProgress("Carregando configurações do sistema.");

                //-- Adiciona Executávl solicitado pelo usuário.
                Arquivos.Add(new FileInfo(Configuracoes.Servidor + GetEnumCategory(aplicativo)));

                //-- Adiciona DLLs
                foreach (string newPath in Directory.GetFiles(Configuracoes.Servidor, "*.dll", SearchOption.AllDirectories))
                {
                    Arquivos.Add(new FileInfo(newPath));
                }

                //-- Adiciona todos os arquivos na lista na pasta templater
                foreach (string newPath in Directory.GetFiles(Configuracoes.Servidor + @"\Template", "*.*", SearchOption.AllDirectories))
                {
                    Arquivos.Add(new FileInfo(newPath));
                }

                //-- Adiciona .jpg
                foreach (string newPath in Directory.GetFiles(Configuracoes.Servidor, "*.jpg", SearchOption.AllDirectories))
                {
                    Arquivos.Add(new FileInfo(newPath));
                }

                //-- Adiciona .xml
                foreach (string newPath in Directory.GetFiles(Configuracoes.Servidor, "*.xml", SearchOption.AllDirectories))
                {
                    Arquivos.Add(new FileInfo(newPath));
                }

                //-- Adiciona .config
                foreach (string newPath in Directory.GetFiles(Configuracoes.Servidor, "*.config", SearchOption.AllDirectories))
                {
                    Arquivos.Add(new FileInfo(newPath));
                }
            }
            catch (Exception e)
            {
                while (e.InnerException != null)
                {
                    e = e.InnerException;
                }
                throw new Exception(string.Format("Não foi possível adicionar os arquivos: \n{0}", e.Message));
            }
        }
コード例 #13
0
    public Aplicativo[] Pesquisar(string categ)
    {
        int controle = 0;

        Aplicativo[] listaPesquisa = new Aplicativo[totalApps];

        for (int i = 0; i < totalApps; i++)
        {
            if (categ == apps[i].Categoria)
            {
                listaPesquisa[controle] = apps[i];
                controle++;
            }
        }
        return(listaPesquisa);
    }
コード例 #14
0
    public Aplicativo[] Pesquisar(string cat)
    {
        int tamanho = 0;

        Aplicativo[] lista = new Aplicativo[tamanho + 1];

        for (int i = 0; i < k; i++)
        {
            if (apps[i].Categoria == cat)
            {
                lista[tamanho] = apps[i];
                tamanho++;
            }
        }
        return(lista);
    }
コード例 #15
0
 public static bool UpdateAplicativo(Aplicativo aplicativo)
 {
     using (var db = new DBContext())
     {
         var result = db.Aplicativos.SingleOrDefault(b => b.Id == aplicativo.Id);
         if (result != null)
         {
             db.Entry(result).CurrentValues.SetValues(aplicativo);
             db.SaveChanges();
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
コード例 #16
0
    public Aplicativo[] Top10()
    {
        Aplicativo[] lista1     = new Aplicativo[k];
        Aplicativo[] listaTop10 = new Aplicativo[10];

        Array.Copy(apps, lista1, k);

        Array.Sort(lista, new CurtidasComp());
        Array.Reverse(lista1);

        for (int i = 0; i < 10; i++)
        {
            listaTop10[i] = lista1[i];
        }

        return(listaTop10);
    }
コード例 #17
0
        public async Task <IActionResult> Post([FromBody] Aplicativo value)
        {
            try
            {
                int id = await _repository.Insert(value);

                value.IdAplicativo = id;
            }

            catch (Exception ex)
            {
                // Guardar Excepción
                return(BadRequest(ex.Message.ToString()));
            }

            return(Ok(value));
        }
コード例 #18
0
        public static AplicativoDto ParaAplicativoDto(Aplicativo aplicativo)
        {
            if (aplicativo == null)
            {
                return(null);
            }

            return(new AplicativoDto
            {
                Id = aplicativo.Id,
                Nome = aplicativo.Nome,
                DataLancamento = aplicativo.DataLancamento,
                Plataforma = aplicativo.Plataforma.ToString(),
                IdResponsavel = aplicativo.IdDesenvolvedorResponsavel,
                NomeResponsavel = aplicativo.Responsavel?.Nome
            });
        }
コード例 #19
0
 public static bool DeleteAplicativo(Aplicativo aplicativo)
 {
     using (var db = new DBContext())
     {
         var result = db.Aplicativos.FirstOrDefault(b => b.Id == aplicativo.Id);
         if (result != null)
         {
             db.Aplicativos.Remove(result);
             db.SaveChanges();
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
コード例 #20
0
    public Aplicativo[] Pesquisar(string cat)
    {
        Aplicativo[] lista = new Aplicativo[this.k];
        int          i     = 0;

        foreach (Aplicativo a in Listar())
        {
            if (a.Categoria == cat)
            {
                lista[i] = a;
                i++;
            }
        }
        Array.Resize(ref lista, i);
        Array.Sort(lista);
        return(lista);
    }
コード例 #21
0
        public async Task Deshabilitar(Aplicativo value)
        {
            using (SqlConnection conn = new SqlConnection(_cnx))
            {
                using (SqlCommand cmd = new SqlCommand("Seg_Aplicativo_Deshabilitar", conn))
                {
                    cmd.CommandType = System.Data.CommandType.StoredProcedure;

                    cmd.Parameters.Add(new SqlParameter("@IdAplicativo", value.IdAplicativo));
                    cmd.Parameters.Add(new SqlParameter("@RegUpdateIdUsuario", value.RegUpdateIdUsuario));
                    await conn.OpenAsync();

                    await cmd.ExecuteNonQueryAsync();

                    return;
                }
            }
        }
コード例 #22
0
 public static bool AddAplicativo(Aplicativo aplicativo)
 {
     using (var db = new DBContext())
     {
         var result = db.Aplicativos.FirstOrDefault(b => b.Name.ToLower() == aplicativo.Name.ToLower() &&
                                                    b.User.ToLower() == aplicativo.User.ToLower() &&
                                                    b.Env.ToLower() == aplicativo.Env.ToLower());
         if (result == null)
         {
             db.Aplicativos.Add(aplicativo);
             db.SaveChanges();
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
コード例 #23
0
        public override string Executar(object entidade)
        {
            Aplicativo aplicativo = (Aplicativo)entidade;

            IFachada <Aplicativo> fachada = new FachadaAdmWeb <Aplicativo>();

            fachada.SalvaConexaoAtiva(this.conexao);     // Manter conexão anterior
            fachada.SalvaTransacaoAtiva(this.transacao); // Manter transação anterior
            fachada.DefineTemQueFecharConexao(false);    // Não fechar ao finalizar

            IList <Aplicativo> codigoAplicacaoRetonornado = fachada.Consultar(aplicativo);


            if (codigoAplicacaoRetonornado != null)//se não retornar null, é porque ocorreu um erro de validação
            {
                string retorna = "Aplicação já cadastrada.";
                return(retorna);
            }

            return(null);
        }
コード例 #24
0
    public void Excluir(Aplicativo app)
    {
        Aplicativo[] novo = new Aplicativo[this.apps.Length];
        int          i    = 0;

        foreach (Aplicativo a in Listar())
        {
            if (a.CompareTo(app) != 0)
            {
                novo[i++] = a;
            }
        }

        this.k = i;
        if (i > 0)
        {
            Array.Copy(novo, this.apps, i);
        }

        return;
    }
コード例 #25
0
        public void InsertWithData(int usuarioID, ListItemCollection aplicativoID)
        {
            try
            {
                using (proyecto_finalEntities conn = new proyecto_finalEntities())
                {
                    Usuario p = new Usuario {
                        Id = usuarioID
                    };
                    // 2
                    conn.Usuarios.Add(p);
                    // 3
                    conn.Usuarios.Attach(p);

                    // 1
                    for (int i = 0; i < lbAplicativo.Items.Count; i++)
                    {
                        Aplicativo s = new Aplicativo {
                            Id = Convert.ToInt32(lbAplicativo.Items[i].Value)
                        };
                        // 2
                        conn.Aplicativos.Add(s);
                        // 3
                        conn.Aplicativos.Attach(s);

                        // like previous method add instance to navigation property
                        p.Aplicativo.Add(s);

                        // call SaveChanges
                        conn.SaveChanges();
                        LblMessage.Text         = "Registro guardado exitosamentepara el usuario: " + p.NombreUsuario;
                        this.tabla.Visible      = true;
                        this.formulario.Visible = false;
                        this.btnNuevo.Visible   = true;
                    }
                }
            }catch (Exception e) {
                LblMessage.Text = "Ha ocurrido un error al guardar" + e.StackTrace;
            }
        }
コード例 #26
0
        public async Task <bool> DesvincularDesenvolvedor(Aplicativo aplicativo, Desenvolvedor desenvolvedor)
        {
            var listaVinculacao = await _context.DesenvolvedorAplicativo
                                  .Where(a => a.FkAplicativo == aplicativo.Id)
                                  .ToListAsync();

            var vinculacao = await _context.DesenvolvedorAplicativo
                             .Where(a => a.FkAplicativo == aplicativo.Id && a.FkDesenvolvedor == desenvolvedor.Id)
                             .FirstOrDefaultAsync();

            if (vinculacao == null)
            {
                return(false);
            }

            listaVinculacao.Remove(vinculacao);

            aplicativo.DesvincularDesenvolvedor(listaVinculacao);

            _context.Entry(vinculacao).State = EntityState.Deleted;
            return(true);
        }
コード例 #27
0
        public override string Executar(object entidade)
        {
            Autorizacao            autorizacao = (Autorizacao)entidade;
            IList <Autorizacao>    retorno;
            IFachada <Autorizacao> fachada = new FachadaAdmWeb <Autorizacao>();

            fachada.SalvaConexaoAtiva(this.conexao);     // Manter conexão anterior
            fachada.SalvaTransacaoAtiva(this.transacao); // Manter transação anterior
            fachada.DefineTemQueFecharConexao(false);    // Não fechar ao finalizar

            string rotina = autorizacao.Aplicativo.Menus[0].SubMenus[0].Descricao;

            if (autorizacoesAnteriores.Contains(rotina))
            {
                return("Autorização em rotinas repetidas");
            }

            autorizacoesAnteriores.Add(rotina);

            retorno = fachada.Consultar(autorizacao);

            if (retorno != null)
            {
                string mensagem = "Rotinas já autorizados previamente: \n";
                mensagem += "Usuário: " + retorno[0].Usuario.Codigo;
                mensagem += " no órgão: " + retorno[0].OrgaoAutorizado.Sigla + " \n";

                Aplicativo app = retorno[0].Aplicativo;

                mensagem += rotina;


                return(mensagem); // retorna o erro
            }


            return(null);
        }
コード例 #28
0
    public Aplicativo[] Pesquisar(string cat)
    {
        int aux = 0;

        for (int i = 0; i < apps.Length; i++)
        {
            if (apps[i].Categoria == cat)
            {
                aux++;
            }
        }
        Aplicativo[] pesq = new Aplicativo[aux];
        aux = 0;
        for (int j = 0; j < apps.Length; j++)
        {
            if (apps[j].Categoria == cat)
            {
                pesq[aux] = apps[j];
                aux++;
            }
        }
        return(pesq);
    }
コード例 #29
0
        public override string Executar(object entidade)
        {
            Autorizacao auth  = entidade as Autorizacao;
            string      chave = auth.OrgaoAutorizado.Sigla;
            Aplicativo  a     = auth.Aplicativo;

            if (!valoresQueJaforam.ContainsKey(chave))
            {
                valoresQueJaforam.Add(auth.OrgaoAutorizado.Sigla, new List <string>());
            }


            if (valoresQueJaforam[chave].Contains(a.Menus[0].SubMenus[0].Descricao)) // Rotina repetida??
            {
                return("Rotina " + a.Menus[0].SubMenus[0].Descricao + " está informada repetidamente " +
                       "no Órgão " + auth.OrgaoAutorizado.Sigla);
            }

            valoresQueJaforam[chave].Add(a.Menus[0].SubMenus[0].Descricao);

            IFachada <Aplicativo> fachada = new FachadaAdmWeb <Aplicativo>();

            fachada.SalvaConexaoAtiva(this.conexao);     // Manter conexão anterior
            fachada.SalvaTransacaoAtiva(this.transacao); // Manter transação anterior
            fachada.DefineTemQueFecharConexao(false);    // Não fechar ao finalizar

            IList <Aplicativo> retorno = fachada.Consultar(a);

            if (retorno == null)
            {
                return("Rotina " + a.Menus[0].SubMenus[0].Descricao + " é inválida");
            }



            return(null);
        }
コード例 #30
0
    public static void Main(string[] args)
    {
        Aplicativo app1 = new Aplicativo();

        app1.Nome      = "Windows 10";
        app1.Categoria = "Sistema Operacional";
        app1.Preco     = 5.50M;
        app1.Curtir();

        Aplicativo app2 = new Aplicativo();

        app2.Nome      = "AutoCad";
        app2.Categoria = "Desenho Técnico";
        app2.Preco     = 12000.00M;

        Aplicativo app3 = new Aplicativo();

        app3.Nome      = "Sketshup";
        app3.Categoria = "Desenho Técnico";
        app3.Preco     = 6500.00M;

        Aplicativo app4 = new Aplicativo();

        app4.Nome      = "Word";
        app4.Categoria = "Automação de Escritório";
        app4.Preco     = 158.65M;

        app1.Curtir();
        app1.Curtir();
        app2.Curtir();
        app2.Curtir();
        app3.Curtir();

        Loja lj = new Loja();

        lj.Nome = "Miranda Computação";

        Console.WriteLine("Incluindo ...");
        lj.Inserir(app1);
        Console.WriteLine("Incluindo ...");
        lj.Inserir(app2);
        Console.WriteLine("Incluindo ...");
        lj.Inserir(app3);
        Console.WriteLine("Incluindo ...");
        lj.Inserir(app4);

        Console.WriteLine("\nLista em ordem alfabética\n------------------------------");
        foreach (Aplicativo a in lj.Listar())
        {
            Console.WriteLine(a);
        }

        Console.WriteLine($"\nExcluindo {app2.Nome} ...");
        lj.Excluir(app2);

        Console.WriteLine("\nLista em ordem alfabética\n------------------------------");
        foreach (Aplicativo a in lj.Listar())
        {
            Console.WriteLine(a);
        }

        Console.WriteLine($"\nPesquisando categoria {app1.Categoria}\n------------------------------");
        foreach (Aplicativo a in lj.Pesquisar(app1.Categoria))
        {
            Console.WriteLine(a);
        }

        Console.WriteLine("\nLista em ordem de preços\n------------------------------");
        foreach (Aplicativo a in lj.ListarPreco())
        {
            Console.WriteLine(a);
        }

        Console.WriteLine("\nTop 10\n------------------------------");
        List <Aplicativo> apps = lj.Top10MaisCurtidos();

        for (int i = 0; (i < 10) && (i < apps.Count); i++)
        {
            Console.WriteLine(apps[i]);
        }

        return;
    }