{"version":3,"sources":["webpack:///./src/views/sys/menu/menuConfig/menuConfig.ts"],"names":["MenuConfig","_Mixins","_this","Object","D_1_Code_gh_light_cloud_code_version1_gh_light_mes_ui_node_modules_babel_runtime_corejs2_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_5__","this","options","page_id","db","table","tableId","code","tableDemo","pageCode","menu","step","steps","title","codeOptions","readOnly","language","autoIndent","automaticLayout","jsCodeOptions","module","cls","serviceMethods","get_db_list","table_exist","create_model","create_table","create_source","get_dynamic_pages","save_menu","get_options","generate_service_code","generate_page_code","optionsTemplate","D_1_Code_gh_light_cloud_code_version1_gh_light_mes_ui_node_modules_babel_runtime_corejs2_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_9__","D_1_Code_gh_light_cloud_code_version1_gh_light_mes_ui_node_modules_babel_runtime_corejs2_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_6__","key","value","invoke","parames","D_1_Code_gh_light_cloud_code_version1_gh_light_mes_ui_node_modules_babel_runtime_corejs2_core_js_object_assign__WEBPACK_IMPORTED_MODULE_4___default","option","intialOptions","Id","_intialOptions","D_1_Code_gh_light_cloud_code_version1_gh_light_mes_ui_node_modules_babel_runtime_corejs2_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_3__","regeneratorRuntime","mark","_callee","id","res","wrap","_context","prev","next","sent","data","isSuccess","stop","_x","_x2","apply","arguments","_createTable","_callee2","_context2","$validator","validateAll","$setLoading","demo","t0","finish","createTable","_validateTableNext","_callee3","_context3","validateTableNext","_generateServiceCode","_callee4","_context4","generateServiceCode","ref","editor","$refs","submit","_generatePageCode","_callee5","_context5","menu_id","generatePageCode","_save","_callee6","_context6","save","navigate","get","_this2","method","D_1_Code_gh_light_cloud_code_version1_gh_light_mes_ui_node_modules_babel_runtime_corejs2_core_js_array_is_array__WEBPACK_IMPORTED_MODULE_1___default","array","find","item","vue_property_decorator__WEBPACK_IMPORTED_MODULE_12__","_utils_mixins_clsService__WEBPACK_IMPORTED_MODULE_13__","tslib__WEBPACK_IMPORTED_MODULE_10__","vue_class_component__WEBPACK_IMPORTED_MODULE_11___default","components","TableColumn","_components_ghTable_dataTable_tableColumn_tableColumn_vue__WEBPACK_IMPORTED_MODULE_14__","__webpack_exports__"],"mappings":"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","file":"js/chunk-2d2170f8.66ac98d5.js","sourcesContent":["/**\r\n * @module views\\sys\\menu\\menuConfig\r\n */\r\nimport Component from \"vue-class-component\";\r\nimport { Prop, Mixins, Watch } from \"vue-property-decorator\";\r\nimport GhClassService from \"@/utils/mixins/clsService\";\r\nimport TableColumn from \"@/components/ghTable/dataTable/tableColumn/tableColumn.vue\";\r\nimport { MethodService } from \"@/utils/serviceModel\";\r\nimport GhCodeEditor from \"@/components/ghCodeEditor/ghCodeEditor\";\r\n\r\n@Component({\r\n components: {\r\n TableColumn\r\n }\r\n})\r\nexport default class MenuConfig extends Mixins(GhClassService) {\r\n /**\r\n * 界面配置\r\n */\r\n private options = {\r\n page_id: null, // 选择的页面\r\n db: \"\", // 数据库\r\n table: \"\", // 表\r\n tableId: \"\", // 表Id\r\n code: \"\", // 服务代码\r\n tableDemo: \"\", // 备注\r\n pageCode: \"\" // 页面代码\r\n };\r\n\r\n /**\r\n * 菜单\r\n */\r\n private menu: IndexObject = {};\r\n\r\n /**\r\n * 步骤\r\n */\r\n private step = 1;\r\n\r\n mounted() {\r\n this.invoke(\"get_dynamic_pages\");\r\n this.invoke(\"get_db_list\");\r\n }\r\n\r\n /**\r\n * 导航到该界面时\r\n * @param parames\r\n */\r\n\r\n protected onNavigateTo(parames) {\r\n this.step = 1;\r\n this.options = Object.assign({}, this.optionsTemplate);\r\n if (parames) {\r\n this.menu = parames;\r\n if (this.menu.options) {\r\n let option: IndexObject | null = this.menu.options;\r\n if (option) {\r\n Object.assign(this.options, option);\r\n this.intialOptions(this.menu.Id, option);\r\n }\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * 根据菜单初始化相关数据(table,code等)\r\n * @param id\r\n * @param options\r\n */\r\n private async intialOptions(id, options) {\r\n let res = await this.invoke(\"get_options\", { id, options });\r\n if (res) {\r\n if (res.data.isSuccess) {\r\n Object.assign(this.options, res.data.data);\r\n }\r\n }\r\n\r\n // this.options = { ...this.options, ...options };\r\n }\r\n\r\n /**\r\n * 创建数据库\r\n */\r\n private async createTable() {\r\n if (await this.$validator.validateAll()) {\r\n try {\r\n this.$setLoading(true);\r\n let res = await this.invoke(\"create_table\", {\r\n db: this.options.db,\r\n table: this.options.table,\r\n demo: this.options.tableDemo\r\n });\r\n if (res) {\r\n if (res.data.isSuccess) {\r\n this.options.tableId = res.data.data;\r\n this.next();\r\n }\r\n }\r\n } catch (error) {\r\n } finally {\r\n this.$setLoading(false);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * 数据库验证通过后,下一步\r\n */\r\n private async validateTableNext() {\r\n if (await this.$validator.validateAll()) {\r\n this.next();\r\n }\r\n }\r\n\r\n /**\r\n * 生成后端服务代码\r\n */\r\n private async generateServiceCode() {\r\n this.$setLoading(true);\r\n try {\r\n let res = await this.invoke(\"generate_service_code\", {\r\n options: this.options\r\n });\r\n if (res) {\r\n if (res.data.isSuccess) {\r\n this.options.code = res.data.data;\r\n }\r\n }\r\n } catch (error) {\r\n } finally {\r\n this.$setLoading(false);\r\n }\r\n }\r\n\r\n private submitCode(ref: string) {\r\n let editor = this.$refs[ref] as GhCodeEditor;\r\n if (editor) {\r\n editor.submit();\r\n this.next();\r\n }\r\n }\r\n\r\n /**\r\n * 生成前端页面代码\r\n */\r\n private async generatePageCode() {\r\n try {\r\n this.$setLoading(true);\r\n let res = await this.invoke(\"generate_page_code\", {\r\n menu_id: this.menu.Id,\r\n options: this.options\r\n });\r\n if (res) {\r\n if (res.data.isSuccess) {\r\n this.options.pageCode = res.data.data;\r\n }\r\n }\r\n } catch (error) {\r\n } finally {\r\n this.$setLoading(false);\r\n }\r\n }\r\n\r\n /**\r\n * 保存配置\r\n */\r\n private async save() {\r\n try {\r\n this.$setLoading(true);\r\n let res = await this.invoke(\"save_menu\", {\r\n menu: this.menu,\r\n options: this.options\r\n });\r\n } catch (error) {\r\n } finally {\r\n this.$setLoading(false);\r\n }\r\n }\r\n\r\n /**\r\n * 前进\r\n */\r\n private next() {\r\n this.step += 1;\r\n }\r\n /**\r\n * 后台\r\n */\r\n private back() {\r\n this.step -= 1;\r\n }\r\n\r\n /**\r\n * 返回菜单维护界面\r\n */\r\n private retureMenuPage() {\r\n this.navigate(\"/sys01\");\r\n }\r\n\r\n private steps = [\r\n {\r\n step: 1,\r\n title: \"选择页面类型\"\r\n },\r\n {\r\n step: 2,\r\n title: \"建立数据库\"\r\n },\r\n {\r\n step: 3,\r\n title: \"配置表结构\"\r\n },\r\n {\r\n step: 4,\r\n title: \"编写后台脚本\"\r\n },\r\n {\r\n step: 5,\r\n title: \"编写前台脚本\"\r\n },\r\n {\r\n step: 6,\r\n title: \"完成配置\"\r\n }\r\n ];\r\n\r\n private get selectedPage() {\r\n let res: any = null;\r\n if (this.options.page_id) {\r\n if (this.serviceMethods.get_dynamic_pages) {\r\n let method = this.serviceMethods.get_dynamic_pages as MethodService;\r\n if (method.data) {\r\n if (Array.isArray(method.data)) {\r\n let array = method.data as IndexObject[];\r\n res = array.find(item => item.Id === this.options.page_id);\r\n }\r\n }\r\n }\r\n }\r\n if (!res) {\r\n res = {};\r\n }\r\n return res;\r\n }\r\n\r\n private codeOptions = {\r\n readOnly: false,\r\n language: \"python\",\r\n autoIndent: true,\r\n automaticLayout: true\r\n };\r\n\r\n private jsCodeOptions = {\r\n readOnly: false,\r\n language: \"javascript\",\r\n autoIndent: true,\r\n automaticLayout: true\r\n };\r\n\r\n protected module = \"mes.business.sys.service\";\r\n protected cls = \"DynamicMenuService\";\r\n protected serviceMethods: { [key: string]: MethodService | null } = {\r\n get_db_list: null,\r\n table_exist: null,\r\n create_model: null,\r\n create_table: null,\r\n create_source: null,\r\n get_dynamic_pages: null,\r\n save_menu: null,\r\n get_options: null,\r\n generate_service_code: null,\r\n generate_page_code: null\r\n };\r\n private optionsTemplate = {\r\n page_id: null, // 选择的页面\r\n db: \"\", // 数据库\r\n table: \"\", // 表\r\n tableId: \"\", // 表Id\r\n code: \"\", // 服务代码\r\n tableDemo: \"\", // 备注\r\n pageCode: \"\" // 页面代码\r\n };\r\n}\r\n"],"sourceRoot":""}