本文整理汇总了Python中sgp.managers.ItemMan.ItemManager.buscar_por_fase方法的典型用法代码示例。如果您正苦于以下问题:Python ItemManager.buscar_por_fase方法的具体用法?Python ItemManager.buscar_por_fase怎么用?Python ItemManager.buscar_por_fase使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sgp.managers.ItemMan.ItemManager
的用法示例。
在下文中一共展示了ItemManager.buscar_por_fase方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: revertir
# 需要导入模块: from sgp.managers.ItemMan import ItemManager [as 别名]
# 或者: from sgp.managers.ItemMan.ItemManager import buscar_por_fase [as 别名]
def revertir(self,*args,**kw):
id_item = kw["id_item"]
id_item = int(id_item)
im = ItemManager()
transaction.begin()
item_revertir = im.getById(id_item)
item_nuevo = Item()
item_nuevo.codigo = item_revertir.codigo
item_nuevo.identificador = item_revertir.identificador
item_nuevo.observacion = item_revertir.observacion
item_nuevo.estado = "inicial"
item_nuevo.complejidad = item_revertir.complejidad
item_nuevo.id_fase = item_revertir.id_fase
item_nuevo.id_tipo_item = item_revertir.id_tipo_item
item_nuevo.descripcion = item_revertir.descripcion
items_de_fase = im.buscar_por_fase(item_revertir.id_fase)
id_fase = item_revertir.id_fase
version = 0
for item in items_de_fase:
if item.version > version:
version = item.version
if item.codigo == item_revertir.codigo and item.actual == "true":
item.actual = "false"
version = version + 1
item_nuevo.version = version
item_nuevo.actual = 'true'
print "version",version
im.add(item_nuevo)
transaction.commit()
item_viejo = im.getById(id_item)
identificador = item_viejo.identificador
tipo_item = item_viejo.id_tipo_item
if tipo_item :
for atributo in item_viejo.atributos:
id_campo = atributo.id_campo
valor = atributo.valor
im.addAtributo(identificador,id_fase,version,id_campo,valor)
im.update(item_viejo)
item_viejo = im.getById(id_item)
item = im.getByIdentificadorFaseVersion(identificador,id_fase,version) #Item_nuevo
'''Copiar los adjuntos'''
if item_viejo.adjuntos :
for adjunto in item_viejo.adjuntos:
im.copiarAdjunto(item,adjunto)
im.update(item)
raise redirect('/item/items?id_fase='+ str(id_fase))
示例2: _do_get_provider_count_and_objs
# 需要导入模块: from sgp.managers.ItemMan import ItemManager [as 别名]
# 或者: from sgp.managers.ItemMan.ItemManager import buscar_por_fase [as 别名]
def _do_get_provider_count_and_objs(self, buscado="", **kw):
pm = ItemManager()
Campoes = pm.buscar_por_fase(self.id_fase)
return len(Campoes), Campoes
示例3: revertir
# 需要导入模块: from sgp.managers.ItemMan import ItemManager [as 别名]
# 或者: from sgp.managers.ItemMan.ItemManager import buscar_por_fase [as 别名]
def revertir(self, *args, **kw):
id_item = kw["id_item"]
id_item = int(id_item)
im = ItemManager()
transaction.begin()
item_revertir = im.getById(id_item)
item_nuevo = Item()
"""Copiar los campos"""
item_nuevo.codigo = item_revertir.codigo
item_nuevo.identificador = item_revertir.identificador
item_nuevo.observacion = item_revertir.observacion
item_nuevo.estado = "revision"
item_nuevo.complejidad = item_revertir.complejidad
item_nuevo.id_fase = item_revertir.id_fase
item_nuevo.id_tipo_item = item_revertir.id_tipo_item
item_nuevo.descripcion = item_revertir.descripcion
items_de_fase = im.buscar_por_fase(item_revertir.id_fase)
id_fase = item_revertir.id_fase
item_nuevo.id_linea_base = item_revertir.id_linea_base
# item_revertir.id_linea_base = None
version = 0
# '''Estado del item revertido'''
# if item_revertir.estado == 'aprobado':
# item_nuevo.estado = 'listo'
# else:
# item_nuevo.estado = item_revertir.estado
for item in items_de_fase:
if item.version > version:
version = item.version
if item.codigo == item_revertir.codigo and item.actual == "true":
item.actual = "false"
version = version + 1
item_nuevo.version = version
item_nuevo.actual = "true"
im.add(item_nuevo)
transaction.commit()
item_viejo = im.getById(id_item)
identificador = item_viejo.identificador
tipo_item = item_viejo.id_tipo_item
if tipo_item:
for atributo in item_viejo.atributos:
id_campo = atributo.id_campo
valor = atributo.valor
im.addAtributo(identificador, id_fase, version, id_campo, valor)
im.update(item_viejo)
transaction.begin()
item_viejo = im.getById(id_item)
item = im.getByIdentificadorFaseVersion(identificador, id_fase, version) # Item_nuevo
"""Copiar los adjuntos"""
if item_viejo.adjuntos:
for adjunto in item_viejo.adjuntos:
im.copiarAdjunto(item, adjunto)
im.update(item)
"""Recuperar Relaciones"""
rm = RelacionManager()
item = im.getByIdentificadorFaseVersion(identificador, id_fase, version) # Item_nuevo
relaciones = rm.getByItem(item_viejo.id_item)
id_item_nuevo = item.id_item
for relacion in relaciones:
transaction.begin()
if relacion.id_item1 == item_viejo.id_item:
item1 = item
item2 = im.getById(relacion.id_item2)
else:
item1 = im.getById(relacion.id_item1)
item2 = item
if item1.actual == "true" and item2.actual == "true":
if item1.id_fase == item2.id_fase: # son items de la misma fase
if not rm.tieneciclos(item1, item2): # no tiene ciclos
rm.add(item1, item2, "padre-hijo")
else:
rm.add(item1, item2, "antecesor-sucesor")
transaction.commit()
"""Marcar Para revision Item Relacionados"""
lbm = LineaBaseManager()
relaciones = rm.getByItem(id_item_nuevo)
for relacion in relaciones:
transaction.begin()
if relacion.id_item1 == id_item_nuevo:
item_revision = im.getById(relacion.id_item2)
else:
item_revision = im.getById(relacion.id_item1)
item_revision.estado = "revision"
if item_revision.id_linea_base != None:
linea_base = lbm.getById(item_revision.id_linea_base)
linea_base.estado = "no valido"
lbm.update(linea_base)
transaction.commit()
transaction.commit()
raise redirect("/item/items?id_fase=" + str(id_fase))