mwgencode 1.3.13__tar.gz → 1.4.0__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 (93) hide show
  1. {mwgencode-1.3.13/mwgencode.egg-info → mwgencode-1.4.0}/PKG-INFO +3 -2
  2. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gen_code.py +17 -11
  3. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/gen_code_run.pys +9 -1
  4. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/upgrade.py +9 -9
  5. {mwgencode-1.3.13 → mwgencode-1.4.0}/manage.py +57 -75
  6. {mwgencode-1.3.13 → mwgencode-1.4.0/mwgencode.egg-info}/PKG-INFO +3 -2
  7. {mwgencode-1.3.13 → mwgencode-1.4.0}/mwgencode.egg-info/SOURCES.txt +1 -0
  8. mwgencode-1.4.0/pyproject.toml +3 -0
  9. {mwgencode-1.3.13 → mwgencode-1.4.0}/setup.py +1 -1
  10. {mwgencode-1.3.13 → mwgencode-1.4.0}/CHANGES.txt +0 -0
  11. {mwgencode-1.3.13 → mwgencode-1.4.0}/LICENSE.txt +0 -0
  12. {mwgencode-1.3.13 → mwgencode-1.4.0}/MANIFEST.in +0 -0
  13. {mwgencode-1.3.13 → mwgencode-1.4.0}/README.rst +0 -0
  14. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/__init__.py +0 -0
  15. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/dd_models.py +0 -0
  16. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/ext.py +0 -0
  17. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/__init__.py +0 -0
  18. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/export_class2swgclass.py +0 -0
  19. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/gen_bo_models_code.py +0 -0
  20. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/gen_state_code.py +0 -0
  21. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/gen_swagger_code.py +0 -0
  22. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/gen_tests_code.py +0 -0
  23. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/__init__.py +0 -0
  24. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/babel.cfg +0 -0
  25. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/config-sample.ini +0 -0
  26. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/config.ini +0 -0
  27. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/create_new_table_run.pys +0 -0
  28. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/dockerignore.dock +0 -0
  29. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/file_utils.pys +0 -0
  30. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/gencode.xmi +0 -0
  31. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/gitignore.git +0 -0
  32. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/migrate_run.bat +0 -0
  33. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/migrate_run.pys +0 -0
  34. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/requirements.txt +0 -0
  35. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/run.sh +0 -0
  36. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/seeds/__init__.py +0 -0
  37. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/seeds/models_rm.pys +0 -0
  38. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/seeds/seed_dev_data.pys +0 -0
  39. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/seeds/seed_init.pys +0 -0
  40. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/seeds/seed_rm.pys +0 -0
  41. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/seeds/seed_run.pys +0 -0
  42. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/seeds/seed_utils.pys +0 -0
  43. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/test__init__.pys +0 -0
  44. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/test_run.pys +0 -0
  45. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/sample/utils.pys +0 -0
  46. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/Dockerfile.tmp +0 -0
  47. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/README.md +0 -0
  48. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/__init__.py +0 -0
  49. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/__init__.pys +0 -0
  50. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/config.pys +0 -0
  51. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/default.conf +0 -0
  52. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/docker-compose-dev.yaml +0 -0
  53. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/docker-compose.yaml +0 -0
  54. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/drone.tmp +0 -0
  55. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/flask_models.pys +0 -0
  56. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/flask_models_base.pys +0 -0
  57. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/gen_code_flask.yaml +0 -0
  58. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/k8s-tmp.yml +0 -0
  59. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/run.pys +0 -0
  60. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/sample.mdj +0 -0
  61. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/setup.tmp +0 -0
  62. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/supervisord.conf +0 -0
  63. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/swagger_file.yaml +0 -0
  64. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/swg_class.tmp +0 -0
  65. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/swg_ctrl_code.pys +0 -0
  66. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/swg_package_mng.tmp +0 -0
  67. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/test_test_base.tmp +0 -0
  68. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/tests/__init__.py +0 -0
  69. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/tests/__init__.pys +0 -0
  70. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/tests/init_test_data.pys +0 -0
  71. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/tests/run.pys +0 -0
  72. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/tests/test_base.pys +0 -0
  73. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/tests/test_classmng.pys +0 -0
  74. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/uwsgi.ini +0 -0
  75. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/gencode/template/uwsgi_run.pys +0 -0
  76. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/importmdj/__init__.py +0 -0
  77. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/importmdj/import_dd_classes.py +0 -0
  78. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/importmdj/import_swagger2_class.py +0 -0
  79. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/importmdj/import_uml_models.py +0 -0
  80. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/importxmi/__init__.py +0 -0
  81. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/importxmi/import_classes.py +0 -0
  82. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/importxmi/import_sequences.py +0 -0
  83. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/importxmi/import_states.py +0 -0
  84. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/importxmi/import_swagger.py +0 -0
  85. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/swg2_class_models.py +0 -0
  86. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/uml_class_models.py +0 -0
  87. {mwgencode-1.3.13 → mwgencode-1.4.0}/gencode/utils.py +0 -0
  88. {mwgencode-1.3.13 → mwgencode-1.4.0}/help.md +0 -0
  89. {mwgencode-1.3.13 → mwgencode-1.4.0}/mwgencode.egg-info/dependency_links.txt +0 -0
  90. {mwgencode-1.3.13 → mwgencode-1.4.0}/mwgencode.egg-info/entry_points.txt +0 -0
  91. {mwgencode-1.3.13 → mwgencode-1.4.0}/mwgencode.egg-info/requires.txt +0 -0
  92. {mwgencode-1.3.13 → mwgencode-1.4.0}/mwgencode.egg-info/top_level.txt +0 -0
  93. {mwgencode-1.3.13 → mwgencode-1.4.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: mwgencode
3
- Version: 1.3.13
3
+ Version: 1.4.0
4
4
  Summary: 根据starUML文档产生flask专案的代码
5
5
  Home-page: https://bitbucket.org/maxwin-inc/gencode/src/
6
6
  Author: cxhjet
@@ -45,6 +45,7 @@ Dynamic: author-email
45
45
  Dynamic: classifier
46
46
  Dynamic: description
47
47
  Dynamic: home-page
48
+ Dynamic: license-file
48
49
  Dynamic: requires-dist
49
50
  Dynamic: summary
50
51
 
@@ -134,12 +134,11 @@ class GenProject_Sample(GenProject_base):
134
134
  if not os.path.exists('docs'):
135
135
  os.makedirs('docs')
136
136
 
137
- # shutil.copy(os.path.join(self.sample_path, 'sample.mdj'),
138
- # os.path.join(os.path.realpath(self.rootpath),'docs', '%s.mdj'%p_name))
139
137
  template = self.env.get_template(r'sample.mdj')
138
+ # 不要覆盖原有的文件
140
139
  saveUTF8File(os.path.join(os.path.realpath(self.rootpath),'docs', '%s.mdj'%p_name),
141
140
  [template.render(service_name=p_name)],
142
- writegeninfo=False)
141
+ writegeninfo=False,exist_ok=False)
143
142
  gen_code_file = os.path.join(os.path.realpath(self.rootpath), 'gen_code_run.py')
144
143
  if include_gencoderun and not os.path.exists(gen_code_file):
145
144
  template = self.env.get_template(r'gen_code_run.pys')
@@ -236,6 +235,13 @@ class GenProject_Flask(GenProject_base):
236
235
  exist_ok=False
237
236
  )
238
237
 
238
+ # saveUTF8File(os.path.join(os.path.realpath(self.rootpath), 'gen_code_run.py'),
239
+ # [self.env.get_template('gen_code_run.pys').render(root_path=os.path.split(self.rootpath)[-1],
240
+ # swagger=gen.swager)],
241
+ # exist_ok=False
242
+ # )
243
+
244
+
239
245
  saveUTF8File(os.path.join(os.path.realpath(self.rootpath), f'{gen.swager.name}-k8s.yml'),
240
246
  [self.env.get_template('k8s-tmp.yml').render(root_path=os.path.split(self.rootpath)[-1],
241
247
  swagger=gen.swager, plugins=plugins)],
@@ -258,8 +264,8 @@ class GenProject_Flask(GenProject_base):
258
264
  # os.path.join(os.path.realpath(self.rootpath),'config-sample.ini'))
259
265
  self.save_as(os.path.join(self.sample_path,'babel.cfg'),
260
266
  os.path.join(os.path.realpath(self.rootpath), 'babel.cfg'))
261
- self.save_as(os.path.join(self.sample_path,'gen_code_run.pys'),
262
- os.path.join(os.path.realpath(self.rootpath),'gen_code_run.py'))
267
+ # self.save_as(os.path.join(self.sample_path,'gen_code_run.pys'),
268
+ # os.path.join(os.path.realpath(self.rootpath),'gen_code_run.py'))
263
269
  self.save_as(os.path.join(self.sample_path, 'requirements.txt'),
264
270
  os.path.join(os.path.realpath(self.rootpath), 'requirements.txt'))
265
271
  self.save_as(os.path.join(self.sample_path, 'gitignore.git'),
@@ -278,12 +284,12 @@ class GenProject_Flask(GenProject_base):
278
284
  if include_model:
279
285
  self.save_as(os.path.join(self.sample_path, 'utils.pys'),
280
286
  os.path.join(os.path.realpath(self.rootpath), 'app', 'utils.py'))
281
- self.save_as(os.path.join(self.sample_path, 'migrate_run.pys'),
282
- os.path.join(os.path.realpath(self.rootpath), 'migrate_run.py'))
283
- self.save_as(os.path.join(self.sample_path, 'migrate_run.bat'),
284
- os.path.join(os.path.realpath(self.rootpath), 'migrate_run.bat'))
285
- self.save_as(os.path.join(self.sample_path, 'migrate_run.bat'),
286
- os.path.join(os.path.realpath(self.rootpath), 'migrate_run.sh'))
287
+ # self.save_as(os.path.join(self.sample_path, 'migrate_run.pys'),
288
+ # os.path.join(os.path.realpath(self.rootpath), 'migrate_run.py'))
289
+ # self.save_as(os.path.join(self.sample_path, 'migrate_run.bat'),
290
+ # os.path.join(os.path.realpath(self.rootpath), 'migrate_run.bat'))
291
+ # self.save_as(os.path.join(self.sample_path, 'migrate_run.bat'),
292
+ # os.path.join(os.path.realpath(self.rootpath), 'migrate_run.sh'))
287
293
  if include_seeds:
288
294
  # self.save_as(os.path.join(self.sample_path, 'config.ini'),
289
295
  # os.path.join(os.path.realpath(self.rootpath), 'seeds', 'config.ini'))
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env python
2
2
 
3
- from gencode.gen_code import GenCode,GenProject_Flask
3
+ from gencode.gen_code import GenCode,GenProject_Flask,GenSwagger
4
4
 
5
5
  if __name__ == '__main__':
6
6
  rootpath = r'.'
@@ -8,6 +8,14 @@ if __name__ == '__main__':
8
8
  g = GenCode(umlfile,rootpath)
9
9
  # 把boclass 汇出成 swagger class
10
10
  g.export(umlfile,umlfile,exclude_classes=['employee','depart','company','company_auth'])
11
+
12
+ # 从modelfile中汇入到swagerfile中,并生成swagger类,不会重复导入
13
+ # swg = GenSwagger(umlfile,rootpath)
14
+ # swg.export_one_swgclass('MemberUser',xmifile)
15
+ # # 为swagger类增加 方法,范例
16
+ # swg.add_operation('EmpUsermng', 'empuser_register', 'post')
17
+ # swg.add_operation('verificationcode_mng', 'email_verificationcode', 'get')
18
+
11
19
  # 产生model单元,type= flask:产生flask_sqlalchemy 的 model
12
20
  # type = sql :产生 sqlalchemy 的 model
13
21
  g.model()
@@ -57,15 +57,15 @@ class Upgrade_k8s(Upgrade_base):
57
57
  filename = os.path.join(os.path.realpath(self.root_path),'app','config.py')
58
58
  scodes = self.load_file(filename)
59
59
  code_ins = f'''
60
- # 支持k8s
61
- SUPPORT_K8S = os.environ.get('SUPPORT_K8S', 'false').lower() == 'true'
62
- @classmethod
63
- def get_host_addr(cls):
64
- from mwsdk import AgentConf
65
- if cls.SUPPORT_K8S:
66
- return '{self.swagger.name}-server'
67
- return AgentConf().bind_ip
68
- '''
60
+ # 支持k8s
61
+ SUPPORT_K8S = os.environ.get('SUPPORT_K8S', 'false').lower() == 'true'
62
+ @classmethod
63
+ def get_host_addr(cls):
64
+ from mwsdk import AgentConf
65
+ if cls.SUPPORT_K8S:
66
+ return '{self.swagger.name}-server'
67
+ return AgentConf().bind_ip
68
+ '''
69
69
  try:
70
70
  scodes.index(' def get_host_addr(cls):')
71
71
  except Exception as e:
@@ -1,6 +1,7 @@
1
1
  from typing import TextIO
2
2
  import logging
3
3
  from gencode.gen_code import GenCode,GenProject_Sample,GenProject_Flask,GenProject_Aiohttp,GenSwagger
4
+ from gencode.importmdj.import_swagger2_class import ImportSwagger
4
5
  import argparse
5
6
  import os
6
7
  import sys
@@ -48,7 +49,7 @@ class Gen_Code():
48
49
  try:
49
50
  return os.path.join(self._get_rootpath(),
50
51
  self._get_config()['project']['doc_dir'],
51
- self._get_config().get('project',{}).get('models',{}).get(self.args.model)['file'])
52
+ self._get_config()['project']['models']['main']['file'])
52
53
  except Exception as e:
53
54
  raise Exception('gen_code.yaml 文件内容出错,%s'%e)
54
55
 
@@ -61,44 +62,17 @@ class Gen_Code():
61
62
  r'%s' % self.args.project_name)
62
63
  gp.gen_code(self.args.python_code)
63
64
 
64
- def gen_model(self,outfile='model_base.py'):
65
- '''
66
- 产生model单元
67
- :return:
68
- '''
69
- logging.info(self.args)
70
- g = GenCode(self.umlfile, self.rootpath)
71
- g.model(outfile=outfile)
72
-
73
- def gen_swagger(self):
74
- '''
75
- 产生swagger.yaml单元
76
- :return:
77
- '''
78
- g = GenCode(self.umlfile, self.rootpath)
79
- g.swagger()
80
65
 
81
66
  def gen_export(self):
82
- exp = ExportClass2SWGClass(self.umlfile,self.umlfile)
83
- exp.export()
67
+ umlfile = self._get_umlfile()
68
+ swg = GenSwagger(umlfile)
69
+ swg.export_one_swgclass(self.args.umlclass,umlfile)
84
70
 
85
71
  def gen_add(self):
86
- prj_type = self._get_apptype()
87
72
  umlfile = self._get_umlfile()
88
- prj_rootpath = self._get_rootpath()
89
- if prj_type == 'flask':
90
- '''
91
- 1,修改gen_code.yaml
92
- 2,生成uml
93
- 3,修改代码
94
- '''
95
- pass
96
- elif prj_type =='aiohttp':
97
- pass
98
- else:
99
- raise Exception('不支持该project type(%s)'%prj_type)
100
-
101
-
73
+ swg = GenSwagger(umlfile)
74
+ swg.add_operation(self.args.swagger_package, self.args.umlclass_operation, self.args.http_method_type)
75
+
102
76
  def gen_build(self):
103
77
  prj_type = self._get_apptype()
104
78
  umlfile = self._get_umlfile()
@@ -112,12 +86,17 @@ class Gen_Code():
112
86
  else:
113
87
  raise Exception('不支持该project type(%s)'%prj_type)
114
88
  gp.gen_code()
89
+ g = GenCode(umlfile, prj_rootpath)
90
+ # 产生model
91
+ g.model()
115
92
 
116
93
  def gen_upgrade(self):
117
94
  # logging.info(self.args)
118
95
  dir = self.args.dir
96
+ umlfile = self._get_umlfile()
97
+ swg = ImportSwagger().impUMLModels(umlfile)
119
98
  if self.args.type=='k8s':
120
- k8s = upgrade.Upgrade_k8s(dir)
99
+ k8s = upgrade.Upgrade_k8s(dir,swg)
121
100
  k8s.merge_code()
122
101
 
123
102
  def main():
@@ -128,7 +107,7 @@ def main():
128
107
  subparsers = parser.add_subparsers(title='Command')
129
108
 
130
109
  # 初始项目,建立sample umlmodel,config等文件
131
- gp_parser = subparsers.add_parser('init', help='创建项目的初始文件,包括uml,cconfig等文件', add_help=False)
110
+ gp_parser = subparsers.add_parser('init', help='创建项目的初始文件,包括uml,cconfig等文件', add_help=True)
132
111
  gp_parser.set_defaults(command='init_project')
133
112
  gp_parser.add_argument('-f', '--umlfile',
134
113
  type = str,
@@ -145,20 +124,24 @@ def main():
145
124
  help='产生gen_code_run.py 单元',
146
125
  action='store_true')
147
126
 
148
- gp_parser = subparsers.add_parser('build', help='产生项目相关的文件'
149
- '-m model名称', add_help=False)
127
+ gp_parser = subparsers.add_parser('build', help='产生项目相关的文件,UMLmodel或gen_code.yaml有变更时,需要重新执行,以生成代码'
128
+ '-m model名称', add_help=True)
150
129
  gp_parser.set_defaults(command='gen_build')
151
- gp_parser.add_argument('-m','--model', help='model名称',type=str,default = 'main')
130
+ # gp_parser.add_argument('-m','--model', help='model名称',type=str,default = 'main')
152
131
 
153
- gp_parser = subparsers.add_parser('add', help='添加新的model', add_help=False)
132
+ gp_parser = subparsers.add_parser('add', help='添加一个方法到swagger相关类', add_help=True)
154
133
  gp_parser.set_defaults(command='gen_add')
155
- gp_parser.add_argument('-m','--model', help='model名称',type=str)
134
+ # gp_parser.add_argument('-m','--model', help='model名称,暂',type=str)
135
+ gp_parser.add_argument('-p','--swagger_package', help='swagger package class名称,如:employeemng',type=str)
136
+ gp_parser.add_argument('-o','--umlclass_operation', help='uml class的operation名称,如: get_employee',type=str)
137
+ gp_parser.add_argument('-t','--http_method_type', help='操作类别,如:get,post,put,delete',type=str,default='get')
156
138
 
157
- gp_parser = subparsers.add_parser('exp', help='把mdj的umlclass 转成 swagger class', add_help=False)
139
+ gp_parser = subparsers.add_parser('exp', help='把logic view中的umlclass 生成 swagger class,包含 get,post,put,delete 的operation', add_help=True)
158
140
  gp_parser.set_defaults(command='gen_export')
141
+ gp_parser.add_argument('-c','--umlclass', help='logic view中的uml class 名称, 如:employee',type=str)
159
142
 
160
143
  gp_parser = subparsers.add_parser('upgrade', help='升级项目相关的文件,如:k8s'
161
- '-t 升级类型名称', add_help=False)
144
+ '-t 升级类型名称', add_help=True)
162
145
  gp_parser.set_defaults(command='gen_upgrade')
163
146
  gp_parser.add_argument('-t','--type',
164
147
  help='升级类型的名称,如:k8s',
@@ -168,17 +151,28 @@ def main():
168
151
  help='专案目录(default: 当前目录名)',
169
152
  default='.')
170
153
 
171
-
172
-
173
- # gp_parser = subparsers.add_parser('gctrl', help='根据xmi创建umlclass 的 swagger ctrole单元', add_help=False)
174
- # gp_parser.set_defaults(command='gen_ctrl')
175
-
176
154
  if len(sys.argv)==1:
177
155
  parser.print_help()
178
- print('sample 1 : python gen_code.py -f ./docs/test.mdj -p d:/temp/swg -t aiohttp gp')
179
- print('sample 2 : gencode -f ./docs/test.mdj -t aiohttp gp')
180
- print('sample 3 : gencode -f ./docs/test.mdj gp')
181
- print('sample 4 : gencode gp #-f gencode.mdj -t flask')
156
+ print('一) 初始化专案的命令')
157
+ print(' gencode init -h # 查看命令帮助,所有参数都可以独立使用,也可以组合使用')
158
+ print(' gencode init # 产生一个以当前目录名为专案名称的flask项目, 如果想修改专案参数, 请直接修改gen_code.yaml文件')
159
+ print(' gencode init -p drts-order -t flask # 产生一个专案名称为drts-order 的flask项目')
160
+ print(' gencode init -c # 产生gen_code_run.py单元')
161
+ print('二) 产生专案所有的命令,有变更model或配置时时,需要重新执行,以生成代码:')
162
+ print(' gencode build # 按gen_code.yaml文件,产生项目的所有文件')
163
+ print('三) 根据类名生成swagger class,需要在staruml中 执行 reload ')
164
+ print(' gencode exp -h # 查看命令帮助,所有参数都可以独立使用,也可以组合使用')
165
+ print(' gencode exp -c employee # 把logic view中的employee 生成 swagger class,包含 get,post,put,delete 的operation')
166
+ print('四) 给swagger class 增加一个操作(operation),需要在staruml中 执行 reload ')
167
+ print(' gencode add -h # 查看命令帮助,所有参数都可以独立使用,也可以组合使用')
168
+ print(' gencode add -p employeemng -o get_employee -t get # 给swagger class employeemng 增加一个get_employee的操作,操作类型为get')
169
+ print('五) 升级代码,如: 支持 k8s')
170
+ print(' gencode upgrade -h # 查看命令帮助,所有参数都可以独立使用,也可以组合使用')
171
+ print(' gencode upgrade -t k8s # 升级旧专案支持 k8s')
172
+ print('备注: 当不是在当前项目的根目录执行时,需要指定rootpath参数,如:')
173
+ print(' gencode -r ./mwwork/projects/drts-order build ')
174
+ print(' gencode -r ./mwwork/projects/drts-order exp -c employee ')
175
+ print(' gencode -r ./mwwork/projects/drts-order add -p employeemng -o get_employee -t get' )
182
176
  sys.exit()
183
177
  args = parser.parse_args(sys.argv[1:])
184
178
  print(args)
@@ -187,26 +181,14 @@ def main():
187
181
  print('gen code success!')
188
182
 
189
183
  if __name__ == '__main__':
190
- # main()
191
- rootpath = r'./order_system'
192
- # umlfile = r'./docs/order_system.mdj'
193
- umlfile = r'D:\mwwork\projects\mwgencode\order_system\docs\test.mdj'
194
- # umlfile = r'D:\mwwork\projects\mwgencode\order_system\docs\routemng.mdj'
195
- g = GenCode(umlfile, rootpath)
196
- # # # 把boclass 汇出成 swagger class
197
- g.export(umlfile,umlfile,exclude_classes=['user'])
198
- # # # 产生model单元,type= flask:产生flask_sqlalchemy 的 model
199
- # # # type = sql :产生 sqlalchemy 的 model
200
- g.model()
201
- gen_swg = GenSwagger(umlfile)
202
- gen_swg.export_one_swgclass('xxxx')
203
- gen_swg.add_operation('xxxxmng','tttt',)
204
- p = GenProject_Flask(umlfile, rootpath)
205
- # # 产生专案代码
206
- p.gen_code()
207
- # # umlfile=r'D:\mwwork\projects\mwgencode\order_system\docs\realtime.mdj'
208
- # # gen_swg = GenSwagger(umlfile)
209
- # # gen_swg.add_operation('geomng','tttt','post')
210
- # #
211
- # # p = GenProject_Aiohttp(umlfile,rootpath)
212
- # # p.gen_code()
184
+ # 设置环境变量
185
+ os.environ['PYTHONPATH'] = os.path.dirname(os.path.abspath(__file__))
186
+ if len(sys.argv) == 1:
187
+ # 调试时使用的默认参数
188
+ # sys.argv.extend(['init', '-p', 'testproject', '-t', 'flask','-c'])
189
+ # sys.argv.extend(['-r','./testproject','build'])
190
+ # sys.argv.extend(['-r','./testproject','exp','-c','order'])
191
+ sys.argv.extend(['-r','./testproject','add','-p','ordermng','-o','delete_orders','-t','delete'])
192
+ # sys.argv.extend(['upgrade','-d','./testproject'])
193
+ main()
194
+
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: mwgencode
3
- Version: 1.3.13
3
+ Version: 1.4.0
4
4
  Summary: 根据starUML文档产生flask专案的代码
5
5
  Home-page: https://bitbucket.org/maxwin-inc/gencode/src/
6
6
  Author: cxhjet
@@ -45,6 +45,7 @@ Dynamic: author-email
45
45
  Dynamic: classifier
46
46
  Dynamic: description
47
47
  Dynamic: home-page
48
+ Dynamic: license-file
48
49
  Dynamic: requires-dist
49
50
  Dynamic: summary
50
51
 
@@ -4,6 +4,7 @@ MANIFEST.in
4
4
  README.rst
5
5
  help.md
6
6
  manage.py
7
+ pyproject.toml
7
8
  setup.py
8
9
  gencode/__init__.py
9
10
  gencode/dd_models.py
@@ -0,0 +1,3 @@
1
+ [build-system]
2
+ requires = ["setuptools>=42", "wheel"]
3
+ build-backend = "setuptools.build_meta"
@@ -7,7 +7,7 @@ def read(f):
7
7
 
8
8
  setup(
9
9
  name='mwgencode',
10
- version='1.3.13',
10
+ version='1.4.0',
11
11
  author='cxhjet',
12
12
  author_email='cxhjet@qq.com',
13
13
  description="根据starUML文档产生flask专案的代码",
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes