Added AWS SES email
This commit is contained in:
@@ -741,7 +741,7 @@ def get_subscription_transaction_office():
|
||||
def get_recent_signup_office():
|
||||
# Call the dashboard service
|
||||
filters = {}
|
||||
result = OfficeDashboardService.get_payments_data(filters)
|
||||
result = OfficeDashboardService.get_recent_signup_data(filters)
|
||||
return jsonify(result)
|
||||
|
||||
|
||||
@@ -930,3 +930,10 @@ def refresh():
|
||||
# logger.info(f"Authorize refresh request received: {data}")
|
||||
response = AuthorizationService.process_refresh_request()
|
||||
return response
|
||||
|
||||
|
||||
@api.route("/cron/report-subscription", methods=["GET"])
|
||||
def report_subs():
|
||||
data = {}
|
||||
AccountService.process_test_email(data)
|
||||
return {"status": "ok"}, 200
|
||||
@@ -6,8 +6,6 @@ from app.config import settings
|
||||
from app.utils.logger import logger
|
||||
from app.api.services.base_service import BaseService
|
||||
from sqlalchemy import func, desc
|
||||
from datetime import datetime, timedelta, timezone
|
||||
from app.extensions import db
|
||||
from app.models import MembersProducts, Products, Payments, Members, CustomTemplates, ProductsTemplates, MembersProfile, \
|
||||
ProductsDetails, MembersWebfiles
|
||||
|
||||
@@ -226,7 +224,6 @@ class OfficeDashboardService(BaseService):
|
||||
|
||||
return products_result
|
||||
|
||||
|
||||
@staticmethod
|
||||
def get_office_product_templates(filters):
|
||||
|
||||
@@ -594,4 +591,57 @@ class OfficeDashboardService(BaseService):
|
||||
|
||||
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
|
||||
return jsonify({"message": "Internal Server Error"}), 500
|
||||
|
||||
@staticmethod
|
||||
def get_recent_signup_data(filters):
|
||||
try:
|
||||
if filters is None:
|
||||
filters = {}
|
||||
|
||||
# Extract pagination parameters
|
||||
page = int(filters.get('page', 1))
|
||||
limit = int(filters.get('limit', 20))
|
||||
|
||||
# Ensure page and limit are valid
|
||||
if page < 1:
|
||||
page = 1
|
||||
if limit < 1 or limit > 100:
|
||||
limit = 20
|
||||
|
||||
membersList, total_count = Members.get_all_member(None,None,1,30)
|
||||
# Convert loans to dictionary format
|
||||
member_data = []
|
||||
for member in membersList:
|
||||
member_data.append({
|
||||
'id': member.id,
|
||||
'username': member.username,
|
||||
'email': member.email,
|
||||
'firstname': member.firstname,
|
||||
'lastname': member.lastname,
|
||||
'country': member.country,
|
||||
'member_uid': member.uid,
|
||||
'profile_completed': member.profile_completed,
|
||||
"added": member.added,
|
||||
})
|
||||
|
||||
|
||||
|
||||
response_data = {
|
||||
'members': member_data,
|
||||
'count': 30,
|
||||
'pagination': {
|
||||
'total_count': total_count,
|
||||
'total_pages': 1,
|
||||
'current_page': page,
|
||||
'limit': limit,
|
||||
'has_next': page < 1,
|
||||
'has_prev': page > 1
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
Reference in New Issue
Block a user