seb contents

This commit is contained in:
CHIEFSOFT\ameye
2025-10-18 04:18:06 -04:00
parent 88e96bf70a
commit 9d7909fb42
5 changed files with 62 additions and 3 deletions
+1
View File
@@ -3,3 +3,4 @@ from enum import Enum
class KafkaMessage(str, Enum): class KafkaMessage(str, Enum):
REFRESH_PRODUCT_SETTINGS = "REFRESH_PRODUCT_SETTINGS" REFRESH_PRODUCT_SETTINGS = "REFRESH_PRODUCT_SETTINGS"
FLUTTER_PAYMENT_RECEIVED = "FLUTTER_PAYMENT_RECEIVED" FLUTTER_PAYMENT_RECEIVED = "FLUTTER_PAYMENT_RECEIVED"
SITE_TRAFFIC_DATA = "SITE_TRAFFIC_DATA"
+8
View File
@@ -74,3 +74,11 @@ class SettingsItemsData:
"list_order": 1}, "list_order": 1},
} }
return data return data
@staticmethod
def get_site_blog_connect_settings():
data = {
"boolean_blog_connect_show": {"name": 'Show Blog Section', "controls": 'SELECT_NO_YES',
"active": True, "list_order": 0},
}
return data
+9
View File
@@ -608,6 +608,15 @@ def get_refresh_generatives():
result = GenerativesService.process_generatives_list(data) result = GenerativesService.process_generatives_list(data)
return jsonify(result) return jsonify(result)
# =====================================================
@api.route('/web/traffic', methods=['POST'])
# @token_required
def get_web_traffic():
# Call the dashboard service
data = request.get_json()
result = WebContentsService.get_web_trafic_data(data)
return jsonify(data)
# =================================================== # ===================================================
# Common Data # Common Data
+2 -1
View File
@@ -529,6 +529,7 @@ class MyProductsService(BaseService):
socialFields = SettingsItemsData.get_site_social_settings_data() socialFields = SettingsItemsData.get_site_social_settings_data()
aboutFields = SettingsItemsData.get_site_about_items() aboutFields = SettingsItemsData.get_site_about_items()
testimonialFields = SettingsItemsData.get_site_testimonial_settings() testimonialFields = SettingsItemsData.get_site_testimonial_settings()
blogConnectFields = SettingsItemsData.get_site_blog_connect_settings()
blogConnect = False blogConnect = False
if product_data.blog_product_id != None and product_data.blog_product_id != '': if product_data.blog_product_id != None and product_data.blog_product_id != '':
@@ -596,7 +597,7 @@ class MyProductsService(BaseService):
if blogConnect: if blogConnect:
settings_items["blog_connect_tab"] = {"title": 'Blog Connect', "controls": 'blog-connect-scheme', settings_items["blog_connect_tab"] = {"title": 'Blog Connect', "controls": 'blog-connect-scheme',
"active": '', "active": '',
"custom": True, "data": {}, "list_order": 9} "custom": False, "data": blogConnectFields, "list_order": 9}
# Simulate processing # Simulate processing
response_data = { response_data = {
+42 -2
View File
@@ -1,12 +1,13 @@
from flask import jsonify from flask import jsonify
from app.api.enums import KafkaMessage
from app.api.services import MyProductsService from app.api.services import MyProductsService
from app.utils.logger import logger from app.utils.logger import logger
from app.api.services.base_service import BaseService from app.api.services.base_service import BaseService
from sqlalchemy import func, desc from sqlalchemy import func, desc
from app.extensions import db from app.extensions import db
from app.models import MembersProductsSettings from app.models import MembersProductsSettings, MembersProducts
from threading import Thread
class WebContentsService(BaseService): class WebContentsService(BaseService):
@@ -52,3 +53,42 @@ class WebContentsService(BaseService):
except Exception as e: except Exception as e:
logger.error(f"An error occurred while getting dashboard data: {str(e)}", exc_info=True) logger.error(f"An error occurred while getting dashboard data: {str(e)}", exc_info=True)
return jsonify({"message": "Internal Server Error"}), 500 return jsonify({"message": "Internal Server Error"}), 500
@staticmethod
def get_web_trafic_data(data):
provision_uid = data.get('provision_uid', '')
membersSubResult = MembersProducts.get_member_product_by_subscription_uid(provision_uid)
if not membersSubResult:
return {
"message": "Invalid Subscription",
"error_message": "Error - Please select a valid product to view",
"data": None,
"error": f"Subscription with UID {provision_uid} does not exist."
}, 400
member_id = membersSubResult.member_id
product_id = membersSubResult.product_id
try:
response_data = {
"provision_uid": provision_uid,
"member_id": member_id,
"product_id": product_id,
"site_logo_text": "MY-GOOD-LOGO",
"site_contact_email": "email@specialemail.com",
"site_contact_phone": "911 111 1111",
}
logger.error(f"Going for Thread ******************** ")
thread = Thread(target=MyProductsService.async_send_settings_refresh_to_kafka,
args=(response_data, provision_uid, KafkaMessage.SITE_TRAFFIC_DATA))
thread.start()
logger.error(f"After the Thread ******************** ")
return response_data
except Exception as e:
logger.error(f"An error occurred while getting dashboard data: {str(e)}", exc_info=True)
return jsonify({"message": "Internal Server Error"}), 500