33 lines
1008 B
Python
33 lines
1008 B
Python
from app.eco.enums import TransactionType
|
|
from flask import jsonify
|
|
from marshmallow import ValidationError
|
|
import logging
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
class BaseService:
|
|
TRANSACTION_TYPE = None
|
|
|
|
@classmethod
|
|
def validate_data(cls, data, schema):
|
|
"""
|
|
Validate input data based on the provided schema.
|
|
"""
|
|
logger.info(f"Processing {cls.TRANSACTION_TYPE} request")
|
|
return schema.load(data)
|
|
|
|
# @classmethod
|
|
# def log_session(cls, validated_data):
|
|
# """
|
|
# Create a new session.
|
|
# """
|
|
# channel = "USSD" if validated_data.get("channel") is None else validated_data.get("channel")
|
|
|
|
# return Session.create_session(
|
|
# session_id = validated_data.get("transactionId"),
|
|
# customer_id = validated_data.get('customerId', None),
|
|
# account_id = validated_data.get("accountId", None),
|
|
# type = cls.TRANSACTION_TYPE,
|
|
# channel = channel,
|
|
# )
|