Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Temos um sistema aqui na empresa que é usado somente internamente, com os nossos clientes, acontece que agora a empresa vai comercializar este sistema no site dela, ou seja, através do site os interessados podem efetuar o cadastro e ter uma "versão" do sistema online com os dados, clientes, produtos, etc, dele.
Problemas: O sistema foi construido como foco principal a utilização por apenas uma empresa. NEste caso, as informações de outras empresas (ou futuros clientes) do sistema iriam se misturar, obviamente, será necessário criar uma tabela mestre (onde os futuros usuarios/empresas se cadastrarao) e vincular tudo o resto das tabelas nesta tabela mestre, assim poderiamos transformar o sistema em multi usuario/empresa. Porem, como disse, ele ja esta pronto e teria que alterar as milhares de consultas feitas ao banco.
Existe alguma outra forma de fazer isso? direto pelo banco, alguma outra ideia? Vai ser complicado alterar tantas chamadas ao banco pra vincular isso a tabela mestre.
Crie novos campos com ids e roles e ligue isso aos usuários e empresas cadastradas, só exiba para o usuário X apenas as informações que dizem respeito ao role dele.
selecionar * de tabela_dos_roles onde id=ID_DO_ROLE;
sim, será o unico geito colocar a mão na massa e mudar todas as querys do sistema.
Gere um novo schema para cada cliente novo ;)
A melhor solução seria editar tudo mesmo, na sua proxima aplicação use classes, fica muiiiiiito mais simples amigo!
Sim, este sistema é muito antigo e não usa classes, pra falar a verdade, o programador anterior fez ele em "hardy code" hehe, acabamos tomando a decisão de montar outro novo, em html5 e jquery. Será mais facil do que entrar neste codigo e tentar mudar tudo.
Já passei por algo muito parecido, não existe milagre, tem que alterar as consultas mesmo para constar esse "novo filtro".