diff --git a/app/api/routes/routes.py b/app/api/routes/routes.py index 05481c8..c23fc80 100644 --- a/app/api/routes/routes.py +++ b/app/api/routes/routes.py @@ -13,7 +13,7 @@ from app.api.services import ( SubscriptionsService, CommonDataService, OfficeCustomerService, - GenerativesService, OfficeUsersService, OfficeTemplatesService, OfficeCountryService + GenerativesService, OfficeUsersService, OfficeTemplatesService, OfficeCountryService, WebsiteService ) from app.api.services.comments import CommentsService from app.models import Country @@ -391,6 +391,20 @@ def test_check(): # response = ProductsService.process_request(data) return {"status": "ok"}, 200 +# ====================================================== +@api.route('/website/contact', methods=['POST']) +def website_contact(): + data = request.get_json() + + # Save Website Contact Data + result = WebsiteService.save_web_contact_data(data) + + # # Check if result is a tuple (error response) + # if isinstance(result, tuple): + # return jsonify(result[0]), result[1] + + return jsonify(result) + # ====================================================== @api.route('/office/login', methods=['POST']) diff --git a/app/api/services/__init__.py b/app/api/services/__init__.py index 62318e1..1c41c24 100644 --- a/app/api/services/__init__.py +++ b/app/api/services/__init__.py @@ -12,6 +12,9 @@ from app.api.services.common_data import CommonDataService from app.api.services.genaratives import GenerativesService from app.api.services.comments import CommentsService +#WEBSITE +from app.api.services.website import WebsiteService + # OFFICE from app.api.services.office_customer import OfficeCustomerService from app.api.services.office_dashboard import OfficeDashboardService diff --git a/app/api/services/website.py b/app/api/services/website.py new file mode 100644 index 0000000..dd63743 --- /dev/null +++ b/app/api/services/website.py @@ -0,0 +1,34 @@ +from flask import jsonify + +from app.api.enums import KafkaMessage +from app.api.services import MyProductsService +from app.utils.logger import logger +from app.api.services.base_service import BaseService +from sqlalchemy import func, desc +from app.extensions import db + +from threading import Thread + + +class WebsiteService(BaseService): + + @staticmethod + def save_web_contact_data(data): + provision_uid = data.get('provision_uid', '') + city = data.get('city', '') + latitude = data.get('latitude', '') + longitude = data.get('longitude', '') + + try: + response_data = { + "provision_uid": provision_uid, + "city": city, + "latitude": latitude, + "longitude": longitude, + } + + 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