def asosiar_riesgos_sugeridos_proyecto(self, riesgos, proyecto): p_h_r = ProyectoHasRiesgoDao() riesgo_dao = RiesgoDao() subcategoria_dao = SubcategoriaDao() categoria_dao = CategoriaDao() rbs_dao = RbsDao() rbs_controller = RbsController() rbs = rbs_controller.obtener_rbs_general(proyecto.gerente.gerente_id) rbs_model = rbs_dao.get_rbs_gerente_id(proyecto.gerente) for riesgo in riesgos: aux = riesgo_dao.obtener_riesgo(riesgo) sub_categoria_aux = aux.sub_categoria try: sub_aux = self.buscar_sub_categoria_by_uid( rbs, sub_categoria_aux) if sub_aux: riesgo_nuevo = riesgo_dao.registrar_riesgo( aux.riesgo_nombre, "Sin Causa definida", "Sin Evento definido", "Sin efecto definido", 0, 0, sub_aux) else: print("EEEEEEEEEEEE", sub_categoria_aux.categoria, rbs_model) print("CATENOMBRE", sub_categoria_aux.categoria.categoria_nombre) categoria_aux = categoria_dao.duplicar_categoria_2( sub_categoria_aux.categoria, rbs_model) print("CCCC", categoria_aux) sub_categoria_aux = subcategoria_dao.duplicar_sub_categoria_2( categoria_aux, sub_categoria_aux) print("SSSSSSS", sub_categoria_aux) rbs = rbs_controller.obtener_rbs_general( proyecto.gerente.gerente_id) print("RBSSSSS", rbs) riesgo_nuevo = riesgo_dao.clonar_riesgo( aux.riesgo_nombre, aux.riesgo_uid, sub_categoria_aux) print("RRRRRRRR", riesgo_nuevo) p_h_r.registrar_proyecto_riesgo_editado(proyecto, riesgo_nuevo) except Exception as e: raise e finally: pass return True
def registrar_riesgo(self, nombre, causa, evento, efecto, tipo, subcategoria): riesgo_dao = RiesgoDao() return riesgo_dao.registrar_riesgo(nombre, causa, evento, efecto, tipo, subcategoria)