1 |
- {"remainingRequest":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/src/views/system/department/components/addTopDeptDialog.vue?vue&type=script&lang=js","dependencies":[{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/src/views/system/department/components/addTopDeptDialog.vue","mtime":1708395041890},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/cache-loader/dist/cjs.js","mtime":1708395146433},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/babel-loader/lib/index.js","mtime":1708395147257},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/cache-loader/dist/cjs.js","mtime":1708395146433},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/vue-loader/lib/index.js","mtime":1708395147382}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCmltcG9ydCB7IGdldERlcHRUcmVlIH0gZnJvbSAnQC9hcGkvc3lzTWFuYWdlJwpleHBvcnQgZGVmYXVsdCB7CiAgICBuYW1lOiAnYWRkRGVwdERpYWxvZycsCiAgICBwcm9wczogewogICAgICAgIGFkZFRvcERlcHREYXRhOiB7CiAgICAgICAgICAgIHR5cGU6IE9iamVjdCwKICAgICAgICAgICAgZGVmYXVsdDoge30KICAgICAgICB9CiAgICB9LAogICAgZGF0YSgpIHsKICAgICAgICBsZXQgY2hlY2tQaG9uZSA9IChydWxlLCB2YWx1ZSwgY2FsbGJhY2spID0+IHsKICAgICAgICAgICAgaWYgKHZhbHVlKSB7CiAgICAgICAgICAgICAgICBsZXQgaXNQaG9uZSA9IC9eKCgwXGR7MiwzfSktKShcZHs3LDh9KSgtKFxkezMsfSkpPyQvOwogICAgICAgICAgICAgICAgbGV0IHJlZyA9IC9eKD86KD86XCt8MDApODYpPzFbMy05XVxkezl9JC87CiAgICAgICAgICAgICAgICAvLyBpZiAoKSB7CiAgICAgICAgICAgICAgICAvLyAgIGNiZm4oIiIpOwogICAgICAgICAgICAgICAgLy8gfQogICAgICAgICAgICAgICAgaWYgKCFyZWcudGVzdCh2YWx1ZSkgJiYgIWlzUGhvbmUudGVzdCh2YWx1ZSkgJiYgdmFsdWUpIHsKICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhuZXcgRXJyb3IoIuivt+i+k+WFpeato+ehrueahOaJi+acuuWPtyIpKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2soKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGNhbGxiYWNrKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHJhZGlvOiAnMScsCiAgICAgICAgICAgIGFkZERlcHRGb3JtOiB7CiAgICAgICAgICAgICAgICBwYXJlbnRJZDogMCwKICAgICAgICAgICAgICAgIHBhcmVudE5hbWU6ICcnLAogICAgICAgICAgICAgICAgZGVwdE5hbWU6ICcnLAogICAgICAgICAgICAgICAgZGVwdENvZGU6ICcnLAogICAgICAgICAgICAgICAgb3JkZXJOdW06ICcnLAogICAgICAgICAgICAgICAgcGhvbmU6ICcnLAogICAgICAgICAgICAgICAgZW1haWw6ICcnLAogICAgICAgICAgICAgICAgc3RhdHVzOiB0cnVlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHRyZWVEYXRhOiBbXSwKICAgICAgICAgICAgcnVsZXM6IHsKICAgICAgICAgICAgICAgIHBhcmVudE5hbWU6IFt7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAn6K+36YCJ5oup5LiK57qn6YOo6ZeoJywgdHJpZ2dlcjogJ2JsdXInIH0sXSwKICAgICAgICAgICAgICAgIGRlcHROYW1lOiBbeyByZXF1aXJlZDogdHJ1ZSwgbWVzc2FnZTogJ+ivt+i+k+WFpemDqOmXqOWQjeensCcsIHRyaWdnZXI6ICdibHVyJyB9LF0sCiAgICAgICAgICAgICAgICBkZXB0Q29kZTogW3sgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICfor7fovpPlhaXpg6jpl6jnvJbnoIEnLCB0cmlnZ2VyOiAnYmx1cicgfV0sCiAgICAgICAgICAgICAgICBvcmRlck51bTogW3sgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICfor7fovpPlhaXpg6jpl6jmjpLluo8nLCB0cmlnZ2VyOiAnYmx1cicgfSxdLAogICAgICAgICAgICAgICAgcGhvbmU6IFt7IHZhbGlkYXRvcjogY2hlY2tQaG9uZSwgfSxdLAogICAgICAgICAgICAgICAgZW1haWw6IFt7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAn6K+36L6T5YWl6YKu566xJywgdHJpZ2dlcjogJ2JsdXInIH0sXSwKICAgICAgICAgICAgICAgIHN0YXR1czogW3sgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICfor7fpgInmi6nnirbmgIEnLCB0cmlnZ2VyOiAnYmx1cicgfSxdCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9LAogICAgY3JlYXRlZCgpIHsKICAgICAgICB0aGlzLmdldERlcHRUcmVlKCkKICAgIH0sCiAgICBtZXRob2RzOiB7CiAgICAgICAgY2hhbmdlRGVwdCh2KSB7CiAgICAgICAgICAgIGlmICh2ID09IDEpIHsKICAgICAgICAgICAgICAgIHRoaXMuYWRkRGVwdEZvcm0ucGFyZW50SWQgPSAwCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIGdldERlcHRUcmVlKCkgewogICAgICAgICAgICBnZXREZXB0VHJlZSgpLnRoZW4ocmVzID0+IHsKICAgICAgICAgICAgICAgIHRoaXMudHJlZURhdGEgPSByZXMuZGF0YQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgaGFuZGxlTm9kZUNsaWNrKHYpIHsKICAgICAgICAgICAgbGV0IG5ld1YgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHYpKQogICAgICAgICAgICB0aGlzLmFkZERlcHRGb3JtLnBhcmVudElkID0gbmV3Vi5pZAogICAgICAgICAgICB0aGlzLmFkZERlcHRGb3JtLnBhcmVudE5hbWUgPSBuZXdWLmxhYmVsCiAgICAgICAgfSwKICAgICAgICBjYW5jZWwoKSB7CiAgICAgICAgICAgIHRoaXMuYWRkVG9wRGVwdERhdGEuZGlhbG9nVmlzaWJsZSA9IGZhbHNlCiAgICAgICAgfSwKICAgICAgICBhZGREZXB0KCkgewogICAgICAgICAgICB0aGlzLiRyZWZzLnJ1bGVGb3JtLnZhbGlkYXRlKHZhbGlkID0+IHsKICAgICAgICAgICAgICAgIGlmICh2YWxpZCkgewogICAgICAgICAgICAgICAgICAgIHRoaXMuJGVtaXQoJ2FkZFRvcERlcHRCdG4nLCB0aGlzLmFkZERlcHRGb3JtKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KQogICAgICAgIH0KICAgIH0KfQo="},{"version":3,"sources":["addTopDeptDialog.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoDA;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","file":"addTopDeptDialog.vue","sourceRoot":"src/views/system/department/components","sourcesContent":["<template>\n <div class=\"editDeptDialog\">\n <el-dialog center @close=\"cancel()\" width=\"636px\" title=\"新增部门\" :visible.sync='addTopDeptData.dialogVisible'>\n <div style=\"text-align: center;margin-bottom: 20px;width: 300px;margin-left: 80px;\">\n <el-radio-group @input=\"changeDept\" v-model=\"radio\">\n <el-radio label=\"1\">新增一级部门</el-radio>\n <el-radio label=\"2\">新增下属部门</el-radio>\n </el-radio-group>\n </div>\n\n <el-form label-width=\"80px\" ref=\"ruleForm\" :rules=\"rules\" :model=\"addDeptForm\">\n <el-form-item label=\"上级部门\" v-if=\"radio != 1\" prop=\"parentName\">\n <el-select style=\"width: 253px;\" clearable v-model=\"addDeptForm.parentName\" placeholder=\"上级部门名称\" ref=\"selectTree\">\n <el-option :value=\"treeData.id\" :label=\"treeData.label\" hidden />\n <el-tree :data=\"treeData\" :props=\"defaultProps\" :node-key=\"treeData.id\" accordion highlight-current\n @node-click=\"handleNodeClick\" />\n </el-select>\n </el-form-item>\n <el-form-item label=\"部门名称\" prop=\"deptName\">\n <el-input :maxLength=\"30\" placeholder=\"请输入部门名称\" v-model=\"addDeptForm.deptName\"></el-input>\n </el-form-item>\n <el-form-item label=\"部门编码\" prop=\"deptCode\">\n <el-input :maxLength=\"30\" placeholder=\"请输入部门编码\" v-model=\"addDeptForm.deptCode\"></el-input>\n </el-form-item>\n <el-form-item label=\"显示排序\" prop=\"orderNum\">\n <el-input :maxLength=\"10\" placeholder=\"请输入部门排序\" onkeyup=\"this.value=this.value.replace(/\\D/g,'')\"\n onafterpaste=\"this.value=this.value.replace(/\\D/g,'')\" v-model=\"addDeptForm.orderNum\"></el-input>\n </el-form-item>\n <el-form-item label=\"联系电话\" prop=\"phone\">\n <el-input placeholder=\"请输入联系电话\" :maxLength=\"11\" v-model=\"addDeptForm.phone\"></el-input>\n </el-form-item>\n <el-form-item label=\"联系邮箱\">\n <el-input :maxLength=\"30\" placeholder=\"请输入联系邮箱\" v-model=\"addDeptForm.email\"></el-input>\n </el-form-item>\n <el-form-item label=\"状态\" prop=\"status\">\n <!-- <el-switch v-model=\"addDeptForm.status\" active-color=\"#13ce66\" inactive-color=\"#ff4949\" active-text=\"启用\"\n inactive-text=\"停用\"></el-switch> -->\n <el-switch class=\"switchStyle\" v-model=\"addDeptForm.status\" active-text=\"启用\" inactive-text=\"停用\"\n active-color=\"#13ce66\" inactive-color=\"#ff4949\">\n </el-switch>\n </el-form-item>\n </el-form>\n <span slot=\"footer\" class=\"dialog-footer\">\n <!-- <el-button @click='cancel'>取 消</el-button>\n <el-button type=\"primary\" @click=\"addDept()\">保 存</el-button> -->\n <div class=\"search\" @click=\"addDept()\">保 存</div>\n <div class=\"reset\" @click=\"cancel()\">取 消</div>\n </span>\n </el-dialog>\n </div>\n</template>\n<script>\nimport { getDeptTree } from '@/api/sysManage'\nexport default {\n name: 'addDeptDialog',\n props: {\n addTopDeptData: {\n type: Object,\n default: {}\n }\n },\n data() {\n let checkPhone = (rule, value, callback) => {\n if (value) {\n let isPhone = /^((0\\d{2,3})-)(\\d{7,8})(-(\\d{3,}))?$/;\n let reg = /^(?:(?:\\+|00)86)?1[3-9]\\d{9}$/;\n // if () {\n // cbfn(\"\");\n // }\n if (!reg.test(value) && !isPhone.test(value) && value) {\n callback(new Error(\"请输入正确的手机号\"));\n } else {\n callback();\n }\n } else {\n callback();\n }\n };\n return {\n radio: '1',\n addDeptForm: {\n parentId: 0,\n parentName: '',\n deptName: '',\n deptCode: '',\n orderNum: '',\n phone: '',\n email: '',\n status: true\n },\n treeData: [],\n rules: {\n parentName: [{ required: true, message: '请选择上级部门', trigger: 'blur' },],\n deptName: [{ required: true, message: '请输入部门名称', trigger: 'blur' },],\n deptCode: [{ required: true, message: '请输入部门编码', trigger: 'blur' }],\n orderNum: [{ required: true, message: '请输入部门排序', trigger: 'blur' },],\n phone: [{ validator: checkPhone, },],\n email: [{ required: true, message: '请输入邮箱', trigger: 'blur' },],\n status: [{ required: true, message: '请选择状态', trigger: 'blur' },]\n }\n }\n },\n created() {\n this.getDeptTree()\n },\n methods: {\n changeDept(v) {\n if (v == 1) {\n this.addDeptForm.parentId = 0\n }\n },\n getDeptTree() {\n getDeptTree().then(res => {\n this.treeData = res.data\n })\n },\n handleNodeClick(v) {\n let newV = JSON.parse(JSON.stringify(v))\n this.addDeptForm.parentId = newV.id\n this.addDeptForm.parentName = newV.label\n },\n cancel() {\n this.addTopDeptData.dialogVisible = false\n },\n addDept() {\n this.$refs.ruleForm.validate(valid => {\n if (valid) {\n this.$emit('addTopDeptBtn', this.addDeptForm)\n }\n })\n }\n }\n}\n</script>\n<style lang=\"scss\" scoped>\n::v-deep .el-dialog__body {\n padding: 20px 95px !important;\n}\n\n.dialog-footer {\n div {\n display: inline-block;\n width: 80px;\n height: 40px;\n border-radius: 2px;\n font-size: 14px;\n line-height: 40px;\n text-align: center;\n }\n\n div:hover {\n cursor: pointer;\n }\n\n .search {\n margin: 0 12px;\n background-color: #2766DD;\n color: #fff;\n }\n\n .search:hover {\n background-color: #4D85F4;\n }\n\n .reset {\n color: #333334;\n border: 1px solid #D7D7D7;\n }\n\n .reset:hover {\n color: #1F9FFF;\n border: 1px solid #1F9FFF;\n }\n}\n\n// 选中后radio文本的颜色\n::v-deep .el-radio__input.is-checked+.el-radio__label {\n color: #2766DD\n}\n\n/* radio选中后小圆点的颜色 */\n::v-deep .el-radio__input.is-checked .el-radio__inner {\n background: #2766DD !important;\n border-color: #2766DD !important;\n}</style>"]}]}
|