2 Star 1 Fork 2

dvadmin / dvadmin_apscheduler_backend

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
initialize.py 5.18 KB
一键复制 编辑 原始数据 按行查看 历史
dvadmin 提交于 2021-08-24 00:36 . 功能变化(master): 初始化配置
# 初始化
from application import settings
from dvadmin.system.models import MenuButton, Menu
from dvadmin.utils.core_initialize import CoreInitialize
class Initialize(CoreInitialize):
creator_id = "456b688c-8ad5-46de-bc2e-d41d8047bd42"
def init_menu(self):
"""
初始化菜单表
"""
self.menu_data = [
{"id": "b02a2224-efc9-4329-9033-7380ac38fb20", "name": "定时任务", "sort": 8, "icon": "hourglass-2",
"web_path": "/task", "component": "dvadmin_plugins/dvadmin_apscheduler_web/task/index",
"component_name": "task", "parent_id": "54f769b0-3dff-416c-8102-e55ec44827cc"},
{"id": "b02a2224-efc9-4329-9033-7380ac38fb21", "name": "定时任务详情", "sort": 8, "icon": "map-o",
"web_path": "/taskDetail", "component": "dvadmin_plugins/dvadmin_apscheduler_web/taskDetail/index",
"component_name": "taskDetail", "parent_id": "54f769b0-3dff-416c-8102-e55ec44827cc", "visible": 0},
]
self.save(Menu, self.menu_data, "菜单表")
def init_menu_button(self):
"""
初始化菜单权限表
"""
self.menu_button_data = [
{'id': 'ca8125a6-2868-435b-a6c6-99ce1ef5d9e4', 'menu_id': 'b02a2224-efc9-4329-9033-7380ac38fb20',
'name': '查询', 'value': 'Search', 'api': '/api/dvadmin_apscheduler/cron/', 'method': 0},
{'id': '74224c4d-52fe-4624-bf32-5dc432199803', 'menu_id': 'b02a2224-efc9-4329-9033-7380ac38fb20',
'name': '新增', 'value': 'Create', 'api': '/api/dvadmin_apscheduler/cron/', 'method': 1},
{'id': '399cd210-fa76-461b-aa5d-8be40b71b3f6', 'menu_id': 'b02a2224-efc9-4329-9033-7380ac38fb20',
'name': '编辑', 'value': 'Update', 'api': '/api/dvadmin_apscheduler/cron/{id}/', 'method': 2},
{'id': '64352645-ae18-46be-87b0-e8dc8137a645', 'menu_id': 'b02a2224-efc9-4329-9033-7380ac38fb20',
'name': '删除', 'value': 'Delete', 'api': '/api/dvadmin_apscheduler/cron/{id}/', 'method': 3},
{'id': '70a17263-00fa-4299-b9dc-df84f54cafc6', 'menu_id': 'b02a2224-efc9-4329-9033-7380ac38fb20',
'name': '单例', 'value': 'Retrieve', 'api': '/api/dvadmin_apscheduler/cron/{id}/', 'method': 0},
{'id': 'ca3125a6-2868-435b-a6c6-99ce1ef5d9e4', 'menu_id': 'b02a2224-efc9-4329-9033-7380ac38fb21',
'name': '查询', 'value': 'Search', 'api': '/api/dvadmin_apscheduler/task/', 'method': 0},
{'id': '74424c4d-52fe-4624-bf32-5dc432199803', 'menu_id': 'b02a2224-efc9-4329-9033-7380ac38fb21',
'name': '新增', 'value': 'Create', 'api': '/api/dvadmin_apscheduler/task/', 'method': 1},
{'id': '397cd210-fa76-461b-aa5d-8be40b71b3f6', 'menu_id': 'b02a2224-efc9-4329-9033-7380ac38fb21',
'name': '编辑', 'value': 'Update', 'api': '/api/dvadmin_apscheduler/task/{id}/', 'method': 2},
{'id': '64852645-ae18-46be-87b0-e8dc8137a645', 'menu_id': 'b02a2224-efc9-4329-9033-7380ac38fb21',
'name': '删除', 'value': 'Delete', 'api': '/api/dvadmin_apscheduler/task/{id}/', 'method': 3},
{'id': '70017263-00fa-4299-b9dc-df84f54cafc6', 'menu_id': 'b02a2224-efc9-4329-9033-7380ac38fb21',
'name': '单例', 'value': 'Retrieve', 'api': '/api/dvadmin_apscheduler/task/{id}/', 'method': 0}]
# value = {"Search": "查询", "Create": "新增", "Update": "编辑", "Delete": "删除", "Retrieve": "单例"}
# import uuid
# for menu in self.menu_data:
# for index, val in enumerate(value.items()):
# api = menu.get("component")
# if not api: continue
# api = api.strip('/')
# new_api = ""
# for ele in api:
# if ele.isupper():
# new_api += f"_{ele.lower()}"
# else:
# new_api += ele
# self.menu_button_data.append(
# {
# "id": str(uuid.uuid4()),
# "menu_id": menu.get("id"),
# "name": val[1],
# "value": val[0],
# "api": '/api/' + new_api + '/{id}/' if val[0] in ["Update", "Delete", "Retrieve"] else '/',
# "method": 0 if index == 4 else index}
# )
# print(1, self.menu_button_data)
self.save(MenuButton, self.menu_button_data, "菜单权限表")
def migrate(self):
from django.core import management
management.call_command('makemigrations', "django_apscheduler")
management.call_command('makemigrations', "dvadmin_apscheduler_backend")
command = 'migrate'
if not getattr(settings, 'PLUGINS_LIST', {}).get('dvadmin_tenant_backend', None):
command = 'migrate_schemas'
management.call_command(command, "django_apscheduler")
management.call_command(command, "dvadmin_apscheduler_backend")
def run(self):
self.init_menu()
self.init_menu_button()
def main(reset=False, is_migrate=False):
init = Initialize(reset)
init.run()
if is_migrate:
init.migrate()
if __name__ == '__main__':
main()
1
https://gitee.com/dvadmin/dvadmin_apscheduler_backend.git
git@gitee.com:dvadmin/dvadmin_apscheduler_backend.git
dvadmin
dvadmin_apscheduler_backend
dvadmin_apscheduler_backend
master

搜索帮助