#encoding:utf-8 from django.http import HttpResponseRedirect,HttpResponse from django.template import RequestContext, loader, Context from django.shortcuts import get_object_or_404,render,render_to_response, redirect from datos.models import * from django.core.urlresolvers import reverse from django.contrib import auth from django.contrib.auth.decorators import login_required from datos.forms import * from django.contrib import messages from django.forms import ModelForm from django.db import transaction from django.template.response import TemplateResponse from django.utils.dateformat import DateFormat from django.utils.dateparse import * from django.utils.formats import get_format from django.utils import simplejson import json from django.utils.html import * from django.utils.datastructures import * from django.core import * from decimal import * import os import locale import csv import sys import re rutaproyecto = '/home/raven/Proyectos/ficha/' #vista para redirigir al index def acceder(request): return render_to_response('index.html',context_instance=RequestContext(request)) #vista para acceder a la aplicacion def login(request): username = request.POST.get('username', '') password = request.POST.get('password', '') user = auth.authenticate(username=username, password=password) if user is not None and user.is_active: # Correct password, and the user is marked "active" auth.login(request, user) # Redirect to a success page. #messages.success(request, 'entra pero falta checar otras cosas') #return render_to_response ('index.html',context_instance=RequestContext(request)) return HttpResponseRedirect(reverse('datos:menuinicio')) else: messages.error(request, 'Error de acceso verifique su usuario y contraseña') return render_to_response ('index.html',context_instance=RequestContext(request)) #vista para salir de la aplicacion @login_required(login_url='datos:acceder') def logout(request): auth.logout(request) return HttpResponseRedirect(reverse('datos:acceder')) @login_required(login_url='datos:acceder') def perfil(request, user_id): return TemplateResponse(request, 'perfil.html' ) #vista para llamar al menu de inicio @login_required(login_url='datos:acceder') def menuinicio(request): return HttpResponseRedirect(reverse('datos:crearradiografia')) @login_required(login_url='datos:acceder') def crearradiografia(request): fkusuario = User.objects.get(pk=request.user.id) if request.method=='POST': form = RadiografiaForm(request.POST) if form.is_valid(): instanciaradiografia = form.save(commit=False) instanciaradiografia.usuario = fkusuario instanciaradiografia.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearradiografia')) else: messages.error(request, 'Corrija los siguientes errores') else: form = RadiografiaForm() consultaradiografia = Radiografia.objects.filter(usuario=fkusuario)[:1].get diccionario={'form':form, 'operacion': 'Registrar', 'datos':consultaradiografia, 'inicio_menu':'active', } return render_to_response('crearradiografia.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def crearaplicacion(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = AplicacionForm(request.POST,request.FILES) if form.is_valid(): instanciaaplicacion = form.save(commit=False) instanciaaplicacion.radiografia=fkradiografia instanciaaplicacion.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearaplicacion')) else: messages.error(request, 'Corrija los siguientes errores') else: form = AplicacionForm() consultaaplicaciones = Aplicacion.objects.filter(radiografia=fkradiografia) diccionario={'form':form, 'inicio_menu':'active', 'operacion': 'Registrar', 'datos':consultaaplicaciones, } return render_to_response('crearaplicacion.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'Debe registrarse primero para dar de alta registros') return HttpResponseRedirect(reverse('datos:crearradiografia')) @login_required(login_url='datos:acceder') def crearusuario(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = UsuarioForm(request.POST) if form.is_valid(): form.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearusuario')) else: messages.error(request, 'Corrija los siguientes errores') else: form = UsuarioForm() form.fields['aplicacion'].queryset = Aplicacion.objects.filter(radiografia=fkradiografia) consultausuarios = Usuario.objects.filter(aplicacion__radiografia=fkradiografia) diccionario={'form':form, 'inicio_menu':'active', 'operacion': 'Registrar', 'datos':consultausuarios, } return render_to_response('crearusuario.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'debe registrarse primero para dar de alta registros') return HttpResponseRedirect(reverse('datos:crearradiografia')) @login_required(login_url='datos:acceder') def crearinfraestructura(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = InfraestructuraForm(request.POST) if form.is_valid(): instanciainfraestructura = form.save(commit=False) instanciainfraestructura.radiografia=fkradiografia instanciainfraestructura.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearinfraestructura')) else: messages.error(request, 'Corrija los siguientes errores') else: form = InfraestructuraForm() consultainfraestructura = Infraestructura.objects.filter(radiografia=fkradiografia) diccionario={'form':form, 'inicio_menu':'active', 'operacion': 'Registrar', 'datos':consultainfraestructura, } return render_to_response('crearinfraestructura.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'Debe registrarse primero para dar de alta registros') return HttpResponseRedirect(reverse('datos:crearradiografia')) @login_required(login_url='datos:acceder') def importarinfraestructura(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = InfraestructuraImportForm(request.POST,request.FILES) if form.is_valid(): archivo = csv.reader(form.cleaned_data["archivo"]) listaerror = [] contador = 0 for fila in archivo: if contador == 0: contador=contador+1 else: regexentero = re.compile("^[0-9]{1,10}$") regexcadena = re.compile("^[\w\W]{1,100}$") regexcadena2 = re.compile("^[a-zA-Z]{1,20}$") columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] columna6 = fila[5] columna7 = fila[8] columna8 = fila[9] columna9 = fila[8] columna10 = fila[9] columna11 = fila[10] columna12 = fila[11] if regexentero.match(str(columna4)) is not None and regexcadena.match(str(columna1)) is not None and regexcadena2.match(str(columna5)) is not None: contador=contador+1 else: if regexentero.match(str(columna4)) is None: listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna4)) if regexcadena.match(str(columna1)) is None: listaerror.append(' error de centro de trabajo la linea: '+str(contador)+' :'+ str(columna1)+' es demasiado grande o contiene caracteres invalidos') if regexcadena2.match(str(columna5)) is None: listaerror.append(' error de alimentacion en la linea: '+str(contador)+' :'+ str(columna5)+' es demasiado grande o contiene caracteres invalidos') contador=contador+1 if listaerror: for errores in listaerror: messages.error(request, ''+str(errores)) else: archivo = csv.reader(form.cleaned_data["archivo"]) contador = 0 for fila in archivo: if contador == 0: contador=contador+1 else: columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] columna6 = fila[5] columna7 = fila[8] columna8 = fila[9] columna9 = fila[8] columnadiez = fila[9] columnaonce = fila[10] columnadoce = fila[11] instanciainfraestructura = Infraestructura(radiografia=fkradiografia,centrotrabajo=str(columna1), lugarfisico=str(columna2),servicio=bool(columna3),capacidad=int(columna4), alimentacion=str(columna5),aireacondicionado=str(columna6),tierras=str(columna7), iluminacion=bool(columna8),acceso=bool(columna9),incendios=bool(columna10), tableros=bool(columna11),otros=str(columna12)) instanciainfraestructura.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearinfraestructura')) else: messages.error(request, 'Debe ingresar un archivo .csv') return HttpResponseRedirect(reverse('datos:crearinfraestructura')) else: form = InfraestructuraImportForm() consultainfraestructura = Infraestructura.objects.filter(radiografia=fkradiografia) diccionario={'form':form, 'inicio_menu':'active', 'operacion': 'Importar', 'datos':consultainfraestructura, } return render_to_response('crearinfraestructura.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:crearradiografia')) @login_required(login_url='datos:acceder') def crearcableado(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = CableadoForm(request.POST) if form.is_valid(): instanciacableado = form.save(commit=False) #instanciacableado.radiografia=fkradiografia instanciacableado.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearcableado')) else: if 'crear' in request.POST: messages.error(request, 'Corrija los siguientes errores') else: # if request.method=='POST': form = ServidoresDatosImportForm(request.POST, request.FILES) if form.is_valid(): archivo = csv.reader(form.cleaned_data["archivo"]) listaerror = [] contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] regexentero = re.compile("^[0-9]{1,5}$") regexcadena = re.compile("^[\w\W]{1,50}$") columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] columna6 = fila[5] if regexcadena.match(str(columna2)) is not None and regexentero.match(str(columna3)) is not None and regexentero.match(str(columna4)) is not None and regexentero.match(str(columna5)) is not None and regexentero.match(str(columna6)) is not None: contador=contador+1 else: if regexcadena.match(str(columna1)) is None: listaerror.append(' error de centro de trabajo la linea: ' + str(contador) + ' :' + str(columna1) + ' es demasiado grande o contiene caracteres invalidos') if regexentero.match(str(columna2)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna2)) if regexentero.match(str(columna3)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna3)) if regexentero.match(str(columna4)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna4)) if regexentero.match(str(columna5)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna5)) if regexentero.match(str(columna6)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna6)) contador=contador+1 if listaerror: for errores in listaerror: messages.error(request, '' + str(errores)) else: archivo = csv.reader(form.cleaned_data["archivo"]) contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] columna6 = fila[5] instanciacableado = Cableado(infraestructura=instanciainfraestructura,categoria=str(columna1), nodos=int(columna2), patch=int(columna3),rack=int(columna4), orgverticales=int(columna5),orghorizontale=int(columna6)) instanciacableado.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearcableado')) else: messages.error(request, 'Faltó llenar algún campo') return HttpResponseRedirect(reverse('datos:crearcableado')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultacableado = Cableado.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario = {'form': form, # 'inicio_menu': 'active', # 'operacion': 'Importar', # 'datos': consultacableado, # } # return render_to_response('crearcableado.html', diccionario,context_instance=RequestContext(request)) # except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:crearcableado')) else: form = CableadoForm() form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) centrotrabajo = Infraestructura.objects.filter(radiografia=fkradiografia) consultacableado = Cableado.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'centro':centrotrabajo, 'inicio_menu':'active', 'operacion': 'Registrar', 'datos':consultacableado, } return render_to_response('crearcableado.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:crearcableado')) # @login_required(login_url='datos:acceder') # def importarcableado(request): # # try: # fkusuario = User.objects.get(pk=request.user.id) # fkradiografia = Radiografia.objects.get(usuario=fkusuario) # # if request.method=='POST': # form = ServidoresDatosImportForm(request.POST,request.FILES) # if form.is_valid(): # archivo = csv.reader(form.cleaned_data["archivo"]) # listaerror = [] # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # instanciainfraestructura=form.cleaned_data["infraestructura"] # regexentero = re.compile("^[0-9]{1,5}$") # regexcadena = re.compile("^[\w\W]{1,50}$") # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # columna5 = fila[4] # columna6 = fila[5] # if regexcadena.match(str(columna2)) is not None and regexentero.match(str(columna3)) is not None and regexentero.match(str(columna4)) is not None and regexentero.match(str(columna5)) is not None and regexentero.match(str(columna6)) is not None: # contador=contador+1 # else: # if regexcadena.match(str(columna1)) is None: # listaerror.append(' error de centro de trabajo la linea: '+str(contador)+' :'+ str(columna1)+' es demasiado grande o contiene caracteres invalidos') # if regexentero.match(str(columna2)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna2)) # if regexentero.match(str(columna3)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna3)) # if regexentero.match(str(columna4)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna4)) # if regexentero.match(str(columna5)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna5)) # if regexentero.match(str(columna6)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna6)) # contador=contador+1 # if listaerror: # for errores in listaerror: # messages.error(request, ''+str(errores)) # else: # # archivo = csv.reader(form.cleaned_data["archivo"]) # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # # instanciainfraestructura=form.cleaned_data["infraestructura"] # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # columna5 = fila[4] # columna6 = fila[5] # instanciacableado = Cableado(infraestructura=instanciainfraestructura,categoria=str(columna1), # nodos=int(columna2),patch=int(columna3),rack=int(columna4), # orgverticales=int(columna5), orghorizontale = int(columna6)) # instanciacableado.save() # # messages.success(request, 'Se guardó exitosamente el registro') # return HttpResponseRedirect(reverse('datos:crearcableado')) # else: # messages.error(request, 'Faltó llenar algún campo') # return HttpResponseRedirect(reverse('datos:crearcableado')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultacableado = Cableado.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario={'form':form, # 'inicio_menu':'active', # 'operacion': 'Importar', # 'datos':consultacableado, # } # return render_to_response('crearcableado.html',diccionario,context_instance=RequestContext(request)) # # except Exception, e: # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:crearcableado')) @login_required(login_url='datos:acceder') def crearequipos(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = EquiposForm(request.POST) if form.is_valid(): instanciaequipos = form.save(commit=False) #instanciaequipos.radiografia=fkradiografia instanciaequipos.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearequipos')) else: if 'crear' in request.POST: messages.error(request, 'Corrija los siguientes errores') else: # if request.method == 'POST': form = ServidoresDatosImportForm(request.POST, request.FILES) if form.is_valid(): archivo = csv.reader(form.cleaned_data["archivo"]) listaerror = [] contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] regexentero = re.compile("^[0-9]{1,5}$") columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] if regexentero.match(str(columna3)) is not None and regexentero.match(str(columna1)) is not None: contador = contador + 1 else: if regexentero.match(str(columna1)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna1)) if regexentero.match(str(columna3)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna3)) contador = contador + 1 if listaerror: for errores in listaerror: messages.error(request, '' + str(errores)) else: archivo = csv.reader(form.cleaned_data["archivo"]) contador = 0 for fila in archivo: if contador == 0: contador=contador+1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] instanciaequipos = \ Equipos(infraestructura=instanciainfraestructura,equiposcomputo=int(columna1), capacidades=str(columna2),equiposconectados=int(columna3), ) instanciaequipos.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearequipos')) else: messages.error(request, 'Faltó llenar algún campo') return HttpResponseRedirect(reverse('datos:crearequipos')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultaequipos = Equipos.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario = {'form': form, # 'inicio_menu': 'active', # 'operacion': 'Importar', # 'datos': consultaequipos, # } # return render_to_response('crearequipos.html', diccionario,context_instance=RequestContext(request)) # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:crearequipos')) else: form = EquiposForm() form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) centrotrabajo = Infraestructura.objects.filter(radiografia=fkradiografia) consultaequipos = Equipos.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'centro':centrotrabajo, 'inicio_menu':'active', 'operacion': 'Registrar', 'datos':consultaequipos, } return render_to_response('crearequipos.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:crearequipos')) # @login_required(login_url='datos:acceder') # def importarequipos(request): # try: # fkusuario = User.objects.get(pk=request.user.id) # fkradiografia = Radiografia.objects.get(usuario=fkusuario) # # if request.method=='POST': # form = ServidoresDatosImportForm(request.POST,request.FILES) # if form.is_valid(): # archivo = csv.reader(form.cleaned_data["archivo"]) # listaerror = [] # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # instanciainfraestructura=form.cleaned_data["infraestructura"] # regexentero = re.compile("^[0-9]{1,5}$") # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # # if regexentero.match(str(columna3)) is not None and regexentero.match(str(columna1)) is not None: # contador=contador+1 # else: # # if regexentero.match(str(columna1)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna1)) # if regexentero.match(str(columna3)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna3)) # # contador=contador+1 # if listaerror: # for errores in listaerror: # messages.error(request, ''+str(errores)) # else: # # archivo = csv.reader(form.cleaned_data["archivo"]) # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # # instanciainfraestructura=form.cleaned_data["infraestructura"] # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # instanciaequipos = Equipos(infraestructura=instanciainfraestructura,equiposcomputo=int(columna1), # capacidades=str(columna2),equiposconectados=int(columna3),) # instanciaequipos.save() # messages.success(request, 'Se guardó exitosamente el registro') # return HttpResponseRedirect(reverse('datos:importarequipos')) # # else: # messages.error(request, 'Faltó llenar algún campo') # return HttpResponseRedirect(reverse('datos:imporatrequipos')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultaequipos = Equipos.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario={'form':form, # 'inicio_menu':'active', # 'operacion': 'Importar', # 'datos':consultaequipos, # } # return render_to_response('crearequipos.html',diccionario,context_instance=RequestContext(request)) # except Exception, e: # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:importarequipos')) @login_required(login_url='datos:acceder') def crearconectividad(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = ConectividadForm(request.POST) if form.is_valid(): instanciaconectividad = form.save(commit=False) #instanciaconectividad.radiografia=fkradiografia instanciaconectividad.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearconectividad')) else: if 'crear' in request.POST: messages.error(request, 'Corrija los siguientes errores') else: # if request.method == 'POST': form = ServidoresDatosImportForm(request.POST, request.FILES) if form.is_valid(): archivo = csv.reader(form.cleaned_data["archivo"]) listaerror = [] contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] regexentero = re.compile("^[0-9]{1,5}$") regexcadena = re.compile("^[\w\W]{1,50}$") columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] if regexentero.match(str(columna1)) is not None and regexentero.match( str(columna2)) is not None and regexcadena.match(str(columna3)) is not None: contador = contador + 1 else: if regexentero.match(str(columna1)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna1)) if regexentero.match(str(columna2)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna2)) if regexcadena.match(str(columna3)) is None: listaerror.append(' error de centro de trabajo la linea: ' + str(contador) + ' :' + str(columna3) + ' es demasiado grande o contiene caracteres invalidos') contador = contador + 1 if listaerror: for errores in listaerror: messages.error(request, '' + str(errores)) else: archivo = csv.reader(form.cleaned_data["archivo"]) contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] instanciaconectividad = Conectividad(infraestructura=instanciainfraestructura,switch=int(columna1), puertos=int(columna2),adquisicion=str(columna3)) instanciaconectividad.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearconectividad')) else: messages.error(request, 'Faltó llenar algún campo') return HttpResponseRedirect(reverse('datos:crearconectividad')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultaconectividad = Conectividad.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario ={'form': form, # 'inicio_menu': 'active', # 'operacion': 'Importar', # 'datos': consultaconectividad, # } # return render_to_response('crearconectividad.html', diccionario,context_instance=RequestContext(request)) # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:crearconectividad')) else: form = ConectividadForm() form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) centrotrabajo = Infraestructura.objects.filter(radiografia=fkradiografia) consultaconectividad = Conectividad.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'centro':centrotrabajo, 'inicio_menu':'active', 'operacion': 'Registrar', 'datos':consultaconectividad, } return render_to_response('crearconectividad.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:crearconectividad')) # @login_required(login_url='datos:acceder') # def importarconectividad(request): # try: # fkusuario = User.objects.get(pk=request.user.id) # fkradiografia = Radiografia.objects.get(usuario=fkusuario) # # if request.method=='POST': # form = ServidoresDatosImportForm(request.POST,request.FILES) # if form.is_valid(): # archivo = csv.reader(form.cleaned_data["archivo"]) # listaerror = [] # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # instanciainfraestructura=form.cleaned_data["infraestructura"] # regexentero = re.compile("^[0-9]{1,5}$") # regexcadena = re.compile("^[\w\W]{1,50}$") # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # # if regexentero.match(str(columna1)) is not None and regexentero.match(str(columna2)) is not None and regexcadena.match(str(columna3)) is not None: # contador=contador+1 # else: # if regexentero.match(str(columna1)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna1)) # if regexentero.match(str(columna2)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna2)) # if regexcadena.match(str(columna3)) is None: # listaerror.append(' error de centro de trabajo la linea: '+str(contador)+' :'+ str(columna3)+' es demasiado grande o contiene caracteres invalidos') # # # contador=contador+1 # if listaerror: # for errores in listaerror: # messages.error(request, ''+str(errores)) # else: # # archivo = csv.reader(form.cleaned_data["archivo"]) # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # # instanciainfraestructura=form.cleaned_data["infraestructura"] # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # instanciaconectividad= Conectividad(infraestructura=instanciainfraestructura,switch=int(columna1), # puertos=int(columna2),adquisicion=str(columna3)) # instanciaconectividad.save() # # messages.success(request, 'Se guardó exitosamente el registro') # return HttpResponseRedirect(reverse('datos:importarconectividad')) # # else: # messages.error(request, 'Faltó llenar algún campo') # return HttpResponseRedirect(reverse('datos:importarconectividad')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultaconectividad = Conectividad.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario={'form':form, # 'inicio_menu':'active', # 'operacion': 'Importar', # 'datos':consultaconectividad, # } # return render_to_response('crearconectividad.html',diccionario,context_instance=RequestContext(request)) # except Exception, e: # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:importarconectividad')) @login_required(login_url='datos:acceder') def creartelecomunicaciones(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = TelecomunicacionesForm(request.POST) if form.is_valid(): instanciatelecomunicaciones = form.save(commit=False) #instanciatelecomunicaciones.radiografia=fkradiografia instanciatelecomunicaciones.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creartelecomunicaciones')) else: if 'crear' in request.POST: messages.error(request, 'Corrija los siguientes errores') else: # if request.method == 'POST': form = ServidoresDatosImportForm(request.POST, request.FILES) if form.is_valid(): archivo = csv.reader(form.cleaned_data["archivo"]) listaerror = [] contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] regexentero = re.compile("^[0-9]{1,5}$") columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] columna6 = fila[5] columna7 = fila[6] if regexentero.match(str(columna1)) is not None and regexentero.match(str(columna2)) is not None and regexentero.match(str(columna3)) is not None and regexentero.match(str(columna4)) is not None and regexentero.match(str(columna5)) is not None: contador = contador + 1 else: if regexentero.match(str(columna1)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna1)) if regexentero.match(str(columna2)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna2)) if regexentero.match(str(columna3)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna3)) if regexentero.match(str(columna4)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna4)) if regexentero.match(str(columna5)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna5)) contador = contador + 1 if listaerror: for errores in listaerror: messages.error(request, '' + str(errores)) else: archivo = csv.reader(form.cleaned_data["archivo"]) contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] columna6 = fila[5] columna7 = fila[6] instanciatelecomunicaciones = Telecomunicaciones(infraestructura=instanciainfraestructura, lineasanalogicas=int(columna1), lineasdigitales=int(columna2), extensionesanalogicas=int(columna3),extensionesdigitales=int(columna4), extensionesip=int(columna5), conmutador=bool(columna6),marcamodelo=str(columna7)) instanciatelecomunicaciones.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creartelecomunicaciones')) else: messages.error(request, 'Faltó llenar algún campo') return HttpResponseRedirect(reverse('datos:creartelecomunicaciones')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultatelecomunicaciones = Telecomunicaciones.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario = {'form': form, # 'inicio_menu': 'active', # 'operacion': 'Importar', # 'datos': consultatelecomunicaciones, # } # return render_to_response('creartelecomunicaciones.html', diccionario,context_instance=RequestContext(request)) # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:creartelecomunicaciones')) else: form = TelecomunicacionesForm() form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) centrotrabajo = Infraestructura.objects.filter(radiografia=fkradiografia) consultatelecomunicaciones = Telecomunicaciones.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'centro':centrotrabajo, 'inicio_menu':'active', 'operacion': 'Registrar', 'datos':consultatelecomunicaciones, } return render_to_response('creartelecomunicaciones.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:creartelecomunicaciones')) # @login_required(login_url='datos:acceder') # def importartelecomunicaciones(request): # try: # fkusuario = User.objects.get(pk=request.user.id) # fkradiografia = Radiografia.objects.get(usuario=fkusuario) # # if request.method=='POST': # form = ServidoresDatosImportForm(request.POST,request.FILES) # if form.is_valid(): # archivo = csv.reader(form.cleaned_data["archivo"]) # listaerror = [] # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # instanciainfraestructura=form.cleaned_data["infraestructura"] # regexentero = re.compile("^[0-9]{1,5}$") # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # columna5 = fila[4] # columna6 = fila[5] # columna7 = fila[6] # if regexentero.match(str(columna1)) is not None and regexentero.match(str(columna2)) is not None and regexentero.match(str(columna3)) is not None and regexentero.match(str(columna4)) is not None and regexentero.match(str(columna5)) is not None: # contador=contador+1 # else: # if regexentero.match(str(columna1)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna1)) # if regexentero.match(str(columna2)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna2)) # if regexentero.match(str(columna3)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna3)) # if regexentero.match(str(columna4)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna4)) # if regexentero.match(str(columna5)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna5)) # contador=contador+1 # if listaerror: # for errores in listaerror: # messages.error(request, ''+str(errores)) # else: # # archivo = csv.reader(form.cleaned_data["archivo"]) # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # # instanciainfraestructura=form.cleaned_data["infraestructura"] # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # columna5 = fila[4] # columna6 = fila[5] # columna7 = fila[6] # instanciatelecomunicaciones = Telecomunicaciones(infraestructura=instanciainfraestructura,lineasanalogicas=int(columna1), # lineasdigitales=int(columna2),extensionesanalogicas=int(columna3),extensionesdigitales=int(columna4), # extensionesip=int(columna5), conmutador= bool(columna6), marcamodelo= str(columna7)) # instanciatelecomunicaciones.save() # # messages.success(request, 'Se guardó exitosamente el registro') # return HttpResponseRedirect(reverse('datos:creartelecomunicaciones')) # else: # messages.error(request, 'Faltó llenar algún campo') # return HttpResponseRedirect(reverse('datos:creartelecomunicaciones')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultatelecomunicaciones = Telecomunicaciones.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario={'form':form, # 'inicio_menu':'active', # 'operacion': 'Importar', # 'datos':consultatelecomunicaciones, # } # return render_to_response('creartelecomunicaciones.html',diccionario,context_instance=RequestContext(request)) # # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:creartelecomunicaciones')) @login_required(login_url='datos:acceder') def crearenlaces(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = EnlacesForm(request.POST) if form.is_valid(): instanciaenlaces = form.save(commit=False) #instanciaenlaces.radiografia=fkradiografia instanciaenlaces.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearenlaces')) else: if 'crear' in request.POST: messages.error(request, 'Corrija los siguientes errores') else: # if request.method == 'POST': form = ServidoresDatosImportForm(request.POST, request.FILES) if form.is_valid(): archivo = csv.reader(form.cleaned_data["archivo"]) listaerror = [] contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] regexcadena = re.compile("^[\w\W]{1,20}$") columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] if regexcadena.match(str(columna3)) is not None: contador = contador + 1 else: if regexcadena.match(str(columna3)) is None: listaerror.append(' error de centro de trabajo la linea: ' + str(contador) + ' :' + str( columna1) + ' es demasiado grande o contiene caracteres invalidos') contador = contador + 1 if listaerror: for errores in listaerror: messages.error(request, '' + str(errores)) else: archivo = csv.reader(form.cleaned_data["archivo"]) contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] instanciaenlaces = Enlaces(infraestructura=instanciainfraestructura, puntaa=str(columna1), puntab=str(columna2),tipo=str(columna3)) instanciaenlaces.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearenlaces')) else: messages.error(request, 'Faltó llenar algún campo') return HttpResponseRedirect(reverse('datos:crearenlaces')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultaenlaces = Enlaces.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario = {'form': form, # 'operacion': 'Importar', # 'datos': consultaenlaces, # 'inicio_menu': 'active', # } # return render_to_response('crearenlaces.html', diccionario,context_instance=RequestContext(request)) # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:crearenlaces')) else: form = EnlacesForm() form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) centrotrabajo = Infraestructura.objects.filter(radiografia=fkradiografia) consultaenlaces = Enlaces.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'centro':centrotrabajo, 'operacion': 'Registrar', 'datos':consultaenlaces, 'inicio_menu':'active', } return render_to_response('crearenlaces.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:crearenlaces')) # @login_required(login_url='datos:acceder') # def importarenlaces(request): # try: # fkusuario = User.objects.get(pk=request.user.id) # fkradiografia = Radiografia.objects.get(usuario=fkusuario) # # if request.method=='POST': # form = ServidoresDatosImportForm(request.POST,request.FILES) # if form.is_valid(): # archivo = csv.reader(form.cleaned_data["archivo"]) # listaerror = [] # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # instanciainfraestructura=form.cleaned_data["infraestructura"] # regexcadena = re.compile("^[\w\W]{1,20}$") # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # if regexcadena.match(str(columna3)) is not None: # contador=contador+1 # else: # if regexcadena.match(str(columna3)) is None: # listaerror.append(' error de centro de trabajo la linea: '+str(contador)+' :'+ str(columna1)+' es demasiado grande o contiene caracteres invalidos') # contador=contador+1 # if listaerror: # for errores in listaerror: # messages.error(request, ''+str(errores)) # else: # # archivo = csv.reader(form.cleaned_data["archivo"]) # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # # instanciainfraestructura=form.cleaned_data["infraestructura"] # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # instanciaenlaces =Enlaces(infraestructura=instanciainfraestructura, # puntaa=str(columna1),puntab=str(columna2),tipo=str(columna3)) # instanciaenlaces.save() # # messages.success(request, 'Se guardó exitosamente el registro') # return HttpResponseRedirect(reverse('datos:crearrenlaces')) # # else: # messages.error(request, 'Faltó llenar algún campo') # return HttpResponseRedirect(reverse('datos:crearenlaces')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultaenlaces = Enlaces.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario={'form':form, # 'operacion': 'Importar', # 'datos':consultaenlaces, # 'inicio_menu':'active', # } # return render_to_response('crearenlaces.html',diccionario,context_instance=RequestContext(request)) # except Exception, e: # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:crearenlaces')) @login_required(login_url='datos:acceder') def crearservidoresdatos(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = ServidoresDatosForm(request.POST) if form.is_valid(): instanciaservidoresdatos = form.save(commit=False) #instanciaservidoresdatos.radiografia=fkradiografia instanciaservidoresdatos.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearservidoresdatos')) else: if 'crear' in request.POST: messages.error(request, 'Corrija los siguientes errores') else: # if request.method=='POST': form = ServidoresDatosImportForm(request.POST, request.FILES) if form.is_valid(): archivo = csv.reader(form.cleaned_data["archivo"]) listaerror = [] contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] regexentero = re.compile("^[0-9]{1,3}$") columna1 = fila[0] columna2 = fila[1] if regexentero.match(str(columna1)) is not None: contador = contador + 1 else: listaerror.append(' error en la linea: ' + str(contador) + ' entero no es :' + str(columna1)) contador = contador + 1 if listaerror: for errores in listaerror: messages.error(request, '' + str(errores)) else: archivo = csv.reader(form.cleaned_data["archivo"]) contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] columna1 = fila[0] columna2 = fila[1] instanciaservidoresdatos = ServidoresDatos(infraestructura=instanciainfraestructura,servidores=columna1,aplicaciones=columna2) instanciaservidoresdatos.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearservidoresdatos')) else: messages.error(request, 'Faltó llenar algún campo') return HttpResponseRedirect(reverse('datos:crearservidoresdatos')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultaservidoresdatos = ServidoresDatos.objects.filter(infraestructura__radiografia=fkradiografia) # # transaction.rollback() # diccionario = {'form': form, # 'operacion': 'Importar', # 'datos': consultaservidoresdatos, # 'inicio_menu': 'active', # } # return render_to_response('crearservidoresdatos.html',diccionario,context_instance=RequestContext(request)) # # transaction.rollback() # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:crearservidoresdatos')) else: form = ServidoresDatosForm() form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) centrotrabajo = Infraestructura.objects.filter(radiografia=fkradiografia) consultaservidoresdatos = ServidoresDatos.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'centro':centrotrabajo, 'operacion': 'Registrar', 'datos':consultaservidoresdatos, 'inicio_menu':'active', } return render_to_response('crearservidoresdatos.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:crearservidoresdatos')) #@transaction.commit_manually # @login_required(login_url='datos:acceder') # def importarservidoresdatos(request): # try: # fkusuario = User.objects.get(pk=request.user.id) # fkradiografia = Radiografia.objects.get(usuario=fkusuario) # # if request.method=='POST': # form = ServidoresDatosImportForm(request.POST,request.FILES) # if form.is_valid(): # archivo = csv.reader(form.cleaned_data["archivo"]) # listaerror = [] # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # instanciainfraestructura=form.cleaned_data["infraestructura"] # regexentero = re.compile("^[0-9]{1,3}$") # columna1 = fila[0] # columna2 = fila[1] # if regexentero.match(str(columna1)) is not None: # contador=contador+1 # else: # listaerror.append(' error en la linea: '+str(contador)+' entero no es :'+ str(columna1)) # contador=contador+1 # if listaerror: # for errores in listaerror: # messages.error(request, ''+str(errores)) # else: # # archivo = csv.reader(form.cleaned_data["archivo"]) # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # # instanciainfraestructura=form.cleaned_data["infraestructura"] # columna1 = fila[0] # columna2 = fila[1] # instanciaservidoresdatos = ServidoresDatos(infraestructura=instanciainfraestructura,servidores=columna1,aplicaciones=columna2) # instanciaservidoresdatos.save() # # messages.success(request, 'Se guardó exitosamente el registro') # return HttpResponseRedirect(reverse('datos:crearservidoresdatos')) # else: # messages.error(request, 'Faltó llenar algún campo') # return HttpResponseRedirect(reverse('datos:crearservidoresdatos')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultaservidoresdatos = ServidoresDatos.objects.filter(infraestructura__radiografia=fkradiografia) # #transaction.rollback() # diccionario={'form':form, # 'operacion': 'Importar', # 'datos':consultaservidoresdatos, # 'inicio_menu':'active', # } # return render_to_response('crearservidoresdatos.html',diccionario,context_instance=RequestContext(request)) # except Exception, e: # #transaction.rollback() # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:crearservidoresdatos')) @login_required(login_url='datos:acceder') def crearterminales(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = TerminalesForm(request.POST) if form.is_valid(): instanciaterminales = form.save(commit=False) #instanciaterminales.radiografia=fkradiografia instanciaterminales.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearterminales')) else: if 'crear' in request.POST: messages.error(request, 'Corrija los siguientes errores') else: # if request.method == 'POST': form = ServidoresDatosImportForm(request.POST, request.FILES) if form.is_valid(): archivo = csv.reader(form.cleaned_data["archivo"]) listaerror = [] contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] regexentero = re.compile("^[0-9]{1,5}$") columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] columna6 = fila[5] if regexentero.match(str(columna1)) is not None and regexentero.match(str(columna2)) is not None and regexentero.match(str(columna3)) is not None and regexentero.match(str(columna4)) is not None and regexentero.match(str(columna5)) is not None and regexentero.match(str(columna6)) is not None: contador = contador + 1 else: if regexentero.match(str(columna1)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna1)) if regexentero.match(str(columna2)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna2)) if regexentero.match(str(columna3)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna3)) if regexentero.match(str(columna4)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna4)) if regexentero.match(str(columna5)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna5)) if regexentero.match(str(columna6)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna6)) contador = contador + 1 if listaerror: for errores in listaerror: messages.error(request, '' + str(errores)) else: archivo = csv.reader(form.cleaned_data["archivo"]) contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] columna6 = fila[5] instanciaterminales = Terminales(infraestructura=instanciainfraestructura,computadoras=int(columna1), computadorasfuncionales=int(columna2),impresoraslaser=int(columna3),impresoraslaserfuncionales=int(columna4), impresorasinyeccion=int(columna5),impresorasinyeccionfuncionales=int(columna6)) instanciaterminales.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearterminales')) else: messages.error(request, 'Faltó llenar algún campo') return HttpResponseRedirect(reverse('datos:crearterminales')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultaterminales = Terminales.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario = {'form':form, # 'operacion':'Importar', # 'datos':consultaterminales, # 'inicio_menu':'active', # } # return render_to_response('crearterminales.html', diccionario, context_instance=RequestContext(request)) # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:crearterminales')) else: form = TerminalesForm() form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) centrotrabajo = Infraestructura.objects.filter(radiografia=fkradiografia) consultaterminales = Terminales.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'centro':centrotrabajo, 'operacion': 'Registrar', 'datos':consultaterminales, 'inicio_menu':'active', } return render_to_response('crearterminales.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:crearterminales')) # @login_required(login_url='datos:acceder') # def importarterminales(request): # try: # fkusuario = User.objects.get(pk=request.user.id) # fkradiografia = Radiografia.objects.get(usuario=fkusuario) # # if request.method=='POST': # form = ServidoresDatosImportForm(request.POST,request.FILES) # if form.is_valid(): # archivo = csv.reader(form.cleaned_data["archivo"]) # listaerror = [] # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # instanciainfraestructura=form.cleaned_data["infraestructura"] # regexentero = re.compile("^[0-9]{1,5}$") # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # columna5 = fila[4] # columna6 = fila[5] # if regexentero.match(str(columna1)) is not None and regexentero.match(str(columna2)) is not None and regexentero.match(str(columna3)) is not None and regexentero.match(str(columna4)) is not None and regexentero.match(str(columna5)) is not None and regexentero.match(str(columna6)) is not None: # contador=contador+1 # else: # if regexentero.match(str(columna1)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna1)) # if regexentero.match(str(columna2)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna2)) # if regexentero.match(str(columna3)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna3)) # if regexentero.match(str(columna4)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna4)) # if regexentero.match(str(columna5)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna5)) # if regexentero.match(str(columna6)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna6)) # contador=contador+1 # if listaerror: # for errores in listaerror: # messages.error(request, ''+str(errores)) # else: # # archivo = csv.reader(form.cleaned_data["archivo"]) # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # # instanciainfraestructura=form.cleaned_data["infraestructura"] # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # columna5 = fila[4] # columna6 = fila[5] # instanciaterminales = Terminales(infraestructura=instanciainfraestructura,computadoras=int(columna1), # computadorasfuncionales=int(columna2),impresoraslaser=int(columna3),impresoraslaserfuncionales=int(columna4), # impresorasinyeccion=int(columna5),impresorasinyeccionfuncionales = int(columna6)) # instanciaterminales.save() # # messages.success(request, 'Se guardó exitosamente el registro') # return HttpResponseRedirect(reverse('datos:crearterminales')) # else: # messages.error(request, 'faltó llenar algún campo') # return HttpResponseRedirect(reverse('datos:crearterminales')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # # consultaterminales = Terminales.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario={'form':form, # 'operacion': 'Importar', # 'datos':consultaterminales, # # 'inicio_menu':'active', # } # return render_to_response('crearterminales.html',diccionario,context_instance=RequestContext(request)) # except Exception, e: # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:crearterminales')) @login_required(login_url='datos:acceder') def creardescripcionservidores(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = DescripcionservidoresForm(request.POST) if form.is_valid(): instanciadescripcionservidores = form.save(commit=False) #instanciadescripcionservidores.radiografia=fkradiografia instanciadescripcionservidores.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creardescripcionservidores')) else: if 'crear' in request.POST: messages.error(request, 'Corrija los siguientes errores') else: form = ServidoresDatosImportForm(request.POST, request.FILES) if form.is_valid(): archivo = csv.reader(form.cleaned_data["archivo"]) listaerror = [] contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] regexcadena = re.compile("^[\w\W]{1,50}$") columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] if regexcadena.match(str(columna1)) is not None and regexcadena.match(str(columna2)) is not None and regexcadena.match(str(columna3)) is not None and regexcadena.match(str(columna4)) is not None and regexcadena.match(str(columna5)) is not None: contador = contador + 1 else: if regexcadena.match(str(columna1)) is None: listaerror.append(' error de centro de trabajo la linea: ' + str(contador) + ' :' + str(columna1) + ' es demasiado grande o contiene caracteres invalidos') if regexcadena.match(str(columna2)) is None: listaerror.append(' error de centro de trabajo la linea: ' + str(contador) + ' :' + str(columna2) + ' es demasiado grande o contiene caracteres invalidos') if regexcadena.match(str(columna3)) is None: listaerror.append(' error de centro de trabajo la linea: ' + str(contador) + ' :' + str(columna3) + ' es demasiado grande o contiene caracteres invalidos') if regexcadena.match(str(columna4)) is None: listaerror.append(' error de centro de trabajo la linea: ' + str(contador) + ' :' + str(columna4) + ' es demasiado grande o contiene caracteres invalidos') if regexcadena.match(str(columna5)) is None: listaerror.append(' error de centro de trabajo la linea: ' + str(contador) + ' :' + str(columna5) + ' es demasiado grande o contiene caracteres invalidos') contador = contador + 1 if listaerror: for errores in listaerror: messages.error(request, '' + str(errores)) else: archivo = csv.reader(form.cleaned_data["archivo"]) contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] instanciadescripcionservidores = Descripcionservidores(infraestructura=instanciainfraestructura, marca=str(columna1), modelo=str(columna2), procesadores=str(columna3), ram=str(columna4),discoduro=str(columna5)) instanciadescripcionservidores.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creardescripcionservidores')) else: messages.error(request, 'Faltó llernar algún campo') return HttpResponseRedirect(reverse('datos:creardescripcionservidores')) else: form = DescripcionservidoresForm() form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) centrotrabajo = Infraestructura.objects.filter(radiografia=fkradiografia) consultadescripcionservidores = Descripcionservidores.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'centro':centrotrabajo, 'operacion': 'Registrar', 'datos':consultadescripcionservidores, 'inicio_menu':'active', } return render_to_response('creardescripcionservidores.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:creardescripcionservidores')) # @login_required(login_url='datos:acceder') # def importardescripcionservidores(request): # try: # fkusuario = User.objects.get(pk=request.user.id) # fkradiografia = Radiografia.objects.get(usuario=fkusuario) # # if request.method=='POST': # form = ServidoresDatosImportForm(request.POST,request.FILES) # if form.is_valid(): # archivo = csv.reader(form.cleaned_data["archivo"]) # listaerror = [] # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # instanciainfraestructura=form.cleaned_data["infraestructura"] # regexcadena = re.compile("^[\w\W]{1,50}$") # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # columna5 = fila[4] # if regexcadena.match(str(columna1)) is not None and regexcadena.match(str(columna2)) is not None and regexcadena.match(str(columna3)) is not None and regexcadena.match(str(columna4)) is not None and regexcadena.match(str(columna5)) is not None: # contador=contador+1 # else: # if regexcadena.match(str(columna1)) is None: # listaerror.append(' error de centro de trabajo la linea: '+str(contador)+' :'+ str(columna1)+' es demasiado grande o contiene caracteres invalidos') # if regexcadena.match(str(columna2)) is None: # listaerror.append(' error de centro de trabajo la linea: '+str(contador)+' :'+ str(columna2)+' es demasiado grande o contiene caracteres invalidos') # if regexcadena.match(str(columna3)) is None: # listaerror.append(' error de centro de trabajo la linea: '+str(contador)+' :'+ str(columna3)+' es demasiado grande o contiene caracteres invalidos') # if regexcadena.match(str(columna4)) is None: # listaerror.append(' error de centro de trabajo la linea: '+str(contador)+' :'+ str(columna4)+' es demasiado grande o contiene caracteres invalidos') # if regexcadena.match(str(columna5)) is None: # listaerror.append(' error de centro de trabajo la linea: '+str(contador)+' :'+ str(columna5)+' es demasiado grande o contiene caracteres invalidos') # # contador=contador+1 # if listaerror: # for errores in listaerror: # messages.error(request, ''+str(errores)) # else: # # archivo = csv.reader(form.cleaned_data["archivo"]) # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # # instanciainfraestructura=form.cleaned_data["infraestructura"] # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # columna5 = fila[4] # instanciadescripcionservidores = Descripcionservidores(infraestructura=instanciainfraestructura,marca=str(columna1), # modelo=str(columna2),procesadores=str(columna3),ram=str(columna4),discoduro=str(columna5) ) # instanciadescripcionservidores.save() # # messages.success(request, 'Se guardó exitosamente el registro') # return HttpResponseRedirect(reverse('datos:creardescripcionservidores')) # # else: # messages.error(request, 'Faltó llernar algún campo') # return HttpResponseRedirect(reverse('datos:creardescripcionservidores')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultadescripcionservidores = Descripcionservidores.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario={'form':form, # 'operacion': 'Importar', # 'datos':consultadescripcionservidores, # 'inicio_menu':'active', # } # return render_to_response('creardescripcionservidores.html',diccionario,context_instance=RequestContext(request)) # except Exception, e: # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:creardescripcionservidores')) @login_required(login_url='datos:acceder') def creardescripcionred(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = DescripcionredForm(request.POST) if form.is_valid(): instanciadescripcionred = form.save(commit=False) #instanciadescripcionred.radiografia=fkradiografia instanciadescripcionred.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creardescripcionred')) else: if 'crear' in request.POST: messages.error(request, 'Corrija los siguientes errores') else: form = ServidoresDatosImportForm(request.POST, request.FILES) if form.is_valid(): archivo = csv.reader(form.cleaned_data["archivo"]) listaerror = [] contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] regexentero = re.compile("^[0-9]{1,5}$") columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] if regexentero.match(str(columna2)) is not None and regexentero.match(str(columna3)) is not None: contador = contador + 1 else: if regexentero.match(str(columna2)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna2)) if regexentero.match(str(columna3)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna3)) contador = contador + 1 if listaerror: for errores in listaerror: messages.error(request, '' + str(errores)) else: archivo = csv.reader(form.cleaned_data["archivo"]) contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] instanciadescripcionred = Descripcionred(infraestructura=instanciainfraestructura,switch=str(columna1), ethernet=int(columna2),fibra=int(columna3), estado=str(columna4)) instanciadescripcionred.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creardescripcionred')) else: messages.error(request, 'Faltó llenar algún campo') return HttpResponseRedirect(reverse('datos:creardescripcionred')) else: form = DescripcionredForm() form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) centrotrabajo = Infraestructura.objects.filter(radiografia=fkradiografia) consultadescripcionred = Descripcionred.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'centro':centrotrabajo, 'inicio_menu':'active', 'operacion': 'Registrar', 'datos':consultadescripcionred, } return render_to_response('creardescripcionred.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:creardescripcionred')) # @login_required(login_url='datos:acceder') # def importardescripcionred(request): # try: # fkusuario = User.objects.get(pk=request.user.id) # fkradiografia = Radiografia.objects.get(usuario=fkusuario) # # if request.method=='POST': # form = ServidoresDatosImportForm(request.POST,request.FILES) # if form.is_valid(): # archivo = csv.reader(form.cleaned_data["archivo"]) # listaerror = [] # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # instanciainfraestructura=form.cleaned_data["infraestructura"] # regexentero = re.compile("^[0-9]{1,5}$") # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # if regexentero.match(str(columna2)) is not None and regexentero.match(str(columna3)) is not None: # contador=contador+1 # else: # if regexentero.match(str(columna2)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna2)) # if regexentero.match(str(columna3)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna3)) # contador=contador+1 # if listaerror: # for errores in listaerror: # messages.error(request, ''+str(errores)) # else: # # archivo = csv.reader(form.cleaned_data["archivo"]) # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # # instanciainfraestructura=form.cleaned_data["infraestructura"] # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # instanciadescripcionred = Descripcionred(infraestructura=instanciainfraestructura,switch=str(columna1), # ethernet=int(columna2),fibra=int(columna3),estado=str(columna4)) # instanciadescripcionred.save() # # messages.success(request, 'Se guardó exitosamente el registro') # return HttpResponseRedirect(reverse('datos:creardescripcionred')) # # else: # messages.error(request, 'Faltó llenar algún campo') # return HttpResponseRedirect(reverse('datos:creardescripcionred')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultadescripcionred = Descripcionred.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario={'form':form, # 'inicio_menu':'active', # 'operacion': 'Importar', # 'datos':consultadescripcionred, # } # return render_to_response('creardescripcionred.html',diccionario,context_instance=RequestContext(request)) # except Exception, e: # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:creardescripcionred')) @login_required(login_url='datos:acceder') def creardescripciontelefonia(request): try: fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) if request.method=='POST': form = DescripciontelefoniaForm(request.POST) if form.is_valid(): instanciadescripciontelefonia = form.save(commit=False) #instanciadescripciontelefonia.radiografia=fkradiografia instanciadescripciontelefonia.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creardescripciontelefonia')) else: if 'crear' in request.POST: messages.error(request, 'Corrija los siguientes errores') else: form = ServidoresDatosImportForm(request.POST, request.FILES) if form.is_valid(): archivo = csv.reader(form.cleaned_data["archivo"]) listaerror = [] contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] regexentero = re.compile("^[0-9]{1,5}$") regexcadena = re.compile("^[\w\W]{1,50}$") columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] columna6 = fila[5] columna7 = fila[6] columna8 = fila[7] columna9 = fila[8] if regexentero.match(str(columna2)) is not None and regexcadena.match(str(columna3)) is not None and regexentero.match(str(columna4)) is not None and regexentero.match(str(columna5)) is not None and regexentero.match(str(columna6)) is not None: contador = contador + 1 else: if regexentero.match(str(columna2)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna2)) if regexcadena.match(str(columna3)) is None: listaerror.append(' error de centro de trabajo la linea: ' + str(contador) + ' :' + str(columna3) + ' es demasiado grande o contiene caracteres invalidos') if regexentero.match(str(columna4)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna4)) if regexcadena.match(str(columna5)) is None: listaerror.append(' error de centro de trabajo la linea: ' + str(contador) + ' :' + str(columna5) + ' es demasiado grande o contiene caracteres invalidos') if regexentero.match(str(columna6)) is None: listaerror.append(' error de capacidad en la linea: ' + str(contador) + ' entero no es :' + str(columna6)) contador = contador + 1 if listaerror: for errores in listaerror: messages.error(request, '' + str(errores)) else: archivo = csv.reader(form.cleaned_data["archivo"]) contador = 0 for fila in archivo: if contador == 0: contador = contador + 1 else: instanciainfraestructura = form.cleaned_data["infraestructura"] columna1 = fila[0] columna2 = fila[1] columna3 = fila[2] columna4 = fila[3] columna5 = fila[4] columna6 = fila[5] columna7 = fila[6] columna8 = fila[7] columna9 = fila[8] instanciadescripciontelefonia = Descripciontelefonia(infraestructura=instanciainfraestructura, conmutador=str(columna1), troncales=int(columna2), troncalestipo=str(columna3), extensiones=int(columna4), extensionestipo=str(columna5),infinitum=int(columna6), velocidad=str(columna7), conexiongobierno=bool(columna8),formaconexion=str(columna9)) instanciadescripciontelefonia.save() messages.success(request, 'Se guardó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creardescripciontelefonia')) else: messages.error(request, 'Faltó llenar algún campo') return HttpResponseRedirect(reverse('datos:creardescripciontelefonia')) else: form = DescripciontelefoniaForm() form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) centrotrabajo = Infraestructura.objects.filter(radiografia=fkradiografia) consultadescripciontelefonia = Descripciontelefonia.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'centro':centrotrabajo, 'inicio_menu':'active', 'operacion': 'Registrar', 'datos':consultadescripciontelefonia, } return render_to_response('creardescripciontelefonia.html',diccionario,context_instance=RequestContext(request)) except Exception, e: messages.error(request, 'El formato del archivo no es el correcto') return HttpResponseRedirect(reverse('datos:creardescripciontelefonia')) # @login_required(login_url='datos:acceder') # def importardescripciontelefonia(request): # try: # fkusuario = User.objects.get(pk=request.user.id) # fkradiografia = Radiografia.objects.get(usuario=fkusuario) # # if request.method=='POST': # form = ServidoresDatosImportForm(request.POST,request.FILES) # if form.is_valid(): # archivo = csv.reader(form.cleaned_data["archivo"]) # listaerror = [] # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # instanciainfraestructura=form.cleaned_data["infraestructura"] # regexentero = re.compile("^[0-9]{1,5}$") # regexcadena = re.compile("^[\w\W]{1,50}$") # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # columna5 = fila[4] # columna6 = fila[5] # columna7 = fila[6] # columna8 = fila[7] # columna9 = fila[8] # if regexentero.match(str(columna2)) is not None and regexcadena.match(str(columna3)) is not None and regexentero.match(str(columna4)) is not None and regexentero.match(str(columna5)) is not None and regexentero.match(str(columna6)) is not None: # contador=contador+1 # else: # # if regexentero.match(str(columna2)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna2)) # if regexcadena.match(str(columna3)) is None: # listaerror.append(' error de centro de trabajo la linea: '+str(contador)+' :'+ str(columna3)+' es demasiado grande o contiene caracteres invalidos') # if regexentero.match(str(columna4)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna4)) # if regexcadena.match(str(columna5)) is None: # listaerror.append(' error de centro de trabajo la linea: '+str(contador)+' :'+ str(columna5)+' es demasiado grande o contiene caracteres invalidos') # if regexentero.match(str(columna6)) is None: # listaerror.append(' error de capacidad en la linea: '+str(contador)+' entero no es :'+ str(columna6)) # contador=contador+1 # if listaerror: # for errores in listaerror: # messages.error(request, ''+str(errores)) # else: # # archivo = csv.reader(form.cleaned_data["archivo"]) # contador = 0 # for fila in archivo: # if contador == 0: # contador=contador+1 # else: # # instanciainfraestructura=form.cleaned_data["infraestructura"] # columna1 = fila[0] # columna2 = fila[1] # columna3 = fila[2] # columna4 = fila[3] # columna5 = fila[4] # columna6 = fila[5] # columna7 = fila[6] # columna8 = fila[7] # columna9 = fila[8] # instanciadescripciontelefonia = Descripciontelefonia(infraestructura=instanciainfraestructura, # conmutador=str(columna1),troncales=int(columna2),troncalestipo=str(columna3), # extensiones=int(columna4), extensionestipo=str(columna5),infinitum= int(columna6), # velocidad=str(columna7), conexiongobierno=bool(columna8), formaconexion=str(columna9) ) # instanciadescripciontelefonia.save() # # messages.success(request, 'Se guardó exitosamente el registro') # return HttpResponseRedirect(reverse('datos:creardescripciontelefonia')) # # else: # messages.error(request, 'Faltó llenar algún campo') # return HttpResponseRedirect(reverse('datos:creardescripciontelefonia')) # else: # form = ServidoresDatosImportForm() # form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) # consultadescripciontelefonia = Descripciontelefonia.objects.filter(infraestructura__radiografia=fkradiografia) # diccionario={'form':form, # 'inicio_menu':'active', # 'operacion': 'Importar', # 'datos':consultadescripciontelefonia, # } # return render_to_response('creardescripciontelefonia.html',diccionario,context_instance=RequestContext(request)) # except Exception, e: # # messages.error(request, 'El formato del archivo no es el correcto') # return HttpResponseRedirect(reverse('datos:creardescripciontelefonia')) @login_required(login_url='datos:acceder') def borrarservidoresdatos(request,servidoresdatos_id): instanciaservidoresdatos = ServidoresDatos.objects.get(pk=servidoresdatos_id) instanciaservidoresdatos.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:crearservidoresdatos')) @login_required(login_url='datos:acceder') def borraraplicacion(request,aplicacion_id): instanciaaplicacion = Aplicacion.objects.get(pk=aplicacion_id) instanciaaplicacion.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:crearaplicacion')) @login_required(login_url='datos:acceder') def borrarusuario(request,usuario_id): instanciausuario = Usuario.objects.get(pk=usuario_id) instanciausuario.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:crearusuario')) @login_required(login_url='datos:acceder') def borrarinfraestructura(request,infraestructura_id): instanciainfraestructura = Infraestructura.objects.get(pk=infraestructura_id) instanciainfraestructura.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:crearinfraestructura')) @login_required(login_url='datos:acceder') def borrarcableado(request,cableado_id): instanciacableado = Cableado.objects.get(pk=cableado_id) instanciacableado.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:crearcableado')) @login_required(login_url='datos:acceder') def borrarequipos(request,equipos_id): instanciaequipos = Equipos.objects.get(pk=equipos_id) instanciaequipos.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:crearequipos')) @login_required(login_url='datos:acceder') def borrarconectividad(request,conectividad_id): instanciaconectividad = Conectividad.objects.get(pk=conectividad_id) instanciaconectividad.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:crearconectividad')) @login_required(login_url='datos:acceder') def borrartelecomunicaciones(request,telecomunicaciones_id): instanciatelecomunicaciones = Telecomunicaciones.objects.get(pk=telecomunicaciones_id) instanciatelecomunicaciones.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:creartelecomunicaciones')) @login_required(login_url='datos:acceder') def borrarenlaces(request,enlaces_id): instanciaenlaces = Enlaces.objects.get(pk=enlaces_id) instanciaenlaces.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:crearenlaces')) @login_required(login_url='datos:acceder') def borrarterminales(request,terminales_id): instanciaterminales = Terminales.objects.get(pk=terminales_id) instanciaterminales.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:crearterminales')) @login_required(login_url='datos:acceder') def borrardescripcionservidores(request,descripcionservidores_id): instanciadescripcionservidores = Descripcionservidores.objects.get(pk=descripcionservidores_id) instanciadescripcionservidores.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:creardescripcionservidores')) @login_required(login_url='datos:acceder') def borrardescripcionred(request,descripcionred_id): instanciadescripcionred = Descripcionred.objects.get(pk=descripcionred_id) instanciadescripcionred.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:creardescripcionred')) @login_required(login_url='datos:acceder') def borrardescripciontelefonia(request,descripciontelefonia_id): instanciadescripciontelefonia = Descripciontelefonia.objects.get(pk=descripciontelefonia_id) instanciadescripciontelefonia.delete() messages.warning(request, 'Se eliminó el registro') return HttpResponseRedirect(reverse('datos:creardescripciontelefonia')) @login_required(login_url='datos:acceder') def editarservidoresdatos(request,servidoresdatos_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciaservidoresdatos = ServidoresDatos.objects.get(pk=servidoresdatos_id) if request.method=='POST': form = ServidoresDatosForm(request.POST,instance=instanciaservidoresdatos) if form.is_valid(): form.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearservidoresdatos')) else: form = ServidoresDatosForm(instance=instanciaservidoresdatos) form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) consultaservidoresdatos = ServidoresDatos.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultaservidoresdatos, 'inicio_menu':'active', } return render_to_response('crearservidoresdatos.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editaraplicacion(request,aplicacion_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciaaplicacion = Aplicacion.objects.get(pk=aplicacion_id) if request.method=='POST': form = AplicacionForm(request.POST,request.FILES,instance=instanciaaplicacion) if form.is_valid(): instanciaaplicacionform = form.save(commit=False) instanciaaplicacionform.radiografia=fkradiografia instanciaaplicacionform.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearaplicacion')) else: form = AplicacionForm(instance=instanciaaplicacion) consultaaplicaciones = Aplicacion.objects.filter(radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultaaplicaciones, 'inicio_menu':'active', } return render_to_response('crearaplicacion.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editarusuario(request,usuario_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciausuario = Usuario.objects.get(pk=usuario_id) if request.method=='POST': form = UsuarioForm(request.POST,instance=instanciausuario) if form.is_valid(): form.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearusuario')) else: form = UsuarioForm(instance=instanciausuario) form.fields['aplicacion'].queryset = Aplicacion.objects.filter(radiografia=fkradiografia) consultausuarios = Usuario.objects.filter(aplicacion__radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultausuarios, 'inicio_menu':'active', } return render_to_response('crearusuario.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editarinfraestructura(request,infraestructura_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciainfraestructura = Infraestructura.objects.get(pk=infraestructura_id) if request.method=='POST': form = InfraestructuraForm(request.POST,instance=instanciainfraestructura) if form.is_valid(): instanciainfraestucturaform = form.save(commit=False) instanciainfraestucturaform.radiografia=fkradiografia instanciainfraestucturaform.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearinfraestructura')) else: form = InfraestructuraForm(instance=instanciainfraestructura) consultainfraestructura = Infraestructura.objects.filter(radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultainfraestructura, 'inicio_menu':'active', } return render_to_response('crearinfraestructura.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editarcableado(request,cableado_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciacableado = Cableado.objects.get(pk=cableado_id) if request.method=='POST': form = CableadoForm(request.POST,instance=instanciacableado) if form.is_valid(): form.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearcableado')) else: form = CableadoForm(instance=instanciacableado) form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) consultacableado = Cableado.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultacableado, 'inicio_menu':'active', } return render_to_response('crearcableado.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editarequipos(request,equipos_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciaequipos = Equipos.objects.get(pk=equipos_id) if request.method=='POST': form = EquiposForm(request.POST,instance=instanciaequipos) if form.is_valid(): form.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearequipos')) else: form = EquiposForm(instance=instanciaequipos) form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) consultaequipos = Equipos.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultaequipos, 'inicio_menu':'active', } return render_to_response('crearequipos.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editarconectividad(request,conectividad_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciaconectividad = Conectividad.objects.get(pk=conectividad_id) if request.method=='POST': form = ConectividadForm(request.POST,instance=instanciaconectividad) if form.is_valid(): form.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearconectividad')) else: form = ConectividadForm(instance=instanciaconectividad) form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) consultaconectividad = Conectividad.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultaconectividad, 'inicio_menu':'active', } return render_to_response('crearconectividad.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editartelecomunicaciones(request,telecomunicaciones_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciatelecomunicaciones = Telecomunicaciones.objects.get(pk=telecomunicaciones_id) if request.method=='POST': form = TelecomunicacionesForm(request.POST,instance=instanciatelecomunicaciones) if form.is_valid(): form.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creartelecomunicaciones')) else: form = TelecomunicacionesForm(instance=instanciatelecomunicaciones) form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) consultatelecomunicaciones = Telecomunicaciones.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultatelecomunicaciones, 'inicio_menu':'active', } return render_to_response('creartelecomunicaciones.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editarenlaces(request,enlaces_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciaenlaces = Enlaces.objects.get(pk=enlaces_id) if request.method=='POST': form = EnlacesForm(request.POST,instance=instanciaenlaces) if form.is_valid(): form.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearenlaces')) else: form = EnlacesForm(instance=instanciaenlaces) form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) consultaenlaces= Enlaces.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultaenlaces, 'inicio_menu':'active', } return render_to_response('crearenlaces.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editarterminales(request,terminales_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciaterminales = Terminales.objects.get(pk=terminales_id) if request.method=='POST': form = TerminalesForm(request.POST,instance=instanciaterminales) if form.is_valid(): form.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearterminales')) else: form = TerminalesForm(instance=instanciaterminales) form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) consultaterminales= Terminales.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultaterminales, 'inicio_menu':'active', } return render_to_response('crearterminales.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editardescripcionservidores(request,descripcionservidores_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciadescripcionservidores = Descripcionservidores.objects.get(pk=descripcionservidores_id) if request.method=='POST': form = DescripcionservidoresForm(request.POST,instance=instanciadescripcionservidores) if form.is_valid(): form.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creardescripcionservidores')) else: form = DescripcionservidoresForm(instance=instanciadescripcionservidores) form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) consultadescripcionservidores= Descripcionservidores.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultadescripcionservidores, 'inicio_menu':'active', } return render_to_response('creardescripcionservidores.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editardescripcionred(request,descripcionred_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciadescripcionred = Descripcionred.objects.get(pk=descripcionred_id) if request.method=='POST': form = DescripcionredForm(request.POST,instance=instanciadescripcionred) if form.is_valid(): form.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creardescripcionred')) else: form = DescripcionredForm(instance=instanciadescripcionred) form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) consultadescripcionred= Descripcionred.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultadescripcionred, 'inicio_menu':'active', } return render_to_response('creardescripcionred.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editardescripciontelefonia(request,descripciontelefonia_id): fkusuario = User.objects.get(pk=request.user.id) fkradiografia = Radiografia.objects.get(usuario=fkusuario) instanciadescripciontelefonia = Descripciontelefonia.objects.get(pk=descripciontelefonia_id) if request.method=='POST': form = DescripciontelefoniaForm(request.POST,instance=instanciadescripciontelefonia) if form.is_valid(): form.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:creardescripciontelefonia')) else: form = DescripciontelefoniaForm(instance=instanciadescripciontelefonia) form.fields['infraestructura'].queryset = Infraestructura.objects.filter(radiografia=fkradiografia) consultadescripciontelefonia= Descripciontelefonia.objects.filter(infraestructura__radiografia=fkradiografia) diccionario={'form':form, 'operacion':'Editar', 'datos':consultadescripciontelefonia, 'inicio_menu':'active', } return render_to_response('creardescripciontelefonia.html',diccionario,context_instance=RequestContext(request)) @login_required(login_url='datos:acceder') def editarradiografia(request,radiografia_id): instanciaradiografia = Radiografia.objects.get(pk=radiografia_id) fkusuario = User.objects.get(pk=request.user.id) if request.method=='POST': form = RadiografiaForm(request.POST,instance=instanciaradiografia) if form.is_valid(): instanciaradiografiaform = form.save(commit=False) instanciaradiografiaform.usuario = fkusuario instanciaradiografiaform.save() messages.success(request, 'Se actualizó exitosamente el registro') return HttpResponseRedirect(reverse('datos:crearradiografia')) else: form = RadiografiaForm(instance=instanciaradiografia) diccionario={'form':form, 'inicio_menu':'active', } return render_to_response('editarradiografia.html',diccionario,context_instance=RequestContext(request))