lesscode-py 0.4.17__tar.gz → 0.4.18__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 (101) hide show
  1. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/PKG-INFO +1 -1
  2. lesscode-py-0.4.18/lesscode/utils/custom_type.py +34 -0
  3. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/wrapper.py +1 -26
  4. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/version.py +1 -1
  5. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/web/base_handler.py +19 -51
  6. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/web/web_server.py +3 -0
  7. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode_py.egg-info/PKG-INFO +1 -1
  8. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode_py.egg-info/SOURCES.txt +1 -0
  9. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/README.md +0 -0
  10. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/__init__.py +0 -0
  11. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/__init__.py +0 -0
  12. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/base_connection_pool.py +0 -0
  13. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/base_sql_helper.py +0 -0
  14. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/clickhouse/__init__.py +0 -0
  15. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/clickhouse/clickhouse_helper.py +0 -0
  16. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/clickhouse/clickhouse_pool.py +0 -0
  17. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/condition_wrapper.py +0 -0
  18. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/connection_info.py +0 -0
  19. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/db_function.py +0 -0
  20. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/dm/__init__.py +0 -0
  21. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/dm/dm_helper.py +0 -0
  22. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/dm/dm_pool.py +0 -0
  23. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/ds_helper.py +0 -0
  24. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/elasticsearch/__init__.py +0 -0
  25. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/elasticsearch/elasticsearch_helper.py +0 -0
  26. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/elasticsearch/elasticsearch_pool.py +0 -0
  27. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/es/__init__.py +0 -0
  28. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/es/es_helper.py +0 -0
  29. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/es/es_pool.py +0 -0
  30. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/es/es_request.py +0 -0
  31. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/generic/__init__.py +0 -0
  32. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/generic/generic_helper.py +0 -0
  33. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/generic/generic_pool.py +0 -0
  34. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/init_connection_pool.py +0 -0
  35. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/mongodb/__init__.py +0 -0
  36. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/mongodb/base_model.py +0 -0
  37. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/mongodb/mongodb_helper.py +0 -0
  38. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/mongodb/mongodb_pool.py +0 -0
  39. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/mysql/__init__.py +0 -0
  40. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/mysql/mysql_helper.py +0 -0
  41. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/mysql/mysql_pool.py +0 -0
  42. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/nebula/__init__.py +0 -0
  43. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/nebula/nebula_helper.py +0 -0
  44. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/nebula/nebula_pool.py +0 -0
  45. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/neo4j/__init__.py +0 -0
  46. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/neo4j/neo4j_helper.py +0 -0
  47. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/neo4j/neo4j_pool.py +0 -0
  48. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/page.py +0 -0
  49. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/postgresql/__init__.py +0 -0
  50. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/postgresql/postgresql_helper.py +0 -0
  51. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/postgresql/postgresql_pool.py +0 -0
  52. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/redis/__init__.py +0 -0
  53. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/redis/redis_helper.py +0 -0
  54. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/redis/redis_pool.py +0 -0
  55. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/redis_cluster/__init__.py +0 -0
  56. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/redis_cluster/redis_cluster_helper.py +0 -0
  57. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/redis_cluster/redis_cluster_pool.py +0 -0
  58. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/relational_db_helper.py +0 -0
  59. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/sqlalchemy/__init__.py +0 -0
  60. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/sqlalchemy/sqlalchemy_helper.py +0 -0
  61. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/sqlalchemy/sqlalchemy_model_service.py +0 -0
  62. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/db/sqlalchemy/sqlalchemy_pool.py +0 -0
  63. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/extend_handlers/__init__.py +0 -0
  64. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/extend_handlers/doc/__init__.py +0 -0
  65. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/extend_handlers/doc/swagger_interface_doc_handler.py +0 -0
  66. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/extend_handlers/not_found_handler.py +0 -0
  67. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/mq/__init__.py +0 -0
  68. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/mq/kafka/__init__.py +0 -0
  69. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/mq/kafka/kafka_helper.py +0 -0
  70. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/mq/rabbitmq/__init__.py +0 -0
  71. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/mq/rabbitmq/rabbitmq_helper.py +0 -0
  72. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/sentry/__init__.py +0 -0
  73. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/sentry/sentry_monitor.py +0 -0
  74. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/task/__init__.py +0 -0
  75. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/task/job_info.py +0 -0
  76. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/task/task_helper.py +0 -0
  77. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/CacheUtil.py +0 -0
  78. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/__init__.py +0 -0
  79. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/cache_utils.py +0 -0
  80. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/doc/__init__.py +0 -0
  81. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/doc/interface_doc.py +0 -0
  82. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/es_log/__init__.py +0 -0
  83. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/es_log/record_log.py +0 -0
  84. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/json.py +0 -0
  85. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/oss/__init__.py +0 -0
  86. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/oss/aliyun_oss.py +0 -0
  87. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/oss/ks3_oss.py +0 -0
  88. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/request.py +0 -0
  89. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/utils/upms_util.py +0 -0
  90. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/web/__init__.py +0 -0
  91. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/web/base_server_send_event_handler.py +0 -0
  92. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/web/base_websocket_handler.py +0 -0
  93. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/web/business_exception.py +0 -0
  94. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/web/native_handler.py +0 -0
  95. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/web/response_result.py +0 -0
  96. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/web/router_mapping.py +0 -0
  97. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode/web/status_code.py +0 -0
  98. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode_py.egg-info/dependency_links.txt +0 -0
  99. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/lesscode_py.egg-info/top_level.txt +0 -0
  100. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/setup.cfg +0 -0
  101. {lesscode-py-0.4.17 → lesscode-py-0.4.18}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lesscode-py
3
- Version: 0.4.17
3
+ Version: 0.4.18
4
4
  Summary: lesscode-python 是基于tornado的web开发脚手架项目,该项目初衷为简化开发过程,让研发人员更加关注业务。
5
5
  Home-page: https://gitee.com/yongchao9/lesscode-python
6
6
  Author: Chao.yy
@@ -0,0 +1,34 @@
1
+ class User:
2
+ """
3
+ 用户对象类
4
+ """
5
+
6
+ def __init__(self):
7
+ # '账号id',
8
+ self.id = None
9
+ # 用户名
10
+ self.username = None
11
+ # '密码',
12
+ self.password = None
13
+ # '显示名',
14
+ self.display_name = None
15
+ # 手机号,
16
+ self.phone_no = None
17
+ # 邮箱
18
+ self.email = None
19
+ # 组织机构id',
20
+ self.org_id = None
21
+ # '1正常(激活);2未激活(管理员新增,首次登录需要改密码); 3锁定(登录错误次数超限,锁定时长可配置); 4休眠(长期未登录(字段,时长可配置),定时) 5禁用-账号失效;
22
+ self.account_status = None
23
+ # 角色id集合
24
+ self.roleIds = None
25
+
26
+ def __str__(self):
27
+ return (f"User(id={self.id},username={self.username},phone_no={self.phone_no},"
28
+ f"display_name={self.display_name},email={self.email},org_id={self.org_id},"
29
+ f"account_status={self.account_status},roleIds={self.roleIds})")
30
+
31
+ def __repr__(self):
32
+ return (f"User(id={self.id},username={self.username},phone_no={self.phone_no},"
33
+ f"display_name={self.display_name},email={self.email},org_id={self.org_id},"
34
+ f"account_status={self.account_status},roleIds={self.roleIds})")
@@ -3,36 +3,11 @@ import json
3
3
 
4
4
  from tornado.options import options
5
5
 
6
+ from lesscode.utils.custom_type import User
6
7
  from lesscode.web.business_exception import BusinessException
7
8
  from lesscode.web.status_code import StatusCode
8
9
 
9
10
 
10
- class User:
11
- """
12
- 用户对象类
13
- """
14
-
15
- def __init__(self):
16
- # '账号id',
17
- self.id = None
18
- # 用户名
19
- self.username = None
20
- # '密码',
21
- self.password = None
22
- # '显示名',
23
- self.display_name = None
24
- # 手机号,
25
- self.phone_no = None
26
- # 邮箱
27
- self.email = None
28
- # 组织机构id',
29
- self.org_id = None
30
- # '1正常(激活);2未激活(管理员新增,首次登录需要改密码); 3锁定(登录错误次数超限,锁定时长可配置); 4休眠(长期未登录(字段,时长可配置),定时) 5禁用-账号失效;
31
- self.account_status = None
32
- # 角色id集合
33
- self.roleIds = None
34
-
35
-
36
11
  def user_verification(username="admin", **kw):
37
12
  def wrapper(func):
38
13
  @functools.wraps(func)
@@ -5,4 +5,4 @@
5
5
  lesscode python version file.
6
6
  """
7
7
 
8
- __version__ = "0.4.17"
8
+ __version__ = "0.4.18"
@@ -22,6 +22,7 @@ from tornado.web import RequestHandler, Application
22
22
 
23
23
  from lesscode.task.task_helper import TaskHelper
24
24
  from lesscode.utils.CacheUtil import async_common_cache, common_cache
25
+ from lesscode.utils.custom_type import User
25
26
  from lesscode.utils.es_log.record_log import es_record_log
26
27
  from lesscode.utils.json import JSONEncoder
27
28
  from lesscode.utils.request import sync_common_request_origin
@@ -389,21 +390,24 @@ class BaseHandler(RequestHandler):
389
390
  获取当前用户信息
390
391
  :return:
391
392
  """
392
- user_json = self.request.headers.get("User")
393
- if user_json:
394
- # TODO 未做加密
395
- user_info = json.loads(user_json)
396
- if user_info and isinstance(user_info, dict):
397
- user = User()
398
- for key in user_info:
399
- value = user_info.get(key)
400
- if value and isinstance(value, str):
401
- user_info[key] = unquote(value)
402
- if key == "roleIds" and value and isinstance(value, str):
403
- user_info[key] = json.loads(value)
404
- setattr(user, key, user_info[key])
405
-
406
- return user
393
+ if not options.custom_current_user_switch:
394
+ user_json = self.request.headers.get("User")
395
+ if user_json:
396
+ # TODO 未做加密
397
+ user_info = json.loads(user_json)
398
+ if user_info and isinstance(user_info, dict):
399
+ user = User()
400
+ for key in user_info:
401
+ value = user_info.get(key)
402
+ if value and isinstance(value, str):
403
+ user_info[key] = unquote(value)
404
+ if key == "roleIds" and value and isinstance(value, str):
405
+ user_info[key] = json.loads(value)
406
+ setattr(user, key, user_info[key])
407
+
408
+ return user
409
+ else:
410
+ return options.custom_current_user_func(self)
407
411
  return None
408
412
 
409
413
  def redirect(self, url: str, permanent: bool = False, status: int = None) -> None:
@@ -438,42 +442,6 @@ class BaseHandler(RequestHandler):
438
442
  data["modify_time"] = datetime.now()
439
443
 
440
444
 
441
- class User:
442
- """
443
- 用户对象类
444
- """
445
-
446
- def __init__(self):
447
- # '账号id',
448
- self.id = None
449
- # 用户名
450
- self.username = None
451
- # '密码',
452
- self.password = None
453
- # '显示名',
454
- self.display_name = None
455
- # 手机号,
456
- self.phone_no = None
457
- # 邮箱
458
- self.email = None
459
- # 组织机构id',
460
- self.org_id = None
461
- # '1正常(激活);2未激活(管理员新增,首次登录需要改密码); 3锁定(登录错误次数超限,锁定时长可配置); 4休眠(长期未登录(字段,时长可配置),定时) 5禁用-账号失效;
462
- self.account_status = None
463
- # 角色id集合
464
- self.roleIds = None
465
-
466
- def __str__(self):
467
- return (f"User(id={self.id},username={self.username},phone_no={self.phone_no},"
468
- f"display_name={self.display_name},email={self.email},org_id={self.org_id},"
469
- f"account_status={self.account_status},roleIds={self.roleIds})")
470
-
471
- def __repr__(self):
472
- return (f"User(id={self.id},username={self.username},phone_no={self.phone_no},"
473
- f"display_name={self.display_name},email={self.email},org_id={self.org_id},"
474
- f"account_status={self.account_status},roleIds={self.roleIds})")
475
-
476
-
477
445
  # 解析param
478
446
  def parse_val(val, val_type):
479
447
  # inspect.Parameter.empty <class 'NoneType'>
@@ -6,6 +6,7 @@ import os
6
6
  import platform
7
7
  import sys
8
8
  import traceback
9
+ from types import FunctionType
9
10
  from typing import Optional
10
11
 
11
12
  import tornado.httpserver
@@ -67,6 +68,8 @@ define("url_log_enable", default=False, type=bool, help="项目url打印")
67
68
  define("cronjob_config", default={}, type=dict, help="定时任务配置")
68
69
  define("resource_register_enable", default=False, type=bool, help="资源注册开关")
69
70
  define("outside_screen_port", default=80, type=int, help="资源注册开关")
71
+ define("custom_current_user_switch", default=False, type=bool, help="自定义用户开关")
72
+ define("custom_current_user_func", default=None, type=FunctionType, help="自定义用户方法函数")
70
73
  # 日志初始化配置,配置文件中可修改设置
71
74
  options.logging = "DEBUG"
72
75
  options.log_rotate_mode = "time"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lesscode-py
3
- Version: 0.4.17
3
+ Version: 0.4.18
4
4
  Summary: lesscode-python 是基于tornado的web开发脚手架项目,该项目初衷为简化开发过程,让研发人员更加关注业务。
5
5
  Home-page: https://gitee.com/yongchao9/lesscode-python
6
6
  Author: Chao.yy
@@ -71,6 +71,7 @@ lesscode/task/task_helper.py
71
71
  lesscode/utils/CacheUtil.py
72
72
  lesscode/utils/__init__.py
73
73
  lesscode/utils/cache_utils.py
74
+ lesscode/utils/custom_type.py
74
75
  lesscode/utils/json.py
75
76
  lesscode/utils/request.py
76
77
  lesscode/utils/upms_util.py
File without changes
File without changes
File without changes