##// END OF EJS Templates
Task #961: Actualizar status de modulos ABS con subproceso...
Fiorella Quino -
r258:0e34c33380c6
parent child
Show More
@@ -251,6 +251,7 class ABSConfiguration(Configuration):
251 251
252 252 return parameters
253 253
254
254 255 def dict_to_parms(self, parameters):
255 256
256 257 self.name = parameters['name']
@@ -594,6 +595,8 class ABSConfiguration(Configuration):
594 595 self.module_messages = json.dumps(module_messages)
595 596 self.save()
596 597
598 print 'Termino (='
599
597 600 return
598 601
599 602
@@ -615,12 +618,17 class ABSConfiguration(Configuration):
615 618 This function returns the status of all abs-modules as one.
616 619 If at least one module is connected, its answer is "1"
617 620 """
618 self.absmodule_status()
621 #self.absmodule_status()
622 send_task('status_absdevice', [self.id],)
619 623 connected_modules = self.connected_modules()
620 624 if connected_modules>0:
621 625 self.message = 'ABS modules Status have been updated.'
622 626 return 1
627 else:
628 self.device.status=0
629
623 630 self.message = 'No ABS module is connected.'
631 self.save()
624 632 return 0
625 633
626 634
@@ -1039,6 +1047,9 class ABSConfiguration(Configuration):
1039 1047 return reverse('url_import_abs_conf', args=[str(self.id)])
1040 1048
1041 1049
1050 def get_absolute_url_status(self):
1051 return reverse('url_status_abs_conf', args=[str(self.id)])
1052
1042 1053
1043 1054
1044 1055 class ABSBeam(models.Model):
@@ -52,3 +52,12 def task_change_beam(id_conf):
52 52
53 53
54 54 return 2
55
56
57 @task(name='status_absdevice')
58 def status_absdevice(id_conf):
59
60 abs_conf = Configuration.objects.get(pk=id_conf)
61 abs_conf.absmodule_status()
62
63 return
@@ -165,6 +165,10
165 165
166 166 </style>
167 167
168 {% if status_request %}
169 <img id="loading" src="{% static 'images/loader.gif' %}">
170 {% endif %}
171
168 172
169 173 {% if beams %}
170 174
@@ -537,6 +541,10 $(document).ready(function() {
537 541
538 542 {% endfor %}
539 543
544 {% if status_request %}
545 setTimeout("location.href = '{% url 'url_abs_conf' dev_conf.id %}'",53000);
546 {% endif %}
547
540 548 });
541 549 </script>
542 550 {% endblock %}
@@ -6,6 +6,7 urlpatterns = (
6 6 url(r'^(?P<id_conf>-?\d+)/$', views.abs_conf, name='url_abs_conf'),
7 7 url(r'^(?P<id_conf>-?\d+)/edit/$', views.abs_conf_edit, name='url_edit_abs_conf'),
8 8 url(r'^(?P<id_conf>-?\d+)/import/$', views.import_file, name='url_import_abs_conf'),
9 url(r'^(?P<id_conf>-?\d+)/status/', views.abs_conf, {'status_request':True},name='url_status_abs_conf'),
9 10 url(r'^(?P<id_conf>-?\d+)/change_beam/(?P<id_beam>-?\d+)/$', views.send_beam, name='url_send_beam'),
10 11 url(r'^(?P<id_conf>-?\d+)/plot/$', views.plot_patterns, name='url_plot_abs_patterns'),
11 12 url(r'^(?P<id_conf>-?\d+)/plot/(?P<id_beam>-?\d+)/$', views.plot_patterns, name='url_plot_abs_patterns'),
@@ -120,7 +120,7 def get_values_from_form(form_data):
120 120
121 121
122 122
123 def abs_conf(request, id_conf):
123 def abs_conf(request, id_conf, status_request=None):
124 124
125 125 conf = get_object_or_404(ABSConfiguration, pk=id_conf)
126 126 beams = ABSBeam.objects.filter(abs_conf=conf)
@@ -172,13 +172,23 def abs_conf(request, id_conf):
172 172 kwargs['color_status'] = color_status
173 173 kwargs['module_messages'] = module_messages
174 174
175 #kwargs['only_stop'] = True
175 #if conf.device.status in [0,1]:
176 if conf.connected_modules() == 0:
177 messages.error(request, 'No ABS module is connected.')#conf.message)
178 else:
179 messages.success(request, 'ABS modules are connected.')#conf.message)
176 180
177 181 ###### SIDEBAR ######
178 182 kwargs.update(sidebar(conf=conf))
179 183
184 if status_request:
185 conf.status_device()
186 kwargs['status_request'] = True
187 return render(request, 'abs_conf.html', kwargs)
188
180 189 return render(request, 'abs_conf.html', kwargs)
181 190
191
182 192 def abs_conf_edit(request, id_conf):
183 193
184 194 conf = get_object_or_404(ABSConfiguration, pk=id_conf)
General Comments 0
You need to be logged in to leave comments. Login now