1 |
- {"remainingRequest":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\boman-framwork\\ruoyi-ui\\src\\views\\tool\\gen\\genInfoForm.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\boman-framwork\\ruoyi-ui\\src\\views\\tool\\gen\\genInfoForm.vue","mtime":1619333322906},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgVHJlZXNlbGVjdCBmcm9tICJAcmlvcGhhZS92dWUtdHJlZXNlbGVjdCI7DQppbXBvcnQgIkByaW9waGFlL3Z1ZS10cmVlc2VsZWN0L2Rpc3QvdnVlLXRyZWVzZWxlY3QuY3NzIjsNCg0KZXhwb3J0IGRlZmF1bHQgew0KICBuYW1lOiAiQmFzaWNJbmZvRm9ybSIsDQogIGNvbXBvbmVudHM6IHsgVHJlZXNlbGVjdCB9LA0KICBwcm9wczogew0KICAgIGluZm86IHsNCiAgICAgIHR5cGU6IE9iamVjdCwNCiAgICAgIGRlZmF1bHQ6IG51bGwNCiAgICB9LA0KICAgIHRhYmxlczogew0KICAgICAgdHlwZTogQXJyYXksDQogICAgICBkZWZhdWx0OiBudWxsDQogICAgfSwNCiAgICAvLyBtZW51czogew0KICAgIC8vICAgdHlwZTogQXJyYXksDQogICAgLy8gICBkZWZhdWx0OiBbXQ0KICAgIC8vIH0sDQogIH0sDQogIGRhdGEoKSB7DQogICAgcmV0dXJuIHsNCiAgICAgIHN1YkNvbHVtbnM6IFtdLA0KICAgICAgcnVsZXM6IHsNCiAgICAgICAgLy8gdHBsQ2F0ZWdvcnk6IFsNCiAgICAgICAgLy8gICB7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAi6K+36YCJ5oup55Sf5oiQ5qih5p2/IiwgdHJpZ2dlcjogImJsdXIiIH0NCiAgICAgICAgLy8gXSwNCiAgICAgICAgLy8gcGFja2FnZU5hbWU6IFsNCiAgICAgICAgLy8gICB7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAi6K+36L6T5YWl55Sf5oiQ5YyF6Lev5b6EIiwgdHJpZ2dlcjogImJsdXIiIH0NCiAgICAgICAgLy8gXSwNCiAgICAgICAgLy8gbW9kdWxlTmFtZTogWw0KICAgICAgICAvLyAgIHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICLor7fovpPlhaXnlJ/miJDmqKHlnZflkI0iLCB0cmlnZ2VyOiAiYmx1ciIgfQ0KICAgICAgICAvLyBdLA0KICAgICAgICAvLyBidXNpbmVzc05hbWU6IFsNCiAgICAgICAgLy8gICB7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAi6K+36L6T5YWl55Sf5oiQ5Lia5Yqh5ZCNIiwgdHJpZ2dlcjogImJsdXIiIH0NCiAgICAgICAgLy8gXSwNCiAgICAgICAgLy8gZnVuY3Rpb25OYW1lOiBbDQogICAgICAgIC8vICAgeyByZXF1aXJlZDogdHJ1ZSwgbWVzc2FnZTogIuivt+i+k+WFpeeUn+aIkOWKn+iDveWQjSIsIHRyaWdnZXI6ICJibHVyIiB9DQogICAgICAgIC8vIF0sDQogICAgICB9DQogICAgfTsNCiAgfSwNCiAgY3JlYXRlZCgpIHt9LA0KICB3YXRjaDogew0KICAgICdpbmZvLnN1YlRhYmxlTmFtZSc6IGZ1bmN0aW9uKHZhbCkgew0KICAgICAgdGhpcy5zZXRTdWJUYWJsZUNvbHVtbnModmFsKTsNCiAgICB9DQogIH0sDQogIG1ldGhvZHM6IHsNCiAgICAvKiog6L2s5o2i6I+c5Y2V5pWw5o2u57uT5p6EICovDQogICAgbm9ybWFsaXplcihub2RlKSB7DQogICAgICBpZiAobm9kZS5jaGlsZHJlbiAmJiAhbm9kZS5jaGlsZHJlbi5sZW5ndGgpIHsNCiAgICAgICAgZGVsZXRlIG5vZGUuY2hpbGRyZW47DQogICAgICB9DQogICAgICByZXR1cm4gew0KICAgICAgICBpZDogbm9kZS5tZW51SWQsDQogICAgICAgIGxhYmVsOiBub2RlLm1lbnVOYW1lLA0KICAgICAgICBjaGlsZHJlbjogbm9kZS5jaGlsZHJlbg0KICAgICAgfTsNCiAgICB9LA0KICAgIC8qKiDpgInmi6nlrZDooajlkI3op6blj5EgKi8NCiAgICBzdWJTZWxlY3RDaGFuZ2UodmFsdWUpIHsNCiAgICAgIHRoaXMuaW5mby5zdWJUYWJsZUZrTmFtZSA9ICcnOw0KICAgIH0sDQogICAgLyoqIOmAieaLqeeUn+aIkOaooeadv+inpuWPkSAqLw0KICAgIHRwbFNlbGVjdENoYW5nZSh2YWx1ZSkgew0KICAgICAgaWYodmFsdWUgIT09ICdzdWInKSB7DQogICAgICAgIHRoaXMuaW5mby5zdWJUYWJsZU5hbWUgPSAnJzsNCiAgICAgICAgdGhpcy5pbmZvLnN1YlRhYmxlRmtOYW1lID0gJyc7DQogICAgICB9DQogICAgfSwNCiAgICAvKiog6K6+572u5YWz6IGU5aSW6ZSuICovDQogICAgc2V0U3ViVGFibGVDb2x1bW5zKHZhbHVlKSB7DQogICAgICBmb3IgKHZhciBpdGVtIGluIHRoaXMudGFibGVzKSB7DQogICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLnRhYmxlc1tpdGVtXS50YWJsZU5hbWU7DQogICAgICAgIGlmICh2YWx1ZSA9PT0gbmFtZSkgew0KICAgICAgICAgIHRoaXMuc3ViQ29sdW1ucyA9IHRoaXMudGFibGVzW2l0ZW1dLmNvbHVtbnM7DQogICAgICAgICAgYnJlYWs7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9DQogIH0NCn07DQo="},{"version":3,"sources":["genInfoForm.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwNA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"genInfoForm.vue","sourceRoot":"src/views/tool/gen","sourcesContent":["<template>\r\n <el-form ref=\"genInfoForm\" :model=\"info\" :rules=\"rules\" label-width=\"150px\">\r\n <el-row>\r\n <el-col :span=\"12\">\r\n <el-form-item prop=\"tplCategory\">\r\n <span slot=\"label\">生成模板</span>\r\n <el-select v-model=\"info.tplCategory\" @change=\"tplSelectChange\">\r\n <el-option label=\"单表(增删改查)\" value=\"crud\" />\r\n <el-option label=\"树表(增删改查)\" value=\"tree\" />\r\n <el-option label=\"主子表(增删改查)\" value=\"sub\" />\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :span=\"12\">\r\n <el-form-item prop=\"packageName\">\r\n <span slot=\"label\">\r\n 生成包路径\r\n <el-tooltip content=\"生成在哪个java包下,例如 com.ruoyi.system\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <el-input v-model=\"info.packageName\" />\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :span=\"12\">\r\n <el-form-item prop=\"moduleName\">\r\n <span slot=\"label\">\r\n 生成模块名\r\n <el-tooltip content=\"可理解为子系统名,例如 system\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <el-input v-model=\"info.moduleName\" />\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :span=\"12\">\r\n <el-form-item prop=\"businessName\">\r\n <span slot=\"label\">\r\n 生成业务名\r\n <el-tooltip content=\"可理解为功能英文名,例如 user\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <el-input v-model=\"info.businessName\" />\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :span=\"12\">\r\n <el-form-item prop=\"functionName\">\r\n <span slot=\"label\">\r\n 生成功能名\r\n <el-tooltip content=\"用作类描述,例如 用户\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <el-input v-model=\"info.functionName\" />\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :span=\"12\">\r\n <el-form-item>\r\n <span slot=\"label\">\r\n 上级菜单\r\n <el-tooltip content=\"分配到指定菜单下,例如 系统管理\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <treeselect\r\n :append-to-body=\"true\"\r\n v-model=\"info.parentMenuId\"\r\n :options=\"menus\"\r\n :normalizer=\"normalizer\"\r\n :show-count=\"true\"\r\n placeholder=\"请选择系统菜单\"\r\n />\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :span=\"12\">\r\n <el-form-item prop=\"genType\">\r\n <span slot=\"label\">\r\n 生成代码方式\r\n <el-tooltip content=\"默认为zip压缩包下载,也可以自定义生成路径\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <el-radio v-model=\"info.genType\" label=\"0\">zip压缩包</el-radio>\r\n <el-radio v-model=\"info.genType\" label=\"1\">自定义路径</el-radio>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :span=\"24\" v-if=\"info.genType == '1'\">\r\n <el-form-item prop=\"genPath\">\r\n <span slot=\"label\">\r\n 自定义路径\r\n <el-tooltip content=\"填写磁盘绝对路径,若不填写,则生成到当前Web项目下\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <el-input v-model=\"info.genPath\">\r\n <el-dropdown slot=\"append\">\r\n <el-button type=\"primary\">\r\n 最近路径快速选择\r\n <i class=\"el-icon-arrow-down el-icon--right\"></i>\r\n </el-button>\r\n <el-dropdown-menu slot=\"dropdown\">\r\n <el-dropdown-item @click.native=\"info.genPath = '/'\">恢复默认的生成基础路径</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </el-dropdown>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n\r\n <el-row v-show=\"info.tplCategory == 'tree'\">\r\n <h4 class=\"form-header\">其他信息</h4>\r\n <el-col :span=\"12\">\r\n <el-form-item>\r\n <span slot=\"label\">\r\n 树编码字段\r\n <el-tooltip content=\"树显示的编码字段名, 如:dept_id\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <el-select v-model=\"info.treeCode\" placeholder=\"请选择\">\r\n <el-option\r\n v-for=\"(column, index) in info.columns\"\r\n :key=\"index\"\r\n :label=\"column.columnName + ':' + column.columnComment\"\r\n :value=\"column.columnName\"\r\n ></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item>\r\n <span slot=\"label\">\r\n 树父编码字段\r\n <el-tooltip content=\"树显示的父编码字段名, 如:parent_Id\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <el-select v-model=\"info.treeParentCode\" placeholder=\"请选择\">\r\n <el-option\r\n v-for=\"(column, index) in info.columns\"\r\n :key=\"index\"\r\n :label=\"column.columnName + ':' + column.columnComment\"\r\n :value=\"column.columnName\"\r\n ></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item>\r\n <span slot=\"label\">\r\n 树名称字段\r\n <el-tooltip content=\"树节点的显示名称字段名, 如:dept_name\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <el-select v-model=\"info.treeName\" placeholder=\"请选择\">\r\n <el-option\r\n v-for=\"(column, index) in info.columns\"\r\n :key=\"index\"\r\n :label=\"column.columnName + ':' + column.columnComment\"\r\n :value=\"column.columnName\"\r\n ></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n <el-row v-show=\"info.tplCategory == 'sub'\">\r\n <h4 class=\"form-header\">关联信息</h4>\r\n <el-col :span=\"12\">\r\n <el-form-item>\r\n <span slot=\"label\">\r\n 关联子表的表名\r\n <el-tooltip content=\"关联子表的表名, 如:sys_user\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <el-select v-model=\"info.subTableName\" placeholder=\"请选择\" @change=\"subSelectChange\">\r\n <el-option\r\n v-for=\"(table, index) in tables\"\r\n :key=\"index\"\r\n :label=\"table.tableName + ':' + table.tableComment\"\r\n :value=\"table.tableName\"\r\n ></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item>\r\n <span slot=\"label\">\r\n 子表关联的外键名\r\n <el-tooltip content=\"子表关联的外键名, 如:user_id\" placement=\"top\">\r\n <i class=\"el-icon-question\"></i>\r\n </el-tooltip>\r\n </span>\r\n <el-select v-model=\"info.subTableFkName\" placeholder=\"请选择\">\r\n <el-option\r\n v-for=\"(column, index) in subColumns\"\r\n :key=\"index\"\r\n :label=\"column.columnName + ':' + column.columnComment\"\r\n :value=\"column.columnName\"\r\n ></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n</template>\r\n<script>\r\nimport Treeselect from \"@riophae/vue-treeselect\";\r\nimport \"@riophae/vue-treeselect/dist/vue-treeselect.css\";\r\n\r\nexport default {\r\n name: \"BasicInfoForm\",\r\n components: { Treeselect },\r\n props: {\r\n info: {\r\n type: Object,\r\n default: null\r\n },\r\n tables: {\r\n type: Array,\r\n default: null\r\n },\r\n // menus: {\r\n // type: Array,\r\n // default: []\r\n // },\r\n },\r\n data() {\r\n return {\r\n subColumns: [],\r\n rules: {\r\n // tplCategory: [\r\n // { required: true, message: \"请选择生成模板\", trigger: \"blur\" }\r\n // ],\r\n // packageName: [\r\n // { required: true, message: \"请输入生成包路径\", trigger: \"blur\" }\r\n // ],\r\n // moduleName: [\r\n // { required: true, message: \"请输入生成模块名\", trigger: \"blur\" }\r\n // ],\r\n // businessName: [\r\n // { required: true, message: \"请输入生成业务名\", trigger: \"blur\" }\r\n // ],\r\n // functionName: [\r\n // { required: true, message: \"请输入生成功能名\", trigger: \"blur\" }\r\n // ],\r\n }\r\n };\r\n },\r\n created() {},\r\n watch: {\r\n 'info.subTableName': function(val) {\r\n this.setSubTableColumns(val);\r\n }\r\n },\r\n methods: {\r\n /** 转换菜单数据结构 */\r\n normalizer(node) {\r\n if (node.children && !node.children.length) {\r\n delete node.children;\r\n }\r\n return {\r\n id: node.menuId,\r\n label: node.menuName,\r\n children: node.children\r\n };\r\n },\r\n /** 选择子表名触发 */\r\n subSelectChange(value) {\r\n this.info.subTableFkName = '';\r\n },\r\n /** 选择生成模板触发 */\r\n tplSelectChange(value) {\r\n if(value !== 'sub') {\r\n this.info.subTableName = '';\r\n this.info.subTableFkName = '';\r\n }\r\n },\r\n /** 设置关联外键 */\r\n setSubTableColumns(value) {\r\n for (var item in this.tables) {\r\n const name = this.tables[item].tableName;\r\n if (value === name) {\r\n this.subColumns = this.tables[item].columns;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n};\r\n</script>\r\n"]}]}
|