Relacionamento entre Classes
21/09/2011 02:12
0
Case: O usuário fez um registro de uma manutenção no carro "10" (sabendo que este carro possui um único motorista) e salvou no banco tudo certinho.

Problema: Depois de alguns meses o gestor demite o motorista do carro "10".

Quando o gestor muda no registro do carro "10" o novo motorista, dessa forma todo histórico do antigo motorista é também alterado com o nome do novo motorista.

Pessoal ver se vocês entenderam o meu problema e qual seria melhor solução para resolver-mos isso.

Obrigado fiquem todos com Deus!!!
Tags: hasMany


0
Eu não acho certo mudar o nome de um registro está fazendo(se entendi corretamente a sua explicação),
por exemplo:
tenho os seguintes motoristas: 10-Joao, 11-José, 12-Eduardo.
Se o veiculo 1 tem o motorista 10 vinculado a ele e o motorista 10 e dispensado, e contratamos o motorista Alberto
eu não vou no cadastro de motoristas e localizo o registro 10 e altero o nome de João para Alberto e sim
crio um registro novo 13-Alberto. Que será vinculado ao veiculo 1, outra coisa que deve ser feita na sua classe de domínio 'Historico' é adicionar o atributo motorista, por que se você tiver apenas o atributo Veiculo vc não consegue manter o histórico de motoristas que levaram o carro para manutenção.
Resumindo você vai ter que adicionar o atributo motorista na sua classe de histórico de manutenção.
21/09/2011 08:51


0
Bom Dia, Castiel

Cara muito obrigado a sua explicação mim ajudou muito , Valeu

Vou dar uma pensar sobre isso q vc mim propôs.

Fica com Deus !!!
21/09/2011 10:26


0
Só tem um problema o código do caminhão não pode mudar esse numero está adesivado em cada caminhão na empresa
Na sua opinião qual seria a melhor solução ?

Valeu cara!!!
21/09/2011 11:08


1
Ei MAURICIO,

O Cenário autual encontra-se abaixo, porém você não possui na tabela de histórico o dado motorista, segundo a dica do castiel, você iria incluir uma FK de motorista na no Objeto histórico, o dados abaixo já inclui essa informação.
________________ _________________ _____________________________________________
Motorista | Caminhao | HISTORICO MANUTENCAO |
----------------| ----------------- ---------------------------------------------
ID | NOME | ID |MOTORISTA_ID | ID | CAMINHAO_ID | MOTORISTA_ID | DATA |
================ ================= =============================================
10 | Joao | 1 | 10(Joao) | 1 | 1 | 10 | 01/01/2010 |
11 | José | 2 | 1 | 10 | 25/01/2010 |
12 | Eduardo | 3 | 1 | 10 | 20/05/2010 |
4 | 1 | 10 | 13/10/2010 |

Sendo assim, se você Mandar o João embora... e contratar o Alberto, e aloca-lo no caminhão 1, e realize novas entradas na oficina.. você iria alterar o motorista da tabela caminhão... e incluir novos históricos normalmente. Obs.: Seria interessante armazenar o histórico da DATA de alocação do novo motorista. Veja o resultado:

________________ _________________ _____________________________________________
Motorista | Caminhao | HISTORICO MANUTENCAO |
----------------| ----------------- ---------------------------------------------
ID | NOME | ID |MOTORISTA_ID | ID | CAMINHAO_ID | MOTORISTA_ID | DATA |
================ ================= =============================================
10 | Joao | 1 | 13(Alberto) | 1 | 1 | 10 | 01/01/2010 |
11 | José | 2 | 1 | 10 | 25/01/2010 |
12 | Eduardo | 3 | 1 | 10 | 20/05/2010 |
13 | Alberto | 4 | 1 | 10 | 13/10/2010 |
5 | 1 | 13 | 09/03/2011 |
6 | 1 | 13 | 30/06/2011 |

No exemplo acima, você não perderia o histórico das manutenções, porém acho interessante você manter referencia do período que cada motorista ficou alocado em cada caminhão.

Se entendi bem, seria isso.
é isso mesmo MAURICIO?




0
Desculpe MAURICIO,

Formatei bonitinho, porém o forum perde a formatação.

Por isso disponibilizei em meu site: http://www.gagno.com/testeModelo.txt

Dê uma olhada..

Abraços!!


1
Maurício sobre o código do caminhão que não pode mudar vc deve salvá-lo como um atributo no banco. A chave primária é um lugar complicado para vc fazer esse tipo de controle, pode não te trazer problemas agora, porém no futuro pode te gerar uma dor de cabeça tremenda.
O que o Rodolpho propôs é uma solução interessante para o seu problema, vale dar uma verificada.
21/09/2011 13:48


0
Rodolfo e Castiel vocês foi excelente nas suas colocações, valeu mesmo galero.

E Rodolpho vou dar uma olhada no teu site, a sua colocação foi excelente , blz

Fiquem com Deus!!!!
21/09/2011 20:39



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto