report dara
This commit is contained in:
@@ -281,7 +281,7 @@ def merms_report_topics():
|
|||||||
@jwt_required()
|
@jwt_required()
|
||||||
def merms_report_topics_payment():
|
def merms_report_topics_payment():
|
||||||
data = request.get_json()
|
data = request.get_json()
|
||||||
response = ReportService.process_report_topic_request(data)
|
response = ReportService.process_report_topic_item("PAYMENT", data)
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
|
||||||
@@ -289,7 +289,7 @@ def merms_report_topics_payment():
|
|||||||
@jwt_required()
|
@jwt_required()
|
||||||
def merms_report_topics_system():
|
def merms_report_topics_system():
|
||||||
data = request.get_json()
|
data = request.get_json()
|
||||||
response = ReportService.process_report_topic_request(data)
|
response = ReportService.process_report_topic_item("SYSTEM",data)
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
|
||||||
@@ -297,7 +297,7 @@ def merms_report_topics_system():
|
|||||||
@jwt_required()
|
@jwt_required()
|
||||||
def merms_report_topics_product():
|
def merms_report_topics_product():
|
||||||
data = request.get_json()
|
data = request.get_json()
|
||||||
response = ReportService.process_report_topic_request(data)
|
response = ReportService.process_report_topic_item("PRODUCT",data)
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
from marshmallow import Schema, fields
|
||||||
|
|
||||||
|
class ReportSchema(Schema):
|
||||||
|
token = fields.Str(required=True)
|
||||||
|
uid = fields.Str(required=True)
|
||||||
|
page = fields.Str(required=True)
|
||||||
@@ -1,4 +1,6 @@
|
|||||||
from flask import session, jsonify
|
from flask import session, jsonify
|
||||||
|
|
||||||
|
from app.api.schemas.report import ReportSchema
|
||||||
# from app.models.loan import Loan
|
# from app.models.loan import Loan
|
||||||
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
|
||||||
@@ -71,3 +73,59 @@ class ReportService(BaseService):
|
|||||||
|
|
||||||
}
|
}
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def process_report_topic_item(report_type, data):
|
||||||
|
try:
|
||||||
|
with db.session.begin():
|
||||||
|
logger.info(f"Incoming ReportService Item Data ==>>>> {data}")
|
||||||
|
validated_data = ReportService.validate_data(data, ReportSchema())
|
||||||
|
token = validated_data.get('token')
|
||||||
|
uid = validated_data.get('uid')
|
||||||
|
page = validated_data.get('page')
|
||||||
|
|
||||||
|
|
||||||
|
member_data = Members.get_member_by_uid(uid)
|
||||||
|
member_id = member_data.id
|
||||||
|
response_data =[]
|
||||||
|
|
||||||
|
if report_type == "Payment":
|
||||||
|
response_data = {
|
||||||
|
"last_update": datetime.datetime.utcnow(),
|
||||||
|
"member_id": member_id,
|
||||||
|
"payment": [],
|
||||||
|
}
|
||||||
|
|
||||||
|
if report_type == "Product":
|
||||||
|
response_data = {
|
||||||
|
"last_update": datetime.datetime.utcnow(),
|
||||||
|
"member_id": member_id,
|
||||||
|
"product": [],
|
||||||
|
}
|
||||||
|
|
||||||
|
if report_type == "System":
|
||||||
|
response_data = {
|
||||||
|
"last_update": datetime.datetime.utcnow(),
|
||||||
|
"member_id": member_id,
|
||||||
|
"system": [],
|
||||||
|
}
|
||||||
|
|
||||||
|
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()
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user