Exemplo n.º 1
0
        private void btnCriarUsuario_Click(object sender, EventArgs e)
        {
            //Verificando se o usuário tem permissão para criar

            Boolean permissao_admin = false;

            for (int i = 0; i < lista_administradores.Length; i++)
            {
                if (codigo_usuario.ToString() == lista_administradores[i])
                {
                    permissao_admin = true;
                }
            }

            if (permissao_admin == false)
            {
                MessageBox.Show("Você não possui permissão para criar usuários");
            }

            //Verificando se há alguém criando um usuário no momento
            else if ((funcao.CriarUsuarioEmUso(codigo_usuario.ToString(), true)) == true)
            {
                //Obtendo o código de usuário a ser usado
                codigo_usuario_criar = funcao.ObterProximoCodigoUsuario();

                //Validando o código
                Boolean statusCodigoUsuario = validar.CodigoUsuario(codigo_usuario.ToString());

                if (statusCodigoUsuario == true)
                {
                    gpbUsuario.Visible = true;

                    btnCriarUsuario.Visible  = false;
                    btnEditarUsuario.Visible = false;
                    lblModo.Visible          = true;

                    arquivoEmUso = true;

                    //Indicando que está no modo de criação de usuário
                    criar_usuario  = true;
                    lblModo.Text   = "Criar usuário";
                    txtCodigo.Text = codigo_usuario_criar;
                    txtNome.Focus();
                }

                else
                {
                    MessageBox.Show("Código de usuários corrompido");

                    //Liberando os recursos
                    Boolean statusLiberarRecurso = funcao.ExcluirArquivoEmUso("CriarUsuario", false);

                    if (statusLiberarRecurso == false)
                    {
                        MessageBox.Show("Não foi possível liberar o recurso. Tente apagar (se ainda houver) manualmente o arquivo CriarUsuario.emuso");
                    }
                    arquivoEmUso = false;
                }
            }

            else
            {
                if (DialogResult.Yes == MessageBox.Show("Há outra pessoa criando usuários. Deseja forçar a criação?", "Criação de Usuários em uso", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
                {
                    if (DialogResult.Yes == MessageBox.Show("Atenção, forçar a criação pode causar perda de dados, sendo recomendado apenas em caso de falta de energia." +
                                                            " Deseja mesmo forçar a criação de usuários?", "Confirmação", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
                    {
                        //MessageBox.Show(txtNomeProcedimento.Text.ToString());
                        Boolean statusLiberarRecurso = funcao.ExcluirArquivoEmUso("CriarUsuario", false);

                        if (statusLiberarRecurso == true)
                        {
                            btnCriarUsuario.PerformClick();
                        }
                        else
                        {
                            MessageBox.Show("Não foi possível liberar o recurso");
                        }
                    }
                }
            }
        }