members update

This commit is contained in:
2026-04-30 21:35:23 -04:00
parent 5b21696067
commit 0461bad40f
4 changed files with 89 additions and 13 deletions
+64 -1
View File
@@ -4,11 +4,74 @@ 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, Members, ProductsDetails, ProductsDetails, ProvisionActions
from app.models import (MembersProducts, Products, Members)
from app.api.schemas.office_member_data import OfficeMemberDataSchema
from app.api.helpers.response_helper import ResponseHelper
from marshmallow import ValidationError
class OfficeCustomerService(BaseService):
@staticmethod
def update_customer_data(data):
try:
with db.session.begin():
logger.info(f"Incoming BackOffice Member data ==>>>> {data}")
validated_data = OfficeCustomerService.validate_data(data, OfficeMemberDataSchema())
member_uid = validated_data.get('member_uid')
member_account_name = validated_data.get('member_account_name')
member_firstname = validated_data.get('member_account_name')
member_lastname = validated_data.get('member_account_name')
member_full_address = validated_data.get('member_account_name')
member_email = validated_data.get('member_account_name')
member_phone = validated_data.get('member_account_name')
member_data = Members.get_member_by_uid(member_uid)
member_id = member_data.id
if member_data and member_id:
member_account_name = validated_data.get('member_account_name')
member_firstname = validated_data.get('member_account_name')
member_lastname = validated_data.get('member_account_name')
member_full_address = validated_data.get('member_account_name')
member_email = validated_data.get('member_account_name')
member_phone = validated_data.get('member_account_name')
profile_data = {
"member_account_name": member_account_name,
"member_firstname": member_firstname,
"member_lastname": member_lastname,
"member_full_address": member_full_address,
"member_email": member_email,
"member_phone": member_phone,
}
Members.set_office_update_profile(member_uid, profile_data)
response_data = {
"last_update": datetime.datetime.utcnow(),
"member_id": member_id
}
return ResponseHelper.success(data=response_data)
except ValidationError as err:
logger.error(f"Validation Error: {getattr(err, 'messages', str(err))}")
db.session.rollback()
return ResponseHelper.unprocessable_entity(result_description="Validation exception")
except ValueError as err:
logger.error(f"{getattr(err, 'messages', str(err))}")
db.session.rollback()
return ResponseHelper.error(result_description=str(err))
except Exception as e:
logger.error(f"An error occurred: {str(e)}", exc_info=True)
db.session.rollback()
return ResponseHelper.internal_server_error()
@staticmethod
def get_customer_data(filters=None):
try: