5f95334f67efb774347b4a2e2a1d566c.json 16 KB

1
  1. {"remainingRequest":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\boman-framwork\\ruoyi-ui\\src\\components\\DynamicForms\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\boman-framwork\\ruoyi-ui\\src\\components\\DynamicForms\\index.vue","mtime":1620985797977},{"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:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCmNvbnN0IGRlZmF1bHRTZXR0aW5ncyA9IHJlcXVpcmUoJ0Avc2V0dGluZ3MuanMnKQppbXBvcnQgRWRpdG9yIGZyb20gJ0AvY29tcG9uZW50cy9FZGl0b3InOwppbXBvcnQgewogIGxpc3RJbmRleGZvdQp9IGZyb20gIkAvYXBpL3Rvb2wvZ2VuIjsKaW1wb3J0IHsKICBnZXRUb2tlbgp9IGZyb20gIkAvdXRpbHMvYXV0aCI7CmV4cG9ydCBkZWZhdWx0IHsKICBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgZmlsZUxpc3Q6IFtdLAogICAgICBkZWZhdWx0U2V0dGluZ3MsCiAgICAgIGRpYWxvZ0ltYWdlVXJsOiAnJywKICAgICAgcHJvY2VzczogcHJvY2Vzcy5lbnYuVlVFX0FQUF9CQVNFX0FQSSwKICAgICAgZGlhbG9nVmlzaWJsZTogZmFsc2UsCiAgICAgIGRpc2FibGVkOiBmYWxzZSwKICAgICAgbG9hZGluZzogZmFsc2UsCiAgICAgIGZpbHRlckxpc3Q6IFtdLAogICAgICBjb25maWc6IHt9LAogICAgICBhbGllbWc6IHsKICAgICAgICB0YWJsZTogJycsCiAgICAgICAgb3JkZXJCeTogJ2NyZWF0ZV90aW1lIGRlc2MnLAogICAgICAgIHBhZ2VObzogMSwKICAgICAgICBwYWdlU2l6ZTogMTAsCiAgICAgICAgZml4ZWREYXRhOiB7CiAgICAgICAgICBjb25kaXRpb246IHt9CiAgICAgICAgfQogICAgICB9LAogICAgfQogIH0sCiAgY29tcG9uZW50czogewogICAgRWRpdG9yCiAgfSwKICBwcm9wczogewogICAgZm9ybUNvbmZpZzogewogICAgICB0eXBlOiBPYmplY3QsCiAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAnZGVmYXVsdCc6IHsKICAgICAgICBzeXNEaWN0RGF0YTogW10KICAgICAgfQogICAgfSwKICAgIHR5cGU6IHsKICAgICAgdHlwZTogTnVtYmVyLAogICAgICBkZWZhdWx0OiAxCiAgICB9LAogIH0sCiAgY3JlYXRlZCgpIHsKICAgIHRoaXMuY29uZmlnID0ge30KICAgIGlmKHRoaXMudHlwZSl7CiAgICAgIGlmKHRoaXMuZm9ybUNvbmZpZy5yZWFkb25seSA9PSB0cnVlKXsKICAgICAgICB0aGlzLmZvcm1Db25maWcuZGlzYWJzaG93ID0gdHJ1ZQogICAgICB9ZWxzZSBpZih0aGlzLmZvcm1Db25maWcubWFzay5zbGljZSgzLDQpID09ICcwJyB8fCB0aGlzLmZvcm1Db25maWcuaXNvbmxpeSA9PSB0cnVlKXsKICAgICAgICB0aGlzLmZvcm1Db25maWcuZGlzYWJzaG93ID0gdHJ1ZQogICAgICB9ZWxzZXsKICAgICAgICB0aGlzLmZvcm1Db25maWcuZGlzYWJzaG93ID0gZmFsc2UKICAgICAgfQogICAgICBpZih0aGlzLmZvcm1Db25maWcuZmtJbmZvID09IG51bGwpewogICAgICAgIHRoaXMuZm9ybUNvbmZpZy5ma0luZm89ZmFsc2UKICAgICAgfQogICAgfQogICAgdGhpcy5pbml0KCkKICB9LAogIHdhdGNoOiB7CiAgICAnY29uZmlnJzogewogICAgICAgaGFuZGxlcjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgdGhpcy4kZW1pdCgnbW9kZWxGbicsdGhpcy5mb3JtQ29uZmlnLmNvbHVtbk5hbWUsdGhpcy5jb25maWdbdGhpcy5mb3JtQ29uZmlnLmNvbHVtbk5hbWVdKQogICAgICAgfSwKICAgICAgIGRlZXA6IHRydWUKICAgfQogIH0sCiAgbW91bnRlZCgpIHt9LAogIG1ldGhvZHM6IHsKICAgIGxpc3RJbmRleGZvdUZuKCkgewogICAgICBsaXN0SW5kZXhmb3UodGhpcy5hbGllbWcpLnRoZW4ocmVzcG9uc2UgPT4gewogICAgICAgIGlmIChyZXNwb25zZS5kYXRhKSB7CiAgICAgICAgICB0aGlzLmZpbHRlckxpc3QgPSByZXNwb25zZS5kYXRhLnJvd3MKICAgICAgICB9CiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7CiAgICAgIH0pCiAgICB9LAogICAgcmVtb3RlTWV0aG9kKHF1ZXJ5KSB7CiAgICAgIGlmIChxdWVyeSAhPT0gJycpIHsKICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlOwogICAgICAgIHRoaXMuYWxpZW1nLmZpeGVkRGF0YS5jb25kaXRpb25bdGhpcy5mb3JtQ29uZmlnLmZrSW5mby5ka0NvbHVtbk5hbWVdID0gcXVlcnkKICAgICAgICB0aGlzLmxpc3RJbmRleGZvdUZuKCkKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLmZpbHRlckxpc3QgPSBbXTsKICAgICAgfQogICAgfSwKICAgIHVwSW1hZ2VGbihyZXMsIGZpbGUpIHsKICAgICAgdGhpcy5jb25maWcucHVzaChyZXMuZGF0YSk7CiAgICB9LAogICAgaW5pdCgpIHsKICAgICAgaWYgKHRoaXMuZm9ybUNvbmZpZy5odG1sVHlwZSA9PSAnY2hlY2tib3gnIHx8IHRoaXMuZm9ybUNvbmZpZy5odG1sVHlwZSA9PSAnaW1hZ2VVcGxvYWQnIHx8IHRoaXMuZm9ybUNvbmZpZy5odG1sVHlwZSA9PQogICAgICAgICdmaWxlVXBsb2FkJykgewogICAgICAgIHRoaXMuY29uZmlnID0gW10KICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLiRzZXQodGhpcy5jb25maWcsIHRoaXMuZm9ybUNvbmZpZy5jb2x1bW5OYW1lLCAoKHRoaXMuZm9ybUNvbmZpZy5jb2x1bW5WYWx1ZT90aGlzLmZvcm1Db25maWcuY29sdW1uVmFsdWU6dGhpcy5mb3JtQ29uZmlnLmRlZmF1bHRWYWx1ZSkgfHwgJycpKQogICAgICB9CgogICAgICBpZih0aGlzLmZvcm1Db25maWcuZmtJbmZvKXsKICAgICAgICB0aGlzLmFsaWVtZy50YWJsZSA9IHRoaXMuZm9ybUNvbmZpZy5ma0luZm8uZmtUYWJsZU5hbWUKICAgICAgICBpZih0aGlzLmZvcm1Db25maWcuZmtJbmZvLnZhbHVlKXsKICAgICAgICAgIHRoaXMuYWxpZW1nLmZpeGVkRGF0YS5jb25kaXRpb25bdGhpcy5mb3JtQ29uZmlnLmZrSW5mby5ka0NvbHVtbk5hbWVdID0gdGhpcy5mb3JtQ29uZmlnLmZrSW5mby52YWx1ZQogICAgICAgIH0KICAgICAgICB0aGlzLmxpc3RJbmRleGZvdUZuKCkKICAgICAgfQogICAgfSwKICAgIGhhbmRsZUNoYW5nZShmaWxlLCBmaWxlTGlzdCkgewogICAgICB0aGlzLmZpbGVMaXN0ID0gZmlsZUxpc3Quc2xpY2UoLTMpOwogICAgfSwKICAgIGdldFRva2VuKCkgewogICAgICByZXR1cm4gZ2V0VG9rZW4oKQogICAgfSwKICAgIHJlc2VJbWFnZShmaWxlLCBmaWxlTGlzdCkgewogICAgICBsZXQgdXJscyA9ICIiCiAgICAgIGlmIChmaWxlLnJlc3BvbnNlKSB7CiAgICAgICAgdXJscyA9IGZpbGUucmVzcG9uc2UudXJsCiAgICAgIH0gZWxzZSB7CiAgICAgICAgdXJscyA9IGZpbGUudXJsCiAgICAgIH0KICAgICAgZm9yIChsZXQgaSA9IHRoaXMuY29uZmlnLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgaWYgKHRoaXMuY29uZmlnW2ldLnVybCA9PSB1cmxzKSB7CiAgICAgICAgICB0aGlzLmNvbmZpZy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgcmVzZUltYWdlMShmaWxlLCBmaWxlTGlzdCkgewogICAgICBsZXQgdXJscyA9ICIiCiAgICAgIGlmIChmaWxlLnJlc3BvbnNlKSB7CiAgICAgICAgdXJscyA9IGZpbGUucmVzcG9uc2UudXJsCiAgICAgIH0gZWxzZSB7CiAgICAgICAgdXJscyA9IGZpbGUudXJsCiAgICAgIH0KICAgICAgZm9yIChsZXQgaSA9IHRoaXMuY29uZmlnLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgaWYgKHRoaXMuY29uZmlnW2ldLnVybCA9PSB1cmxzKSB7CiAgICAgICAgICB0aGlzLmNvbmZpZy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgaGFuZGxlUGljdHVyZUNhcmRQcmV2aWV3KGZpbGUpIHsKICAgICAgY29uc29sZS5sb2coZmlsZSkKICAgICAgdGhpcy5kaWFsb2dJbWFnZVVybCA9IGZpbGUudXJsOwogICAgICB0aGlzLmRpYWxvZ1Zpc2libGUgPSB0cnVlOwogICAgfSwKICAgIGhhbmRsZURvd25sb2FkKGZpbGUpIHsKICAgICAgY29uc29sZS5sb2coZmlsZSk7CiAgICB9LAogICAgaGFuZGxlUXVlcnkoKSB7CiAgICAgIHRoaXMuJGVtaXQoJ2J0bnMnKQogICAgfSwKICAgIGhhbmRsZUNoZWNrZWRDaXRpZXNDaGFuZ2UodmFsdWUpIHsKICAgICAgY29uc29sZS5sb2codGhpcy5jb25maWcpCiAgICB9CiAgfQp9Cg=="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0DA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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","file":"index.vue","sourceRoot":"src/components/DynamicForms","sourcesContent":["<template>\r\n <el-form-item label-width=\"120px\" :label=\"formConfig.columnComment\" style=\"display: inline-block;\" :prop=\"formConfig.columnName\">\r\n <!-- 输入框 -->\r\n <el-input v-if=\"formConfig.htmlType == 'input'\" v-model=\"config[formConfig.columnName]\" :placeholder=\"'请输入'+formConfig.columnComment\"\r\n clearable @keyup.enter.native=\"handleQuery\" :disabled=\"formConfig.disabshow\" />\r\n <!-- 多行输入框 -->\r\n <el-input v-if=\"formConfig.htmlType == 'textarea'\" type=\"textarea\" v-model=\"config[formConfig.columnName]\"\r\n :placeholder=\"'请输入'+formConfig.columnComment\" clearable @keyup.enter.native=\"handleQuery\" :disabled=\"formConfig.disabshow\"/>\r\n <!-- 下拉框 -->\r\n <el-select v-model=\"config[formConfig.columnName]\" v-if=\"formConfig.htmlType == 'select'&&(!formConfig.fkInfo)\"\r\n filterable :placeholder=\"'请输入'+formConfig.columnComment\" :disabled=\"formConfig.disabshow\">\r\n <el-option v-for=\"itemChild in formConfig.sysDictData\" :key=\"itemChild.dictValue\" :label=\"itemChild.dictLabel\"\r\n :value=\"itemChild.dictValue\">\r\n </el-option>\r\n </el-select>\r\n <!-- 下拉框搜索 -->\n <el-select :disabled=\"formConfig.disabshow\" v-model=\"config[formConfig.columnName]\" v-if=\"formConfig.htmlType == 'select'&&(formConfig.fkInfo)\"\r\n filterable remote :remote-method=\"remoteMethod\" :loading=\"loading\" :placeholder=\"'请输入'+formConfig.columnComment\">\n <el-option v-for=\"itemChild in filterList\" :key=\"itemChild[formConfig.fkInfo.fkColumnName]\" :label=\"itemChild[formConfig.fkInfo.dkColumnName]\" :value=\"itemChild[formConfig.fkInfo.fkColumnName]\">\r\n </el-option>\r\n </el-select>\r\n <!-- 复选框 -->\r\n <el-checkbox-group :disabled=\"formConfig.disabshow\" v-model=\"config\" v-if=\"formConfig.htmlType == 'checkbox'\">\r\n <el-checkbox @change=\"handleCheckedCitiesChange\" v-for=\"itemChild in formConfig.sysDictData\" :label=\"itemChild.dictValue\"\r\n :key=\"itemChild.dictLabel\">\r\n {{itemChild.dictLabel}}\r\n </el-checkbox>\r\n </el-checkbox-group>\r\n <!-- 单选框 -->\r\n <el-radio-group :disabled=\"formConfig.disabshow\" v-model=\"config[formConfig.columnName]\" v-if=\"formConfig.htmlType == 'radio'\">\r\n <el-radio v-for=\"itemChild in formConfig.sysDictData\" :key=\"itemChild.dictValue\" :label=\"itemChild.dictValue\">{{itemChild.dictLabel}}</el-radio>\r\n </el-radio-group>\r\n <!-- 时间控件 -->\r\n <el-date-picker :disabled=\"formConfig.disabshow\" v-model=\"config[formConfig.columnName]\" v-if=\"formConfig.htmlType == 'datetime'\" type=\"date\"\r\n :placeholder=\"'请输入'+formConfig.columnComment\">\r\n </el-date-picker>\r\n <!-- 上传图片 -->\r\n <el-upload :disabled=\"formConfig.disabshow\" v-if=\"formConfig.htmlType == 'imageUpload'\" :headers=\"{Authorization: 'Bearer ' + getToken()}\" :action=\"process + '/boman-file/upload'\"\r\n :file-list=\"config\" list-type=\"picture-card\" :on-preview=\"handlePictureCardPreview\" :on-success=\"upImageFn\"\r\n :on-remove=\"reseImage\">\r\n <i class=\"el-icon-plus\"></i>\r\n </el-upload>\r\n <el-dialog :disabled=\"formConfig.disabshow\" :visible.sync=\"dialogVisible\" v-if=\"formConfig.htmlType == 'imageUpload'\">\r\n <img :src=\"dialogImageUrl\" alt=\"\">\r\n </el-dialog>\r\n <!-- 上传文件 -->\r\n <el-upload :disabled=\"formConfig.disabshow\" class=\"upload-demo\" :headers=\"{Authorization: 'Bearer ' + getToken()}\" v-if=\"formConfig.htmlType == 'fileUpload'\"\r\n :action=\"process + '/boman-file/upload'\" :on-change=\"handleChange\" :on-success=\"upImageFn\" :on-remove=\"reseImage\"\r\n :file-list=\"config\">\r\n <el-button size=\"small\" type=\"primary\">点击上传</el-button>\r\n <div slot=\"tip\" class=\"el-upload__tip\">只能上传jpg/png文件,且不超过500kb</div>\r\n </el-upload>\r\n <!-- 富文本 -->\r\n <editor :disabled=\"formConfig.disabshow\" v-model=\"config[formConfig.columnName]\" v-if=\"formConfig.htmlType == 'editor'\" :min-height=\"192\" />\r\n </el-form-item>\r\n</template>\r\n\r\n<script>\r\n const defaultSettings = require('@/settings.js')\r\n import Editor from '@/components/Editor';\r\n import {\r\n listIndexfou\r\n } from \"@/api/tool/gen\";\r\n import {\r\n getToken\r\n } from \"@/utils/auth\";\r\n export default {\r\n data() {\r\n return {\r\n fileList: [],\r\n defaultSettings,\r\n dialogImageUrl: '',\r\n process: process.env.VUE_APP_BASE_API,\r\n dialogVisible: false,\r\n disabled: false,\r\n loading: false,\r\n filterList: [],\r\n config: {},\r\n aliemg: {\r\n table: '',\r\n orderBy: 'create_time desc',\r\n pageNo: 1,\r\n pageSize: 10,\r\n fixedData: {\r\n condition: {}\r\n }\r\n },\r\n }\r\n },\r\n components: {\r\n Editor\r\n },\r\n props: {\n formConfig: {\r\n type: Object,\r\n required: true,\r\n 'default': {\r\n sysDictData: []\r\n }\r\n },\n type: {\r\n type: Number,\r\n default: 1\r\n },\r\n },\r\n created() {\r\n this.config = {}\n if(this.type){\n if(this.formConfig.readonly == true){\n this.formConfig.disabshow = true\n }else if(this.formConfig.mask.slice(3,4) == '0' || this.formConfig.isonliy == true){\n this.formConfig.disabshow = true\n }else{\n this.formConfig.disabshow = false\n }\n if(this.formConfig.fkInfo == null){\n this.formConfig.fkInfo=false\n }\n }\n this.init()\r\n },\n watch: {\n 'config': {\n handler: function() {\n this.$emit('modelFn',this.formConfig.columnName,this.config[this.formConfig.columnName])\n },\n deep: true\n }\n },\r\n mounted() {},\r\n methods: {\r\n listIndexfouFn() {\r\n listIndexfou(this.aliemg).then(response => {\r\n if (response.data) {\r\n this.filterList = response.data.rows\r\n }\r\n this.loading = false;\r\n })\r\n },\r\n remoteMethod(query) {\r\n if (query !== '') {\r\n this.loading = true;\r\n this.aliemg.fixedData.condition[this.formConfig.fkInfo.dkColumnName] = query\r\n this.listIndexfouFn()\r\n } else {\r\n this.filterList = [];\r\n }\r\n },\r\n upImageFn(res, file) {\r\n this.config.push(res.data);\r\n },\r\n init() {\r\n if (this.formConfig.htmlType == 'checkbox' || this.formConfig.htmlType == 'imageUpload' || this.formConfig.htmlType ==\r\n 'fileUpload') {\r\n this.config = []\r\n } else {\r\n this.$set(this.config, this.formConfig.columnName, ((this.formConfig.columnValue?this.formConfig.columnValue:this.formConfig.defaultValue) || ''))\r\n }\n\n if(this.formConfig.fkInfo){\n this.aliemg.table = this.formConfig.fkInfo.fkTableName\n if(this.formConfig.fkInfo.value){\n this.aliemg.fixedData.condition[this.formConfig.fkInfo.dkColumnName] = this.formConfig.fkInfo.value\n }\n this.listIndexfouFn()\n }\r\n },\r\n handleChange(file, fileList) {\r\n this.fileList = fileList.slice(-3);\r\n },\r\n getToken() {\r\n return getToken()\r\n },\r\n reseImage(file, fileList) {\r\n let urls = \"\"\r\n if (file.response) {\r\n urls = file.response.url\r\n } else {\r\n urls = file.url\r\n }\r\n for (let i = this.config.length - 1; i >= 0; i--) {\r\n if (this.config[i].url == urls) {\r\n this.config.splice(i, 1);\r\n }\r\n }\r\n },\r\n reseImage1(file, fileList) {\r\n let urls = \"\"\r\n if (file.response) {\r\n urls = file.response.url\r\n } else {\r\n urls = file.url\r\n }\r\n for (let i = this.config.length - 1; i >= 0; i--) {\r\n if (this.config[i].url == urls) {\r\n this.config.splice(i, 1);\r\n }\r\n }\r\n },\r\n handlePictureCardPreview(file) {\n console.log(file)\r\n this.dialogImageUrl = file.url;\r\n this.dialogVisible = true;\r\n },\r\n handleDownload(file) {\r\n console.log(file);\r\n },\r\n handleQuery() {\r\n this.$emit('btns')\r\n },\r\n handleCheckedCitiesChange(value) {\r\n console.log(this.config)\r\n }\r\n }\r\n }\r\n</script>\r\n\r\n<style>\r\n</style>\n"]}]}