aiteamutils 0.2.71__py3-none-any.whl → 0.2.72__py3-none-any.whl

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.
@@ -35,7 +35,38 @@ class BaseService(Generic[ModelType]):
35
35
  self,
36
36
  skip: int = 0,
37
37
  limit: int = 100,
38
- filters: Dict[str, Any] | None =
38
+ filters: Dict[str, Any] | None = None,
39
+ search_params: Dict[str, Any] | None = None,
40
+ model_name: str | None = None,
41
+ request: Request | None = None,
42
+ response_model: Any = None
43
+ ) -> List[Dict[str, Any]]:
44
+ try:
45
+ # 검색 조건 처리 및 필터 병합
46
+ if search_params:
47
+ search_filters = build_search_filters(request, search_params)
48
+ if filters:
49
+ # 기존 filters와 search_filters 병합 (search_filters가 우선 적용)
50
+ filters.update(search_filters)
51
+ else:
52
+ filters = search_filters
53
+
54
+ # 모델 이름을 통한 동적 처리
55
+ if model_name:
56
+ if model_name not in self.additional_models:
57
+ raise CustomException(
58
+ ErrorCode.INVALID_REQUEST,
59
+ detail=f"Model {model_name} not registered",
60
+ source_function=f"{self.__class__.__name__}.list"
61
+ )
62
+ model = self.additional_models[model_name]
63
+ return await self.repository.list(skip=skip, limit=limit, filters=filters, model=model)
64
+
65
+ return await self.repository.list(skip=skip, limit=limit, filters=filters)
66
+ except CustomException as e:
67
+ e.detail = f"Service list error for {self.repository.model.__tablename__}: {e.detail}"
68
+ e.source_function = f"{self.__class__.__name__}.list -> {e.source_function}"
69
+ raise e
39
70
  except Exception as e:
40
71
  raise CustomException(
41
72
  ErrorCode.INTERNAL_ERROR,
aiteamutils/version.py CHANGED
@@ -1,2 +1,2 @@
1
1
  """버전 정보"""
2
- __version__ = "0.2.71"
2
+ __version__ = "0.2.72"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aiteamutils
3
- Version: 0.2.71
3
+ Version: 0.2.72
4
4
  Summary: AI Team Utilities
5
5
  Project-URL: Homepage, https://github.com/yourusername/aiteamutils
6
6
  Project-URL: Issues, https://github.com/yourusername/aiteamutils/issues
@@ -1,7 +1,7 @@
1
1
  aiteamutils/__init__.py,sha256=kRBpRjark0M8ZwFfmKiMFol6CbIILN3WE4f6_P6iIq0,1089
2
2
  aiteamutils/base_model.py,sha256=ODEnjvUVoxQ1RPCfq8-uZTfTADIA4c7Z3E6G4EVsSX0,2708
3
3
  aiteamutils/base_repository.py,sha256=tG_xz4hHYAN3-wkrLvEPxyTucV4pzT6dihoKVJp2JIc,2079
4
- aiteamutils/base_service.py,sha256=dYDj01UW8dQlFc-8Dth0NQBCFhRMXHTosmuUjl6LxP4,1385
4
+ aiteamutils/base_service.py,sha256=CfNBAgFREqOC1791ex2plKLZiSZ1U5el4GvvkVsN4qU,2901
5
5
  aiteamutils/cache.py,sha256=07xBGlgAwOTAdY5mnMOQJ5EBxVwe8glVD7DkGEkxCtw,1373
6
6
  aiteamutils/config.py,sha256=YdalpJb70-txhGJAS4aaKglEZAFVWgfzw5BXSWpkUz4,3232
7
7
  aiteamutils/database.py,sha256=CbX7eNFwqz9O4ywVQMLlLrb6hDUJPtsgGg_Hgef-p2I,8126
@@ -9,7 +9,7 @@ aiteamutils/enums.py,sha256=ipZi6k_QD5-3QV7Yzv7bnL0MjDz-vqfO9I5L77biMKs,632
9
9
  aiteamutils/exceptions.py,sha256=_lKWXq_ujNj41xN6LDE149PwsecAP7lgYWbOBbLOntg,15368
10
10
  aiteamutils/security.py,sha256=xFVrjttxwXB1TTjqgRQQgQJQohQBT28vuW8FVLjvi-M,10103
11
11
  aiteamutils/validators.py,sha256=PvI9hbMEAqTawgxPbiWRyx2r9yTUrpNBQs1AD3w4F2U,7726
12
- aiteamutils/version.py,sha256=1l2meDdBD47c5mMOjfptLRBjmt-ePXSJ2Sr6Zgi8zAc,42
13
- aiteamutils-0.2.71.dist-info/METADATA,sha256=6Jn_650khnReN9HdWa89k36lT7BHgR5EjmXSam2Pf8g,1718
14
- aiteamutils-0.2.71.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
15
- aiteamutils-0.2.71.dist-info/RECORD,,
12
+ aiteamutils/version.py,sha256=9RIZRehNxp6dA61_1-bTUirXc1q9QDosp-QZ_woFu0g,42
13
+ aiteamutils-0.2.72.dist-info/METADATA,sha256=WsFA3r2H1XUIsDXmhenz97uj3eT5jyZpN4CbNbps8rA,1718
14
+ aiteamutils-0.2.72.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
15
+ aiteamutils-0.2.72.dist-info/RECORD,,