Пример #1
0
    def post(self,*args, **kw):
        '''New'''
        p = Item()
        pm = ItemManager()
        params = kw
        complejidad = [1,2,3,4,5,6,7,8,9,10]

        if params['tipo_items'] != '-1':
            ti = TipoItemManager()
            tipo= ti.getById(params['tipo_items'])
            campos = tipo.campos
            error, lista = self.verificarCampos(campos, **kw)
            if error:
                return dict(value=kw, model=self.model.__name__,campos = lista,id_fase=params['id_fase'],tipo_items=kw['tipo_items'], comp = complejidad,i =kw['identificador'],o=kw['observacion'], c = int(params['complejidad']), d =kw['descripcion'])
            if pm.existeIdentificador(params['identificador'],int(params['id_fase'])):
                flash(('Error: Ya existe un item con el nombre <<' + params['identificador'] + '>> en esta fase.'), 'Error')
                return dict(value=kw, model=self.model.__name__,campos = lista,id_fase=params['id_fase'],tipo_items=kw['tipo_items'], comp = complejidad,i ="",o=kw['observacion'], c = int(params['complejidad']), d =kw['descripcion'])
            

        p.identificador = params['identificador']
        p.observacion = params['observacion']
        p.estado = 'inicial'
        p.complejidad = params['complejidad']
        p.descripcion = params['descripcion']
        p.id_fase = int(session['id_fase'])
        p.codigo = pm.generar_codigo(int(session['id_fase']), int(params['tipo_items']))
        p.version = 1
        p.actual = 'true'
        
        if params['tipo_items'] != '-1':
            ti = TipoItemManager()
            tipo= ti.getById(params['tipo_items'])
            p.tipo = tipo
            
        pm.add(p)

        if params['tipo_items'] != '-1':
            ti = TipoItemManager()
            tipo= ti.getById(params['tipo_items'])
            campos = tipo.campos
            for campo in campos:   
                nombre_campo = campo.nombre
                valor = params[nombre_campo]   
                pm.addAtributo(params['identificador'],params['id_fase'],1,campo.id_campo,valor)  
                
                  
        item = pm.getByIdentificadorFaseVersion(params['identificador'],params['id_fase'],1)        
        '''Adjuntar nuevos Archivos'''
        if params['submit'] == 'Adjuntar':
            '''Hay que adjuntar archivos''' 
            id_item = item.id_item
            raise redirect('/item/adjuntar?id_item='+ str(id_item))            
      
        raise redirect('/item/items?id_fase='+ params['id_fase'])
Пример #2
0
    def post(self,*args, **kw):
        '''Metodo que crea un nuevo item'''
        p = Item()
        pm = ItemManager()
        params = kw
        complejidad = [1,2,3,4,5,6,7,8,9,10]
        try:
            fase, navegacion = self.getNavegacionFromIdFase(params['id_fase'])
        except:
            flash(('Direccion no valida.'), 'error')
            raise redirect("/index")
        if not(Secure().FiltrarByFase(fase.id_fase, 'creacion_item')):
            flash(('USTED NO CUENTA CON PERMISOS SUFICIENTES.'), 'error')
            raise redirect("/index")
        if params['submit'] == 'cancelar':
            raise redirect('/item/items',id_fase=fase.id_fase)        
        lista=[]
        if params['tipo_items'] != '-1':
            ti = TipoItemManager()
            tipo= ti.getById(params['tipo_items'])
            campos = tipo.campos
            error, lista = self.verificarCampos(campos, **kw)
            if error:
                return dict(value=kw, model=self.model.__name__,campos = lista,id_fase=params['id_fase'],tipo_items=kw['tipo_items'], comp = complejidad,i =kw['identificador'],o=kw['observacion'], c = int(params['complejidad']), d =kw['descripcion'], navegacion=navegacion)
        if pm.existeIdentificador(params['identificador'],int(params['id_fase'])):
            flash(('Error: Ya existe un item con el nombre <<' + params['identificador'] + '>> en esta fase.'), 'Error')
            return dict(value=kw, model=self.model.__name__,campos = lista,id_fase=params['id_fase'],tipo_items=kw['tipo_items'], comp = complejidad,i ="",o=kw['observacion'], c = int(params['complejidad']), d =kw['descripcion'], navegacion=navegacion)
        

        p.identificador = params['identificador']
        p.observacion = params['observacion']
        p.estado = 'inicial'
        p.complejidad = params['complejidad']
        p.descripcion = params['descripcion']
        p.id_fase = int(kw['id_fase'])
        p.codigo = pm.generar_codigo(int(kw['id_fase']), int(params['tipo_items']))
        p.version = 1
        p.actual = 'true'
        if params['tipo_items'] != '-1':
            ti = TipoItemManager()
            tipo= ti.getById(params['tipo_items'])
            p.tipo = tipo
        
        pm.add(p)

        if params['tipo_items'] != '-1':
            ti = TipoItemManager()
            tipo= ti.getById(params['tipo_items'])
            campos = tipo.campos
            for campo in campos:   
                nombre_campo = campo.nombre
                valor = params[nombre_campo]   
                pm.addAtributo(params['identificador'],params['id_fase'],1,campo.id_campo,valor)  
                     
        item = pm.getByIdentificadorFaseVersion(params['identificador'],params['id_fase'],1)        
        '''Adjuntar nuevos Archivos'''
        if params['submit'] == 'Adjuntar':
            '''Hay que adjuntar archivos''' 
            id_item = item.id_item
            raise redirect('/item/adjuntar',id_item=id_item, contador = 1)            
        raise redirect('/item/items',id_fase=params['id_fase'])