Browse Source

fix bug in json result of add_next

pull/10/head
LeandroRoberto 9 years ago
parent
commit
beda456664
  1. 35
      compilacao/views.py

35
compilacao/views.py

@ -1025,33 +1025,33 @@ class ActionsEditMixin(object):
if dp_auto_insert is None: if dp_auto_insert is None:
data = self.get_json_for_refresh(dp) data = self.get_json_for_refresh(dp)
else: else:
data = self.get_json_for_refresh(dp_auto_insert) data = self.get_json_for_refresh(dp=dp, dpauto=dp_auto_insert)
return data return data
def get_json_for_refresh(self, dispositivo): def get_json_for_refresh(self, dp, dpauto=None):
if dispositivo.tipo_dispositivo.contagem_continua: if dp.tipo_dispositivo.contagem_continua:
pais = [] pais = []
if dispositivo.dispositivo_pai is None: if dp.dispositivo_pai is None:
data = {'pk': dispositivo.pk, 'pai': [-1, ]} data = {'pk': dp.pk, 'pai': [-1, ]}
else: else:
pkfilho = dispositivo.pk pkfilho = dp.pk
dispositivo = dispositivo.dispositivo_pai dp = dp.dispositivo_pai
proxima_articulacao = dispositivo.get_proximo_nivel_zero() proxima_articulacao = dp.get_proximo_nivel_zero()
if proxima_articulacao is not None: if proxima_articulacao is not None:
parents = Dispositivo.objects.filter( parents = Dispositivo.objects.filter(
norma_id=dispositivo.norma_id, norma_id=dp.norma_id,
ordem__gte=dispositivo.ordem, ordem__gte=dp.ordem,
ordem__lt=proxima_articulacao.ordem, ordem__lt=proxima_articulacao.ordem,
nivel__lte=dispositivo.nivel) nivel__lte=dp.nivel)
else: else:
parents = Dispositivo.objects.filter( parents = Dispositivo.objects.filter(
norma_id=dispositivo.norma_id, norma_id=dp.norma_id,
ordem__gte=dispositivo.ordem, ordem__gte=dp.ordem,
nivel__lte=dispositivo.nivel) nivel__lte=dp.nivel)
nivel = sys.maxsize nivel = sys.maxsize
for p in parents: for p in parents:
@ -1059,10 +1059,11 @@ class ActionsEditMixin(object):
continue continue
pais.append(p.pk) pais.append(p.pk)
nivel = p.nivel nivel = p.nivel
data = {'pk': pkfilho, 'pai': pais} data = {
'pk': pkfilho if not dpauto else dpauto.pk, 'pai': pais}
else: else:
data = {'pk': dispositivo.pk, 'pai': [ data = {'pk': dp.pk if not dpauto else dpauto.pk, 'pai': [
dispositivo.dispositivo_pai.pk, ]} dp.dispositivo_pai.pk, ]}
return data return data

Loading…
Cancel
Save