|
4 | 4 | from constants import StatusCode, StatusMessage
|
5 | 5 | from logger import setup_logger
|
6 | 6 | from services import UsageService
|
7 |
| -from settings import PAYMENT_MODE_FREECALL_VALUE |
8 |
| -from utils import validate_request, make_response |
| 7 | +from utils import validate_request, make_response, usage_record_add_verify_fields |
9 | 8 |
|
10 | 9 | usage_service = UsageService()
|
11 | 10 |
|
|
16 | 15 | 'service_method', 'group_id', 'status', 'start_time', 'end_time']
|
17 | 16 |
|
18 | 17 |
|
19 |
| -def add_verify_fields(usage_detail_dict): |
20 |
| - new_required_keys = { |
21 |
| - 'usage_type', 'status', 'usage_value', 'start_time', 'end_time', |
22 |
| - 'created_at', 'payment_mode', 'group_id', 'registry_address_key', |
23 |
| - 'ethereum_json_rpc_endpoint', 'response_time', 'response_code', 'error_message', |
24 |
| - 'version', 'client_type', 'user_details', 'channel_id', 'operation', 'user_address', |
25 |
| - 'username', 'org_id', 'service_id', 'resource', 'request_id' |
26 |
| - } |
27 |
| - for key in new_required_keys: |
28 |
| - if (key not in usage_detail_dict) or (usage_detail_dict[key] == ""): |
29 |
| - usage_detail_dict[key] = None |
30 |
| - |
31 |
| - if usage_detail_dict['username'] is not None and usage_detail_dict['user_address'] is None: |
32 |
| - usage_detail_dict['payment_mode'] = PAYMENT_MODE_FREECALL_VALUE |
33 |
| - else: |
34 |
| - usage_detail_dict['payment_mode'] = 'paid' |
35 |
| - return usage_detail_dict |
36 |
| - |
37 |
| - |
38 | 18 | def main(event, context):
|
39 |
| - usage_detail_dict = json.loads(event['body']) |
| 19 | + request_dict = json.loads(event['body']) |
40 | 20 |
|
41 | 21 | try:
|
42 |
| - if validate_request(required_keys, usage_detail_dict): |
43 |
| - usage_detail_dict = add_verify_fields(usage_detail_dict) |
| 22 | + if validate_request(required_keys, request_dict): |
| 23 | + usage_detail_dict = usage_record_add_verify_fields(request_dict) |
| 24 | + print(f"usage record after modification: {usage_detail_dict}") |
44 | 25 | usage_service.save_usage_details(usage_detail_dict)
|
45 | 26 | response = make_response(
|
46 | 27 | StatusCode.SUCCESS_GET_CODE,
|
47 | 28 | json.dumps({"status": StatusMessage.SUCCESS_POST_CODE})
|
48 | 29 | )
|
49 | 30 | else:
|
50 |
| - logger.error(f'Request validation failed {usage_detail_dict}') |
| 31 | + logger.error(f'Request validation failed {request_dict}') |
51 | 32 | response = make_response(
|
52 | 33 | StatusCode.BAD_PARAMETERS_CODE,
|
53 | 34 | json.dumps({"status": StatusMessage.BAD_PARAMETER})
|
54 | 35 | )
|
55 | 36 | except Exception as e:
|
56 | 37 | logger.error(e)
|
57 |
| - logger.error(f'failed for request {usage_detail_dict}') |
| 38 | + logger.error(f'failed for request {request_dict}') |
58 | 39 | response = make_response(
|
59 | 40 | StatusCode.SERVER_ERROR_CODE,
|
60 | 41 | json.dumps({"status": StatusMessage.SERVER_ERROR_MSG})
|
|
0 commit comments