lesscode-py 0.3.22__tar.gz → 0.3.24__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 (113) hide show
  1. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/PKG-INFO +1 -1
  2. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/sqlalchemy/sqlalchemy_helper.py +13 -12
  3. lesscode-py-0.3.24/lesscode/utils/json.py +17 -0
  4. lesscode-py-0.3.24/lesscode/version.py +8 -0
  5. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/web/base_handler.py +22 -12
  6. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/web/business_exception.py +0 -4
  7. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/web/response_result.py +2 -4
  8. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/web/router_mapping.py +2 -6
  9. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/web/status_code.py +0 -6
  10. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode_py.egg-info/PKG-INFO +1 -1
  11. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/setup.py +2 -3
  12. lesscode-py-0.3.22/lesscode/utils/json.py +0 -25
  13. lesscode-py-0.3.22/lesscode/version.py +0 -11
  14. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/README.md +0 -0
  15. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/bin/__init__.py +0 -0
  16. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/bin/lesscode.py +0 -0
  17. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/__init__.py +0 -0
  18. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/__init__.py +0 -0
  19. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/base_connection_pool.py +0 -0
  20. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/base_sql_helper.py +0 -0
  21. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/condition_wrapper.py +0 -0
  22. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/connection_info.py +0 -0
  23. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/db_function.py +0 -0
  24. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/ds_helper.py +0 -0
  25. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/elasticsearch/__init__.py +0 -0
  26. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/elasticsearch/elasticsearch_helper.py +0 -0
  27. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/elasticsearch/elasticsearch_pool.py +0 -0
  28. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/es/__init__.py +0 -0
  29. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/es/es_helper.py +0 -0
  30. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/es/es_pool.py +0 -0
  31. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/es/es_request.py +0 -0
  32. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/init_connection_pool.py +0 -0
  33. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/mongodb/__init__.py +0 -0
  34. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/mongodb/mongodb_helper.py +0 -0
  35. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/mongodb/mongodb_pool.py +0 -0
  36. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/mysql/__init__.py +0 -0
  37. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/mysql/mysql_helper.py +0 -0
  38. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/mysql/mysql_pool.py +0 -0
  39. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/mysql_sqlalchemy/SqlAlchemy.py +0 -0
  40. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/mysql_sqlalchemy/__init__.py +0 -0
  41. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/mysql_sqlalchemy/mysql_sqlalchemy_pool.py +0 -0
  42. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/nebula/__init__.py +0 -0
  43. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/nebula/nebula_helper.py +0 -0
  44. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/nebula/nebula_pool.py +0 -0
  45. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/neo4j/__init__.py +0 -0
  46. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/neo4j/neo4j_helper.py +0 -0
  47. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/neo4j/neo4j_pool.py +0 -0
  48. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/page.py +0 -0
  49. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/postgresql/__init__.py +0 -0
  50. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/postgresql/postgresql_helper.py +0 -0
  51. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/postgresql/postgresql_pool.py +0 -0
  52. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/redis/__init__.py +0 -0
  53. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/redis/redis_helper.py +0 -0
  54. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/redis/redis_pool.py +0 -0
  55. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/redis_cluster/__init__.py +0 -0
  56. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/redis_cluster/redis_cluster_helper.py +0 -0
  57. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/redis_cluster/redis_cluster_pool.py +0 -0
  58. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/relational_db_helper.py +0 -0
  59. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/sqlalchemy/__init__.py +0 -0
  60. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/db/sqlalchemy/sqlalchemy_pool.py +0 -0
  61. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/extend_handlers/__init__.py +0 -0
  62. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/extend_handlers/doc/__init__.py +0 -0
  63. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/extend_handlers/doc/swagger_interface_doc_handler.py +0 -0
  64. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/extend_handlers/not_found_handler.py +0 -0
  65. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/mq/__init__.py +0 -0
  66. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/mq/kafka/__init__.py +0 -0
  67. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/mq/kafka/kafka_helper.py +0 -0
  68. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/mq/rabbitmq/__init__.py +0 -0
  69. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/mq/rabbitmq/rabbitmq_helper.py +0 -0
  70. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/task/__init__.py +0 -0
  71. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/task/task_helper.py +0 -0
  72. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/CacheUtil.py +0 -0
  73. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/EsUtil.py +0 -0
  74. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/JsonUtil.py +0 -0
  75. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/MongodbUtil.py +0 -0
  76. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/ThreadUtil.py +0 -0
  77. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/__init__.py +0 -0
  78. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/business.py +0 -0
  79. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/chart/__init__.py +0 -0
  80. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/chart/common2chart.py +0 -0
  81. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/chart/es2chart.py +0 -0
  82. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/chart/mongo2chart.py +0 -0
  83. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/chart/mysql2chart.py +0 -0
  84. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/chart/neo4j2chart.py +0 -0
  85. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/common.py +0 -0
  86. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/doc/__init__.py +0 -0
  87. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/doc/interface_doc_handler.py +0 -0
  88. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/encryption.py +0 -0
  89. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/encryption_algorithm/__init__.py +0 -0
  90. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/encryption_algorithm/aes.py +0 -0
  91. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/encryption_algorithm/base64.py +0 -0
  92. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/encryption_algorithm/des.py +0 -0
  93. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/encryption_algorithm/hmac.py +0 -0
  94. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/encryption_algorithm/md5.py +0 -0
  95. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/encryption_algorithm/rsa.py +0 -0
  96. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/encryption_algorithm/sha1.py +0 -0
  97. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/encryption_algorithm/sha256.py +0 -0
  98. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/encryption_algorithm/smx.py +0 -0
  99. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/es_log/__init__.py +0 -0
  100. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/es_log/record_log.py +0 -0
  101. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/oss/__init__.py +0 -0
  102. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/oss/ks3_oss.py +0 -0
  103. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/request.py +0 -0
  104. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/thread_task.py +0 -0
  105. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/upms_util.py +0 -0
  106. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/utils/wrapper.py +0 -0
  107. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/web/__init__.py +0 -0
  108. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/web/native_handler.py +0 -0
  109. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode/web/web_server.py +0 -0
  110. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode_py.egg-info/SOURCES.txt +0 -0
  111. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode_py.egg-info/dependency_links.txt +0 -0
  112. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/lesscode_py.egg-info/top_level.txt +0 -0
  113. {lesscode-py-0.3.22 → lesscode-py-0.3.24}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lesscode-py
3
- Version: 0.3.22
3
+ Version: 0.3.24
4
4
  Summary: lesscode-python 是基于tornado的web开发脚手架项目,该项目初衷为简化开发过程,让研发人员更加关注业务。
5
5
  Home-page: https://gitee.com/yongchao9/lesscode-python
6
6
  Author: Chao.yy
@@ -1,14 +1,11 @@
1
1
  import importlib
2
- from decimal import Decimal
2
+ from contextlib import contextmanager
3
3
 
4
- from sqlalchemy.orm import declarative_base
5
4
  from tornado.options import options
6
5
 
7
6
  sqlalchemy_orm = None
8
- sqlalchemy_util_compat = None
9
7
  try:
10
8
  sqlalchemy_orm = importlib.import_module("sqlalchemy.orm")
11
- sqlalchemy_util_compat = importlib.import_module("sqlalchemy.util.compat")
12
9
  except ImportError as e:
13
10
  raise Exception(f"sqlalchemy is not exist,run:pip install sqlalchemy==1.4.36")
14
11
 
@@ -24,7 +21,7 @@ class SqlAlchemyHelper:
24
21
  else:
25
22
  self.pool = pool
26
23
 
27
- @sqlalchemy_util_compat.contextmanager
24
+ @contextmanager
28
25
  def make_session(self, **kwargs):
29
26
  db_session = sqlalchemy_orm.scoped_session(sqlalchemy_orm.sessionmaker(bind=self.pool, **kwargs))
30
27
  session = db_session()
@@ -70,28 +67,31 @@ def sqlalchemy_paging(Query, limit_number, offset_number):
70
67
  def covert_relationship_property(attr, attr_value):
71
68
  if attr.__class__.__name__ == 'ColumnProperty':
72
69
  return attr_value
73
- elif attr.__class__.__name__ == 'RelationshipProperty':
70
+ elif attr.__class__.__name__ in ['RelationshipProperty', 'Relationship']:
74
71
  attrs = []
75
72
  for ar, ar_value in attr.mapper.attrs.items():
76
73
  if ar_value.__class__.__name__ == 'ColumnProperty' and ar not in attrs:
77
74
  attrs.append(ar)
78
- if attr_value.__class__.__name__ == 'InstrumentedList':
75
+ if attr_value.__class__.__name__ == 'InstrumentedList' or isinstance(attr_value, list):
79
76
  new_data = []
80
77
  for item in attr_value:
81
78
  info = dict()
82
79
  for ar in attrs:
83
80
  new_attr_value = getattr(item, ar)
84
- if not item.__class__.__name__ == 'RelationshipProperty':
81
+ if new_attr_value.__class__.__name__ not in ['RelationshipProperty', 'InstrumentedList']:
85
82
  info[ar] = new_attr_value
86
83
  else:
87
84
  info = covert_relationship_property(ar, new_attr_value)
88
- new_data.append(info)
85
+ if info:
86
+ new_data.append(info)
89
87
  return new_data
90
88
  else:
91
89
  new_data = dict()
92
90
  for column, value in attr.entity.attrs.items():
93
- if not value.__class__.__name__ == 'RelationshipProperty':
94
- new_data[column] = getattr(attr_value, column)
91
+ if value.__class__.__name__ not in ['RelationshipProperty', 'InstrumentedList']:
92
+ val = getattr(attr_value, column)
93
+ if val.__class__.__name__ not in ['RelationshipProperty', 'InstrumentedList']:
94
+ new_data[column] = val
95
95
  return new_data
96
96
  else:
97
97
  return attr_value
@@ -107,7 +107,8 @@ def query_set_to_dict(obj):
107
107
  attr_value = getattr(obj, column)
108
108
  value = covert_relationship_property(attr, attr_value)
109
109
  if not value.__class__.__name__ == 'RelationshipProperty':
110
- obj_dict[column] = value
110
+ if value:
111
+ obj_dict[column] = value
111
112
 
112
113
  return obj_dict
113
114
  elif hasattr(obj, "keys"):
@@ -0,0 +1,17 @@
1
+ import json
2
+
3
+
4
+ class JSONEncoder(json.JSONEncoder):
5
+ def default(self, o):
6
+ object_class_name = o.__class__.__name__
7
+ if object_class_name == "ObjectId":
8
+ return str(o)
9
+ elif object_class_name == "datetime":
10
+ return str(o)
11
+ elif object_class_name == "bytes":
12
+ return str(o, encoding="utf-8")
13
+ elif object_class_name == "set":
14
+ return list(o)
15
+ elif object_class_name == "Decimal":
16
+ return str(o)
17
+ return json.JSONEncoder.default(self, o)
@@ -0,0 +1,8 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+
4
+ """
5
+ lesscode python version file.
6
+ """
7
+
8
+ __version__ = "0.3.24"
@@ -1,9 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
- # author:chao.yy
3
- # email:yuyc@ishangqi.com
4
- # date:2021/11/4 4:39 下午
5
- # Copyright (C) 2021 The lesscode Team
6
2
 
3
+ import importlib
7
4
  import inspect
8
5
  import json
9
6
  import logging
@@ -11,12 +8,11 @@ import time
11
8
  import traceback
12
9
  import types
13
10
  import uuid
11
+ from contextlib import contextmanager
14
12
  from datetime import datetime
15
- from decimal import Decimal
16
13
  from typing import Optional, Awaitable, Any
17
14
  from urllib.parse import unquote
18
15
 
19
- from bson import ObjectId
20
16
  from tornado import httputil
21
17
  from tornado.escape import utf8
22
18
  from tornado.ioloop import IOLoop
@@ -25,10 +21,10 @@ from tornado.web import RequestHandler, Application
25
21
 
26
22
  from lesscode.task.task_helper import TaskHelper
27
23
  from lesscode.utils.es_log.record_log import es_record_log
28
- from lesscode.web.status_code import StatusCode
29
24
  from lesscode.web.business_exception import BusinessException
30
25
  from lesscode.web.response_result import ResponseResult
31
26
  from lesscode.web.router_mapping import RouterMapping
27
+ from lesscode.web.status_code import StatusCode
32
28
 
33
29
 
34
30
  class BaseHandler(RequestHandler):
@@ -97,6 +93,19 @@ class BaseHandler(RequestHandler):
97
93
  if data is not None:
98
94
  self.write(json.dumps(ResponseResult(data=data), ensure_ascii=False, cls=JSONEncoder))
99
95
 
96
+ @contextmanager
97
+ def make_session(self, pool, **kwargs):
98
+ pool, _ = options.database[pool]
99
+ try:
100
+ sqlalchemy_orm = importlib.import_module("sqlalchemy.orm")
101
+ except ImportError as e:
102
+ raise Exception(f"sqlalchemy is not exist,run:pip install sqlalchemy==1.4.36")
103
+ db_session = sqlalchemy_orm.scoped_session(sqlalchemy_orm.sessionmaker(bind=pool, **kwargs))
104
+ session = db_session()
105
+ yield session
106
+ session.commit()
107
+ session.close()
108
+
100
109
  async def get(self):
101
110
  """
102
111
  重写父类get请求处理方法,直接调用post方法统一处理
@@ -360,15 +369,16 @@ class BaseHandler(RequestHandler):
360
369
 
361
370
  class JSONEncoder(json.JSONEncoder):
362
371
  def default(self, o):
363
- if isinstance(o, ObjectId):
372
+ object_class_name = o.__class__.__name__
373
+ if object_class_name == "ObjectId":
364
374
  return str(o)
365
- elif isinstance(o, datetime):
375
+ elif object_class_name == "datetime":
366
376
  return str(o)
367
- elif isinstance(o, bytes):
377
+ elif object_class_name == "bytes":
368
378
  return str(o, encoding="utf-8")
369
- elif isinstance(o, set):
379
+ elif object_class_name == "set":
370
380
  return list(o)
371
- elif isinstance(o, Decimal):
381
+ elif object_class_name == "Decimal":
372
382
  return str(o)
373
383
  return json.JSONEncoder.default(self, o)
374
384
 
@@ -1,8 +1,4 @@
1
1
  # -*- coding: utf-8 -*-
2
- # author:chao.yy
3
- # email:yuyc@ishangqi.com
4
- # date:2021/11/10 7:52 下午
5
- # Copyright (C) 2021 The lesscode Team
6
2
 
7
3
 
8
4
  class BusinessException(RuntimeError):
@@ -1,8 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
- # author:chao.yy
3
- # email:yuyc@ishangqi.com
4
- # date:2021/11/10 3:57 下午
5
- # Copyright (C) 2021 The lesscode Team
2
+
6
3
 
7
4
  from datetime import datetime
8
5
 
@@ -13,6 +10,7 @@ class ResponseResult(dict):
13
10
  """
14
11
  ResponseResult 类用于统一包装数据返回格式
15
12
  """
13
+
16
14
  def __init__(self, status_code=StatusCode.SUCCESS, data=""):
17
15
  super(ResponseResult, self).__init__()
18
16
  # 业务请求状态编码
@@ -1,20 +1,16 @@
1
1
  # -*- coding: utf-8 -*-
2
- # author:chao.yy
3
- # email:yuyc@ishangqi.com
4
- # date:2021/11/4 11:00 上午
5
- # Copyright (C) 2021 The lesscode Team
2
+
6
3
  import logging
7
4
  import threading
8
5
 
9
6
  import tornado.options
7
+ from tornado.options import define
10
8
  from tornado.web import RequestHandler
11
9
 
12
- from lesscode.db.redis.redis_helper import RedisHelper
13
10
  from lesscode.utils.doc.interface_doc_handler import parser_swagger
14
11
  from lesscode.utils.upms_util import upms_register
15
12
  from lesscode.web.business_exception import BusinessException
16
13
  from lesscode.web.status_code import StatusCode
17
- from tornado.options import define
18
14
 
19
15
  define("route_prefix", default="", type=str, help="路由前缀")
20
16
  tornado.options.options.route_prefix = ""
@@ -1,10 +1,4 @@
1
1
  # -*- coding: utf-8 -*-
2
- # author:chao.yy
3
- # email:yuyc@ishangqi.com
4
- # date:2021/11/9 4:47 下午
5
- # Copyright (C) 2021 The lesscode Team
6
-
7
- from typing import Tuple
8
2
 
9
3
 
10
4
  class StatusCode:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lesscode-py
3
- Version: 0.3.22
3
+ Version: 0.3.24
4
4
  Summary: lesscode-python 是基于tornado的web开发脚手架项目,该项目初衷为简化开发过程,让研发人员更加关注业务。
5
5
  Home-page: https://gitee.com/yongchao9/lesscode-python
6
6
  Author: Chao.yy
@@ -1,11 +1,10 @@
1
1
  # -*- coding: utf-8 -*-
2
- # author:chao.yy
3
- # email:yuyc@ishangqi.com
4
- # date:2021/11/18 4:41 下午
2
+
5
3
  import shutil
6
4
 
7
5
  import setuptools
8
6
  from setuptools.command.install_scripts import install_scripts
7
+
9
8
  from lesscode.version import __version__
10
9
 
11
10
  with open("README.md", "r") as fh:
@@ -1,25 +0,0 @@
1
- import datetime
2
- import importlib
3
- import json
4
- from decimal import Decimal
5
-
6
- try:
7
- bson = importlib.import_module("bson")
8
-
9
- except ImportError as e:
10
- raise Exception(f"pymongo is not exist,run:pip install pymongo==3.13.0")
11
-
12
-
13
- class JSONEncoder(json.JSONEncoder):
14
- def default(self, o):
15
- if isinstance(o, bson.ObjectId):
16
- return str(o)
17
- elif isinstance(o, datetime.datetime):
18
- return str(o)
19
- elif isinstance(o, bytes):
20
- return str(o, encoding="utf-8")
21
- elif isinstance(o, set):
22
- return list(o)
23
- elif isinstance(o, Decimal):
24
- return str(o)
25
- return json.JSONEncoder.default(self, o)
@@ -1,11 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # author:chao.yy
3
- # email:yuyc@ishangqi.com
4
- # date:2021/11/24 9:29 上午
5
- # Copyright (C) 2021 The lesscode Team
6
-
7
- """
8
- lesscode python version file.
9
- """
10
-
11
- __version__ = "0.3.22"
File without changes
File without changes