From b5ba4af518f15c2d1672f8c65c5b8514b2deda51 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 22 Oct 2025 13:19:09 +0800 Subject: [PATCH] bugfix --- pyproject.toml | 5 +++++ setup.cfg | 20 ++++++++++++++++++++ xls2ddl/__init__.py | 0 singletree.py => xls2ddl/singletree.py | 18 ++++++++++++++---- tmpls.py => xls2ddl/tmpls.py | 0 xls2crud.py => xls2ddl/xls2crud.py | 11 +++++++++-- xls2ddl.py => xls2ddl/xls2ddl.py | 7 +++++-- xls2ui.py => xls2ddl/xls2ui.py | 8 +++++--- xlsxData.py => xls2ddl/xlsxData.py | 0 9 files changed, 58 insertions(+), 11 deletions(-) create mode 100644 pyproject.toml create mode 100644 setup.cfg create mode 100644 xls2ddl/__init__.py rename singletree.py => xls2ddl/singletree.py (94%) rename tmpls.py => xls2ddl/tmpls.py (100%) rename xls2crud.py => xls2ddl/xls2crud.py (98%) rename xls2ddl.py => xls2ddl/xls2ddl.py (98%) rename xls2ui.py => xls2ddl/xls2ui.py (92%) rename xlsxData.py => xls2ddl/xlsxData.py (100%) diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..047d565 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,5 @@ +[build-system] +requires = ["setuptools>=61", "wheel"] +build-backend = "setuptools.build_meta" + + diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..7f0236b --- /dev/null +++ b/setup.cfg @@ -0,0 +1,20 @@ +[metadata] +name=xls2ddl +version = 1.0.1 +description = a xlsx file to database ddl converter +author = "yu moqing" +author_email = "yumoqing@gmail.com" +readme = "README.md" +license = "MIT" + +[options] +packages = find: +requires_python = ">=3.8" +install_requires = + apppublic + +[options.entry_points] +console_scripts = + xls2ddl = xls2ddl.xls2ddl:main + xls2ui = xls2ddl.xls2ui:main + diff --git a/xls2ddl/__init__.py b/xls2ddl/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/singletree.py b/xls2ddl/singletree.py similarity index 94% rename from singletree.py rename to xls2ddl/singletree.py index dd26ae0..8f2637b 100644 --- a/singletree.py +++ b/xls2ddl/singletree.py @@ -3,12 +3,22 @@ import sys import codecs import json from appPublic.dictObject import DictObject -from xlsxData import xlsxFactory from appPublic.folderUtils import listFile, _mkdir from appPublic.myTE import MyTemplateEngine -from tmpls import data_browser_tmpl, get_data_tmpl, data_new_tmpl, data_update_tmpl, data_delete_tmpl -from xls2crud import build_dbdesc, field_list, subtable2toolbar, filter_backslash -from tmpls import data_new_tmpl, data_update_tmpl, data_delete_tmpl +from xls2ddl.xls2crud import ( + build_dbdesc, + field_list, + subtable2toolbar, + filter_backslash +) +from xls2ddl.xlsxData import xlsxFactory +from xls2ddl.tmpls import ( + data_browser_tmpl, + get_data_tmpl, + data_new_tmpl, + data_update_tmpl, + data_delete_tmpl +) ui_tmpl = """ { diff --git a/tmpls.py b/xls2ddl/tmpls.py similarity index 100% rename from tmpls.py rename to xls2ddl/tmpls.py diff --git a/xls2crud.py b/xls2ddl/xls2crud.py similarity index 98% rename from xls2crud.py rename to xls2ddl/xls2crud.py index 8d7af6f..c892256 100644 --- a/xls2crud.py +++ b/xls2ddl/xls2crud.py @@ -5,11 +5,18 @@ import json import argparse from appPublic.dictObject import DictObject -from xlsxData import xlsxFactory from appPublic.folderUtils import listFile, _mkdir from appPublic.myTE import MyTemplateEngine -from tmpls import data_browser_tmpl, get_data_tmpl, data_new_tmpl, data_update_tmpl, data_delete_tmpl, check_changed_tmpls from appPublic.argsConvert import ArgsConvert +from xlsxData import xlsxFactory +from xls2ddl.tmpls import ( + data_browser_tmpl, + get_data_tmpl, + data_new_tmpl, + data_update_tmpl, + data_delete_tmpl, + check_changed_tmpls +) """ usage: diff --git a/xls2ddl.py b/xls2ddl/xls2ddl.py similarity index 98% rename from xls2ddl.py rename to xls2ddl/xls2ddl.py index a4af1df..918a788 100755 --- a/xls2ddl.py +++ b/xls2ddl/xls2ddl.py @@ -1,4 +1,5 @@ # -*- coding:utf-8 -*- +import sys import io import sys from traceback import print_exc @@ -76,8 +77,7 @@ def model2ddl(folder,dbtype): print_exc() return ddl_str -if __name__ == '__main__': - import sys +def main(): ##解决windows 终端中输出中文出现 # UnicodeEncodeError: 'gbk' codec can't encode character '\xa0' in position 20249 # 错误 @@ -92,3 +92,6 @@ if __name__ == '__main__': s = model2ddl(sys.argv[2], sys.argv[1]) print(s) +if __name__ == '__main__': + main() + diff --git a/xls2ui.py b/xls2ddl/xls2ui.py similarity index 92% rename from xls2ui.py rename to xls2ddl/xls2ui.py index 98121b5..d527db7 100644 --- a/xls2ui.py +++ b/xls2ddl/xls2ui.py @@ -7,9 +7,9 @@ import sys import argparse from appPublic.argsConvert import ArgsConvert from appPublic.dictObject import DictObject -from xls2crud import build_dbdesc, build_crud_ui -from singletree import build_tree_ui -if __name__ == '__main__': +from xls2ddl.xls2crud import build_dbdesc, build_crud_ui +from xls2ddl.singletree import build_tree_ui +def main(): """ crud_json has following format { @@ -49,3 +49,5 @@ if __name__ == '__main__': build_tree_ui(crud_data, db) continue build_crud_ui(crud_data, db) +if __name__ == '__main__': + main() diff --git a/xlsxData.py b/xls2ddl/xlsxData.py similarity index 100% rename from xlsxData.py rename to xls2ddl/xlsxData.py