From e4ed08e592012433ff7541ca582be77628248915 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A1zaro=20Costa?= Date: Fri, 22 May 2020 10:45:01 +0100 Subject: [PATCH] code updated --- .../v5_0_2/NodeEntities/E68_Dissolution.py | 4 +-- .../CRM/v5_0_2/NodeEntities/E74_Group.py | 3 +- .../CRM/v5_0_2/NodeEntities/E98_Currency.py | 6 ++-- src/Routes/routes.py | 23 +++++---------- src/Utils/Utils.py | 29 +++++++++++++++++-- 5 files changed, 41 insertions(+), 24 deletions(-) diff --git a/src/Models/CRM/v5_0_2/NodeEntities/E68_Dissolution.py b/src/Models/CRM/v5_0_2/NodeEntities/E68_Dissolution.py index cbd0791db..03ffb58f3 100644 --- a/src/Models/CRM/v5_0_2/NodeEntities/E68_Dissolution.py +++ b/src/Models/CRM/v5_0_2/NodeEntities/E68_Dissolution.py @@ -2,16 +2,16 @@ from neomodel import RelationshipTo from src.Models.CRM.v5_0_2.NodeEntities.E64_End_of_Existence import E64_End_of_Existence, E64_End_of_ExistenceSchema from src.Models.CRM.v5_0_2.NodeProperties.P99_dissolved import P99_dissolved +from src.GCF.decorators.OntologyClass import decorator_schema +@decorator_schema class E68_DissolutionSchema(E64_End_of_ExistenceSchema): dissolved = fields.List(fields.Nested( "src.Models.CRM.v5_0_2.NodeEntities.E74_Group.E74_GroupSchema") ) -from src.GCF.decorators.OntologyClass import decorator_schema -@decorator_schema class E68_Dissolution(E64_End_of_Existence): dissolved = RelationshipTo( ".E74_Group.E74_Group", "P99_dissolved", model=P99_dissolved diff --git a/src/Models/CRM/v5_0_2/NodeEntities/E74_Group.py b/src/Models/CRM/v5_0_2/NodeEntities/E74_Group.py index fdb7d2756..2185a97c8 100644 --- a/src/Models/CRM/v5_0_2/NodeEntities/E74_Group.py +++ b/src/Models/CRM/v5_0_2/NodeEntities/E74_Group.py @@ -9,8 +9,7 @@ @decorator_schema class E74_GroupSchema(E39_ActorSchema): - has_current_or_former_member = fields.List(fields.Nested(E39_ActorSchema) - ) + has_current_or_former_member = fields.List(fields.Nested(E39_ActorSchema)) class E74_Group(E39_Actor): diff --git a/src/Models/CRM/v5_0_2/NodeEntities/E98_Currency.py b/src/Models/CRM/v5_0_2/NodeEntities/E98_Currency.py index a0ff42aad..377d119d5 100644 --- a/src/Models/CRM/v5_0_2/NodeEntities/E98_Currency.py +++ b/src/Models/CRM/v5_0_2/NodeEntities/E98_Currency.py @@ -1,14 +1,14 @@ -from src.Models.CRM.v5_0_2.NodeEntities.E55_Type import E55_Type, E55_TypeSchema from src.Models.CRM.v5_0_2.NodeEntities.E58_Measurement_Unit import E58_Measurement_Unit, E58_Measurement_UnitSchema +from src.Models.CRM.v5_0_2.NodeEntities.E55_Type import E55_Type, E55_TypeSchema from src.GCF.decorators.OntologyClass import decorator_schema @decorator_schema -class E98_CurrencySchema(E55_TypeSchema, E58_Measurement_UnitSchema): +class E98_CurrencySchema(E58_Measurement_UnitSchema, E55_TypeSchema): pass -class E98_Currency(E55_Type, E58_Measurement_Unit): +class E98_Currency(E58_Measurement_Unit, E55_Type): pass def __init__(self, schema=None, *args, **kwargs): diff --git a/src/Routes/routes.py b/src/Routes/routes.py index 782dcb547..7bca55fa5 100644 --- a/src/Routes/routes.py +++ b/src/Routes/routes.py @@ -3,11 +3,13 @@ import os, sys import argparse + # returns the project root path (assumes that the script is started from src/Routes/routes.py) def get_project_root(): """Returns project root folder.""" return Path(__file__).parent.parent.parent + # append project root to sys paths so that src.** modules can be found by Python when running the app from a script # From https://leemendelowitz.github.io/blog/how-does-python-find-packages.html print("Archgraph running at " + get_project_root().as_posix()) @@ -31,7 +33,8 @@ def get_project_root(): else: config.DATABASE_URL = "bolt://neo4j:password@localhost:7687" -from src.Routes.mongo import insert_template_in_mongo, get_all_records_from_collection, get_schema_from_mongo, get_templates_from_mongo_by_classes_name +from src.Routes.mongo import insert_template_in_mongo, get_all_records_from_collection, get_schema_from_mongo, \ + get_templates_from_mongo_by_classes_name app = Flask(__name__) @@ -84,7 +87,7 @@ def get_record(uid): # if record is not None: # return make_response(jsonify(json.loads(record["data"])), 201) # else: - #template = json.loads(template_str) + # template = json.loads(template_str) template = request.json node = get_node_by_uid(uid) @@ -115,7 +118,7 @@ def response_get_schema_node(uid): @cross_origin() def insert_template_in_mongodb(uid): node = get_node_by_uid(uid) - #todo descomentar isto + # todo descomentar isto # template = request.json # template = { # "E52_Time_Span": { @@ -144,9 +147,6 @@ def get_schema(uid): # "E52_Time_Span": { # "has_value": "DataObject"} # } - # todo descomentar isto - #template = json.loads(template_str) - # template = { # "E52_Time_Span": { @@ -180,24 +180,17 @@ def get_templates_from_entity(uid): return make_response(jsonify(message="Node doesn't exists"), 404) -# @app.route("/create", methods=["POST"]) -# def create(): -# return "create" - - # update node @app.route("/", methods=["POST"]) @cross_origin() def response_update(uid): - node = get_node_by_uid(uid) if node is not None: - #todo meter o template no body tambem data = request.json merged = updated_node(node, data['data'], data['template']) if merged: - #update_data_in_mongo(uid, node.encodeJSON()) - #get_all_records_from_collection("data") + # update_data_in_mongo(uid, node.encodeJSON()) + # get_all_records_from_collection("data") new_data = build_next_json(node, data['template']) return make_response(jsonify(new_data), 201) else: diff --git a/src/Utils/Utils.py b/src/Utils/Utils.py index b305196b6..ff0eac9d0 100644 --- a/src/Utils/Utils.py +++ b/src/Utils/Utils.py @@ -72,12 +72,37 @@ from src.Models.CRM.v5_0_2.NodeEntities.E53_Place import E53_Place, E53_PlaceSchema from src.Models.CRM.v5_0_2.NodeEntities.E54_Dimension import E54_Dimension, E54_DimensionSchema from src.Models.CRM.v5_0_2.NodeEntities.E55_Type import E55_Type, E55_TypeSchema - +from src.Models.CRM.v5_0_2.NodeEntities.E56_Language import E56_Language, E56_LanguageSchema +from src.Models.CRM.v5_0_2.NodeEntities.E57_Material import E57_Material, E57_MaterialSchema +from src.Models.CRM.v5_0_2.NodeEntities.E58_Measurement_Unit import E58_Measurement_Unit, E58_Measurement_UnitSchema +from src.Models.CRM.v5_0_2.NodeEntities.E63_Beggining_of_Existence import E63_Beggining_of_Existence, E63_Beggining_of_ExistenceSchema +from src.Models.CRM.v5_0_2.NodeEntities.E64_End_of_Existence import E64_End_of_Existence, E64_End_of_ExistenceSchema +from src.Models.CRM.v5_0_2.NodeEntities.E65_Creation import E65_Creation, E65_CreationSchema +from src.Models.CRM.v5_0_2.NodeEntities.E66_Formation import E66_Formation, E66_FormationSchema +from src.Models.CRM.v5_0_2.NodeEntities.E67_Birth import E67_Birth, E67_BirthSchema +from src.Models.CRM.v5_0_2.NodeEntities.E68_Dissolution import E68_Dissolution, E68_DissolutionSchema +from src.Models.CRM.v5_0_2.NodeEntities.E69_Death import E69_Death, E69_DeathSchema from src.Models.CRM.v5_0_2.NodeEntities.E70_Thing import E70_Thing, E70_ThingSchema +from src.Models.CRM.v5_0_2.NodeEntities.E71_Human_Made_Thing import E71_Human_Made_Thing, E71_Human_Made_ThingSchema from src.Models.CRM.v5_0_2.NodeEntities.E72_Legal_Object import E72_Legal_Object, E72_Legal_ObjectSchema +from src.Models.CRM.v5_0_2.NodeEntities.E73_Information_Object import E73_Information_Object, E73_Information_ObjectSchema +from src.Models.CRM.v5_0_2.NodeEntities.E74_Group import E74_Group, E74_GroupSchema from src.Models.CRM.v5_0_2.NodeEntities.E77_Persistent_Item import E77_Persistent_Item, E77_Persistent_ItemSchema +from src.Models.CRM.v5_0_2.NodeEntities.E78_Curated_Holding import E78_Curated_Holding, E78_Curated_HoldingSchema +from src.Models.CRM.v5_0_2.NodeEntities.E79_Part_Addition import E79_Part_Addition, E79_Part_AdditionSchema +from src.Models.CRM.v5_0_2.NodeEntities.E80_Part_Removal import E80_Part_Removal, E80_Part_RemovalSchema +from src.Models.CRM.v5_0_2.NodeEntities.E81_Transformation import E81_Transformation, E81_TransformationSchema from src.Models.CRM.v5_0_2.NodeEntities.E83_Type_Creation import E83_Type_Creation, E83_Type_CreationSchema - +from src.Models.CRM.v5_0_2.NodeEntities.E85_Joining import E85_Joining, E85_JoiningSchema +from src.Models.CRM.v5_0_2.NodeEntities.E86_Leaving import E86_Leaving, E86_LeavingSchema +from src.Models.CRM.v5_0_2.NodeEntities.E87_Curation_Activity import E87_Curation_Activity, E87_Curation_ActivitySchema +from src.Models.CRM.v5_0_2.NodeEntities.E89_Propositional_Object import E89_Propositional_Object, E89_Propositional_ObjectSchema +from src.Models.CRM.v5_0_2.NodeEntities.E90_Symbolic_Object import E90_Symbolic_Object, E90_Symbolic_ObjectSchema +from src.Models.CRM.v5_0_2.NodeEntities.E92_Spacetime_Volume import E92_Spacetime_Volume, E92_Spacetime_VolumeSchema +from src.Models.CRM.v5_0_2.NodeEntities.E93_Presence import E93_Presence, E93_PresenceSchema +from src.Models.CRM.v5_0_2.NodeEntities.E95_Purchase import E95_Purchase, E95_PurchaseSchema +from src.Models.CRM.v5_0_2.NodeEntities.E97_Monetary_Amount import E97_Monetary_Amount, E97_Monetary_AmountSchema +from src.Models.CRM.v5_0_2.NodeEntities.E99_Product_Type import E99_Product_Type, E99_Product_TypeSchema # TODO nao apagar estes importes import src.Utils.Utils as self