Easyb não consigo fazer funcionar.
19/07/2012 13:25
0
Pessoal, meu problema é o seguinte, tenho duas classes Recomendacao e ItemInsumoRecomendacao, Recomendacao hasMany insumos:ItemInsumoRecomendacao e ItemRecomendacao belongsTo recomendacao:Recomendacao até aí tudo bem e nas duas tenho as seguintes validacoes :

Recomendacao

static constraints = {
fechamento nullable:true
observacaoFixa nullable:true
observacao nullable:true
almoxarifadoPadrao nullable:true
saidaDeEstoque nullable:true
fechamento validator:{ val, obj ->
if (val && !obj.dirtyPropertyNames.any{it in ['fechamento', 'statusDeSaida']} && obj.dirtyPropertyNames.size() > 0 ){
obj.errors.rejectValue('fechamento', 'A recomendação não pode ser alterada pois já foi fechada.')
}

if (val && obj.insumos.size() == 0){
obj.errors.rejectValue('fechamento', 'Não é possível fechar recomendação sem insumos.')
}

}
}


ItemInsumoRecomendacao

static constraints = {
quantidadeRetirada nullable:true
recomendacao validator:{ val, obj ->
if (val.fechamento && !obj.dirtyPropertyNames.any{it == 'quantidadeRetirada'}){
obj.errors.rejectValue('','O item da recomendação não pode ser alterado pois já foi fechada.')
}
}
}


Recomendacao // Código que insere um insumo em recomendacao

def adicionarInsumos(produto, quantidade){
def insumo = new ItemRecomendacaoInsumo(produto: produto, quantidade: quantidade)
insumo.recomendacao = this
def validacaoRecomendacao = this.validate()
def validacaoInsumo = insumo.validate()
if (validacaoRecomendacao && validacaoInsumo){
addToInsumos(insumo)
}
return insumo
}



No meu teste easyb eu insiro um itemInsumoRecomendacao em recomendacao para ficar como recomendacao.errors.errorCount == 1 pois insumos de recomendacao foi alterado porém isso não acontece, oque estou fazendo errado ?
Tags: easyb teste


0
Esqueci de dizer que no meu teste do easyb eu crio uma recomanedacao fecho ela e depois adiciono uma insumo e a recomendação não fica com errors.errorCount == 1
19/07/2012 13:27



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