diff --git a/SQL/site_data.sql b/SQL/site_data.sql index 9108f52..d347921 100644 --- a/SQL/site_data.sql +++ b/SQL/site_data.sql @@ -151,6 +151,9 @@ UNIQUE (member_id, product_id); ALTER TABLE members_products ADD provision_port INT DEFAULT 0; ALTER TABLE members_products ADD primary_server VARCHAR(100); +ALTER TABLE members_products ADD db_status INT DEFAULT 0; +ALTER TABLE members_products ADD provision_status INT DEFAULT 0; +ALTER TABLE members_products ADD p_file INT DEFAULT 0; diff --git a/app/api/routes/routes.py b/app/api/routes/routes.py index 7a2cec3..b148496 100644 --- a/app/api/routes/routes.py +++ b/app/api/routes/routes.py @@ -168,6 +168,14 @@ def myproduct_provision(): response = MyProductsService.process_provision(data) return response +@api.route("/panel/myproduct/provision-actions", methods=["POST"]) +def myproduct_provision_actions(): + data = request.get_json() + logger.info(f"Route MyProduct Provision Actions ==>>>> {data}") + response = MyProductsService.process_provision_actions(data) + return response + + # /panel/account/calendar @api.route("/panel/account/calendar", methods=["POST"]) diff --git a/app/api/services/myproduct.py b/app/api/services/myproduct.py index f234516..31c3c0c 100644 --- a/app/api/services/myproduct.py +++ b/app/api/services/myproduct.py @@ -15,6 +15,10 @@ from app.config import Config class MyProductsService(BaseService): + @staticmethod + def process_provision_actions(data): + pass + @staticmethod def process_provision(data): try: @@ -39,13 +43,22 @@ class MyProductsService(BaseService): logger.info(f"GET HERE ******************************** : {data}", exc_info=True) subscription = MembersProducts.get_member_product_by_product_member_id(member_id, product_id) - provision_activities = ProvisionActions.get_provision_action_by_member_id(member_id, 4) + provision_activities = ProvisionActions.get_provision_action_by_product_uid(subscription.uid, 4) + provision_activities_data =[] + for t in provision_activities: + provision_activities_data.append({ + 'id': t.id, + 'uid': t.uid, + 'action': t.action, + 'added': t.added.isoformat() if t.added else None, + }) + response_data = { "subscription_uid": subscription.uid, "subscription_id": subscription.id, "last_update": datetime.datetime.utcnow(), "percent_completed": random.randint(10, 99), - "activities": provision_activities + "activities": provision_activities_data } return ResponseHelper.success(data=response_data) diff --git a/app/models/provision_actions.py b/app/models/provision_actions.py index 3d4cbba..0c15acb 100644 --- a/app/models/provision_actions.py +++ b/app/models/provision_actions.py @@ -39,8 +39,9 @@ class ProvisionActions(db.Model): @classmethod def get_provision_action_by_product_uid(cls, product_uid,limit): - provision_action = cls.query.all() - provision_action = cls.query.filter_by(product_uid=product_uid).limit(limit).all() + # provision_action = cls.query.all() + # provision_action = cls.query.filter_by(product_uid=product_uid).limit(limit).all() + provision_action = cls.query.filter_by(product_uid=str(product_uid)).limit(limit).all() if not provision_action: return None return provision_action