Files
gzth/yuthon_catering/controllers/decorators.py
T
2026-04-26 13:45:16 +08:00

24 lines
665 B
Python

# -*- coding: utf-8 -*-
import json
import logging
from functools import wraps
from odoo.exceptions import AccessDenied, UserError, ValidationError
_logger = logging.getLogger(__name__)
def exception_handle(func):
@wraps(func)
def wrapper(*args, **kwargs):
try:
return func(*args, **kwargs)
except (AccessDenied, UserError, ValidationError) as e:
_logger.info(str(e))
return json.dumps({'data': '', 'code': 500, 'message': str(e)})
except Exception as e:
_logger.exception(e)
return json.dumps({'data': '', 'code': 500, 'message': f'Server Error'})
return wrapper