예제 #1
0
 def post(self):
     
     '''Le paso id del tipo de item que importare y el id de la fase a la cual se importara el tipo'''
     idTipo=flask.request.form['idTipo']
     idFase=flask.request.form['idFase']
     if controlRol(idFase,'tipo','administrar')==0:
         return "t, No posee permiso para realizar esta accion"
     sesion=Session()
     ''' obtengo el tipo de item a importar'''
     importado=sesion.query(TipoItem).filter(TipoItem.idTipoItem==int(idTipo)).first()
     ''' busco si en la fase a importar ya existe un tipo con el mismo nombre, en caso afirmativo, se lanza una excepcion'''
     tipit=sesion.query(TipoItem).filter(TipoItem.fase_id==int(idFase)).filter(TipoItem.nombreTipoItem==importado.nombreTipoItem).first()
     if(tipit is not None):
         sesion.close()
         return make_response('t,Ya existe el tipo de item con ese nombre en esa fase')
     
     ''' se crea el tipo nuevo'''
     nuevoTipo=TipoItem(importado.nombreTipoItem,importado.descripcion,'activo')
     atributos=importado.atributosItem
     nuevoAtributos=[]
     '''extraigo todos los atributos del item importado y los meto en una lista para agregar dicha lista
     de atributos al nuevo Tipo'''
     for atributo in atributos:
         '''Pongo en None el id porque necesito que sea autogenerado'''            
         att=Atributos(None,atributo.nombreAtributo,atributo.tipoPrimarioId,atributo.longitudCadena)
         nuevoAtributos.append(att)
     nuevoTipo.atributosItem=nuevoAtributos
     nuevoTipo.fase_id=idFase
     sesion.add(nuevoTipo)
     sesion.commit()
     sesion.close()
     return make_response("f,Tipo de item importado correctamente")
예제 #2
0
def cargarDatosParametricos():
    '''carga de datos script'''
    sesion = Session()
    # usuarios
    nombreUser = "******";
    password = str(md5.new('jperez').hexdigest());
    nomb = "juan"
    ape = "perez"
    correo = nombreUser + '@wapm.com'
    ci = random.randint(6000, 100000)
    tel = random.randint(6000, 100000)
    
    user = Usuario(nombreUser, password, nomb, ape, correo, ci
             , tel, 'ninguna', 'true', 'Brasil' + str(u))
    sesion.add(user)
    
    nombreUser = "******";
    password = str(md5.new('cgonzalez').hexdigest());
    nomb = "Carlos"
    ape = "Gonzalez"
    correo = nombreUser + '@wapm.com'
    ci = random.randint(6000, 100000)
    tel = random.randint(6000, 100000)
    
    user = Usuario(nombreUser, password, nomb, ape, correo, ci
             , tel, 'ninguna', 'true', 'Brasil' + str(u))
    
    sesion.add(user)
    
    nombreUser = "******";
    password = str(md5.new('mbenitez').hexdigest());
    nomb = "Maria"
    ape = "Benitez"
    correo = nombreUser + '@wapm.com'
    ci = random.randint(6000, 100000)
    tel = random.randint(6000, 100000)
    
    user = Usuario(nombreUser, password, nomb, ape, correo, ci
             , tel, 'ninguna', 'true', 'Brasil' + str(u))
    
    sesion.add(user)
    
    # Proyectos
    dia1 = random.randint(1, 28)
    mes1 = random.randint(1, 12)
    anho1 = random.randint(1990, 1999)
    dia2 = random.randint(1, 28)
    mes2 = random.randint(1, 12)
    anho2 = random.randint(2000, 2020)
    nombreP = "Edificio"
    plId = 1
    fechaIni = str(mes2) + "/" + str(dia2) + "/" + str(anho2);
    fechaFin = str(mes1) + "/" + str(dia1) + "/" + str(anho1);
    pres = random.randint(1000, 100000)
    obs = "observacion" + str(random.randint(1990, 2020));
    est = "desarrollo"
    u = Proyecto(nombreP, plId, fechaIni, fechaFin, pres, obs, est)
    sesion.add(u)
    
    dia1 = random.randint(1, 28)
    mes1 = random.randint(1, 12)
    anho1 = random.randint(1990, 1999)
    dia2 = random.randint(1, 28)
    mes2 = random.randint(1, 12)
    anho2 = random.randint(2000, 2020)
    nombreP = "miProyecto02"
    plId = 1
    fechaIni = str(mes2) + "/" + str(dia2) + "/" + str(anho2);
    fechaFin = str(mes1) + "/" + str(dia1) + "/" + str(anho1);
    pres = random.randint(1000, 100000)
    obs = "observacion" + str(random.randint(1990, 2020));
    est = "desarrollo"
    u = Proyecto(nombreP, plId, fechaIni, fechaFin, pres, obs, est)
    sesion.add(u)
    
    dia1 = random.randint(1, 28)
    mes1 = random.randint(1, 12)
    anho1 = random.randint(1990, 1999)
    dia2 = random.randint(1, 28)
    mes2 = random.randint(1, 12)
    anho2 = random.randint(2000, 2020)
    nombreP = "miProyecto03"
    plId = 1
    fechaIni = str(mes2) + "/" + str(dia2) + "/" + str(anho2);
    fechaFin = str(mes1) + "/" + str(dia1) + "/" + str(anho1);
    pres = random.randint(1000, 100000)
    obs = "observacion" + str(random.randint(1990, 2020));
    est = "desarrollo"
    u = Proyecto(nombreP, plId, fechaIni, fechaFin, pres, obs, est)
    sesion.add(u)
    
    # Fases
    p=sesion.query(Proyecto.idProyecto).filter(Proyecto.nombreProyecto=="Edificio").first()
    
    dia1 = random.randint(1, 28)
    mes1 = random.randint(1, 12)
    anho1 = random.randint(1990, 1999)
    dia2 = random.randint(1, 28)
    mes2 = random.randint(1, 12)
    anho2 = random.randint(2000, 2020)
    fechaIni = str(mes2) + "/" + str(dia2) + "/" + str(anho2);
    fechaFin = str(mes1) + "/" + str(dia1) + "/" + str(anho1);
    f=Fase('Fase1_Terreno', 'miDescriocion', 'desarrollo',fechaIni, fechaFin,  p.idProyecto)
    nroFasesActuales=sesion.query(Fase).filter(Fase.idProyecto==f.idProyecto).count();
    sum=nroFasesActuales+1
    f.tag="F"+str(sum);
    sesion.add(f)
    
    dia1 = random.randint(1, 28)
    mes1 = random.randint(1, 12)
    anho1 = random.randint(1990, 1999)
    dia2 = random.randint(1, 28)
    mes2 = random.randint(1, 12)
    anho2 = random.randint(2000, 2020)
    fechaIni = str(mes2) + "/" + str(dia2) + "/" + str(anho2);
    fechaFin = str(mes1) + "/" + str(dia1) + "/" + str(anho1);
    f=Fase('Fase2_Cimiento', 'miDescriocion', 'desarrollo',fechaIni, fechaFin,  p.idProyecto)
    nroFasesActuales=sesion.query(Fase).filter(Fase.idProyecto==f.idProyecto).count();
    sum=nroFasesActuales+1
    f.tag="F"+str(sum);
    sesion.add(f)
    
    dia1 = random.randint(1, 28)
    mes1 = random.randint(1, 12)
    anho1 = random.randint(1990, 1999)
    dia2 = random.randint(1, 28)
    mes2 = random.randint(1, 12)
    anho2 = random.randint(2000, 2020)
    fechaIni = str(mes2) + "/" + str(dia2) + "/" + str(anho2);
    fechaFin = str(mes1) + "/" + str(dia1) + "/" + str(anho1);
    f=Fase('Fase3_Columnas', 'miDescriocion', 'activa',fechaIni, fechaFin,  p.idProyecto)
    nroFasesActuales=sesion.query(Fase).filter(Fase.idProyecto==f.idProyecto).count();
    sum=nroFasesActuales+1
    f.tag="F"+str(sum);
    sesion.add(f)
    
    #se debe activar el proyecto
    
    p.estado="activo"
    sesion.add(p)
    fases=sesion.query(Fase).filter(Fase.idProyecto==p.idProyecto).all()
    for fi in fases:
        fi.estado="activa"
        sesion.merge(fi)
    
    
    #Tipo de items 
    lista=[]
    a1=Atributos(None,'Tamanho', 2, 'N/A')
    a2=Atributos(None,'tipo', 1, 20)
    lista.append(a1)
    lista.append(a2)
    ti=TipoItem('arena','midescripcion', 'activo')
    miFase=sesion.query(Fase).filter(Fase.nombreFase=='Fase1_Terreno').first()
    ti.fase=miFase;
    ti.atributosItem=lista
    sesion.add(ti)
    
    lista=[]
    a1=Atributos(None,'Tamanho', 3, 'N/A')
    a2=Atributos(None,'tipo', 1, 20)
    a3=Atributos(None,'tipo2', 1, 20)
    lista.append(a1)
    lista.append(a2)
    lista.append(a3)
    ti=TipoItem('tipo2','midescripcion', 'activo')
    miFase=sesion.query(Fase).filter(Fase.nombreFase=='Fase1_Terreno').first()
    ti.fase=miFase;
    ti.atributosItem=lista
    sesion.add(ti)
    
    
    sesion.commit()
    sesion.close()