def br_capturadepremi_clean( instance ): errors = [] instance.__self_clean = True instance.__is_update = instance.pk is not None if not instance.__is_update: instance.codi_de_recollida = new_slug_h(5) instance.collaborador_cache = instance.premi.collaborador instance.data_max_recollida_cache = date.today() + timedelta( days = 5 )
def br_qr_clean( instance ): errors = [] instance.__self_clean = True instance.__is_update = instance.pk is not None if not instance.__is_update: #slug: 4 x colaborador + 4 x codi + 1 x digitcontrol c=3 while c > 0 and not bool( instance.slug ): slug = instance.collaborador_cache.slug_x_4 + new_slug_h( 5 ) if not instance.__class__.objects.filter( slug = slug ).exists(): instance.slug = slug c -= 1 if not bool( instance.slug ): errors.append(u"No s'ha pogut donar un codi intern per al QR") if bool( errors ): raise ValidationError( errors )