internal 1.0.25__tar.gz → 1.0.27__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of internal might be problematic. Click here for more details.

Files changed (32) hide show
  1. {internal-1.0.25 → internal-1.0.27}/PKG-INFO +1 -1
  2. {internal-1.0.25 → internal-1.0.27}/pyproject.toml +1 -1
  3. {internal-1.0.25 → internal-1.0.27}/src/internal/http/responses.py +11 -3
  4. {internal-1.0.25 → internal-1.0.27}/README.md +0 -0
  5. {internal-1.0.25 → internal-1.0.27}/src/internal/__init__.py +0 -0
  6. {internal-1.0.25 → internal-1.0.27}/src/internal/base_config.py +0 -0
  7. {internal-1.0.25 → internal-1.0.27}/src/internal/base_factory.py +0 -0
  8. {internal-1.0.25 → internal-1.0.27}/src/internal/common_enum/__init__.py +0 -0
  9. {internal-1.0.25 → internal-1.0.27}/src/internal/common_enum/contact_type.py +0 -0
  10. {internal-1.0.25 → internal-1.0.27}/src/internal/common_enum/description_type.py +0 -0
  11. {internal-1.0.25 → internal-1.0.27}/src/internal/common_enum/event_trigger_type.py +0 -0
  12. {internal-1.0.25 → internal-1.0.27}/src/internal/common_enum/operator_type.py +0 -0
  13. {internal-1.0.25 → internal-1.0.27}/src/internal/common_enum/order_type.py +0 -0
  14. {internal-1.0.25 → internal-1.0.27}/src/internal/const.py +0 -0
  15. {internal-1.0.25 → internal-1.0.27}/src/internal/database.py +0 -0
  16. {internal-1.0.25 → internal-1.0.27}/src/internal/exception/__init__.py +0 -0
  17. {internal-1.0.25 → internal-1.0.27}/src/internal/exception/base_exception.py +0 -0
  18. {internal-1.0.25 → internal-1.0.27}/src/internal/exception/internal_exception.py +0 -0
  19. {internal-1.0.25 → internal-1.0.27}/src/internal/ext/__init__.py +0 -0
  20. {internal-1.0.25 → internal-1.0.27}/src/internal/ext/amazon/__init__.py +0 -0
  21. {internal-1.0.25 → internal-1.0.27}/src/internal/ext/amazon/aws/__init__.py +0 -0
  22. {internal-1.0.25 → internal-1.0.27}/src/internal/ext/amazon/aws/const.py +0 -0
  23. {internal-1.0.25 → internal-1.0.27}/src/internal/http/__init__.py +0 -0
  24. {internal-1.0.25 → internal-1.0.27}/src/internal/http/requests.py +0 -0
  25. {internal-1.0.25 → internal-1.0.27}/src/internal/interface/__init__.py +0 -0
  26. {internal-1.0.25 → internal-1.0.27}/src/internal/interface/base_interface.py +0 -0
  27. {internal-1.0.25 → internal-1.0.27}/src/internal/middleware/__init__.py +0 -0
  28. {internal-1.0.25 → internal-1.0.27}/src/internal/middleware/log_request.py +0 -0
  29. {internal-1.0.25 → internal-1.0.27}/src/internal/model/__init__.py +0 -0
  30. {internal-1.0.25 → internal-1.0.27}/src/internal/model/base_model.py +0 -0
  31. {internal-1.0.25 → internal-1.0.27}/src/internal/model/operate.py +0 -0
  32. {internal-1.0.25 → internal-1.0.27}/src/internal/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: internal
3
- Version: 1.0.25
3
+ Version: 1.0.27
4
4
  Summary:
5
5
  Author: Ray
6
6
  Author-email: ray@cruisys.com
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "internal"
3
- version = "1.0.25"
3
+ version = "1.0.27"
4
4
  description = ""
5
5
  authors = ["Ray <ray@cruisys.com>"]
6
6
  readme = "README.md"
@@ -1,7 +1,7 @@
1
1
  import json
2
2
  import arrow
3
3
 
4
- from datetime import datetime
4
+ from datetime import datetime, date
5
5
 
6
6
  import httpx
7
7
 
@@ -9,21 +9,26 @@ from fastapi import status
9
9
  from fastapi.responses import JSONResponse
10
10
  from fastapi.encoders import jsonable_encoder
11
11
  from beanie import Document, Link
12
- from ..const import ARR_HUMAN_READ_FMT
12
+ from ..const import ARR_HUMAN_READ_FMT, ARR_DATE_FMT
13
13
 
14
14
 
15
15
  async def async_response(data=None, message=None, code=None, page_no=None, total_num=None, page_size=None,
16
- time_zone="UTC", time_format=ARR_HUMAN_READ_FMT, status_code=status.HTTP_200_OK):
16
+ time_zone="UTC", time_format=ARR_HUMAN_READ_FMT, date_format=ARR_DATE_FMT,
17
+ status_code=status.HTTP_200_OK):
17
18
  def _serialize(data):
18
19
  if issubclass(type(data), Document):
19
20
  link_field_list = []
20
21
  datetime_field_list = []
22
+ date_field_list = []
21
23
  for field_name in data.__annotations__:
22
24
  field_type = getattr(data, field_name)
23
25
  if isinstance(field_type, Link):
24
26
  link_field_list.append(field_name)
27
+
25
28
  if isinstance(field_type, datetime):
26
29
  datetime_field_list.append(field_name)
30
+ elif isinstance(field_type, date):
31
+ date_field_list.append(field_name)
27
32
 
28
33
  data = json.loads(data.model_dump_json(exclude="password", by_alias=False))
29
34
  if link_field_list:
@@ -33,6 +38,9 @@ async def async_response(data=None, message=None, code=None, page_no=None, total
33
38
  for field_name in datetime_field_list:
34
39
  if data[field_name]:
35
40
  data[field_name] = arrow.get(data[field_name]).to(time_zone).format(time_format)
41
+ for field_name in date_field_list:
42
+ if data[field_name]:
43
+ data[field_name] = arrow.get(data[field_name]).to(time_zone).format(date_format)
36
44
 
37
45
  return data
38
46
 
File without changes