From 0c13ff1d4033e715da68cca45d704e91cb20c406 Mon Sep 17 00:00:00 2001 From: "CHIEFSOFT\\ameye" Date: Sun, 3 Aug 2025 06:52:21 -0400 Subject: [PATCH] product status --- app/api/services/products.py | 37 ++++++++++++++++++++++++++---------- 1 file changed, 27 insertions(+), 10 deletions(-) diff --git a/app/api/services/products.py b/app/api/services/products.py index d239312..c82dcc9 100644 --- a/app/api/services/products.py +++ b/app/api/services/products.py @@ -38,17 +38,20 @@ class ProductsService(BaseService): member_id = member_data.id # get user subscription member_subs_data =[] - product_status=[] + sub_status=[] member_subs = MembersProducts.get_member_productlist_by_member_id(member_id) - # for t in member_subs: - # member_subs_data.append({ - # 'product_id': t.product_id, - # 'status': t.status, - # 'internal_url': t.internal_url, - # 'dns_group': t.dns_group, - # }) - # product_status[t.product_id] = t.status + for tt in member_subs: + sub_status.append({ + 'product_id': tt.product_id, + 'subscription_uid': tt.uid, + 'status': tt.status, + 'internal_url': tt.internal_url, + 'dns_group': tt.dns_group, + }) + logger.info(f"Member Product Sub Data ****** *****: {sub_status}") + + products = Products.get_user_product_list(member_id) product_data=[] @@ -56,17 +59,30 @@ class ProductsService(BaseService): for t in products: currentStatus = t.status - + #filtered_list = None + filtered_list = [item for item in sub_status if item["product_id"] == t.product_id] + # logger.info(f"Member Product Filtered Sub Data ****** *****: {filtered_list}") + if filtered_list: + product_sub_result = filtered_list[0] + currentStatus = product_sub_result["status"] + logger.info(f"Member Product Filtered Sub Data Status ****** *****: {currentStatus}") + icon_style = '' st_text = "Activate Now" # match str(t.status): if currentStatus == 1: st_text = "Coming Soon" + if currentStatus == 5: st_text = "Activate Now" if currentStatus == 6: st_text = "Creating" + icon_style="creating" + + if currentStatus == 7: + st_text = "Manage" + icon_style ="manage" product_data.append({ @@ -81,6 +97,7 @@ class ProductsService(BaseService): 'updated': t.updated.isoformat() if t.updated else None, 'banner': t.banner, 'prov_status': 5, + 'icon_style': icon_style, 'status_text': st_text })