eclinical-requester 1.0.13__tar.gz → 1.0.15__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.
Files changed (74) hide show
  1. {eclinical_requester-1.0.13/src/eclinical_requester.egg-info → eclinical_requester-1.0.15}/PKG-INFO +1 -1
  2. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/__init__.py +1 -1
  3. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/call_api.py +2 -1
  4. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/dto/user.py +2 -1
  5. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/http/authorize.py +5 -0
  6. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/http/authorize_ediary.py +1 -1
  7. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15/src/eclinical_requester.egg-info}/PKG-INFO +1 -1
  8. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/tests/test_api_requester.py +18 -1
  9. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/LICENSE +0 -0
  10. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/MANIFEST.in +0 -0
  11. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/README.md +0 -0
  12. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/pyproject.toml +0 -0
  13. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/setup.cfg +0 -0
  14. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/setup.py +0 -0
  15. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/__init__.py +0 -0
  16. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/__init__.py +0 -0
  17. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/api/__init__.py +0 -0
  18. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/api/auth_api.py +0 -0
  19. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/api/ecoa_auth_api.py +0 -0
  20. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/api/subject_auth_api.py +0 -0
  21. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/api/user_on_board_application_api.py +0 -0
  22. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/dto/__init__.py +0 -0
  23. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/dto/cross_user_user_on_board_dto.py +0 -0
  24. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/dto/ecoa_onboard_request_dto.py +0 -0
  25. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/dto/jwt_authentication_request.py +0 -0
  26. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/dto/reset_password_email_request_dto.py +0 -0
  27. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/dto/sso_token_retrieve_dto.py +0 -0
  28. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/dto/subject_jwt_authentication_request.py +0 -0
  29. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/dto/user_on_board_dto.py +0 -0
  30. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/service/__init__.py +0 -0
  31. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/service/auth_service.py +0 -0
  32. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/service/ecoa_auth_service.py +0 -0
  33. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/service/impl/__init__.py +0 -0
  34. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/service/impl/system_env_service_impl.py +0 -0
  35. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/service/impl/user_on_board_application_service_impl.py +0 -0
  36. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/service/subject_auth_service.py +0 -0
  37. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/admin/service/user_on_board_application_service.py +0 -0
  38. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/common/__init__.py +0 -0
  39. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/common/api/__init__.py +0 -0
  40. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/common/api/ecoa_auth_api.py +0 -0
  41. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/common/api/subject_auth_api.py +0 -0
  42. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/common/api/system_env_api.py +0 -0
  43. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/common/dto/portal_login_t_ime.py +0 -0
  44. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/common/service/__init__.py +0 -0
  45. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/common/service/ecoa_auth_service.py +0 -0
  46. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/common/service/subject_auth_service.py +0 -0
  47. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/core/common/service/system_env_service.py +0 -0
  48. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/docs/application.yaml +0 -0
  49. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/dto/__init__.py +0 -0
  50. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/dto/base_dto.py +0 -0
  51. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/dto/biz_base.py +0 -0
  52. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/http/__init__.py +0 -0
  53. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/http/app_url.py +0 -0
  54. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/http/authorize_ecoa.py +0 -0
  55. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/http/eclinical_requests.py +0 -0
  56. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/http/exceptions.py +0 -0
  57. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/http/gateway.py +0 -0
  58. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/http/sample_headers.py +0 -0
  59. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/http/token_manager.py +0 -0
  60. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/utils/__init__.py +0 -0
  61. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/utils/constant.py +0 -0
  62. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/utils/decrypt.py +0 -0
  63. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/utils/json_utils.py +0 -0
  64. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/utils/lib.py +0 -0
  65. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/utils/logger.py +0 -0
  66. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/utils/path.py +0 -0
  67. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/utils/placeholder_replacer.py +0 -0
  68. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/utils/read_file.py +0 -0
  69. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/utils/rsa.py +0 -0
  70. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/api_requester/utils/time_utils.py +0 -0
  71. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/eclinical_requester.egg-info/SOURCES.txt +0 -0
  72. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/eclinical_requester.egg-info/dependency_links.txt +0 -0
  73. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/eclinical_requester.egg-info/requires.txt +0 -0
  74. {eclinical_requester-1.0.13 → eclinical_requester-1.0.15}/src/eclinical_requester.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: eclinical_requester
3
- Version: 1.0.13
3
+ Version: 1.0.15
4
4
  Summary: edetek api requester
5
5
  Home-page: http://example.com
6
6
  Author: xiaodong.li
@@ -6,4 +6,4 @@
6
6
  @Description: Description
7
7
  @File: __init__.py.py
8
8
  """
9
- __version__ = "1.0.13"
9
+ __version__ = "1.0.15"
@@ -22,7 +22,7 @@ from api_requester.utils.placeholder_replacer import PlaceholderReplacer
22
22
  class ApiRequester(BizBase):
23
23
 
24
24
  def __init__(self, username=None, password=None, sponsor=None, study=None, test_env=None, app_env=None, app=None,
25
- company=None, role=None, external=False, ttype=None, org_code=None):
25
+ company=None, role=None, external=False, ttype=None, org_code=None, token=None):
26
26
  u = EClinicalUser(
27
27
  username=username,
28
28
  password=password,
@@ -35,6 +35,7 @@ class ApiRequester(BizBase):
35
35
  role=role,
36
36
  external=external,
37
37
  org_code=org_code,
38
+ token=token,
38
39
  )
39
40
  super().__init__(u)
40
41
  self.headers = dict()
@@ -11,7 +11,7 @@
11
11
  class EClinicalUser:
12
12
 
13
13
  def __init__(self, username=None, password=None, sponsor=None, study=None, test_env=None, app_env=None, app=None,
14
- company=None, role=None, external=False, org_code=None):
14
+ company=None, role=None, external=False, org_code=None, token=None):
15
15
  # username 用户名
16
16
  # password 密码
17
17
  # app 访问的系统
@@ -30,6 +30,7 @@ class EClinicalUser:
30
30
  self.external = external
31
31
  self.company_level_login = False
32
32
  self.org_code = org_code
33
+ self.token = token # 使用token直接调用接口
33
34
 
34
35
  def __repr__(self):
35
36
  attributes = self.__dict__
@@ -38,6 +38,11 @@ class Authorize(BizBase, AdminAuthService, AdminUserOnBoardApplicationServiceImp
38
38
  CommonSystemEnvServiceImpl.__init__(self)
39
39
 
40
40
  def login(self):
41
+ if self.user.token:
42
+ self.headers = SampleHeaders().add_authorization(self.user.token).to_h()
43
+ self.time_mills = time.time()
44
+ self.user.app = self.login_app
45
+ return
41
46
  if self.login_app == AppEnum.CODING.code:
42
47
  login_app_tip = "{0}({1})".format(self.login_app,
43
48
  self.user.company_level_login is True and "admin" or "study")
@@ -46,7 +46,7 @@ class AuthorizeEdiary(BizBase, AdminSubjectAuthService, CommonSubjectAuthService
46
46
  self.time_mills = time.time()
47
47
  encrypt_pwd = encrypt_password(self.user.password)
48
48
  jwt_authentication_request_dto = SubjectJwtAuthenticationRequest(
49
- self.user.username, encrypt_pwd, organizationCode=self.user.org_code)
49
+ self.user.username, encrypt_pwd, organizationCode=self.user.org_code or None)
50
50
  response = self.auth_subject_login(jwt_authentication_request_dto)
51
51
  if response is None:
52
52
  raise Exception(f"LoginParams failed: {response}")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: eclinical_requester
3
- Version: 1.0.13
3
+ Version: 1.0.15
4
4
  Summary: edetek api requester
5
5
  Home-page: http://example.com
6
6
  Author: xiaodong.li
@@ -44,6 +44,14 @@ class TestApiRequester(unittest.TestCase):
44
44
  response = c.request("get", "/study/information")
45
45
  assert response.json().get("payload").get("name") == "Study-113-963"
46
46
 
47
+ @staticmethod
48
+ def test_ediary_login_with_no_org_code():
49
+ c = ApiRequester("76548847", "340196", app=AppEnum.EDC.code, test_env="dev01", ttype=EdcAppType.EDIARY.name,
50
+ org_code="")
51
+ c.login()
52
+ response = c.request("get", "/study/information")
53
+ assert response.json().get("payload").get("name") == "Study-113-963"
54
+
47
55
  @staticmethod
48
56
  def test_ediary_data_with_org_code():
49
57
  c = ApiRequester("76548847", "340196", app=AppEnum.EDC.code, test_env="dev01", ttype=EdcAppType.EDIARY.name,
@@ -52,4 +60,13 @@ class TestApiRequester(unittest.TestCase):
52
60
  response = c.request("post", "/e-diary-app/offline/subject-version")
53
61
  payload = response.json().get("payload")
54
62
  node = decrypt(payload, is_no_padding=True)
55
- print(json.loads(node))
63
+ print(json.loads(node))
64
+
65
+ @staticmethod
66
+ def test_get_by_token():
67
+ c = ApiRequester(app=AppEnum.DESIGN.code, test_env="dev03",
68
+ token="DESIGN eyJhbGciOiJIUzUxMiJ9.eyJ1aWQiOiI4MzM4OTYxZjgzMzc0OWU3YTQwMzcxYWU2MjNjYjk0ZCIsInN1YiI6IlVzZXJ8fENSQzAxfHwxfHwwIiwid2lkIjoiNDdkNmY0NzI3ZTgzNDRmOWJkYjNjOWZiNDc5MmMwYWEiLCJjcmVhdGVkIjoxNzUzNDI5MjIxOTk0LCJleHAiOjE3NjEyMDUyMjF9.GmTtnjobE8RByKBjrRfj8nxjXNgevpmcHRPCRkFD7OEjcdZSW69fX3VBSlSgSXtHAQrdaEPr5W0n6EefNngKWQ")
69
+ c.login()
70
+ response = c.request("GET", "/study")
71
+ payload = response.json().get("payload")
72
+ print(payload)